On Mon, Dec 12, 2016 at 2:03 PM, Tejun Heo <[email protected]> wrote: > Hello, Michal. > > On Fri, Dec 09, 2016 at 04:12:29PM +0100, Michal Hocko wrote: >> At first I thought this would be related to you recent work >> http://lkml.kernel.org/r/[email protected] >> but that doesn't seem to be in the linux-next I am using as a base. >> io_schedule_timeout is on the stack though so you might have an idea >> what is going on here. That might_sleep check has been added a long ago >> 02e7cf8f8488 ("ide-cd,atapi: use bio for internal commands") in 2.6.31 >> so I am wondering what has changed since than. > > 10d784eae2b4 ("sched: always use blk_schedule_flush_plug in > io_schedule_out") seems related. might_sleep is complaining that it's > being called while !TASK_RUNNING. Shaohua, any ideas?
Yeah, it is pretty much similar to the one I fixed for networking: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=d9dc8b0f8b4ec8cdc48ad5a20a3105387138be82 But in your case, it is complicated because of the wait bits API.

