Re: HFS bug in 2.6.1-rc1-ben1 ?
Roman Zippel a écrit :
Hi,
eric.bachard@b.org wrote:
Jan 7 09:05:41 alube kernel: Oops: Exception in kernel mode, sig: 5 [#1]
Jan 7 09:05:41 alube kernel: NIP: C0057FC0 LR: C0057F7C SP: E8FC1C40
REGS: e8fc1b90 TRAP: 0700 Not tainted
Unfortunately some important information is missing, especially the
symbol of the NIP register is missing.
Sorry...
Could you run "gdb vmlinux" and then "disas 0xC0057FC0" and send me the
disassembly output?
gdb /boot/noyau2.6.1-rc1-ben1
Give me :
(gdb) disas 0xC0057FC0
Dump of assembler code for function __getblk_slow:
0xc0057f38 <__getblk_slow>: mfcr r12
0xc0057f3c <__getblk_slow+4>: stwu r1,-48(r1)
0xc0057f40 <__getblk_slow+8>: mflr r0
0xc0057f44 <__getblk_slow+12>: stw r0,52(r1)
0xc0057f48 <__getblk_slow+16>: stmw r27,28(r1)
0xc0057f4c <__getblk_slow+20>: addi r0,r7,-512
0xc0057f50 <__getblk_slow+24>: stw r12,24(r1)
0xc0057f54 <__getblk_slow+28>: mr r30,r7
0xc0057f58 <__getblk_slow+32>: mr r29,r3
0xc0057f5c <__getblk_slow+36>: mr r27,r5
0xc0057f60 <__getblk_slow+40>: mr r28,r6
0xc0057f64 <__getblk_slow+44>: cmplwi cr4,r0,3584
0xc0057f68 <__getblk_slow+48>: mr r3,r29
0xc0057f6c <__getblk_slow+52>: mr r5,r27
0xc0057f70 <__getblk_slow+56>: mr r6,r28
0xc0057f74 <__getblk_slow+60>: mr r7,r30
0xc0057f78 <__getblk_slow+64>: bl 0xc00583b0 <__find_get_block>
0xc0057f7c <__getblk_slow+68>: cmpwi r3,0
0xc0057f80 <__getblk_slow+72>: bne- 0xc0058048 <__getblk_slow+272>
0xc0057f84 <__getblk_slow+76>: lwz r9,60(r29)
0xc0057f88 <__getblk_slow+80>: mr r4,r28
0xc0057f8c <__getblk_slow+84>: li r11,512
0xc0057f90 <__getblk_slow+88>: lwz r9,36(r9)
0xc0057f94 <__getblk_slow+92>: cmpwi r9,0
0xc0057f98 <__getblk_slow+96>: beq- 0xc0057fac <__getblk_slow+116>
0xc0057f9c <__getblk_slow+100>: lhz r0,398(r9)
0xc0057fa0 <__getblk_slow+104>: cmpwi r0,0
0xc0057fa4 <__getblk_slow+108>: beq- 0xc0057fac <__getblk_slow+116>
0xc0057fa8 <__getblk_slow+112>: mr r11,r0
0xc0057fac <__getblk_slow+116>: addi r0,r11,-1
0xc0057fb0 <__getblk_slow+120>: and. r9,r30,r0
0xc0057fb4 <__getblk_slow+124>: beq- 0xc0057fbc <__getblk_slow+132>
0xc0057fb8 <__getblk_slow+128>: twi 31,r0,0
0xc0057fbc <__getblk_slow+132>: ble- cr4,0xc0057fc4 <__getblk_slow+140>
0xc0057fc0 <__getblk_slow+136>: twi 31,r0,0
0xc0057fc4 <__getblk_slow+140>: li r9,-1
0xc0057fc8 <__getblk_slow+144>: addi r9,r9,1
0xc0057fcc <__getblk_slow+148>: slw r0,r30,r9
0xc0057fd0 <__getblk_slow+152>: cmplwi r0,4095
0xc0057fd4 <__getblk_slow+156>: ble+ 0xc0057fc8 <__getblk_slow+144>
0xc0057fd8 <__getblk_slow+160>: srw r5,r4,r9
0xc0057fdc <__getblk_slow+164>: mr r3,r29
0xc0057fe0 <__getblk_slow+168>: slw r4,r5,r9
0xc0057fe4 <__getblk_slow+172>: mr r6,r30
0xc0057fe8 <__getblk_slow+176>: bl 0xc0057ddc <grow_dev_page>
0xc0057fec <__getblk_slow+180>: cmpwi r3,0
0xc0057ff0 <__getblk_slow+184>: mr r31,r3
0xc0057ff4 <__getblk_slow+188>: beq- 0xc0058040 <__getblk_slow+264>
0xc0057ff8 <__getblk_slow+192>: bl 0xc0037f20 <unlock_page>
0xc0057ffc <__getblk_slow+196>: lwz r0,0(r31)
0xc0058000 <__getblk_slow+200>: andi. r9,r0,2048
0xc0058004 <__getblk_slow+204>: bne- 0xc0057f68 <__getblk_slow+48>
0xc0058008 <__getblk_slow+208>: mr r9,r31
0xc005800c <__getblk_slow+212>: lwzu r0,4(r9)
0xc0058010 <__getblk_slow+216>: subfic r11,r0,0
0xc0058014 <__getblk_slow+220>: adde r0,r11,r0
0xc0058018 <__getblk_slow+224>: twnei r0,0
0xc005801c <__getblk_slow+228>: lwarx r11,r0,r9
0xc0058020 <__getblk_slow+232>: addic r11,r11,-1
0xc0058024 <__getblk_slow+236>: stwcx. r11,r0,r9
0xc0058028 <__getblk_slow+240>: bne- 0xc005801c <__getblk_slow+228>
0xc005802c <__getblk_slow+244>: cmpwi r11,0
0xc0058030 <__getblk_slow+248>: bne+ 0xc0057f68 <__getblk_slow+48>
0xc0058034 <__getblk_slow+252>: mr r3,r31
0xc0058038 <__getblk_slow+256>: bl 0xc00414cc <__page_cache_release>
0xc005803c <__getblk_slow+260>: b 0xc0057f68 <__getblk_slow+48>
0xc0058040 <__getblk_slow+264>: bl 0xc0057324 <free_more_memory>
0xc0058044 <__getblk_slow+268>: b 0xc0057f68 <__getblk_slow+48>
0xc0058048 <__getblk_slow+272>: lwz r0,52(r1)
0xc005804c <__getblk_slow+276>: lmw r27,28(r1)
0xc0058050 <__getblk_slow+280>: lwz r12,24(r1)
0xc0058054 <__getblk_slow+284>: addi r1,r1,48
0xc0058058 <__getblk_slow+288>: mtlr r0
0xc005805c <__getblk_slow+292>: mtcrf 8,r12
0xc0058060 <__getblk_slow+296>: blr
End of assembler dump.
(gdb)
Could you also check the log files, whether you see a "bs: ..." print
before the oops?
Sorry, but I could'nt find the "bs: "string you want (?)
FYI : tested with egrep -H -R "bs:" /var/log/*
Above what I'be found with cat /var/log/syslog (the end only :-) ):
Jan 9 18:19:17 alube kernel: size: 4194304,62916384
Jan 9 18:19:17 alube kernel: kernel BUG in grow_buffers at
fs/buffer.c:1189!
Jan 9 18:19:17 alube kernel: Oops: Exception in kernel mode, sig: 5 [#1]
Jan 9 18:19:17 alube kernel: NIP: C0057FC0 LR: C0057F7C SP: E6EEFC40
REGS: e6eefb90 TRAP: 0700 Not tainted
Jan 9 18:19:17 alube kernel: MSR: 00029032 EE: 1 PR: 0 FP: 0 ME: 1
IR/DR: 11
Jan 9 18:19:17 alube kernel: TASK = ef74dc00[1012] 'mount' Last
syscall: 21
Jan 9 18:19:17 alube kernel: GPR00: 000001FF E6EEFC40 EF74DC00 00000000
00000000 00000003 00000000 00000000
Jan 9 18:19:17 alube kernel: GPR08: 0000001C 00000000 00000000 00000200
22004422 1002ADF0 10050000 100C0000
Jan 9 18:19:17 alube kernel: GPR16: 00000000 00000000 00000000 00000000
7FFFFE7F 00000000 10020000 00000000
Jan 9 18:19:17 alube kernel: GPR24: 7FFFFE8A E6EEFEB0 00000000 00000200
00000000 EFFF66C0 00000000 EE809200
Jan 9 18:19:17 alube kernel: Call trace:
Jan 9 18:19:17 alube kernel: [c0058530] __getblk+0x5c/0x64
Jan 9 18:19:17 alube kernel: [c0058590] __bread+0x10/0x40
Jan 9 18:19:17 alube kernel: [c00c696c] hfs_mdb_get+0xa4/0x6bc
Jan 9 18:19:17 alube kernel: [c00c7cc0] hfs_fill_super+0x94/0x1a4
Jan 9 18:19:17 alube kernel: [c005d1b0] get_sb_bdev+0x128/0x180
Jan 9 18:19:17 alube kernel: [c00c7de8] hfs_get_sb+0x18/0x28
Jan 9 18:19:17 alube kernel: [c005d484] do_kern_mount+0x64/0x178
Jan 9 18:19:17 alube kernel: [c0073914] do_add_mount+0x8c/0x1b8
Jan 9 18:19:17 alube kernel: [c0073cc4] do_mount+0x174/0x1ac
Jan 9 18:19:17 alube kernel: [c00740dc] sys_mount+0xa4/0xf4
Jan 9 18:19:17 alube kernel: [c0007c1c] ret_from_syscall+0x0/0x44
If this can help you, I've done too a
strace -o buggy.txt mount -t hfs /dev/hda11 /macos9
buggy.txt contains :
execve("/bin/mount", ["mount", "-t", "hfs", "/dev/hda11", "/macos9"],
[/* 16 vars */]) = 0
uname({sys="Linux", node="alube", ...}) = 0
brk(0) = 0x10025000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=66826, ...}) = 0
mmap(NULL, 66826, PROT_READ, MAP_PRIVATE, 3, 0) = 0x30027000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or
directory)
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\1\322"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=1292388, ...}) = 0
mmap(0xfea3000, 1363944, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xfea3000
mprotect(0xffd4000, 114664, PROT_NONE) = 0
mmap(0xffe3000, 45056, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED, 3, 0x130000) = 0xffe3000
mmap(0xffee000, 8168, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffee000
close(3) = 0
munmap(0x30027000, 66826) = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1683616, ...}) = 0
mmap2(NULL, 1683616, PROT_READ, MAP_PRIVATE, 3, 0) = 0x30027000
close(3) = 0
brk(0) = 0x10025000
brk(0x10046000) = 0x10046000
brk(0) = 0x10046000
umask(033) = 022
open("/dev/null", O_RDWR|O_LARGEFILE) = 3
close(3) = 0
getuid() = 0
geteuid() = 0
lstat64("/etc/mtab", {st_mode=S_IFREG|0644, st_size=263, ...}) = 0
stat64("/sbin/mount.hfs", 0x7ffffab8) = -1 ENOENT (No such file or
directory)
rt_sigprocmask(SIG_BLOCK, ~[TRAP SEGV], NULL, 8) = 0
mount("/dev/hda11", "/macos9", "hfs", 0xc0ed0000, 0 <unfinished ...>
+++ killed by SIGTRAP +++
Hope this can help you
Best regards, eric
--
NO ePATENTS / NON AUX BREVETS SUR LES LOGICIELS. See / Voir
http://swpat.ffii.org/
eric bachard
Reply to: