summaryrefslogtreecommitdiff
path: root/drivers/net/i40e
diff options
context:
space:
mode:
authorZhirun Yan <zhirun.yan@intel.com>2019-01-15 14:57:17 +0000
committerFerruh Yigit <ferruh.yigit@intel.com>2019-01-18 09:47:26 +0100
commit76469c0631adbc007e89f70f2503ed9b5e3f7f8b (patch)
tree52d506e0ca7767734414470915259e1e9dbe1194 /drivers/net/i40e
parent1d4b2b4966bbb219afd2d7072ffba51f3a3067a5 (diff)
downloaddpdk-next-eventdev-76469c0631adbc007e89f70f2503ed9b5e3f7f8b.zip
dpdk-next-eventdev-76469c0631adbc007e89f70f2503ed9b5e3f7f8b.tar.gz
dpdk-next-eventdev-76469c0631adbc007e89f70f2503ed9b5e3f7f8b.tar.xz
net/i40e: support request any number of queues
Before this patch, VF must request a specific queues(1/2/4/8/16) with DPDK PF. This patch align the number of requested queues to next power of 2. So VF can request any number queues from 1 to 16. Signed-off-by: Zhirun Yan <zhirun.yan@intel.com> Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Diffstat (limited to 'drivers/net/i40e')
-rw-r--r--drivers/net/i40e/i40e_pf.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c
index d6e83e3..585b21c 100644
--- a/drivers/net/i40e/i40e_pf.c
+++ b/drivers/net/i40e/i40e_pf.c
@@ -1271,7 +1271,10 @@ i40e_pf_host_process_cmd_request_queues(struct i40e_pf_vf *vf, uint8_t *msg)
} else {
i40e_vc_notify_vf_reset(vf);
vf->vsi->nb_qps = req_pairs;
- pf->vf_nb_qps = req_pairs;
+ if (rte_is_power_of_2(req_pairs))
+ pf->vf_nb_qps = req_pairs;
+ else
+ pf->vf_nb_qps = i40e_align_floor(req_pairs) << 1;
i40e_pf_host_process_cmd_reset_vf(vf);
return 0;