OpenCloudOS-Kernel/drivers/nvme/host
Chaitanya Kulkarni 1cf7a12e09 nvme: use an xarray to lookup the Commands Supported and Effects log
When using linked list we have to open code the locking, search, and
destroy operations with the loops even if data structure doesn't fall
into the fast path.

One of the main advantage of having XArray to store, search, and remove
items is that it handles all the locking by itself, avoids the loops
when using linked lists, provides clear API to replace the linked list's
search and destroy loops.

This patch replaces the ctrl->cel list with XArray and removes :-

a. Extra code needed for the linked list for ctrl->cel item management
   such as nvme_find_cel().
b. Destroy loop in the nvme_free_ctrl().
c. Explicit insertion locking in the nvme_get_effects_log().

Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2020-09-27 09:14:18 +02:00
..
Kconfig nvme-tcp: fix kconfig dependency warning when !CRYPTO 2020-09-15 07:58:49 +02:00
Makefile nvme: support for zoned namespaces 2020-07-08 16:16:20 +02:00
core.c nvme: use an xarray to lookup the Commands Supported and Effects log 2020-09-27 09:14:18 +02:00
fabrics.c nvme-fabrics: allow to queue requests for live queues 2020-09-09 08:00:50 +02:00
fabrics.h nvme: fix deadlock in disconnect during scan_work and/or ana_work 2020-07-29 07:45:19 +02:00
fault_inject.c nvme: enable to inject errors into admin commands 2019-06-21 11:15:50 +02:00
fc.c nvme-fc: cancel async events before freeing event struct 2020-09-08 19:46:29 +02:00
fc.h nvme-fc: Update header and host for common definitions for LS handling 2020-05-09 16:18:33 -06:00
hwmon.c nvme-hwmon: log the controller device name 2020-07-29 07:45:20 +02:00
lightnvm.c nvme: support for multiple Command Sets Supported and Effects log pages 2020-07-08 16:16:20 +02:00
multipath.c bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag 2020-09-24 13:43:39 -06:00
nvme.h nvme: use an xarray to lookup the Commands Supported and Effects log 2020-09-27 09:14:18 +02:00
pci.c block-5.9-2020-09-22 2020-09-22 14:31:38 -07:00
rdma.c - Fix a regression in bdev partition locking (Christoph) 2020-09-11 11:55:28 -07:00
tcp.c - Fix a regression in bdev partition locking (Christoph) 2020-09-11 11:55:28 -07:00
trace.c nvme: trace: parse Get LBA Status command in detail 2019-08-29 12:55:01 -07:00
trace.h nvme-trace: print result and status in hex format 2019-06-21 11:12:37 +02:00
zns.c block: add max_active_zones to blk-sysfs 2020-07-15 14:26:11 -06:00