Messages in this thread | | | From | Denis Efremov <> | Subject | Re: [Cocci] [PATCH 1/2] Coccinelle: extend memdup_user transformation with GFP_USER | Date | Sat, 6 Jun 2020 23:46:11 +0300 |
| |
On 6/6/20 11:24 AM, Julia Lawall wrote: > > > On Sat, 30 May 2020, Denis Efremov wrote: > >> Match GFP_USER allocations with memdup_user.cocci rule. >> Commit 6c2c97a24f09 ("memdup_user(): switch to GFP_USER") switched >> memdup_user() from GFP_KERNEL to GFP_USER. In most cases it is still >> a good idea to use memdup_user() for GFP_KERNEL allocations. The >> motivation behind altering memdup_user() to GFP_USER is here: >> https://lkml.org/lkml/2018/1/6/333 > > Should the rule somehow document the cases in which memdup_user should now > not be used? > > julia > > >> >> Signed-off-by: Denis Efremov <efremov@linux.com> >> --- >> scripts/coccinelle/api/memdup_user.cocci | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/scripts/coccinelle/api/memdup_user.cocci b/scripts/coccinelle/api/memdup_user.cocci >> index c809ab10bbce..49f487e6a5c8 100644 >> --- a/scripts/coccinelle/api/memdup_user.cocci >> +++ b/scripts/coccinelle/api/memdup_user.cocci >> @@ -20,7 +20,7 @@ expression from,to,size; >> identifier l1,l2; >> @@ >> >> -- to = \(kmalloc\|kzalloc\)(size,GFP_KERNEL); >> +- to = \(kmalloc\|kzalloc\)(size,\(GFP_KERNEL\|GFP_USER\));
Actually, we can add optional __GFP_NOWARN here to match such cases as: GFP_KERNEL | __GFP_NOWARN
However, I don't know how to express it in elegant way. Something like? ( - to = \(kmalloc\|kzalloc\)(size,\(GFP_KERNEL\|GFP_USER\)); | - to = \(kmalloc\|kzalloc\)(size, GFP_KERNEL|__GFP_NOWARN); | - to = \(kmalloc\|kzalloc\)(size, GFP_USER|__GFP_NOWARN); )
Thanks, Denis
| |