[lvc-project] [PATCH] ntb: use 64-bit arithmetic for the MSI doorbell mask
Dave Jiang
dave.jiang at intel.com
Thu Jan 16 18:44:36 MSK 2025
On 1/15/25 11:28 AM, Fedor Pchelkin wrote:
> msi_db_mask is of type 'u64', still the standard 'int' arithmetic is
> performed to compute its value.
>
> While most of the ntb_hw drivers actually don't utilize the higher 32
> bits of the doorbell mask now, this may be the case for Switchtec - see
> switchtec_ntb_init_db().
>
> Found by Linux Verification Center (linuxtesting.org) with SVACE static
> analysis tool.
>
> Fixes: 2b0569b3b7e6 ("NTB: Add MSI interrupt support to ntb_transport")
> Cc: stable at vger.kernel.org
> Signed-off-by: Fedor Pchelkin <pchelkin at ispras.ru>
LGTM. Should be using the BIT() macro to begin with.
Reviewed-by: Dave Jiang <dave.jiang at intel.com>
> ---
> drivers/ntb/ntb_transport.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/ntb/ntb_transport.c b/drivers/ntb/ntb_transport.c
> index a22ea4a4b202..4f775c3e218f 100644
> --- a/drivers/ntb/ntb_transport.c
> +++ b/drivers/ntb/ntb_transport.c
> @@ -1353,7 +1353,7 @@ static int ntb_transport_probe(struct ntb_client *self, struct ntb_dev *ndev)
> qp_count = ilog2(qp_bitmap);
> if (nt->use_msi) {
> qp_count -= 1;
> - nt->msi_db_mask = 1 << qp_count;
> + nt->msi_db_mask = BIT_ULL(qp_count);
> ntb_db_clear_mask(ndev, nt->msi_db_mask);
> }
>
More information about the lvc-project
mailing list