[Ocfs2-users] Linux kernel crash due to ocfs2

Sunil Mushran sunil.mushran at oracle.com
Wed Sep 7 09:13:56 PDT 2011


version of ocfs2-tools?

On 09/07/2011 09:10 AM, Betzos Giorgos wrote:
> Hello,
>
> I tried what you suggested but here is what I got:
>
> # o2image /dev/mapper/mpath0 /files_shared/u02.o2image
> *** glibc detected *** o2image: corrupted double-linked list: 0x10045000 ***
> ======= Backtrace: =========
> /lib/libc.so.6[0xfeb1ab4]
> /lib/libc.so.6(cfree+0xc8)[0xfeb5b68]
> o2image[0x10007bb0]
> o2image[0x10002748]
> o2image[0x10001f50]
> o2image[0x10002334]
> o2image[0x100026a0]
> o2image[0x10001f50]
> o2image[0x10002334]
> o2image[0x100026a0]
> o2image[0x1000358c]
> o2image[0x10003e28]
> /lib/libc.so.6[0xfe4dc60]
> /lib/libc.so.6[0xfe4dea0]
> ======= Memory map: ========
> 00100000-00120000 r-xp 00100000 00:00 0                                  [vdso]
> 0f550000-0f560000 r-xp 00000000 08:13 2881590                            /lib/libcom_err.so.2.1
> 0f560000-0f570000 rw-p 00000000 08:13 2881590                            /lib/libcom_err.so.2.1
> 0f900000-0f9c0000 r-xp 00000000 08:13 2881576                            /lib/libglib-2.0.so.0.1200.3
> 0f9c0000-0f9d0000 rw-p 000b0000 08:13 2881576                            /lib/libglib-2.0.so.0.1200.3
> 0fa40000-0fa50000 r-xp 00000000 08:13 2881575                            /lib/librt-2.5.so
> 0fa50000-0fa60000 r--p 00000000 08:13 2881575                            /lib/librt-2.5.so
> 0fa60000-0fa70000 rw-p 00010000 08:13 2881575                            /lib/librt-2.5.so
> 0fce0000-0fd00000 r-xp 00000000 08:13 2881574                            /lib/libpthread-2.5.so
> 0fd00000-0fd10000 r--p 00010000 08:13 2881574                            /lib/libpthread-2.5.so
> 0fd10000-0fd20000 rw-p 00020000 08:13 2881574                            /lib/libpthread-2.5.so
> 0fe30000-0ffa0000 r-xp 00000000 08:13 2881571                            /lib/libc-2.5.so
> 0ffa0000-0ffb0000 r--p 00160000 08:13 2881571                            /lib/libc-2.5.so
> 0ffb0000-0ffc0000 rw-p 00170000 08:13 2881571                            /lib/libc-2.5.so
> 0ffc0000-0ffe0000 r-xp 00000000 08:13 2881570                            /lib/ld-2.5.so
> 0ffe0000-0fff0000 r--p 00010000 08:13 2881570                            /lib/ld-2.5.so
> 0fff0000-10000000 rw-p 00020000 08:13 2881570                            /lib/ld-2.5.so
> 10000000-10020000 r-xp 00000000 08:13 15058799                           /sbin/o2image
> 10020000-10030000 rw-p 00010000 08:13 15058799                           /sbin/o2image
> 10030000-10060000 rwxp 10030000 00:00 0                                  [heap]
> f7680000-f7ff0000 rw-p f7680000 00:00 0
> ffc60000-ffdb0000 rw-p ffc60000 00:00 0                                  [stack]
> Aborted (core dumped)
>
> I have the core file, if you need it.
>
> Here is some information about the fs in question.
> It is used to store Oracle Archive Logs and also to store the rman backup of the DB
> In the last crash case the fs became full while rman was running. Maybe we can estimate from
> this the size of the write in that particular case. Oracle DB rman backup files are from 7 to 11Gb.
> Maybe Oracle DataGuard was also using on the same fs.
> After the crash, when we rebooted the servers, they would crash again. We then noticed that
> the fs was full and we removed some unneeded files.
>
> The system has crashed a couple more times when the above conditions may not have been the same.
>
> Thanks,
>
> George
>
> ________________________________________
> From: Sunil Mushran
> Sent: Friday, September 02, 2011 8:24 PM
> To: Betzos Giorgos
> Cc: ocfs2-users at oss.oracle.com
> Subject: Re: [Ocfs2-users] Linux kernel crash due to ocfs2
>
> Can you provide me with the o2image. It includes the entire fs metadata.
> The size of the image file depends on the number of files/dirs.
>
> # o2image /dev/sdX  /path/to/image/file
>
> So the error is clear. We have underestimated the amount of credits
> (num of blocks that need to be dirtied in that transaction). This is the most
> common write path in the fs and thus hit heavily. So I am surprised by this.
>
> One way to fix it is by reproducing it inhouse. And having the image will allow
> us to mount the fs and reproduce the issue. Do you know the size of the write?
>
> On 09/02/2011 07:23 AM, Betzos Giorgos wrote:
>> Hello,
>>
>> we have a pair of IBM P570 servers running RHEL5.2
>> kernel 2.6.18-92.el5.ppc64
>> We have Oracle RAC on ocfs2 storage
>> ocfs2 is 1.4.7-1 for the above kernel (downloaded from oracle oss site)
>>
>> Recently both servers have been crashing with the following error:
>>
>> Assertion failure in journal_dirty_metadata() at
>> fs/jbd/transaction.c:1130: "handle->h_buffer_credits>   0"
>> kernel BUG in journal_dirty_metadata at fs/jbd/transaction.c:1130!
>>
>> We get some kind of kernel debug prompt.
>>
>> the stack is as follows:
>>
>> .ocfs2_journal_dirty+0x78/0x13c [ocfs2]
>> .ocfs2_search_chain+0x131c/0x165c [ocfs2]
>> .ocfs2_claim_suballoc_bits+0xadc/0xd94 [ocfs2]
>> .__ocfs2_claim_clusters+0x1b0/0x348 [ocfs2]
>> .ocf2_do_extend_allocation+0x1f8/0x5b4 [ocfs2]
>> .ocfs2_write_cluster_by_desc+0x128/0x850 [ocfs2]
>> .ocfs2_write_begin_nolock+0xdc0/0xfbc [ocfs2]
>> .ocfs2_write_begin+0x124/0x224 [ocfs2]
>> .ocfs2_file_aio_write+0x6a4/0xb40 [ocfs2]
>> .aio_pwrite+0x50/0xb4
>> .aio_run_iocb+0x140/0x214
>> .io_submit_one+0x2fc/0x3a8
>> .sys_io_submit+0xd0/0x17c
>> syscall_exit+0x0/0x40
>>
>> In the last crash case, the file system was full.
>>
>> Any clues?
>>
>> There seems to be a ocfs2 kernel patch some time ago for the 2.6.20.2
>> kernel that fixed some journal credits updates.
>>
>> Is this another bug?
>>
>> Any help will be greatly appreciated, because this is a production
>> system.
>>
>> Thanks,
>>
>> George




More information about the Ocfs2-users mailing list