On Mon, Apr 30, 2012 at 2:58 PM, Martin Mokrejs <mmokrejs@xxxxxxxxxxxxxxxxxx> wrote: > Martin Mokrejs wrote: >> Hi, >> I was removing an ExpressCard with a NEC chipset used by xhci_hcd and the kernel crashed >> on my Dell Vostro 3550 laptop. Its express slot chipset somehow does not report properly >> that a card was unplugged, as discussed earlier here on linux-pci under Subject >> "Re: 3.2.11: PCI Express card cannot be re-detected withing cca 60sec timeframe". >> >> Maybe this helps somebody to find the cause? Here is a bit of the attached Oops snapshot >> stacktrace: >> >> klist_del >> fdevice_del >> device_unregister >> pci_stop_bus_device >> pci_stop_and_remove_bus_device >> devehp_unconfigure_device >> pciehp_disable_slot >> ? pciehp_disable_slot >> pciehp_power_thread >> process_one_work >> worker_thriad >> ? manage_workers.clone >> ? manage_workers.clone >> kthrerd >> ... > > This is 100% reproducible. It happens with 3.4-rc5 and 3.3.4 kernels while not with 3.2.14. > I did not have the external enclosure earlier but repeated unplugs/re-plugs of the NEC-based > expresscard were/are just not enough to trigger the Oops. One needs the ASMedia2105 in addition. > > To hit the Ooops, the disk has to be *RE-detected* and unplugged (so not its very first plugin). > Express card removal after the very first plugin says usually something about the surprise > removal. When I re-plug the disk, it gets detected, and it removal hits the Ooops. I am attaching > dmesg from 3.2.14 kernel which does not have the problem. You can see how many times I did remove > and re-plug the card. If I waited long ebough for xhci_hcd to timeout waiting for the unplugged > device, it says > > xhci_hcd 0000:11:00.0: Timeout while waiting for configure endpoint command > xHCI xhci_drop_endpoint called for root hub > xHCI xhci_check_bandwidth called for root hub > xhci_hcd 0000:11:00.0: USB bus 5 deregistered > xhci_hcd 0000:11:00.0: PCI INT A disabled > > and then, subsequent re-plug of the card with the disk attached results in detected SCSI device. > In contrast, if I re-plug the express card earlier express card slot change is reported but the > disc is not detected (something is blocked in xhci_hcd I think). > > The above stacktrace (of actually the camera snapshot is not the first stacktrace, unfortunately). > I see there are 2-3 screen scrolled away. Hmm, but I do not have anything what could be used as > a remote console ... So if you use "echo 1 > /sys/.../0000:11.00.0/remove" before surprise remove the card, the oops would not happen? Yinghai -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html