gjournal crash with external usb drive after unclean shutdown

From: Marc UBM Bocklet <ubm.freebsd_at_googlemail.com>
Date: Sun, 8 Nov 2009 12:43:30 +0100
Hiho! :-)

Following an unclean shutdown (panic, related to a bad network card in
another machine), my gjournaled external usb drive reliably crashes my
system when I connect it. I got a core dump available for poking around
further. Textdump info is attached. I'm not sure if the disk is dying
or the journal somehow got into a really bad state. textdump is
available on request! :-)


Some information:

FreeBSD greatsheep.chaos.base 9.0-CURRENT FreeBSD 9.0-CURRENT #16: Fri
Sep 25 19:16:18 CEST 2009
sheep_at_ubm.mine.nu:/usr/obj/usr/src/sys/SUBMARINE_SMP  i386


Panic message:

Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0x8a6c7000
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0x8086d3fe
stack pointer           = 0x28:0xdc71e964
frame pointer           = 0x28:0xdc71e9e0
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 2087 (g_journal da0)



kgdb backtrace:

(kgdb) bt
#0  doadump () at pcpu.h:246
#1  0x804a4509 in db_fncall (dummy1=1, dummy2=0, dummy3=-2137208096,
#dummy4=0xdc71e6fc "") at /usr/src/sys/ddb/db_command.c:548 2
#0x804a4901 in db_command (last_cmdp=0x809495bc, cmd_table=0x0,
#dopager=1) at /usr/src/sys/ddb/db_command.c:445 3  0x804a4a5a in
#db_command_loop () at /usr/src/sys/ddb/db_command.c:498 4  0x804a68cd
#in db_trap (type=12, code=0) at /usr/src/sys/ddb/db_main.c:229 5
#0x806358e6 in kdb_trap (type=12, code=0, tf=0xdc71e924)
#at /usr/src/sys/kern/subr_kdb.c:535 6  0x8086f40f in trap_fatal
#(frame=0xdc71e924, eva=2322362368)
#at /usr/src/sys/i386/i386/trap.c:929 7  0x8086f6b0 in trap_pfault
#(frame=0xdc71e924, usermode=0, eva=2322362368)
#at /usr/src/sys/i386/i386/trap.c:851 8  0x808700c3 in trap
#(frame=0xdc71e924) at /usr/src/sys/i386/i386/trap.c:533 9  0x80852feb
#in calltrap () at /usr/src/sys/i386/i386/exception.s:165 10 0x8086d3fe
#in generic_bcopy () at /usr/src/sys/i386/i386/support.s:498
Previous frame inner to this frame (corrupt stack?)



dmesg lines leading up to the panic:

ugen2.2: <Western Digital> at usbus2
umass0: <Western Digital External HDD, class 0/0, rev 2.00/1.08, addr
2> on usbus2 umass0:  SCSI over Bulk-Only; quirks = 0x0800
umass0:1:0:-1: Attached to scbus1
da0 at umass-sim0 bus 0 scbus1 target 0 lun 0
da0: <WD 2500BB External 0108> Fixed Direct Access SCSI-0 device 
da0: 40.000MB/s transfers
da0: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C)
GEOM_JOURNAL: Journal 1159150689: da0 contains data.
GEOM_JOURNAL: Journal 1159150689: da0 contains journal.
GEOM_JOURNAL: Journal da0 consistent.
(da0:umass-sim0:0:0:0): SYNCHRONIZE CACHE(10). CDB: 35 0 0 0 0 0 0 0 0
0 (da0:umass-sim0:0:0:0): CAM Status: SCSI Status Error
(da0:umass-sim0:0:0:0): SCSI Status: Check Condition
(da0:umass-sim0:0:0:0): ILLEGAL REQUEST asc:20,0
(da0:umass-sim0:0:0:0): Invalid command operation code
(da0:umass-sim0:0:0:0): Unretryable error
GEOM_JOURNAL: BIO_FLUSH not supported by da0.
GEOM_JOURNAL: Error while reading data from da0 (error=5).
GEOM_JOURNAL: Error while reading data from da0 (error=5).



Any help or pointers are appreciated, thanks in advance! :-)


Bye
Marc
Received on Sun Nov 08 2009 - 10:43:34 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:57 UTC