• K
    NVMe: RCU protected access to io queues · 5a92e700
    Keith Busch 提交于
    This adds rcu protected access to nvme_queue to fix a race between a
    surprise removal freeing the queue and a thread with open reference on
    a NVMe block device using that queue.
    
    The queues do not need to be rcu protected during the initialization or
    shutdown parts, so I've added a helper function for raw deferencing
    to get around the sparse errors.
    
    There is still a hole in the IOCTL path for the same problem, which is
    fixed in a subsequent patch.
    Signed-off-by: NKeith Busch <keith.busch@intel.com>
    Signed-off-by: NMatthew Wilcox <matthew.r.wilcox@intel.com>
    5a92e700
nvme-core.c 64.7 KB