Hello, Alan. On Sat, Mar 17, 2012 at 7:39 AM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > I don't know where disk_clear_events() gets called. For example, is it > called by a user task when opening or closing a file or device? If so > then it is freezable, which means that if a system sleep transition has > already started, the routine can't afford to wait until the sleep is > over. Ah, okay. Thanks for the explanation, so it's a problem of dependency between freezable tasks. Oliver, have you actually succeeded at triggering the problem or is it just from reading the code? check_disk_change() is only called from ->open() which is usually called from userland tasks and userland tasks are frozen before kthreads, so I don't think the problem can be triggered under usual conditions. If necessary at all, the proper fix would be not using freezable workqueue and explicitly block/unblock disk events from pm callbacks (prolly new pm notifier hooks). Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html