1. 17 6月, 2021 3 次提交
  2. 15 4月, 2021 1 次提交
  3. 03 4月, 2021 1 次提交
  4. 05 3月, 2021 1 次提交
    • M
      nvmet: model_number must be immutable once set · d9f273b7
      Max Gurtovoy 提交于
      In case we have already established connection to nvmf target, it
      shouldn't be allowed to change the model_number. E.g. if someone will
      identify ctrl and get model_number of "my_model" later on will change
      the model_numbel via configfs to "my_new_model" this will break the NVMe
      specification for "Get Log Page – Persistent Event Log" that refers to
      Model Number as: "This field contains the same value as reported in the
      Model Number field of the Identify Controller data structure, bytes
      63:24."
      
      Although it doesn't mentioned explicitly that this field can't be
      changed, we can assume it.
      
      So allow setting this field only once: using configfs or in the first
      identify ctrl operation.
      Signed-off-by: NMax Gurtovoy <mgurtovoy@nvidia.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      d9f273b7
  5. 02 2月, 2021 2 次提交
  6. 02 12月, 2020 2 次提交
    • C
      nvmet: add passthru io timeout value attr · 47e9730c
      Chaitanya Kulkarni 提交于
      NVMeOF controller in the passsthru mode is capable of handling wide set
      of I/O commands including vender specific passhtru io comands.
      
      The vendor specific I/O commands are used to read the large drive
      logs and can take longer than default NVMe commands, i.e. for
      passthru requests the timeout value may differ from the passthru
      controller's default timeout values (nvme-core:io_timeout).
      
      Add a configfs attribute so that user can set the io timeout values.
      In case if this configfs value is not set nvme_alloc_request() will set
      the NVME_IO_TIMEOUT value when request queuedata is NULL.
      Signed-off-by: NChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      47e9730c
    • C
      nvmet: add passthru admin timeout value attr · a2f6a2b8
      Chaitanya Kulkarni 提交于
      NVMeOF controller in the passsthru mode is capable of handling wide set
      of admin commands including vender specific passhtru admin comands.
      
      The vendor specific admin commands are used to read the large drive
      logs and can take longer than default NVMe commands, i.e. for
      passthru requests the timeout value may differ from the passthru
      controller's default timeout values (nvme-core:admin_timeout).
      
      Add a configfs attribute so that user can set the admin timeout values.
      In case if this configfs value is not set nvme_alloc_request() will set
      the ADMIN_TIMEOUT value when request queuedata is NULL.
      Signed-off-by: NChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      a2f6a2b8
  7. 22 8月, 2020 1 次提交
  8. 29 7月, 2020 2 次提交
  9. 08 7月, 2020 1 次提交
  10. 27 5月, 2020 4 次提交
  11. 10 5月, 2020 6 次提交
  12. 02 4月, 2020 1 次提交
  13. 05 3月, 2020 4 次提交
  14. 01 8月, 2019 1 次提交
  15. 10 7月, 2019 1 次提交
  16. 25 4月, 2019 1 次提交
    • M
      nvmet: return a specified error it subsys_alloc fails · 6b7e631b
      Minwoo Im 提交于
      nvmet_subsys_alloc() returns its pointer or NULL if it fails.  We can
      see three different steps in this function:
        1. memory allocation
        2. argument check
        3. memory allocation for string
      
      But now the callers of this function do not seem to handle case 2 by
      returning -ENOMEM only even if it fails with an invalid parameter.
      
      This patch specifies error codes so that caller can pass it to its own
      caller.
      Signed-off-by: NMinwoo Im <minwoo.im.dev@gmail.com>
      Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      6b7e631b
  17. 20 2月, 2019 1 次提交
  18. 13 12月, 2018 1 次提交
  19. 08 12月, 2018 3 次提交
  20. 18 10月, 2018 1 次提交
    • L
      nvmet: Optionally use PCI P2P memory · c6925093
      Logan Gunthorpe 提交于
      Create a configfs attribute in each nvme-fabrics namespace to enable P2P
      memory use.  The attribute may be enabled (with a boolean) or a specific
      P2P device may be given (with the device's PCI name).
      
      When enabled, the namespace will ensure the underlying block device
      supports P2P and is compatible with any specified P2P device.  If no device
      was specified it will ensure there is compatible P2P memory somewhere in
      the system.  Enabling a namespace with P2P memory will fail with EINVAL
      (and an appropriate dmesg error) if any of these conditions are not met.
      
      Once a controller is set up on a specific port, the P2P device to use for
      each namespace will be found and stored in a radix tree by namespace ID.
      When memory is allocated for a request, the tree is used to look up the P2P
      device to allocate memory against.  If no device is in the tree (because no
      appropriate device was found), or if allocation of P2P memory fails, fall
      back to using regular memory.
      Signed-off-by: NStephen Bates <sbates@raithlin.com>
      Signed-off-by: NSteve Wise <swise@opengridcomputing.com>
      [hch: partial rewrite of the initial code]
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NLogan Gunthorpe <logang@deltatee.com>
      Signed-off-by: NBjorn Helgaas <bhelgaas@google.com>
      c6925093
  21. 28 7月, 2018 2 次提交