[DRBD-user] Darn ... doing and rsync backup from drbd disk to another system ...

Lars Ellenberg lars.ellenberg at linbit.com
Thu May 6 18:58:50 CEST 2004

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


On Tue, May 04, 2004 at 03:17:44PM +0000, Ron O'Hara wrote:
> Rats... I was backing up my test system and this happened... 0.7 cvs 
> from this morning. Only reading from the disk but heavy I/O to do the backup
> It happened while reading the data mounted on /dev/nb0 so I suspect drbd 
> is involved, although the trace doesn't seem like it.
> 
> Kernel is vanilla 2.6.4
> 
> Any thoughts on this ?
> 
> Ron
> 
> -----------[ cut here ]------------
> kernel BUG at drivers/block/ll_rw_blk.c:2311!
> invalid operand: 0000 [#1]
> PREEMPT SMP
> CPU:    0
> EIP:    0060:[<c0229084>]    Not tainted
> EFLAGS: 00010246
> EIP is at submit_bio+0x8f/0x99
> eax: 00000000   ebx: c98c27c0   ecx: 00000004   edx: 00000000
> esi: 00000000   edi: c98c2840   ebp: c98c27c0   esp: c82bbba0
> ds: 007b   es: 007b   ss: 0068
> Process rsync (pid: 7621, threadinfo=c82ba000 task=c9e898c0)
> Stack: c0165696 00001000 c10e7d38 c018321a 00000000 c98c27c0 c0183657 
> 00000000
>       c98c27c0 00001000 00000000 000000d0 cfcb0500 00000001 00000004 
> 00000004
>       00001dae 00000000 00000640 00000000 00000004 0000000a c2aa5314 
> 00000010
> Call Trace:
> [<c0165696>] bio_add_page+0x34/0x38
> [<c018321a>] mpage_bio_submit+0x23/0x32
> [<c0183657>] do_mpage_readpage+0x2f7/0x49e
> [<c0142146>] add_to_page_cache+0x5c/0x12c
> [<c018393c>] mpage_readpages+0x13e/0x16b
> [<c01a1d12>] ext3_get_block+0x0/0xae
> [<c01483ab>] read_pages+0x135/0x13e
> [<c01a1d12>] ext3_get_block+0x0/0xae
> [<c014659d>] __alloc_pages+0xa7/0x34b
> [<c0148729>] do_page_cache_readahead+0x126/0x1c5
> [<c014892d>] page_cache_readahead+0x165/0x191
> [<c0142a49>] do_generic_mapping_read+0xe1/0x3d7
> [<c0142d3f>] file_read_actor+0x0/0xfe
> [<c0143029>] __generic_file_aio_read+0x1ec/0x21e
> [<c0142d3f>] file_read_actor+0x0/0xfe
> [<c01430b5>] generic_file_aio_read+0x5a/0x74
> [<c015fa9d>] do_sync_read+0x8b/0xb7
> [<c01740e3>] do_select+0x1d0/0x2fa
> [<c012e2c7>] update_wall_time+0xd/0x36
> [<c012e6fa>] do_timer+0xc0/0xc5
> [<c0111e15>] timer_interrupt+0x7a/0x16f
> [<c015fb79>] vfs_read+0xb0/0x119
> [<c015fdf4>] sys_read+0x42/0x63
> [<c010b47b>] syscall_call+0x7/0xb
> 
> Code: 0f 0b 07 09 2f c9 36 c0 eb 86 53 8b 5c 24 08 8b 53 18 85 d2

Cannot reproduce, and cannot even follow that call trace. If I follow
the code from do_mpage_readpage further, I don't see where bio_add_page
may come into play, and thats the only place at all that may interact
with drbd (restricting the size of the bio to 512 byte up to PAGE_SIZE).

the BUG is in submit_bio on bio->bi_size == 0 or bio->bi_io_vec == 0,
and both happen *before* it reaches drbd, since thats where it should
have been submitted to, if all was well.

so I don't think that drbd is to blame. maybe it is one element to make
this bug *show*, but afaics, it cannot be the root of the problem,
since it was not even asked to do anything here.

of course, I may be wrong...
please tell me where :)

	Lars Ellenberg



More information about the drbd-user mailing list