diff options
author | Sunil Goutham <sgoutham@cavium.com> | 2016-08-12 16:51:27 +0530 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-08-13 11:59:30 -0700 |
commit | 3a397ebe154b385e5e3d0c7fee478ccef58742fc (patch) | |
tree | b3c99da83f0663ae5ffd9fc2fd1b1783bd525e39 /drivers/net/ethernet/cavium/thunder/nicvf_queues.c | |
parent | 0025d93ebb9b4f7ad7807d22fe65852f447309a1 (diff) | |
download | op-kernel-dev-3a397ebe154b385e5e3d0c7fee478ccef58742fc.zip op-kernel-dev-3a397ebe154b385e5e3d0c7fee478ccef58742fc.tar.gz |
net: thunderx: Set queue count based on number of CPUs
81xx has only 4 CPUs, so it doesn't make sense to initialize
entire Qset i.e 8 queues by default. Made changes to queue
initialization to init queues equal to number of CPUs or
8 queues whichever is lesser. Also this will be applicable to
VMs with VNIC VF attached and having less VCPUs
Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/cavium/thunder/nicvf_queues.c')
-rw-r--r-- | drivers/net/ethernet/cavium/thunder/nicvf_queues.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c index 0ff8e60..e521a94 100644 --- a/drivers/net/ethernet/cavium/thunder/nicvf_queues.c +++ b/drivers/net/ethernet/cavium/thunder/nicvf_queues.c @@ -762,10 +762,10 @@ int nicvf_set_qset_resources(struct nicvf *nic) nic->qs = qs; /* Set count of each queue */ - qs->rbdr_cnt = RBDR_CNT; - qs->rq_cnt = RCV_QUEUE_CNT; - qs->sq_cnt = SND_QUEUE_CNT; - qs->cq_cnt = CMP_QUEUE_CNT; + qs->rbdr_cnt = DEFAULT_RBDR_CNT; + qs->rq_cnt = min_t(u8, MAX_RCV_QUEUES_PER_QS, num_online_cpus()); + qs->sq_cnt = min_t(u8, MAX_SND_QUEUES_PER_QS, num_online_cpus()); + qs->cq_cnt = max_t(u8, qs->rq_cnt, qs->sq_cnt); /* Set queue lengths */ qs->rbdr_len = RCV_BUF_COUNT; |