• Keith Busch's avatar
    NVMe: add sysfs and ioctl controller reset · 4cc06521
    Keith Busch authored
    We need the ability to perform an nvme controller reset as discussed on
    the mailing list thread:
    
      http://lists.infradead.org/pipermail/linux-nvme/2015-March/001585.html
    
    This adds a sysfs entry that when written to will reset perform an NVMe
    controller reset if the controller was successfully initialized in the
    first place.
    
    This also adds locking around resetting the device in the async probe
    method so the driver can't schedule two resets.
    Signed-off-by: default avatarKeith Busch <keith.busch@intel.com>
    Cc: Brandon Schultz <brandon.schulz@hgst.com>
    Cc: David Sariel <david.sariel@pmcs.com>
    
    Updated by Jens to:
    
    1) Merge this with the ioctl reset patch from David Sariel. The ioctl
       path now shares the reset code from the sysfs path.
    
    2) Don't flush work if we fail issuing the reset.
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    4cc06521
nvme-core.c 77.4 KB