mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-19 22:07:49 +07:00
i40e: check queue pairs num in config queues handler
Check if num_queue_pairs number requested by VF is less than maximum possible value in VIRTCHNL_OP_CONFIG_VSI_QUEUES handler. Also check if local_vf_id >= 0 in common handler since it is of int type and can potentially be negative. Signed-off-by: Sergey Nemov <sergey.nemov@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
9b0732d9ed
commit
3f8af41262
@ -2069,6 +2069,11 @@ static int i40e_vc_config_queues_msg(struct i40e_vf *vf, u8 *msg)
|
||||
goto error_param;
|
||||
}
|
||||
|
||||
if (qci->num_queue_pairs > I40E_MAX_VF_QUEUES) {
|
||||
aq_ret = I40E_ERR_PARAM;
|
||||
goto error_param;
|
||||
}
|
||||
|
||||
for (i = 0; i < qci->num_queue_pairs; i++) {
|
||||
qpi = &qci->qpair[i];
|
||||
|
||||
@ -3656,7 +3661,7 @@ int i40e_vc_process_vf_msg(struct i40e_pf *pf, s16 vf_id, u32 v_opcode,
|
||||
int ret;
|
||||
|
||||
pf->vf_aq_requests++;
|
||||
if (local_vf_id >= pf->num_alloc_vfs)
|
||||
if (local_vf_id < 0 || local_vf_id >= pf->num_alloc_vfs)
|
||||
return -EINVAL;
|
||||
vf = &(pf->vf[local_vf_id]);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user