diff mbox series

[v4,11/11] buffer_io_error: Use durable_name_printk_ratelimited

Message ID 20200724171706.1550403-12-tasleson@redhat.com
State Not Applicable
Delegated to: David Miller
Headers show
Series Add persistent durable identifier to storage log messages | expand

Commit Message

Tony Asleson July 24, 2020, 5:17 p.m. UTC
Replace printk_ratelimited with one that adds the key/value
durable name to log entry.

Signed-off-by: Tony Asleson <tasleson@redhat.com>
---
 fs/buffer.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

Comments

Andy Shevchenko July 25, 2020, 10:29 a.m. UTC | #1
On Fri, Jul 24, 2020 at 8:19 PM Tony Asleson <tasleson@redhat.com> wrote:
>
> Replace printk_ratelimited with one that adds the key/value
> durable name to log entry.

>  static void buffer_io_error(struct buffer_head *bh, char *msg)
>  {
> -       if (!test_bit(BH_Quiet, &bh->b_state))
> -               printk_ratelimited(KERN_ERR
> +       if (!test_bit(BH_Quiet, &bh->b_state)) {
> +               struct device *gendev;
> +
> +               gendev = (bh->b_bdev->bd_disk) ?
> +                       disk_to_dev(bh->b_bdev->bd_disk) : NULL;

Besides unneeded parentheses as Sergey noticed...

> +
> +               durable_name_printk_ratelimited(KERN_ERR, gendev,
>                         "Buffer I/O error on dev %pg, logical block %llu%s\n",
>                         bh->b_bdev, (unsigned long long)bh->b_blocknr, msg);
> +       }

...can we drop indentation level?

  if (test_bit(...))
   return;
  ...

>  }
diff mbox series

Patch

diff --git a/fs/buffer.c b/fs/buffer.c
index a60f60396cfa..f35eaaafce0e 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -133,10 +133,16 @@  __clear_page_buffers(struct page *page)
 
 static void buffer_io_error(struct buffer_head *bh, char *msg)
 {
-	if (!test_bit(BH_Quiet, &bh->b_state))
-		printk_ratelimited(KERN_ERR
+	if (!test_bit(BH_Quiet, &bh->b_state)) {
+		struct device *gendev;
+
+		gendev = (bh->b_bdev->bd_disk) ?
+			disk_to_dev(bh->b_bdev->bd_disk) : NULL;
+
+		durable_name_printk_ratelimited(KERN_ERR, gendev,
 			"Buffer I/O error on dev %pg, logical block %llu%s\n",
 			bh->b_bdev, (unsigned long long)bh->b_blocknr, msg);
+	}
 }
 
 /*