summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukasz Czapnik <lukasz.czapnik@intel.com>2025-08-13 12:45:13 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-10-02 13:42:52 +0200
commit2cc26dac0518d2fa9b67ec813ee60e183480f98a (patch)
treeb9d51c8ef8df9d614f2e14ffd9f0fd4d9c733311
parent50a1e2f50f6c22b93b94eb8d168a1be3c05bf5cd (diff)
downloadlinux-2cc26dac0518d2fa9b67ec813ee60e183480f98a.tar.gz
linux-2cc26dac0518d2fa9b67ec813ee60e183480f98a.tar.bz2
linux-2cc26dac0518d2fa9b67ec813ee60e183480f98a.zip
i40e: fix idx validation in config queues msg
commit f1ad24c5abe1eaef69158bac1405a74b3c365115 upstream. Ensure idx is within range of active/initialized TCs when iterating over vf->ch[idx] in i40e_vc_config_queues_msg(). Fixes: c27eac48160d ("i40e: Enable ADq and create queue channel/s on VF") Cc: stable@vger.kernel.org Signed-off-by: Lukasz Czapnik <lukasz.czapnik@intel.com> Reviewed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com> Signed-off-by: Przemek Kitszel <przemyslaw.kitszel@intel.com> Reviewed-by: Simon Horman <horms@kernel.org> Tested-by: Kamakshi Nellore <nellorex.kamakshi@intel.com> (A Contingent Worker at Intel) Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
index e4421473966a..c56fb1115f12 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
@@ -2390,7 +2390,7 @@ static int i40e_vc_config_queues_msg(struct i40e_vf *vf, u8 *msg)
}
if (vf->adq_enabled) {
- if (idx >= ARRAY_SIZE(vf->ch)) {
+ if (idx >= vf->num_tc) {
aq_ret = -ENODEV;
goto error_param;
}
@@ -2411,7 +2411,7 @@ static int i40e_vc_config_queues_msg(struct i40e_vf *vf, u8 *msg)
* to its appropriate VSIs based on TC mapping
*/
if (vf->adq_enabled) {
- if (idx >= ARRAY_SIZE(vf->ch)) {
+ if (idx >= vf->num_tc) {
aq_ret = -ENODEV;
goto error_param;
}