2022-12-29 23:11:51

by Ira Weiny

[permalink] [raw]
Subject: [PATCH v2] checkpatch: Mark kunmap() and kunmap_atomic() deprecated

It was suggested by Fabio that kunmap() be marked deprecated in
checkpatch.[1] This did not seem necessary until an invalid conversion
of kmap_local_page() appeared in mainline.[2][3] The introduction of
this bug would have been flagged with kunmap() being marked deprecated.

Add kunmap() and kunmap_atomic() to checkpatch to help prevent further
confusion.

[1] https://lore.kernel.org/all/1884934.6tgchFWduM@suse/
[2] d406d26745ab ("cifs: skip alloc when request has no pages")
[3] https://lore.kernel.org/r/[email protected]

Cc: Andy Whitcroft <[email protected]>
Cc: Joe Perches <[email protected]>
Suggested-by: "Fabio M. De Francesco" <[email protected]>
Signed-off-by: Ira Weiny <[email protected]>
---
Changes in v2:
- Add LKML and send directly to Andy and Joe (I'm still learning b4 send...)
- Link to v1: https://lore.kernel.org/r/[email protected]
---
scripts/checkpatch.pl | 2 ++
1 file changed, 2 insertions(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 78cc595b98ce..a6d6d7e1d0cf 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -823,7 +823,9 @@ our %deprecated_apis = (
"get_state_synchronize_sched" => "get_state_synchronize_rcu",
"cond_synchronize_sched" => "cond_synchronize_rcu",
"kmap" => "kmap_local_page",
+ "kunmap" => "kunmap_local",
"kmap_atomic" => "kmap_local_page",
+ "kunmap_atomic" => "kunmap_local",
);

#Create a search pattern for all these strings to speed up a loop below

---
base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2
change-id: 20221229-kmap-checkpatch-763cc2ace8e5

Best regards,
--
Ira Weiny <[email protected]>


2022-12-30 00:57:28

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH v2] checkpatch: Mark kunmap() and kunmap_atomic() deprecated

On Thu, 2022-12-29 at 14:17 -0800, Ira Weiny wrote:
> It was suggested by Fabio that kunmap() be marked deprecated in
> checkpatch.[1] This did not seem necessary until an invalid conversion
> of kmap_local_page() appeared in mainline.[2][3] The introduction of
> this bug would have been flagged with kunmap() being marked deprecated.
>
> Add kunmap() and kunmap_atomic() to checkpatch to help prevent further
> confusion.

Acked-by: Joe Perches <[email protected]>

>
> [1] https://lore.kernel.org/all/1884934.6tgchFWduM@suse/
> [2] d406d26745ab ("cifs: skip alloc when request has no pages")
> [3] https://lore.kernel.org/r/[email protected]
>
> Cc: Andy Whitcroft <[email protected]>
> Cc: Joe Perches <[email protected]>
> Suggested-by: "Fabio M. De Francesco" <[email protected]>
> Signed-off-by: Ira Weiny <[email protected]>
> ---
> Changes in v2:
> - Add LKML and send directly to Andy and Joe (I'm still learning b4 send...)
> - Link to v1: https://lore.kernel.org/r/[email protected]
> ---
> scripts/checkpatch.pl | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 78cc595b98ce..a6d6d7e1d0cf 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -823,7 +823,9 @@ our %deprecated_apis = (
> "get_state_synchronize_sched" => "get_state_synchronize_rcu",
> "cond_synchronize_sched" => "cond_synchronize_rcu",
> "kmap" => "kmap_local_page",
> + "kunmap" => "kunmap_local",
> "kmap_atomic" => "kmap_local_page",
> + "kunmap_atomic" => "kunmap_local",
> );
>
> #Create a search pattern for all these strings to speed up a loop below
>
> ---
> base-commit: 1b929c02afd37871d5afb9d498426f83432e71c2
> change-id: 20221229-kmap-checkpatch-763cc2ace8e5
>
> Best regards,