panic after removing usb flash drive

Kyle Brooks captinsmock at columbus.rr.com
Wed Aug 31 19:38:49 GMT 2005


On Wed, 2005-08-31 at 19:33 +0000, Ben Kaduk wrote:
> 
> 
> On 8/31/05, Kyle Brooks <captinsmock at columbus.rr.com> wrote:
>         On Wed, 2005-08-31 at 03:04 +0000, Ben Kaduk wrote:
>         >
>         >
>         > On 8/31/05, Kyle Brooks <captinsmock at columbus.rr.com> wrote:
>         >         umass0: LEXAR MEDIA JUMPDRIVE2, rev 2.00/1.25, addr
>         2
>         >         umass0: at uhub4 port 6 (addr 2) disconnected
>         >         panic: vm_fault: fault on nofault entry, addr:
>         deadc000
>         >
>         >         kernel:
>         >
>         >         FreeBSD 7.0-CURRENT #2: Mon Aug 29 00:39:21 UTC 2005
>         >
>         >         problem:
>         >
>         >         kernel panics when usb flash drive is removed
>         >
>         >         backtrace:
>         >
>         >         #0  doadump () at pcpu.h:165 
>         >         #1  0xc068610e in boot (howto=260)
>         >         at /usr/src/sys/kern/kern_shutdown.c:397
>         >         #2  0xc0685b92 in panic (
>         >             fmt=0xc090e46c "vm_fault: fault on nofault
>         entry, addr: %
>         >         lx")
>         >             at /usr/src/sys/kern/kern_shutdown.c:553
>         >         #3  0xc0812de1 in vm_fault (map=0xc1060000,
>         vaddr=3735928832, 
>         >             fault_type=2 '\002', fault_flags=0)
>         >         at /usr/src/sys/vm/vm_fault.c:884
>         >         #4  0xc0888807 in trap_pfault (frame=0xe6a06bf0,
>         usermode=0,
>         >         eva=3735929110)
>         >             at /usr/src/sys/i386/i386/trap.c:741 
>         >         #5  0xc0888d04 in trap (frame=
>         >               {tf_fs = 8, tf_es = -1063649240, tf_ds = 40,
>         tf_edi =
>         >         -993875968,
>         >         tf_esi = -1014223872, tf_ebp = -425694000, tf_isp =
>         >         -425694180, tf_ebx =
>         >         -1063640044, tf_edx = -993875900, tf_ecx = 0, tf_eax
>         = 
>         >         -559038242,
>         >         tf_trapno = 12, tf_err = 2, tf_eip = -1069194040,
>         tf_cs = 32,
>         >         tf_eflags
>         >         = 66050, tf_esp = -1063640032, tf_ss = 0})
>         >         at /usr/src/sys/i386/i386/trap.c:442 
>         >         #6  0xc08745ba in calltrap ()
>         >         at /usr/src/sys/i386/i386/exception.s:139
>         >         #7  0x00000008 in ?? ()
>         >         #8  0xc09a0028 in atdma_acpi_driver_mod ()
>         >         #9  0x00000028 in ?? () 
>         >         #10 0xc4c2a800 in ?? ()
>         >         #11 0xc38c2c00 in ?? ()
>         >         #12 0xe6a06cd0 in ?? ()
>         >         #13 0xe6a06c1c in ?? ()
>         >         ---Type <return> to continue, or q <return> to
>         quit--- 
>         >         #14 0xc09a2414 in xsoftc ()
>         >         #15 0xc4c2a844 in ?? ()
>         >         #16 0x00000000 in ?? ()
>         >         #17 0xdeadc0de in ?? ()
>         >         #18 0x0000000c in ?? ()
>         >         #19 0x00000002 in ?? () 
>         >         #20 0xc04564c8 in camisr (V_queue=0xc09a2414)
>         >             at /usr/src/sys/cam/cam_xpt.c:7066
>         >         #21 0xc066f84e in ithread_loop (arg=0xc356fa80)
>         >             at /usr/src/sys/kern/kern_intr.c:545 
>         >         #22 0xc066e808 in fork_exit (callout=0xc066f665
>         >         <ithread_loop>, arg=0x0,
>         >             frame=0x0) at /usr/src/sys/kern/kern_fork.c:789
>         >         #23 0xc087461c in fork_trampoline () 
>         >         at /usr/src/sys/i386/i386/exception.s:208
>         >
>         >         _______________________________________________
>         >         freebsd-current at freebsd.org mailing list
>         >
>         http://lists.freebsd.org/mailman/listinfo/freebsd-current
>         >         To unsubscribe, send any mail to
>         >         " freebsd-current-unsubscribe at freebsd.org"
>         >
>         > This is the expected behaviour if you didn't unmount the
>         filesystem on
>         > the thumbdrive before removing it.  There was some
>         discussion on this 
>         > a while ago (but I don't seem to be able to find the exact
>         posts), but
>         > the general idea is that the kernel has no idea in what
>         state the
>         > actual physical medium (disc) is/was in after being pulled,
>         and may 
>         > have some stale buffers holding data that got written to
>         disk.  It
>         > doesn't know what to do with this data, or how to treat
>         requests to
>         > that device, so it panics.
>         >
>         > Of course, if you did unmount the filesystem before pulling
>         the drive, 
>         > then this shoule be looked into.
>         >
>         > Ben Kaduk
>         
>         I was never able to mount the device, it was detected as
>         umass0, then i
>         removed it nothing else, it was not mounted sorry for not
>         specifying.
>         
> 
> Curious.  It turns out that my original explanation was in error,
> Scott Long has posted an excellent explanation of the bug I was
> attempting to describe, on freebsd-current at freebsd.org, recently:
> http://lists.freebsd.org/pipermail/freebsd-current/2005-August/055036.html
> 
> I suspect that other, more qualified people will be interested in
> tracking down what's happening with your system -- perhaps you should
> post again to -current with what you just told me.
> 
> Sorry if I have been misleading
> 
> Ben Kaduk

It no longer panics when removed if you wait for these messages to
appear.  Sorry for missing this.



More information about the freebsd-current mailing list