mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-31 04:36:25 +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