[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH V2 0/1] hw/block/nvme: support command retry
From: |
Minwoo Im |
Subject: |
[PATCH V2 0/1] hw/block/nvme: support command retry |
Date: |
Sun, 14 Feb 2021 23:28:04 +0900 |
Hello,
This series has been discussed and reviewed in [1]. This is the second
series to support Advanced Command Retry Enable(ACRE).
At the first shot, It was designed to provide HMP commands to inject
artificial state to the NVMe device. But, as discussed, rather than
making a device with a artificial state, more natural way is needed:
Some states triggered by lower layer of the command processing like
AIO errors. Therefore, rather than providing HMP command, This version
just checks the NVME_DNR bit from the status, then it will enable the
retry delay field(CRDT).
Since RFC V1:
[Klaus, I didn't put your review tag due to the following changes ;)]
- Remove [1/3] patch because there are already !NVME_DNR error cases
in nvme_aio_err(). (Klaus)
- Remove [3/3] patch to trigger retry status situation more naturally
not injecting the intended state to the NVMe device. (Keith)
- Remove nvme_should_retry() by not considering the status code,
especially NVME_COMMAND_INTERRUPTED.
- Change `cmd-retry-delay` param type to uint32_t because we don't
need to check if it's given or not. So, zero can be started with.
[1] https://lists.nongnu.org/archive/html/qemu-block/2021-02/msg00843.html
Minwoo Im (1):
hw/block/nvme: support command retry delay
hw/block/nvme.c | 68 +++++++++++++++++++++++++++++++++++++++++++-
hw/block/nvme.h | 2 ++
include/block/nvme.h | 13 ++++++++-
3 files changed, 81 insertions(+), 2 deletions(-)
--
2.17.1
- [PATCH V2 0/1] hw/block/nvme: support command retry,
Minwoo Im <=