On Fri, 2013-07-26 at 09:54 -0700, Andy Lutomirski wrote: > This is kernel 3.9.9-302.fc19.x86_64. > > I plugged in a BN Nook (a usb mass storage device), used it, and > ejected it. This makes suspend fail: > > [50135.265514] PM: Entering freeze sleep > [50135.265517] Suspending console(s) (use no_console_suspend to debug) > [50135.287724] sd 7:0:0:0: [sdb] Synchronizing SCSI cache > [50135.290413] sd 7:0:0:0: [sdb] > [50135.290415] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE > [50135.290418] sd 7:0:0:0: [sdb] > [50135.290422] Sense Key : Not Ready [current] > [50135.290424] sd 7:0:0:0: [sdb] > [50135.290429] Add. Sense: Medium not present > [50135.290448] dpm_run_callback(): scsi_bus_suspend+0x0/0x40 returns -5 > [50135.290454] PM: Device 7:0:0:0 failed to suspend async: error -5 > [50138.486917] PM: Some devices failed to suspend > [50138.525007] PM: resume of devices complete after 38.132 msecs > [50138.525315] pci_pm_runtime_suspend(): > hcd_pci_runtime_suspend+0x0/0x50 returns -16 > [50138.536357] PM: Finishing wakeup. > > Experimenting a bit, here's what happens. > > - Plug in device (so it's working). Suspend works. > - eject /dev/sdb. Suspend fails. > - Physically unplug the device. Suspend works again. Hi, this looks like a logical error in sd_suspend(). It should ignore errors due to missing media (or offlined devices) Regards Oliver