Message ID | 20210301062817.39331-1-elic@nvidia.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Headers | show |
Series | vdpa/mlx5: Fix wrong use of bit numbers | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Not a local patch |
On 2021/3/1 2:28 下午, Eli Cohen wrote: > VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask > conditionals. > > Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with > the rest of the code. > > Fixes: 1a86b377aa21 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices") > Signed-off-by: Eli Cohen <elic@nvidia.com> Acked-by: Jason Wang <jasowang@redhat.com> > --- > drivers/vdpa/mlx5/net/mlx5_vnet.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c > index dc7031132fff..7d21b857a94a 100644 > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c > @@ -821,7 +821,7 @@ static int create_virtqueue(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtque > MLX5_SET(virtio_q, vq_ctx, event_qpn_or_msix, mvq->fwqp.mqp.qpn); > MLX5_SET(virtio_q, vq_ctx, queue_size, mvq->num_ent); > MLX5_SET(virtio_q, vq_ctx, virtio_version_1_0, > - !!(ndev->mvdev.actual_features & VIRTIO_F_VERSION_1)); > + !!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_F_VERSION_1))); > MLX5_SET64(virtio_q, vq_ctx, desc_addr, mvq->desc_addr); > MLX5_SET64(virtio_q, vq_ctx, used_addr, mvq->device_addr); > MLX5_SET64(virtio_q, vq_ctx, available_addr, mvq->driver_addr); > @@ -1578,7 +1578,7 @@ static void teardown_virtqueues(struct mlx5_vdpa_net *ndev) > static inline bool mlx5_vdpa_is_little_endian(struct mlx5_vdpa_dev *mvdev) > { > return virtio_legacy_is_little_endian() || > - (mvdev->actual_features & (1ULL << VIRTIO_F_VERSION_1)); > + (mvdev->actual_features & BIT_ULL(VIRTIO_F_VERSION_1)); > } > > static __virtio16 cpu_to_mlx5vdpa16(struct mlx5_vdpa_dev *mvdev, u16 val)
On Mon, Mar 01, 2021 at 03:52:45PM +0800, Jason Wang wrote: > > On 2021/3/1 2:28 下午, Eli Cohen wrote: > > VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask > > conditionals. > > > > Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with > > the rest of the code. > > > > Fixes: 1a86b377aa21 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices") > > Signed-off-by: Eli Cohen <elic@nvidia.com> > > > Acked-by: Jason Wang <jasowang@redhat.com> And CC stable I guess? > > > --- > > drivers/vdpa/mlx5/net/mlx5_vnet.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > index dc7031132fff..7d21b857a94a 100644 > > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c > > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > @@ -821,7 +821,7 @@ static int create_virtqueue(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtque > > MLX5_SET(virtio_q, vq_ctx, event_qpn_or_msix, mvq->fwqp.mqp.qpn); > > MLX5_SET(virtio_q, vq_ctx, queue_size, mvq->num_ent); > > MLX5_SET(virtio_q, vq_ctx, virtio_version_1_0, > > - !!(ndev->mvdev.actual_features & VIRTIO_F_VERSION_1)); > > + !!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_F_VERSION_1))); > > MLX5_SET64(virtio_q, vq_ctx, desc_addr, mvq->desc_addr); > > MLX5_SET64(virtio_q, vq_ctx, used_addr, mvq->device_addr); > > MLX5_SET64(virtio_q, vq_ctx, available_addr, mvq->driver_addr); > > @@ -1578,7 +1578,7 @@ static void teardown_virtqueues(struct mlx5_vdpa_net *ndev) > > static inline bool mlx5_vdpa_is_little_endian(struct mlx5_vdpa_dev *mvdev) > > { > > return virtio_legacy_is_little_endian() || > > - (mvdev->actual_features & (1ULL << VIRTIO_F_VERSION_1)); > > + (mvdev->actual_features & BIT_ULL(VIRTIO_F_VERSION_1)); > > } > > static __virtio16 cpu_to_mlx5vdpa16(struct mlx5_vdpa_dev *mvdev, u16 val)
On Mon, Mar 01, 2021 at 10:33:14AM -0500, Michael S. Tsirkin wrote: > On Mon, Mar 01, 2021 at 03:52:45PM +0800, Jason Wang wrote: > > > > On 2021/3/1 2:28 下午, Eli Cohen wrote: > > > VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask > > > conditionals. > > > > > > Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with > > > the rest of the code. > > > > > > Fixes: 1a86b377aa21 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices") > > > Signed-off-by: Eli Cohen <elic@nvidia.com> > > > > > > Acked-by: Jason Wang <jasowang@redhat.com> > > And CC stable I guess? Is this a question or a request? :-) > > > > > > --- > > > drivers/vdpa/mlx5/net/mlx5_vnet.c | 4 ++-- > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > index dc7031132fff..7d21b857a94a 100644 > > > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > @@ -821,7 +821,7 @@ static int create_virtqueue(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtque > > > MLX5_SET(virtio_q, vq_ctx, event_qpn_or_msix, mvq->fwqp.mqp.qpn); > > > MLX5_SET(virtio_q, vq_ctx, queue_size, mvq->num_ent); > > > MLX5_SET(virtio_q, vq_ctx, virtio_version_1_0, > > > - !!(ndev->mvdev.actual_features & VIRTIO_F_VERSION_1)); > > > + !!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_F_VERSION_1))); > > > MLX5_SET64(virtio_q, vq_ctx, desc_addr, mvq->desc_addr); > > > MLX5_SET64(virtio_q, vq_ctx, used_addr, mvq->device_addr); > > > MLX5_SET64(virtio_q, vq_ctx, available_addr, mvq->driver_addr); > > > @@ -1578,7 +1578,7 @@ static void teardown_virtqueues(struct mlx5_vdpa_net *ndev) > > > static inline bool mlx5_vdpa_is_little_endian(struct mlx5_vdpa_dev *mvdev) > > > { > > > return virtio_legacy_is_little_endian() || > > > - (mvdev->actual_features & (1ULL << VIRTIO_F_VERSION_1)); > > > + (mvdev->actual_features & BIT_ULL(VIRTIO_F_VERSION_1)); > > > } > > > static __virtio16 cpu_to_mlx5vdpa16(struct mlx5_vdpa_dev *mvdev, u16 val) >
On Tue, Mar 02, 2021 at 07:23:06AM +0200, Eli Cohen wrote: > On Mon, Mar 01, 2021 at 10:33:14AM -0500, Michael S. Tsirkin wrote: > > On Mon, Mar 01, 2021 at 03:52:45PM +0800, Jason Wang wrote: > > > > > > On 2021/3/1 2:28 下午, Eli Cohen wrote: > > > > VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask > > > > conditionals. > > > > > > > > Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with > > > > the rest of the code. > > > > > > > > Fixes: 1a86b377aa21 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices") > > > > Signed-off-by: Eli Cohen <elic@nvidia.com> > > > > > > > > > Acked-by: Jason Wang <jasowang@redhat.com> > > > > And CC stable I guess? > > Is this a question or a request? :-) A question. net patches are cc'd by net maintainer. > > > > > > > > > --- > > > > drivers/vdpa/mlx5/net/mlx5_vnet.c | 4 ++-- > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > > index dc7031132fff..7d21b857a94a 100644 > > > > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c > > > > @@ -821,7 +821,7 @@ static int create_virtqueue(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtque > > > > MLX5_SET(virtio_q, vq_ctx, event_qpn_or_msix, mvq->fwqp.mqp.qpn); > > > > MLX5_SET(virtio_q, vq_ctx, queue_size, mvq->num_ent); > > > > MLX5_SET(virtio_q, vq_ctx, virtio_version_1_0, > > > > - !!(ndev->mvdev.actual_features & VIRTIO_F_VERSION_1)); > > > > + !!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_F_VERSION_1))); > > > > MLX5_SET64(virtio_q, vq_ctx, desc_addr, mvq->desc_addr); > > > > MLX5_SET64(virtio_q, vq_ctx, used_addr, mvq->device_addr); > > > > MLX5_SET64(virtio_q, vq_ctx, available_addr, mvq->driver_addr); > > > > @@ -1578,7 +1578,7 @@ static void teardown_virtqueues(struct mlx5_vdpa_net *ndev) > > > > static inline bool mlx5_vdpa_is_little_endian(struct mlx5_vdpa_dev *mvdev) > > > > { > > > > return virtio_legacy_is_little_endian() || > > > > - (mvdev->actual_features & (1ULL << VIRTIO_F_VERSION_1)); > > > > + (mvdev->actual_features & BIT_ULL(VIRTIO_F_VERSION_1)); > > > > } > > > > static __virtio16 cpu_to_mlx5vdpa16(struct mlx5_vdpa_dev *mvdev, u16 val) > >
diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c index dc7031132fff..7d21b857a94a 100644 --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c @@ -821,7 +821,7 @@ static int create_virtqueue(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtque MLX5_SET(virtio_q, vq_ctx, event_qpn_or_msix, mvq->fwqp.mqp.qpn); MLX5_SET(virtio_q, vq_ctx, queue_size, mvq->num_ent); MLX5_SET(virtio_q, vq_ctx, virtio_version_1_0, - !!(ndev->mvdev.actual_features & VIRTIO_F_VERSION_1)); + !!(ndev->mvdev.actual_features & BIT_ULL(VIRTIO_F_VERSION_1))); MLX5_SET64(virtio_q, vq_ctx, desc_addr, mvq->desc_addr); MLX5_SET64(virtio_q, vq_ctx, used_addr, mvq->device_addr); MLX5_SET64(virtio_q, vq_ctx, available_addr, mvq->driver_addr); @@ -1578,7 +1578,7 @@ static void teardown_virtqueues(struct mlx5_vdpa_net *ndev) static inline bool mlx5_vdpa_is_little_endian(struct mlx5_vdpa_dev *mvdev) { return virtio_legacy_is_little_endian() || - (mvdev->actual_features & (1ULL << VIRTIO_F_VERSION_1)); + (mvdev->actual_features & BIT_ULL(VIRTIO_F_VERSION_1)); } static __virtio16 cpu_to_mlx5vdpa16(struct mlx5_vdpa_dev *mvdev, u16 val)
VIRTIO_F_VERSION_1 is a bit number. Use BIT_ULL() with mask conditionals. Also, in mlx5_vdpa_is_little_endian() use BIT_ULL for consistency with the rest of the code. Fixes: 1a86b377aa21 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices") Signed-off-by: Eli Cohen <elic@nvidia.com> --- drivers/vdpa/mlx5/net/mlx5_vnet.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)