Date: Mon, 15 Sep 2008 21:32:43 GMT From: Paul <onemda@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/127411: ata panics on bad block Message-ID: <200809152132.m8FLWh6b040450@www.freebsd.org> Resent-Message-ID: <200809152140.m8FLe8FF078188@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 127411 >Category: kern >Synopsis: ata panics on bad block >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Sep 15 21:40:08 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Paul >Release: FreeBSD 8.0 CURRENT >Organization: >Environment: FreeBSD dhcppc3 8.0-CURRENT FreeBSD 8.0-CURRENT #2: Sat Sep 13 21:02:53 CEST 2008 root@root:/usr/local/obj/usr/local/src/sys/KERNEL i386 >Description: Panic happen when trying to read hard disk sector with bad block; bt: db:0:kdb.enter.unknown> run lockinfo db:1:lockinfo> show locks db:1:locks> show alllocks Process 811 (dd) thread 0xc425f000 (100057) db:1:alllocks> show lockedvnods Locked vnodes db:0:kdb.enter.unknown> show pcpu cpuid = 0 curthread = 0xc3cac230: pid 3 "g_up" curpcb = 0xc3988d90 fpcurthread = none idlethread = 0xc3cacd20: pid 10 "idle: cpu0" APIC ID = 0 currentldt = 0x50 spin locks held: db:0:kdb.enter.unknown> bt Tracing pid 3 tid 100007 td 0xc3cac230 ata_completed(c3ed9258,c073eac8,24c,c06c163a,64,...) at ata_completed+0x309 g_io_schedule_up(c3cac230,0,c06c42a1,5d,0,...) at g_io_schedule_up+0x59 g_up_procbody(0,c3988d38,c06c74d8,322,c3caa538,...) at g_up_procbody+0x8d fork_exit(c0481ec0,0,c3988d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc3988d70, ebp = 0 --- Part of dmesg output: ad4: FAILURE - READ_DMA status=51<READY,DSC,ERROR> error=40<UNCORRECTABLE> Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x0 fault code = supervisor read, page not present instruction pointer = 0x20:0xc0458f79 stack pointer = 0x28:0xc3988c84 frame pointer = 0x28:0xc3988cbc 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 = 3 (g_up) exclusive lockmgr bufwait (bufwait) r = 0 (0xd7ce5890) locked @ /usr/local/src/sys/vm/vm_pager.c:313 >How-To-Repeat: # dd if=/dev/ad4 of=/dev/null or # dd if=/dev/ad4 of=/dev/null bs=1m iseek=X X is where bad blocks are located. >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200809152132.m8FLWh6b040450>