1. 11 11月, 2017 8 次提交
  2. 01 11月, 2017 1 次提交
  3. 27 10月, 2017 2 次提交
    • C
      nvme: get rid of nvme_ctrl_list · a6a5149b
      Christoph Hellwig 提交于
      Use the core chrdev code to set up the link between the character device
      and the nvme controller.  This allows us to get rid of the global list
      of all controllers, and also ensures that we have both a reference to
      the controller and the transport module before the open method of the
      character device is called.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NSagi Grimberg <sgi@grimberg.me>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      Reviewed-by: NHannes Reinecke <hare@suse.com>
      a6a5149b
    • C
      nvme: switch controller refcounting to use struct device · d22524a4
      Christoph Hellwig 提交于
      Instead of allocating a separate struct device for the character device
      handle embedd it into struct nvme_ctrl and use it for the main controller
      refcounting.  This removes double refcounting and gets us an automatic
      reference for the character device operations.  We keep ctrl->device as a
      pointer for now to avoid chaning printks all over, but in the future we
      could look into message printing helpers that take a controller structure
      similar to what other subsystems do.
      
      Note the delete_ctrl operation always already has a reference (either
      through sysfs due this change, or because every open file on the
      /dev/nvme-fabrics node has a refernece) when it is entered now, so we
      don't need to do the unless_zero variant there.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NHannes Reinecke <hare@suse.com>
      d22524a4
  4. 19 10月, 2017 1 次提交
  5. 04 10月, 2017 1 次提交
  6. 12 9月, 2017 2 次提交
  7. 30 8月, 2017 1 次提交
  8. 29 8月, 2017 4 次提交
  9. 06 7月, 2017 1 次提交
    • S
      nvme: split nvme_uninit_ctrl into stop and uninit · d09f2b45
      Sagi Grimberg 提交于
      Usually before we teardown the controller we want to:
      1. complete/cancel any ctrl inflight works
      2. remove ctrl namespaces (only for removal though, resets
         shouldn't remove any namespaces).
      
      but we do not want to destroy the controller device as
      we might use it for logging during the teardown stage.
      
      This patch adds nvme_start_ctrl() which queues inflight
      controller works (aen, ns scan, queue start and keep-alive
      if kato is set) and nvme_stop_ctrl() which cancels the works
      namespace removal is left to the callers to handle.
      
      Move nvme_uninit_ctrl after we are done with the
      controller device.
      Reviewed-by: NKeith Busch <keith.busch@intel.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NSagi Grimberg <sagi@grimberg.me>
      d09f2b45
  10. 02 7月, 2017 2 次提交
  11. 28 6月, 2017 5 次提交
  12. 16 6月, 2017 1 次提交
  13. 15 6月, 2017 6 次提交
  14. 13 6月, 2017 1 次提交
  15. 09 6月, 2017 1 次提交
  16. 26 5月, 2017 2 次提交
  17. 21 4月, 2017 1 次提交
    • A
      nvme: Adjust the Samsung APST quirk · ff5350a8
      Andy Lutomirski 提交于
      I got a couple more reports: the Samsung APST issues appears to
      affect multiple 950-series devices in Dell XPS 15 9550 and Precision
      5510 laptops.  Change the quirk: rather than blacklisting the
      firmware on the first problematic SSD that was reported, disable
      APST on all 144d:a802 devices if they're installed in the two
      affected Dell models.  While we're at it, disable only the deepest
      sleep state instead of all of them -- the reporters say that this is
      sufficient to fix the problem.
      
      (I have a device that appears to be entirely identical to one of the
      affected devices, but I have a different Dell laptop, so it's not
      the case that all Samsung devices with firmware BXW75D0Q are broken
      under all circumstances.)
      
      Samsung engineers have an affected system, and hopefully they'll
      give us a better workaround some time soon.  In the mean time, this
      should minimize regressions.
      
      See https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1678184
      
      Cc: Kai-Heng Feng <kai.heng.feng@canonical.com>
      Signed-off-by: NAndy Lutomirski <luto@kernel.org>
      Signed-off-by: NJens Axboe <axboe@fb.com>
      ff5350a8