Re: [PATCH v4 1/2] vdpa/mlx5: Make VIRTIO_NET_F_MRG_RXBUF off by default

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 21, 2023 at 11:32:36PM -0400, Michael S. Tsirkin wrote:
> On Tue, Mar 21, 2023 at 01:28:08PM +0200, Eli Cohen wrote:
> > Following patch adds driver support for VIRTIO_NET_F_MRG_RXBUF.
> > 
> > Current firmware versions show degradation in packet rate when using
> > MRG_RXBUF. Users who favor memory saving over packet rate could enable
> > this feature but we want to keep it off by default.
> > 
> > One can still enable it when creating the vdpa device using vdpa tool by
> > providing features that include it.
> > 
> > For example:
> > $ vdpa dev add name vdpa0 mgmtdev pci/0000:86:00.2 device_features 0x300cb982b
> > 
> > 
> > Acked-by: Jason Wang <jasowang@xxxxxxxxxx>
> > Signed-off-by: Eli Cohen <elic@xxxxxxxxxx>
> 
> 
> I have a question. Could you guys try with the recent XDP mergeable
> buffer rework? Does this address the performance issue you are
> observing?
> 
> Specifically:
> 
> Message-Id: <20230322025701.2955-1-xuanzhuo@xxxxxxxxxxxxxxxxx>
> Message-Id: <20230322030308.16046-1-xuanzhuo@xxxxxxxxxxxxxxxxx>
> 
> I would very much appreciate if you posted perf numbers
> in response to that thread - both to help evaluate that
> patchset and this one.
> Thanks!

Oh sorry, I got confused. That is still preparatory work not real
zero copy.  The patchset to try is this:

Message-Id: <20230202110058.130695-1-xuanzhuo@xxxxxxxxxxxxxxxxx>




> > ---
> >  drivers/vdpa/mlx5/net/mlx5_vnet.c | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> > index 520646ae7fa0..502c482a93ce 100644
> > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c
> > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c
> > @@ -3122,6 +3122,8 @@ static int mlx5_vdpa_dev_add(struct vdpa_mgmt_dev *v_mdev, const char *name,
> >  			return -EINVAL;
> >  		}
> >  		device_features &= add_config->device_features;
> > +	} else {
> > +		device_features &= ~BIT_ULL(VIRTIO_NET_F_MRG_RXBUF);
> >  	}
> >  	if (!(device_features & BIT_ULL(VIRTIO_F_VERSION_1) &&
> >  	      device_features & BIT_ULL(VIRTIO_F_ACCESS_PLATFORM))) {
> > -- 
> > 2.38.1

_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization



[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux