Andrew Morton wrote: > Where queue_requests_store() does wake_up(&rl->wait[READ]); > > It looks like nobody has called blk_init_queue() for this queue and the > waitqueue head is uninitialised. > DM, MD, rd and loop use blk_alloc_queue and blk_queue_make_request to initialize their queue, because they only use the make_request_fn. The attached patch prevents the queue from being registered if only blk_alloc_queue was called. Mike Christie