Re: possible issue in: Block: use a freezable workqueue for disk-event polling (62d3c5439c534b0e6c653fc63e6d8c67be3a57b1)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux