Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

nvme: skip trace completion for host path errors

The command was never dispatched for the driver's "host path error", so
the command was never actually initialized and there's no corresponding
submit trace for the completion.

Reported-by: Minsik Jeon <hmi.jeon@samsung.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>

+8 -3
+8 -3
drivers/nvme/host/core.c
··· 454 454 blk_mq_end_request(req, status); 455 455 } 456 456 457 - void nvme_complete_rq(struct request *req) 457 + static void __nvme_complete_rq(struct request *req) 458 458 { 459 459 struct nvme_ctrl *ctrl = nvme_req(req)->ctrl; 460 460 461 - trace_nvme_complete_rq(req); 462 461 nvme_cleanup_cmd(req); 463 462 464 463 /* ··· 492 493 return; 493 494 } 494 495 } 496 + 497 + void nvme_complete_rq(struct request *req) 498 + { 499 + trace_nvme_complete_rq(req); 500 + __nvme_complete_rq(req); 501 + } 495 502 EXPORT_SYMBOL_GPL(nvme_complete_rq); 496 503 497 504 void nvme_complete_batch_req(struct request *req) ··· 518 513 { 519 514 nvme_req(req)->status = NVME_SC_HOST_PATH_ERROR; 520 515 blk_mq_set_request_complete(req); 521 - nvme_complete_rq(req); 516 + __nvme_complete_rq(req); 522 517 return BLK_STS_OK; 523 518 } 524 519 EXPORT_SYMBOL_GPL(nvme_host_path_error);