Print this page
7364 NVMe driver performance can be improved by caching nvme_dma_t structs for PRPL.
Reviewed by: Hans Rosenfeld <hans.rosenfeld@nexenta.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Garrett D'Amore <garrett@lucera.com>

@@ -9,10 +9,11 @@
  * http://www.illumos.org/license/CDDL.
  */
 
 /*
  * Copyright 2016 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2016 The MathWorks, Inc. All rights reserved.
  */
 
 #ifndef _NVME_VAR_H
 #define _NVME_VAR_H
 

@@ -55,10 +56,11 @@
         ddi_acc_handle_t nd_acch;
         ddi_dma_cookie_t nd_cookie;
         uint_t nd_ncookie;
         caddr_t nd_memp;
         size_t nd_len;
+        boolean_t nd_cached;
 };
 
 struct nvme_cmd {
         nvme_sqe_t nc_sqe;
         nvme_cqe_t nc_cqe;

@@ -106,10 +108,11 @@
 
         caddr_t n_regs;
         ddi_acc_handle_t n_regh;
 
         kmem_cache_t *n_cmd_cache;
+        kmem_cache_t *n_prp_cache;
 
         size_t n_inth_sz;
         ddi_intr_handle_t *n_inth;
         int n_intr_cnt;
         uint_t n_intr_pri;