[PATCH] coccinelle: kmalloc_obj: Remove default GFP_KERNEL arg

Kees Cook posted 1 patch 2 weeks ago
scripts/coccinelle/api/kmalloc_objs.cocci | 11 +++++++++++
1 file changed, 11 insertions(+)
[PATCH] coccinelle: kmalloc_obj: Remove default GFP_KERNEL arg
Posted by Kees Cook 2 weeks ago
Remove any GFP_KERNEL arguments found in the new kmalloc_obj-family
helpers. This captures the script used in commit 189f164e573e ("Convert
remaining multi-line kmalloc_obj/flex GFP_KERNEL uses").

Signed-off-by: Kees Cook <kees@kernel.org>
---
Cc: Julia Lawall <Julia.Lawall@inria.fr>
Cc: Nicolas Palix <nicolas.palix@imag.fr>
Cc: <cocci@inria.fr>
---
 scripts/coccinelle/api/kmalloc_objs.cocci | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/scripts/coccinelle/api/kmalloc_objs.cocci b/scripts/coccinelle/api/kmalloc_objs.cocci
index db12b7be7247..e9a415b7b6f4 100644
--- a/scripts/coccinelle/api/kmalloc_objs.cocci
+++ b/scripts/coccinelle/api/kmalloc_objs.cocci
@@ -122,3 +122,14 @@ fresh identifier ALLOC_OBJS = script:python(ALLOC_ARRAY) { alloc_array(ALLOC_ARR
 -	ALLOC(struct_size_t(TYPE, FLEX, COUNT), GFP)
 +	ALLOC_FLEX(TYPE, FLEX, COUNT, GFP)
 )
+
+@drop_gfp_kernel depends on patch && !(file in "tools") && !(file in "samples")@
+identifier ALLOC = {kmalloc_obj,kmalloc_objs,kmalloc_flex,
+		    kzalloc_obj,kzalloc_objs,kzalloc_flex,
+		    kvmalloc_obj,kvmalloc_objs,kvmalloc_flex,
+		    kvzalloc_obj,kvzalloc_objs,kvzalloc_flex};
+@@
+
+	ALLOC(...
+-		 , GFP_KERNEL
+	     )
-- 
2.34.1
Re: [cocci] [PATCH] coccinelle: kmalloc_obj: Remove default GFP_KERNEL arg
Posted by Markus Elfring 1 week ago
…
> +++ b/scripts/coccinelle/api/kmalloc_objs.cocci
> @@ -122,3 +122,14 @@ fresh identifier ALLOC_OBJS = script:python(ALLOC_ARRAY) { alloc_array(ALLOC_ARR
>  -	ALLOC(struct_size_t(TYPE, FLEX, COUNT), GFP)
>  +	ALLOC_FLEX(TYPE, FLEX, COUNT, GFP)
>  )
> +
> +@drop_gfp_kernel depends on patch && !(file in "tools") && !(file in "samples")@
> +identifier ALLOC = {kmalloc_obj,kmalloc_objs,kmalloc_flex,
> +		    kzalloc_obj,kzalloc_objs,kzalloc_flex,
> +		    kvmalloc_obj,kvmalloc_objs,kvmalloc_flex,
> +		    kvzalloc_obj,kvzalloc_objs,kvzalloc_flex};
> +@@
> +
> +	ALLOC(...
> +-		 , GFP_KERNEL
> +	     )

Would it become helpful to clarify the software run time characteristics any further
for the selection of mentioned identifiers?

* SmPL disjunction

* Regular expression


Regards,
Markus