[PATCH] md: suppress spurious superblock update warning for dm-raid

chencheng posted 1 patch 1 month, 2 weeks ago
drivers/md/md.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
[PATCH] md: suppress spurious superblock update warning for dm-raid
Posted by chencheng 1 month, 2 weeks ago
dm-raid have external metadata management (mddev->external = 1) and
no persistent superblock (mddev->persistent = 0). For these arrays,
there's no superblock to update, so the warning is spurious.

Signed-off-by: chencheng <chencheng@fnnas.com>
---
 drivers/md/md.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/md/md.c b/drivers/md/md.c
index 6d73f6e196a..e30b658641e 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -2790,7 +2790,9 @@ void md_update_sb(struct mddev *mddev, int force_change)
 	if (!md_is_rdwr(mddev)) {
 		if (force_change)
 			set_bit(MD_SB_CHANGE_DEVS, &mddev->sb_flags);
-		pr_err("%s: can't update sb for read-only array %s\n", __func__, mdname(mddev));
+		if (!mddev_is_dm(mddev))
+			pr_err_ratelimited("%s: can't update sb for read-only array %s\n",
+					   __func__, mdname(mddev));
 		return;
 	}
 
-- 
2.51.0
Re: [PATCH] md: suppress spurious superblock update warning for dm-raid
Posted by Paul Menzel 1 month, 3 weeks ago
Dear Chen,


Thank you for your patch.

Am 10.02.26 um 13:41 schrieb chencheng:
> dm-raid have external metadata management (mddev->external = 1) and
> no persistent superblock (mddev->persistent = 0). For these arrays,
> there's no superblock to update, so the warning is spurious.

Please paste the warning.

Please also add a Fixes: tag.

> Signed-off-by: chencheng <chencheng@fnnas.com>

Would Chen Cheng be the official (transcribed) spelling of your name. If 
you yes, it’d be great, if you updated it:

     git config --global user.name "Chen Cheng"
     git commit --amend -s --author="Chen Cheng <chencheng@fnnas.com>"

> ---
>   drivers/md/md.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/md/md.c b/drivers/md/md.c
> index 6d73f6e196a..e30b658641e 100644
> --- a/drivers/md/md.c
> +++ b/drivers/md/md.c
> @@ -2790,7 +2790,9 @@ void md_update_sb(struct mddev *mddev, int force_change)
>   	if (!md_is_rdwr(mddev)) {
>   		if (force_change)
>   			set_bit(MD_SB_CHANGE_DEVS, &mddev->sb_flags);
> -		pr_err("%s: can't update sb for read-only array %s\n", __func__, mdname(mddev));
> +		if (!mddev_is_dm(mddev))
> +			pr_err_ratelimited("%s: can't update sb for read-only array %s\n",
> +					   __func__, mdname(mddev));

(It looks like it’s an error level message and not a warning level message.)

>   		return;
>   	}

With the commit message suggestions addressed, feel free to add:

Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>


Kind regards,

Paul