All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/2] blk-mq: fix oops caused by CPU hotplug
@ 2015-04-21  2:00 Ming Lei
  2015-04-21  2:00 ` [PATCH v1 1/2] blk-mq: fix race between timeout and " Ming Lei
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Ming Lei @ 2015-04-21  2:00 UTC (permalink / raw)
  To: Jens Axboe, linux-kernel; +Cc: Christoph Hellwig, Al Viro, Maxim Patlasov

Hi Guys,

Dongsu Park reported[1] that kernel oops can be triggered easily by
CPU plug when there is pending I/O on virtio-scsi.

Turns out two problems exist in blk-mq core code and both can trigger
oops by CPU plug:
        - timeout handling vs CPU hotplug, especially unmapped hw queue tags
        is still touched by timeout handler
        - in case of shared tags, there is one bug about setting and checking
        hctx->tags during CPU hotplug

The two patches fix the two problem, and Dongsu has verified that
the oops is fixed with the two patches too.

[1], http://marc.info/?t=142926389200008&r=1&w=2

V1:
	- update comment
	- moving tags allocation in blk_mq_map_swqueue() because
	unmapped hw queue can be remapped after CPU topo is changed

 block/blk-mq.c |   50 ++++++++++++++++++++++++++------------------------
 1 file changed, 26 insertions(+), 24 deletions(-)


Thanks,
Ming Lei


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-04-23 16:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-21  2:00 [PATCH v1 0/2] blk-mq: fix oops caused by CPU hotplug Ming Lei
2015-04-21  2:00 ` [PATCH v1 1/2] blk-mq: fix race between timeout and " Ming Lei
2015-04-21  2:00 ` [PATCH v1 2/2] blk-mq: fix CPU hotplug handling Ming Lei
2015-04-23 16:27 ` [PATCH v1 0/2] blk-mq: fix oops caused by CPU hotplug Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.