[PATCH] scripts/checkpatch: Avoid recommending legacy qemu_bh_new_guarded()

Philippe Mathieu-Daudé posted 1 patch 3 days, 22 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20250924163911.51479-1-philmd@linaro.org
scripts/checkpatch.pl | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
[PATCH] scripts/checkpatch: Avoid recommending legacy qemu_bh_new_guarded()
Posted by Philippe Mathieu-Daudé 3 days, 22 hours ago
qemu_bh_new_guarded() is considered legacy since commit 9c86c97f12c
("async: Add an optional reentrancy guard to the BH API"); recommend
the new API: aio_bh_new_guarded().

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 scripts/checkpatch.pl | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 91616c974f2..6a0c06bebb9 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3197,9 +3197,9 @@ sub process {
 		if ($line =~ /\bsignal\s*\(/ && !($line =~ /SIG_(?:IGN|DFL)/)) {
 			ERROR("use sigaction to establish signal handlers; signal is not portable\n" . $herecurr);
 		}
-# recommend qemu_bh_new_guarded instead of qemu_bh_new
-        if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\bqemu_bh_new\s*\(/) {
-			ERROR("use qemu_bh_new_guarded() instead of qemu_bh_new() to avoid reentrancy problems\n" . $herecurr);
+# recommend aio_bh_new_guarded instead of legacy qemu_bh_new / qemu_bh_new_guarded
+        if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\bqemu_bh_new(_guarded)?\s*\(/) {
+			ERROR("use aio_bh_new_guarded() instead of qemu_bh_new*() to avoid reentrancy problems\n" . $herecurr);
 		}
 # recommend aio_bh_new_guarded instead of aio_bh_new
         if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\baio_bh_new\s*\(/) {
-- 
2.51.0


Re: [PATCH] scripts/checkpatch: Avoid recommending legacy qemu_bh_new_guarded()
Posted by Philippe Mathieu-Daudé 3 days, 22 hours ago
(forgot to Cc qemu-block@nongnu.org)

On 24/9/25 18:39, Philippe Mathieu-Daudé wrote:
> qemu_bh_new_guarded() is considered legacy since commit 9c86c97f12c
> ("async: Add an optional reentrancy guard to the BH API"); recommend
> the new API: aio_bh_new_guarded().
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   scripts/checkpatch.pl | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 91616c974f2..6a0c06bebb9 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -3197,9 +3197,9 @@ sub process {
>   		if ($line =~ /\bsignal\s*\(/ && !($line =~ /SIG_(?:IGN|DFL)/)) {
>   			ERROR("use sigaction to establish signal handlers; signal is not portable\n" . $herecurr);
>   		}
> -# recommend qemu_bh_new_guarded instead of qemu_bh_new
> -        if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\bqemu_bh_new\s*\(/) {
> -			ERROR("use qemu_bh_new_guarded() instead of qemu_bh_new() to avoid reentrancy problems\n" . $herecurr);
> +# recommend aio_bh_new_guarded instead of legacy qemu_bh_new / qemu_bh_new_guarded
> +        if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\bqemu_bh_new(_guarded)?\s*\(/) {
> +			ERROR("use aio_bh_new_guarded() instead of qemu_bh_new*() to avoid reentrancy problems\n" . $herecurr);
>   		}
>   # recommend aio_bh_new_guarded instead of aio_bh_new
>           if ($realfile =~ /.*\/hw\/.*/ && $line =~ /\baio_bh_new\s*\(/) {