|  | 
| static uint16_t | nvme_io_cmd (FemuCtrl *n, NvmeCmd *cmd, NvmeRequest *req) | 
|  | nvme处理io类型的commad,识别cmd类型并调用相关函数  更多... 
 | 
|  | 
| static void | nvme_update_sq_eventidx (const NvmeSQueue *sq) | 
|  | 
| static void | nvme_copy_cmd (NvmeCmd *dst, NvmeCmd *src) | 
|  | 从dram中取cmd  更多... 
 | 
|  | 
| static void | nvme_process_sq_io (void *opaque, int index_poller) | 
|  | 从sq中取出req,放入to_ftl队列中,交由ftl处理  更多... 
 | 
|  | 
| static void | nvme_post_cqe (NvmeCQueue *cq, NvmeRequest *req) | 
|  | 将req实际封装入cq  更多... 
 | 
|  | 
| static void | nvme_process_cq_cpl (void *arg, int index_poller) | 
|  | 从to_poller队列中取req,放入cq中,然后通知上层操作已完成  更多... 
 | 
|  | 
| static void * | nvme_poller (void *arg) | 
|  | nvme poller线程函数,不断处理sq和生成cq  更多... 
 | 
|  | 
| static int | cmp_pri (pqueue_pri_t next, pqueue_pri_t curr) | 
|  | 
| static pqueue_pri_t | get_pri (void *a) | 
|  | 
| static void | set_pri (void *a, pqueue_pri_t pri) | 
|  | 
| static size_t | get_pos (void *a) | 
|  | 
| static void | set_pos (void *a, size_t pos) | 
|  | 
| void | nvme_create_poller (FemuCtrl *n) | 
|  | 创建poller线程,以及两个ring queue:to_ftl和to_poller  更多... 
 | 
|  | 
| uint16_t | nvme_rw (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | nvme读写命令  更多... 
 | 
|  | 
| static uint16_t | nvme_dsm (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | 处理io cmd:dataset management命令  更多... 
 | 
|  | 
| static uint16_t | nvme_compare (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | 处理io cmd:compare命令  更多... 
 | 
|  | 
| static uint16_t | nvme_flush (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | 处理io cmd:flush命令  更多... 
 | 
|  | 
| static uint16_t | nvme_write_zeros (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | 处理io cmd:write zeros命令  更多... 
 | 
|  | 
| static uint16_t | nvme_write_uncor (FemuCtrl *n, NvmeNamespace *ns, NvmeCmd *cmd, NvmeRequest *req) | 
|  | 处理io cmd:write uncorrectable命令  更多... 
 | 
|  | 
| void | nvme_post_cqes_io (void *opaque) | 
|  | 将剩余的req都填入cq  更多... 
 | 
|  |