[PATCHv2] nvme: add command id quirk for apple controllers

Sven Peter sven at svenpeter.dev
Mon Sep 27 08:59:40 PDT 2021



On Mon, Sep 27, 2021, at 17:43, Keith Busch wrote:
> 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 at svenpeter.dev>
> Reported-by: Orlando Chamberlain <redecorating at protonmail.com>
> Reported-by: Aditya Garg <gargaditya08 at live.com>
> Signed-off-by: Keith Busch <kbusch at kernel.org>
> ---
> v1->v2: fixed logical bug checking the quirk setting
>
>  drivers/nvme/host/core.c | 4 +++-
>  drivers/nvme/host/nvme.h | 6 ++++++
>  drivers/nvme/host/pci.c  | 3 ++-
>  3 files changed, 11 insertions(+), 2 deletions(-)

Looks good to me, on the M1 with my out-of-tree driver:

Tested-by: Sven Peter <sven at svenpeter.dev>



Thanks,


Sven



More information about the Linux-nvme mailing list