Thread (5 messages) 5 messages, 2 authors, 2012-02-01

Re: btrfs bug

From: Mitch Harder <hidden>
Date: 2012-02-01 18:07:27

On Tue, Jan 31, 2012 at 11:20 PM, Thomas Weber
[off-list ref] wrote:
Hello Mitch,

I have good news for you. I looked through all log files and found in the
everything.log the following:

Regards,
Thomas


Jan 31 05:12:24 localhost kernel: [87276.968049] btrfs memmove bogus
src_offset 1870 move len 687876531 len 4096
Jan 31 05:12:24 localhost kernel: [87276.968136] ------------[ cut here
]------------
Jan 31 05:12:24 localhost kernel: [87276.968222] kernel BUG at
fs/btrfs/extent_io.c:4357!
Jan 31 05:12:24 localhost kernel: [87276.968296] invalid opcode: 0000 [#1]
PREEMPT SMP
[...snip...]

This is coming from a BUG_ON(1) in the memcpy_extent_buffer() function
in extent_io.c

	if (src_offset + len > dst->len) {
		printk(KERN_ERR "btrfs memmove bogus src_offset %lu move "
		       "len %lu dst len %lu\n", src_offset, len, dst->len);
		BUG_ON(1);
	}

So, since (1870 + 687876531) > 4096, the BUG_ON was triggered.

There are two calls to memcpy_extent_buffer() from
setup_items_for_insert (the next function back in the callback shown
from the BUG_ON), so that part makes sense, at least.

I don't know if anybody else has anything to say on this, but my best
guess is that this btrfs volume has picked up some corruptions that
are feeding in some bad values.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help