Re: 2.6.0-test2-bk3 phantom I/O errors

From: Andrew Morton (akpm@osdl.org)
Date: Tue Jul 29 2003 - 15:50:25 EST


Yaroslav Halchenko <yoh@onerussian.com> wrote:
>
> Buffer I/O error on device hda2, logical block 3861502
> Buffer I/O error on device hda2, logical block 3861504
> Buffer I/O error on device hda2, logical block 3861506

Odd.

> dmesg bears also signs about
> buffer layer error at fs/buffer.c:416
> Call Trace:
> [<c0154f30>] __find_get_block_slow+0x80/0xe0
> [<c0155f51>] __find_get_block+0x91/0xf0

Yes, this mystery has been floating about for some time.

What filesystem types are in use?

Are you using some sort of initrd setup?

Could you please run with this patch, send the traces?

diff -puN fs/buffer.c~buffer-debug fs/buffer.c
--- 25/fs/buffer.c~buffer-debug Tue Jul 29 12:11:59 2003
+++ 25-akpm/fs/buffer.c Tue Jul 29 13:48:48 2003
@@ -163,6 +163,7 @@ static void buffer_io_error(struct buffe
         printk(KERN_ERR "Buffer I/O error on device %s, logical block %Lu\n",
                         bdevname(bh->b_bdev, b),
                         (unsigned long long)bh->b_blocknr);
+ dump_stack();
 }
 
 /*
@@ -414,6 +415,9 @@ __find_get_block_slow(struct block_devic
                 bh = bh->b_this_page;
         } while (bh != head);
         buffer_error();
+ printk("block=%llu, b_blocknr=%llu\n",
+ (unsigned long long)block, (unsigned long long)bh->b_blocknr);
+ printk("b_state=0x%08lx, b_size=%u\n", bh->b_state, bh->b_size);
 out_unlock:
         spin_unlock(&bd_mapping->private_lock);
         page_cache_release(page);

_

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jul 31 2003 - 22:00:42 EST