[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZSlPMcLHZywXGhdR@kbusch-mbp>
Date: Fri, 13 Oct 2023 08:07:45 -0600
From: Keith Busch <kbusch@...nel.org>
To: Daniel Wagner <dwagner@...e.de>
Cc: linux-nvme@...ts.infradead.org, linux-kernel@...r.kernel.org,
Christoph Hellwig <hch@....de>
Subject: Re: [PATCH] nvme: update firmware version after commit
On Fri, Oct 13, 2023 at 08:26:23AM +0200, Daniel Wagner wrote:
> +static void nvme_update_firmware_rev(struct nvme_ctrl *ctrl)
> +{
> + struct nvme_id_ctrl *id;
> + int ret;
> +
> + ret = nvme_identify_ctrl(ctrl, &id);
> + if (ret) {
> + dev_warn(ctrl->device, "Identify Controller failed (%d)\n", ret);
> + return;
> + }
> + memcpy(ctrl->subsys->firmware_rev, id->fr,
> + sizeof(ctrl->subsys->firmware_rev));
> +}
> +
> static void nvme_fw_act_work(struct work_struct *work)
> {
> struct nvme_ctrl *ctrl = container_of(work,
> @@ -4109,6 +4123,7 @@ static void nvme_fw_act_work(struct work_struct *work)
> nvme_unquiesce_io_queues(ctrl);
> /* read FW slot information to clear the AER */
> nvme_get_fw_slot_info(ctrl);
> + nvme_update_firmware_rev(ctrl);
The "fw_slot_info()" call also gets the firmware version, so no need to
do it a different way. Just add the memcpy to that function instead of
introducing a new one.
Powered by blists - more mailing lists