Commit afbb5cee authored by GangCao's avatar GangCao Committed by Jim Harris
Browse files

nvme: remove NVME_IO_TRACKERS to use hardware and user specified size



Change-Id: Ie6946343314a62e4416d8cd7dadd98c20a1c1e3a
Signed-off-by: default avatarGangCao <gang.cao@intel.com>
Reviewed-on: https://review.gerrithub.io/361700


Tested-by: default avatar <sys_sgsw@intel.com>
Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
parent 7b5a229c
Loading
Loading
Loading
Loading
+6 −10
Original line number Diff line number Diff line
@@ -46,14 +46,11 @@

/*
 * NVME_IO_ENTRIES defines the size of an I/O qpair's submission and completion
 *  queues, while NVME_IO_TRACKERS defines the maximum number of I/O that we
 *  will allow outstanding on an I/O qpair at any time.  The only advantage in
 *  having IO_ENTRIES > IO_TRACKERS is for debugging purposes - when dumping
 *  the contents of the submission and completion queues, it will show a longer
 *  history of data.
 *  queues, this value will be used to negotiate with user specified size and
 *  hardware allowed size to determine the maximum number of outstanding IOs on
 *  an I/O qpair at any time.
 */
#define NVME_IO_ENTRIES		(256)
#define NVME_IO_TRACKERS	(128)
#define NVME_IO_ENTRIES		(512)

/*
 * NVME_MAX_SGL_DESCRIPTORS defines the maximum number of descriptors in one SGL
@@ -843,11 +840,10 @@ nvme_pcie_qpair_construct(struct spdk_nvme_qpair *qpair)
		num_trackers = NVME_ADMIN_TRACKERS;
	} else {
		/*
		 * No need to have more trackers than entries in the submit queue.
		 *  Note also that for a queue size of N, we can only have (N-1)
		 *  Note that for a queue size of N, we can only have (N-1)
		 *  commands outstanding, hence the "-1" here.
		 */
		num_trackers = spdk_min(NVME_IO_TRACKERS, pqpair->num_entries - 1);
		num_trackers = pqpair->num_entries - 1;
	}

	assert(num_trackers != 0);