Re: [PATCH 07/12] nvme: Implement In-Band authentication
From: Sagi Grimberg <sagi@grimberg.me>
Date: 2021-09-14 07:06:44
Also in:
linux-crypto
quoted
quoted
@@ -361,11 +366,13 @@ static inline void nvme_end_req(struct request*req) void nvme_complete_rq(struct request *req) { + struct nvme_ctrl *ctrl = nvme_req(req)->ctrl; + trace_nvme_complete_rq(req); nvme_cleanup_cmd(req); - if (nvme_req(req)->ctrl->kas) - nvme_req(req)->ctrl->comp_seen = true; + if (ctrl->kas) + ctrl->comp_seen = true; switch (nvme_decide_disposition(req)) { case COMPLETE:@@ -377,6 +384,15 @@ void nvme_complete_rq(struct request *req) case FAILOVER: nvme_failover_req(req); return; + case AUTHENTICATE: +#ifdef CONFIG_NVME_AUTH + if (nvme_change_ctrl_state(ctrl, NVME_CTRL_RESETTING)) + queue_work(nvme_wq, &ctrl->dhchap_auth_work);Why is the state change here and not in nvme_dhchap_auth_work?Because switching to 'resetting' is an easy way to synchronize with the admin queue.
Maybe fold this into nvme_authenticate_ctrl? in case someone adds/moves this in the future and forgets the ctrl state serialization? _______________________________________________ Linux-nvme mailing list Linux-nvme@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-nvme