Re: [PATCH v5 16/16] nvme: Add support for CQT to nvme host
Hannes Reinecke <[email protected]>
| Newsgroups | org.infradead.lists.linux-nvme,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On 7/12/26 4:23 AM, Mohamed Khalfella wrote: > TP4129 KATO Corrections and Clarifications defined CQT (Command Quiesce > Time) which is used along with KATO (Keep Alive Timeout) to set an upper > limit for attempting Cross-Controller Recovery. Add ctrl->cqt, read its > value from controller identify response, expose it via sysfs, and have > nvme_fence_timeout_ms() account for it. > > Use CQT to drive time-based recovery in fc, rdma, and tcp transports. > Add a fenced_work delayed work to each transport controller. If CCR > fails, fencing_work switches to error recovery immediately if CQT is not > supported. Otherwise it schedules fenced_work after the remaining fence > timeout, which also switches to error recovery when scheduled. > > Signed-off-by: Mohamed Khalfella <[email protected]> > --- > drivers/nvme/host/core.c | 1 + > drivers/nvme/host/fc.c | 41 +++++++++++++++++++++++++++++++++++---- > drivers/nvme/host/nvme.h | 5 +++-- > drivers/nvme/host/rdma.c | 41 +++++++++++++++++++++++++++++++++++---- > drivers/nvme/host/sysfs.c | 2 ++ > drivers/nvme/host/tcp.c | 41 +++++++++++++++++++++++++++++++++++---- > 6 files changed, 117 insertions(+), 14 deletions(-) > Reviewed-by: Hannes Reinecke <[email protected]> Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect [email protected] +49 911 74053 688 SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich