Re: [PATCH blktests] nvme: test log page offsets

Shinichiro Kawasaki
2024-02-06T06:02:41Z

Hi Keith, thanks for the patch.

On Feb 05, 2024 / 10:52, Keith Busch wrote:
> From: Keith Busch <kbusch@kernel.org>
>
> I've encountered a device that fails catastrophically if the host
> requests to an error log with a non-zero LPO. The fallout has been bad
> enough to warrant a sanity check against this scenario.

Question, which part of the kernel code does this test case cover? I'm wondering
if this test case might be testing NVMe devices rather than the kernel code.

Also, was there any related kernel code change or discussion? If so, I would
like to leave links to them in the commit message.

I ran this test case on my test system using QEMU NVME device, and saw it failed
with the message below.

nvme/051 => nvme0n1 (Tests device support for log page offsets) [failed]
runtime 0.104s ... 0.126s
--- tests/nvme/051.out 2024-02-06 09:46:03.522522896 +0900
+++ /home/shin/Blktests/blktests/results/nvme0n1/nvme/051.out.bad 2024-02-06 14:50:57.394105192 +0900
@@ -1,2 +1,3 @@
Running nvme/051
+NVMe status: Invalid Field in Command: A reserved coded value or an unsupported value in a defined field(0x4002)
Test complete

I took a look in the latest QEMU code, and found it returns "Invalid Field in
Command" when the specified offset is larger than error log size in QEMU. Do I
miss anything to make this test case pass?