mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-06 09:00:55 +00:00
tools: add cocci patch for thread cancel api changes
Add Quentin's cocci patch to align code with the changes to the event cancel api. Also added a README to explain what this collection of cocci patches is for. Signed-off-by: Quentin Young <qlyoung@nvidia.com> Signed-off-by: Mark Stapp <mjs@voltanet.io>
This commit is contained in:
parent
5047884528
commit
70c583eb81
14
tools/coccinelle/README.md
Normal file
14
tools/coccinelle/README.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
Coccinelle patches
|
||||||
|
==================
|
||||||
|
|
||||||
|
This collection of coccinelle patches represents some of the broader,
|
||||||
|
codebase-wide changes that have been made. If you maintain a fork of
|
||||||
|
FRR and find that your codebase needs to be updated to align with
|
||||||
|
these changes, the coccinelle tool should help you make that update.
|
||||||
|
|
||||||
|
The coccinelle tool is documented at:
|
||||||
|
https://coccinelle.gitlabpages.inria.fr/website/
|
||||||
|
|
||||||
|
To run a coccinelle patch script:
|
||||||
|
|
||||||
|
spatch --sp-file tools/coccinelle/semicolon.cocci zebra/*.c
|
68
tools/coccinelle/thread_cancel_api.cocci
Normal file
68
tools/coccinelle/thread_cancel_api.cocci
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
@ptrupdate@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
- thread_cancel(E);
|
||||||
|
+ thread_cancel(&E);
|
||||||
|
|
||||||
|
@nullcheckremove depends on ptrupdate@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
|
||||||
|
thread_cancel(&E);
|
||||||
|
- E = NULL;
|
||||||
|
|
||||||
|
@cancelguardremove depends on nullcheckremove@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
- if (E)
|
||||||
|
- {
|
||||||
|
thread_cancel(&E);
|
||||||
|
- }
|
||||||
|
|
||||||
|
@cancelguardremove2 depends on nullcheckremove@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
- if (E != NULL)
|
||||||
|
- {
|
||||||
|
thread_cancel(&E);
|
||||||
|
- }
|
||||||
|
|
||||||
|
@cancelguardremove3 depends on nullcheckremove@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
- if (E)
|
||||||
|
thread_cancel(&E);
|
||||||
|
|
||||||
|
@cancelguardremove4 depends on nullcheckremove@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
- if (E != NULL)
|
||||||
|
thread_cancel(&E);
|
||||||
|
|
||||||
|
@replacetimeroff@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
|
||||||
|
- THREAD_TIMER_OFF(E);
|
||||||
|
+ thread_cancel(&E);
|
||||||
|
|
||||||
|
@replacewriteoff@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
|
||||||
|
- THREAD_WRITE_OFF(E);
|
||||||
|
+ thread_cancel(&E);
|
||||||
|
|
||||||
|
@replacereadoff@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
|
||||||
|
- THREAD_READ_OFF(E);
|
||||||
|
+ thread_cancel(&E);
|
||||||
|
|
||||||
|
@replacethreadoff@
|
||||||
|
expression E;
|
||||||
|
@@
|
||||||
|
|
||||||
|
- THREAD_OFF(E);
|
||||||
|
+ thread_cancel(&E);
|
Loading…
Reference in New Issue
Block a user