[Lustre-discuss] ldiskfs kernel bug in ldiskfs_mb_use_best_found

Aaron Knister aaron.knister at gmail.com
Mon Jun 2 05:24:00 PDT 2008


I'm not sure how to obtain that. I'm running whatever was distributed  
with 1.6.4.3 for rhel5-x86_64.

On Jun 2, 2008, at 8:08 AM, Alex Zhuravlev wrote:

> could you also send me your mballoc.c please?
>
> thanks, Alex
>
> Aaron Knister wrote:
>> Thanks so much for looking into this. Here's what I got from dmesg.  
>> Interestingly enough every time it panics the CPU listed is #4...do  
>> you think that points to a hardware problem? -
>> ----------- [cut here ] --------- [please bite here ] ---------
>> Kernel BUG at ...build/BUILD/lustre-ldiskfs-3.0.4/ldiskfs/mballoc.c: 
>> 1334
>> invalid opcode: 0000 [1] SMP
>> last sysfs file: /devices/ 
>> pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:02.0/0000:04:00.1/irq
>> CPU 4
>> Modules linked in: obdfilter(U) fsfilt_ldiskfs(U) ost(U) mgc(U)  
>> ldiskfs(U) crc16(U) lustre(U) lov(U) lquota(U) mdc(U) ko2iblnd(U)  
>> ptlrpc(U) obdclass(
>> U) lnet(U) lvfs(U) libcfs(U) netconsole(U) autofs4(U) hidp(U)  
>> rfcomm(U) l2cap(U) bluetooth(U) sunrpc(U) ip6t_REJECT(U)  
>> xt_tcpudp(U) ip6table_filter(U
>> ) ip6_tables(U) x_tables(U) ipv6(U) ib_iser(U) libiscsi(U)  
>> scsi_transport_iscsi(U) rdma_ucm(U) ib_ucm(U) ib_srp(U) ib_sdp(U)  
>> rdma_cm(U) ib_cm(U) iw_c
>> m(U) ib_addr(U) ib_local_sa(U) ib_ipoib(U) ib_sa(U) ib_uverbs(U)  
>> ib_umad(U) dm_multipath(U) video(U) sbs(U) backlight(U) i2c_ec(U)  
>> button(U) battery(
>> U) asus_acpi(U) acpi_memhotplug(U) ac(U) parport_pc(U) lp(U)  
>> parport(U) ib_mthca(U) ib_mad(U) i2c_i801(U) e1000(U) ide_cd(U)  
>> ib_core(U) shpchp(U) i2c
>> _core(U) cdrom(U) sg(U) pcspkr(U) dm_snapshot(U) dm_zero(U)  
>> dm_mirror(U) dm_mod(U) ata_piix(U) ahci(U) megaraid_sas(U)  
>> sata_sil(U) libata(U) sd_mod(U
>> ) scsi_mod(U) ext3(U) jbd(U) ehci_hcd(U) ohci_hcd(U) uhci_hcd(U)
>> Pid: 5717, comm: ll_ost_io_11 Tainted: GF      
>> 2.6.18-53.1.13.el5_lustre.1.6.4.3smp #1
>> RIP: 0010:[<ffffffff8885a01f>]   
>> [<ffffffff8885a01f>] :ldiskfs:ldiskfs_mb_use_best_found+0xef/0x520
>> RSP: 0018:ffff81040e4dd320  EFLAGS: 00010246
>> RAX: 0000000000000000 RBX: ffff81040e4dd3d0 RCX: 000000000000007f
>> RDX: ffff810406833000 RSI: ffff8103a8250000 RDI: 0000000000001000
>> RBP: 0000000000000800 R08: 0000000000000020 R09: 0000000000000010
>> R10: ffff81037d136ff8 R11: 0000000000008000 R12: ffff81040e4dd470
>> R13: 0000000000010000 R14: 0000000000000020 R15: 0000000000000800
>> FS:  00002aaaaaac0220(0000) GS:ffff81042fc20b40(0000) knlGS: 
>> 0000000000000000
>> CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
>> CR2: 00002aaaae2ad0a0 CR3: 000000041c6d1000 CR4: 00000000000006e0
>> Process ll_ost_io_11 (pid: 5717, threadinfo ffff81040e4dc000, task  
>> ffff81041228a040)
>> Stack:  ffff81040e4dd4c0 ffff81040e4dd470 000000000000000b  
>> 0000000000010000
>> 0000000000010000 0000000000000020 ffff81040e4dd4c0 ffffffff8885cd4e
>> ffff81038c2b0a38 0000000000000010 ffff81040e4dd4a0 0000000000000000
>> Call Trace:
>> [<ffffffff8885cd4e>] :ldiskfs:ldiskfs_mb_regular_allocator+0x66e/ 
>> 0xd50
>> [<ffffffff888443c2>] :ldiskfs:ldiskfs_mark_inode_dirty+0x132/0x160
>> [<ffffffff88859664>] :ldiskfs:ldiskfs_mb_initialize_context 
>> +0x144/0x160
>> [<ffffffff8885e1e6>] :ldiskfs:ldiskfs_mb_new_blocks+0x166/0x280
>> [<ffffffff888bf091>] :fsfilt_ldiskfs:ldiskfs_ext_new_extent_cb 
>> +0x301/0x640
>> [<ffffffff8000a63f>] get_page_from_freelist+0x223/0x3cf
>> [<ffffffff882390b0>] :ib_mthca:mthca_arbel_post_send+0x5a2/0x5b4
>> [<ffffffff88856d27>] :ldiskfs:ldiskfs_ext_walk_space+0x1b7/0x250
>> [<ffffffff888bed90>] :fsfilt_ldiskfs:ldiskfs_ext_new_extent_cb 
>> +0x0/0x640
>> [<ffffffff80054ccc>] mwait_idle+0x0/0x4a
>> [<ffffffff888ba9ae>] :fsfilt_ldiskfs:fsfilt_map_nblocks+0xfe/0x150
>> [<ffffffff888eee08>] :obdfilter:filter_direct_io+0x478/0xce0
>> [<ffffffff888f14de>] :obdfilter:filter_commitrw_write+0x184e/0x2570
>> [<ffffffff8005a2ea>] cache_alloc_refill+0x106/0x186
>> [<ffffffff8003ce86>] lock_timer_base+0x1b/0x3c
>> [<ffffffff8889eb46>] :ost:ost_brw_write+0x21b6/0x28c0
>> [<ffffffff80088431>] default_wake_function+0x0/0xe
>> [<ffffffff888a283e>] :ost:ost_handle+0x2a8e/0x58d8
>> [<ffffffff88603c82>] :obdclass:class_handle2object+0xd2/0x160
>> [<ffffffff8869f230>] :ptlrpc:lustre_swab_ptlrpc_body+0x0/0x90
>> [<ffffffff8869cde5>] :ptlrpc:lustre_swab_buf+0xc5/0xf0
>> [<ffffffff886a4a3b>] :ptlrpc:ptlrpc_server_handle_request+0xb0b/ 
>> 0x1270
>> [<ffffffff80060f29>] thread_return+0x0/0xeb
>> [<ffffffff8006b6c9>] do_gettimeofday+0x50/0x92
>> [<ffffffff8855d056>] :libcfs:lcw_update_time+0x16/0x100
>> [<ffffffff8003ce86>] lock_timer_base+0x1b/0x3c
>> [<ffffffff886a747c>] :ptlrpc:ptlrpc_main+0x7dc/0x950
>> [<ffffffff80088431>] default_wake_function+0x0/0xe
>> [<ffffffff8005bfb1>] child_rip+0xa/0x11
>> [<ffffffff886a6ca0>] :ptlrpc:ptlrpc_main+0x0/0x950
>> [<ffffffff8005bfa7>] child_rip+0x0/0x11
>> Code: 0f 0b 68 50 5c 86 88 c2 36 05 0f 1f 80 00 00 00 00 48 8b 43
>> RIP  [<ffffffff8885a01f>] :ldiskfs:ldiskfs_mb_use_best_found+0xef/ 
>> 0x520
>> RSP <ffff81040e4dd320>
>> <0>Kernel panic - not syncing: Fatal exception
>> On Jun 2, 2008, at 3:40 AM, Alex Zhuravlev wrote:
>>> what about dmesg output? it's unlikely lustre debug can help here  
>>> as the problem
>>> seem to be very internal to ldiskfs (mballoc piece of it)
>>>
>>> thanks, Alex
>>>
>>> Aaron Knister wrote:
>>>> I bumped up debugging, and here's  (below) the last bit of  
>>>> debugging
>>>> info from lustre that I have on the oss before it went belly up. My
>>>> system is totally inoperable. Does anybody have any ideas?
>>>>
>>>> 00010000:00001000:4:1212157576.884909:0:6378:0:(ldlm_resource.c: 
>>>> 865:ldlm_resource_add_lock())
>>>> About to add this lock:
>>>> 00010000:00001000:4:1212157576.884910:0:6378:0:(ldlm_lock.c: 
>>>> 1718:ldlm_lock_dump())
>>>> -- Lock dump: ffff81036e61f1c0/0x1fb135e1e3fd2cc6 (rc: 3) (pos:  
>>>> 0) (pid:6378)
>>>> 00010000:00001000:4:1212157576.884913:0:6378:0:(ldlm_lock.c: 
>>>> 1726:ldlm_lock_dump())
>>>> Node: local
>>>> 00010000:00001000:4:1212157576.884914:0:6378:0:(ldlm_lock.c: 
>>>> 1735:ldlm_lock_dump())
>>>> Resource: ffff8103849211c0 (3129942/0)
>>>> 00010000:00001000:4:1212157576.884915:0:6378:0:(ldlm_lock.c: 
>>>> 1740:ldlm_lock_dump())
>>>> Req mode: PW, grant mode: PW, rc: 3, read: 0, write: 1 flags:  
>>>> 0x80004000
>>>> 00010000:00001000:4:1212157576.884917:0:6378:0:(ldlm_lock.c: 
>>>> 1746:ldlm_lock_dump())
>>>> Extent: 0 -> 18446744073709551615 (req 0-18446744073709551615)
>>>> 00010000:00000040:4:1212157576.884920:0:6378:0:(ldlm_lock.c: 
>>>> 615:ldlm_lock_decref_internal())
>>>> forcing cancel of local lock
>>>> 00010000:00000010:4:1212157576.884922:0:6378:0:(ldlm_lockd.c: 
>>>> 1357:ldlm_bl_to_thread())
>>>> kmalloced 'blwi': 120 at ffff81040e90a340 (tot 49135175)
>>>> 00002000:00000040:4:1212157576.884925:0:6378:0:(lustre_fsfilt.h: 
>>>> 194:fsfilt_start_log())
>>>> started handle ffff8103766dfc78 (0000000000000000)
>>>> 00002000:00000040:4:1212157576.884930:0:6378:0:(lustre_fsfilt.h: 
>>>> 270:fsfilt_commit())
>>>> committing handle ffff8103766dfc78
>>>> 00002000:00000040:4:1212157576.884931:0:6378:0:(lustre_fsfilt.h: 
>>>> 194:fsfilt_start_log())
>>>> started handle ffff8103766dfc78 (0000000000000000)
>>>> 00000020:00000040:4:1212157576.884957:0:5557:0:(lustre_handles.c: 
>>>> 121:class_handle_unhash_nolock())
>>>> removing object ffff81036e61f1c0 with handle 0x1fb135e1e3fd2cc6  
>>>> from hash
>>>> 00000100:00000010:4:1212157576.884960:0:5557:0:(client.c: 
>>>> 394:ptlrpc_prep_set())
>>>> kmalloced 'set': 104 at ffff8104012d38c0 (tot 49135279)
>>>> 00000100:00000010:4:1212157576.884962:0:5557:0:(client.c: 
>>>> 457:ptlrpc_set_destroy())
>>>> kfreed 'set': 104 at ffff8104012d38c0 (tot 49135175).
>>>> 00010000:00000040:4:1212157576.884964:0:5557:0:(ldlm_resource.c: 
>>>> 818:ldlm_resource_putref())
>>>> putref res: ffff8103849211c0 count: 0
>>>> 00010000:00000010:4:1212157576.884969:0:5557:0:(ldlm_resource.c: 
>>>> 828:ldlm_resource_putref())
>>>> kfreed 'res->lr_lvb_data': 40 at ffff810379ded880 (tot 49135135).
>>>> 00010000:00000010:4:1212157576.885000:0:5557:0:(ldlm_resource.c: 
>>>> 829:ldlm_resource_putref())
>>>> slab-freed 'res': 224 at ffff8103849211c0 (tot 49135135).
>>>> 00010000:00000010:4:1212157576.885002:0:5557:0:(ldlm_lockd.c: 
>>>> 1657:ldlm_bl_thread_main())
>>>> kfreed 'blwi': 120 at ffff81040e90a340 (tot 49134791).
>>>> 00002000:00000040:4:1212157576.885623:0:6378:0:(lustre_fsfilt.h: 
>>>> 270:fsfilt_commit())
>>>> committing handle ffff8103766dfc78
>>>> 00002000:00000002:4:1212157576.885625:0:6378:0:(filter.c: 
>>>> 148:f_dput())
>>>> putting 3129942: ffff8103599cea98, count = 0
>>>> 00002000:00080000:4:1212157576.885627:0:6378:0:(filter.c: 
>>>> 2689:filter_destroy_precreated())
>>>> crew4-OST0001: after destroy: set last_objids[0] = 3129941
>>>> 00002000:00000002:4:1212157576.885630:0:6378:0:(filter.c: 
>>>> 607:filter_update_last_objid())
>>>> crew4-OST0001: server last_objid for group 0: 3129941
>>>> 00002000:00000010:4:1212157576.912615:0:6485:0:(fsfilt-ldiskfs.c: 
>>>> 747:fsfilt_ldiskfs_cb_func())
>>>> slab-freed 'fcb': 56 at ffff810371404920 (tot 49134335).
>>>> 00010000:00000040:4:1212157576.912669:0:6378:0:(ldlm_lib.c: 
>>>> 1556:target_committed_to_req())
>>>> last_committed 17896268, xid 3841
>>>> 00000100:00000040:4:1212157576.912674:0:6378:0:(connection.c: 
>>>> 191:ptlrpc_connection_addref())
>>>> connection=ffff8103fbe9e2c0 refcount 10 to 172.18.0.10
>>>> <http://172.18.0.10>@o2ib
>>>> 00000100:00000040:4:1212157576.912678:0:6378:0:(niobuf.c: 
>>>> 46:ptl_send_buf())
>>>> conn=ffff8103fbe9e2c0 id 12345-172.18.0.10 at o2ib
>>>> 00000400:00000010:4:1212157576.912680:0:6378:0:(lib-lnet.h: 
>>>> 247:lnet_md_alloc())
>>>> kmalloced 'md': 136 at ffff81040cb6cb80 (tot 9568949).
>>>> 00000400:00000010:4:1212157576.912683:0:6378:0:(lib-lnet.h: 
>>>> 295:lnet_msg_alloc())
>>>> kmalloced 'msg': 336 at ffff8104285e1e00 (tot 9569285).
>>>> 00000100:00000040:4:1212157576.912693:0:6378:0:(connection.c: 
>>>> 150:ptlrpc_put_connection())
>>>> connection=ffff8103fbe9e2c0 refcount 9 to 172.18.0.10
>>>> <http://172.18.0.10>@o2ib
>>>> 00000100:00000040:4:1212157576.912695:0:6378:0:(service.c: 
>>>> 648:ptlrpc_server_handle_request())
>>>> RPC PUTting export ffff8103848e9000 : new rpc_count 0
>>>> 00000100:00000040:4:1212157576.912697:0:6378:0:(service.c: 
>>>> 648:ptlrpc_server_handle_request())
>>>> PUTting export ffff8103848e9000 : new refcount 4
>>>> 00000100:00000040:4:1212157576.912699:0:6378:0:(service.c: 
>>>> 652:ptlrpc_server_handle_request())
>>>> PUTting export ffff8103848e9000 : new refcount 3
>>>> 00000400:00000010:4:1212157576.912741:0:5351:0:(lib-lnet.h: 
>>>> 269:lnet_md_free())
>>>> kfreed 'md': 136 at ffff81040cb6cb80 (tot 9569149).
>>>> 00000400:00000010:4:1212157576.912744:0:5351:0:(lib-lnet.h: 
>>>> 312:lnet_msg_free())
>>>> kfreed 'msg': 336 at ffff8104285e1e00 (tot 9568813).
>>>>
>>>>
>>>> On Wed, May 28, 2008 at 8:03 PM, Aaron Knister <aaron.knister at gmail.com
>>>> <mailto:aaron.knister at gmail.com>> wrote:
>>>>
>>>>   Thank you very much for looking into this. I've attached my  
>>>> dmesg to
>>>>   the bug. i looked at line number 1334 which the panic seems to
>>>>   reference. i can't figure out what its doing though
>>>>
>>>>   On Wed, May 28, 2008 at 4:54 PM, Alex Zhuravlev
>>>>   <Alex.Zhuravlev at sun.com <mailto:Alex.Zhuravlev at sun.com>> wrote:
>>>>
>>>>       Aaron Knister wrote:
>>>>
>>>>           I'm seeing this bug (14465) under heavy load on my  
>>>> OSSes. If
>>>>           I reboot the MDS it appears to help...any ideas? What's  
>>>> the
>>>>           status on this bug?
>>>>
>>>>
>>>>       could you attach your dmesg to the bug? as for the status -  
>>>> I'm
>>>>       still not
>>>>       able to reproduce this, neither I found possible cause,  
>>>> sorry.
>>>>
>>>>       thanks, Alex
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Lustre-discuss mailing list
>>> Lustre-discuss at lists.lustre.org
>>> http://lists.lustre.org/mailman/listinfo/lustre-discuss
>




More information about the lustre-discuss mailing list