NVMe Linux驱动程序

时间:2018-06-15 18:04:10

标签: linux-kernel linux-device-driver

我正在使用linux内核4.13.10(blk-mq架构)中的NVMe驱动程序。我发出了一个命令,例如从应用程序读取/写入nvme设备。完整的顺序如下:

  1. 从应用程序中,命令来到nvme
  2. 在驱动程序中,我使用blk_execute_rq将命令提交到阻止层
  3. 观察到当命令从块层再次到达驱动程序时,它被映射到nvme队列..有没有办法我自己选择nvme队列id并将命令提交给该特定队列仅?

1 个答案:

答案 0 :(得分:0)

我认为blk_execute_rq是通用块层函数。您需要检查是否有可能传递私有数据,例如在device-> priv_data中。如果您知道nvme驱动程序中的哪个函数被调用,则可以进行回溯以找出可以在哪里插入queue_id参数。