On 01/15/2019 02:57 PM, Zhirun Yan wrote:
> 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....@intel.com>
> ---
>  drivers/net/i40e/i40e_pf.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c
> index 092e0d3e9..d110dffb7 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;

Shouldn't you do this before you validate against the number of free
queue pairs? or it is somehow handled

>               i40e_pf_host_process_cmd_reset_vf(vf);
>  
>               return 0;
> 

Reply via email to