linux/drivers/nvme/host
Keith Busch a2941f6aa7 nvme: add command id quirk for apple controllers
Some apple controllers use the command id as an index to implementation
specific data structures and will fail if the value is out of bounds.
The nvme driver's recently introduced command sequence number breaks
this controller.

Provide a quirk so these spec incompliant controllers can function as
before. The driver will not have the ability to detect bad completions
when this quirk is used, but we weren't previously checking this anyway.

The quirk bit was selected so that it can readily apply to stable.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=214509
Cc: Sven Peter <sven@svenpeter.dev>
Reported-by: Orlando Chamberlain <redecorating@protonmail.com>
Reported-by: Aditya Garg <gargaditya08@live.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Sven Peter <sven@svenpeter.dev>
Link: https://lore.kernel.org/r/20210927154306.387437-1-kbusch@kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2021-09-27 10:02:07 -06:00
..
core.c nvme: add command id quirk for apple controllers 2021-09-27 10:02:07 -06:00
fabrics.c nvme-fabrics: remove superfluous nvmf_host_put in nvmf_parse_options 2021-08-16 14:42:23 +02:00
fabrics.h nvme: use blk_execute_rq() for passthrough commands 2021-06-30 15:35:38 -06:00
fault_inject.c nvme: enable to inject errors into admin commands 2019-06-21 11:15:50 +02:00
fc.c nvme-fc: remove freeze/unfreeze around update_nr_hw_queues 2021-09-21 09:17:12 +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: Return error code when registration fails 2021-03-05 13:41:03 +01:00
ioctl.c remove the lightnvm subsystem 2021-08-14 15:54:09 -06:00
Kconfig nvme: Have NVME_FABRICS select NVME_CORE instead of transport drivers 2021-08-16 21:03:18 +02:00
Makefile remove the lightnvm subsystem 2021-08-14 15:54:09 -06:00
multipath.c nvme-multipath: fix ANA state updates when a namespace is not present 2021-09-14 10:32:04 +02:00
nvme.h nvme: add command id quirk for apple controllers 2021-09-27 10:02:07 -06:00
pci.c nvme: add command id quirk for apple controllers 2021-09-27 10:02:07 -06:00
rdma.c nvme-rdma: destroy cm id before destroy qp to avoid use after free 2021-09-14 10:32:04 +02:00
tcp.c nvme-tcp: fix incorrect h2cdata pdu offset accounting 2021-09-21 09:17:15 +02:00
trace.c nvme: add set feature tracing support 2021-08-16 14:42:23 +02:00
trace.h nvme: fix nvme_setup_command metadata trace event 2021-07-21 09:55:44 +02:00
zns.c nvme: split nvme_report_zones 2021-06-03 10:29:26 +03:00