Hi, The 1st 2 patches fixes request completion related races. The 2nd 3 patches fixes/improves nvme-tcp error recovery. With the 4 patches, nvme/012 can pass on nvme-tcp in Zhang Yi's test machine. Ming Lei (4): blk-mq: check rq->state explicitly in blk_mq_tagset_count_completed_rqs blk-mq: think request as completed if it isn't IN_FLIGHT. nvme: tcp: fix race between timeout and normal completion nvme: tcp: complete non-IO requests atomically block/blk-flush.c | 2 ++ block/blk-mq-tag.c | 2 +- drivers/nvme/host/tcp.c | 76 +++++++++++++++++++++++++++++------------ include/linux/blk-mq.h | 8 ++++- 4 files changed, 65 insertions(+), 23 deletions(-) CC: Chao Leng <lengchao@xxxxxxxxxx> Cc: Sagi Grimberg <sagi@xxxxxxxxxxx> Cc: Yi Zhang <yi.zhang@xxxxxxxxxx> -- 2.25.2