i40e: add mask to apply valid bits for itr_idx
[ Upstream commit eac04428abe9f9cb203ffae4600791ea1d24eb18 ] The ITR index (itr_idx) is only 2 bits wide. When constructing the register value for QINT_RQCTL, all fields are ORed together. Without masking, higher bits from itr_idx may overwrite adjacent fields in the register. Apply I40E_QINT_RQCTL_ITR_INDX_MASK to ensure only the intended bits are set. Fixes: 5c3c48ac ("i40e: implement virtual device interface") 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:
Rafal Romanowski <rafal.romanowski@intel.com> Signed-off-by:
Tony Nguyen <anthony.l.nguyen@intel.com> [ Added missing linux/bitfield.h header for FIELD_PREP macro ] Signed-off-by:
Sasha Levin <sashal@kernel.org> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Loading
Please register or sign in to comment