NVMe: Fix potential corruption on sync commands
authorKeith Busch <keith.busch@intel.com>
Thu, 19 Feb 2015 21:29:48 +0000 (14:29 -0700)
committerKeith Busch <keith.busch@intel.com>
Thu, 19 Feb 2015 23:15:38 +0000 (16:15 -0700)
commit0c0f9b95c8b710b74772edd9693fe7ab5419a75a
tree222cbbadbeec1a193e380d6d18ef4b95122b45fb
parent483285184059b3f5b3a5707977349528abc82441
NVMe: Fix potential corruption on sync commands

This makes all sync commands uninterruptible and schedules without timeout
so the controller either has to post a completion or the timeout recovery
fails the command. This fixes potential memory or data corruption from
a command timing out too early or woken by a signal. Previously any DMA
buffers mapped for that command would have been released even though we
don't know what the controller is planning to do with those addresses.

Signed-off-by: Keith Busch <keith.busch@intel.com>
drivers/block/nvme-core.c