NVMe: Fix hot cpu notification dead lock
authorKeith Busch <keith.busch@intel.com>
Wed, 11 Jun 2014 17:51:35 +0000 (11:51 -0600)
committerMatthew Wilcox <matthew.r.wilcox@intel.com>
Fri, 13 Jun 2014 14:43:34 +0000 (10:43 -0400)
commitf3db22feb5de6b98b7bae924c2d4b6c8d65bedae
tree1a2fc6e5dd199f15280a40aae824ac41b72177b7
parentbd67608a6127c994e897c49cc4f72d9095925301
NVMe: Fix hot cpu notification dead lock

There is a potential dead lock if a cpu event occurs during nvme probe
since it registered with hot cpu notification. This fixes the race by
having the module register with notification outside of probe rather
than have each device register.

The actual work is done in a scheduled work queue instead of in the
notifier since assigning IO queues has the potential to block if the
driver creates additional queues.

Signed-off-by: Keith Busch <keith.busch@intel.com>
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
drivers/block/nvme-core.c
include/linux/nvme.h