Advertisement
Guest User

Untitled

a guest
Feb 15th, 2022
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. diff --git a/drivers/nvme/host/apple.c b/drivers/nvme/host/apple.c
  2. index 9b260a2a51ba..38ddffe51094 100644
  3. --- a/drivers/nvme/host/apple.c
  4. +++ b/drivers/nvme/host/apple.c
  5. @@ -294,6 +294,7 @@ static void apple_nvmmu_inval(struct apple_nvme_queue *q, unsigned tag)
  6. static void apple_nvme_submit_cmd(struct apple_nvme_queue *q,
  7. struct nvme_command *cmd)
  8. {
  9. + struct apple_nvme *anv = queue_to_apple_nvme(q);
  10. u32 tag = nvme_tag_from_cid(cmd->common.command_id);
  11. struct apple_nvmmu_tcb *tcb = &q->tcbs[tag];
  12.  
  13. @@ -309,8 +310,10 @@ static void apple_nvme_submit_cmd(struct apple_nvme_queue *q,
  14. if (cmd->common.opcode & NVME_OPCODE_DATA_XFER_CTRL_TO_HOST)
  15. tcb->dma_flags |= APPLE_ANS_TCB_DMA_FROM_DEVICE;
  16.  
  17. + spin_lock_irq(&anv->lock);
  18. memcpy(&q->sqes[tag], cmd, sizeof(*cmd));
  19. writel(tag, q->sq_db);
  20. + spin_unlock_irq(&anv->lock);
  21. }
  22.  
  23. /*
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement