nvme: mark the result argument to nvme_complete_async_event volatile
authorChristoph Hellwig <hch@lst.de>
Thu, 17 May 2018 16:31:46 +0000 (18:31 +0200)
committerKeith Busch <keith.busch@intel.com>
Fri, 18 May 2018 20:41:35 +0000 (14:41 -0600)
We'll need that in the PCIe driver soon as we'll read it straight off the
CQ.

Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/core.c
drivers/nvme/host/nvme.h

index 62262fa..b070c65 100644 (file)
@@ -3344,7 +3344,7 @@ static void nvme_fw_act_work(struct work_struct *work)
 }
 
 void nvme_complete_async_event(struct nvme_ctrl *ctrl, __le16 status,
-               union nvme_result *res)
+               volatile union nvme_result *res)
 {
        u32 result = le32_to_cpu(res->u32);
 
index 061fecf..7a872b0 100644 (file)
@@ -400,7 +400,7 @@ int nvme_sec_submit(void *data, u16 spsp, u8 secp, void *buffer, size_t len,
                bool send);
 
 void nvme_complete_async_event(struct nvme_ctrl *ctrl, __le16 status,
-               union nvme_result *res);
+               volatile union nvme_result *res);
 
 void nvme_stop_queues(struct nvme_ctrl *ctrl);
 void nvme_start_queues(struct nvme_ctrl *ctrl);