On Wed, Jan 05, 2022 at 01:46:32PM +0200, Eli Cohen wrote: > Allow the user to configure the max number of virtqueue pairs for a vdpa > instance. The user can then control the actual number of virtqueue pairs > using ethtool. So I put a version of this in linux-next, but I had to squash in some bugfixes, and resolve some conflicts. Eli, please take a look and let me know whether it looks sane. If not pls post a new version. Jason, what is your take on merging this now? Si-wei here seems to want to defer, but OTOH it's up to v7 already, most patches are acked and most comments look like minor improvement suggestions to me. > Example, set number of VQPs to 2: > $ ethtool -L ens1 combined 2 > > A user can check the max supported virtqueues for a management device by > running: > > $ $ vdpa mgmtdev show > auxiliary/mlx5_core.sf.1: > supported_classes net > max_supported_vqs 257 > dev_features CSUM GUEST_CSUM MTU HOST_TSO4 HOST_TSO6 STATUS CTRL_VQ MQ \ > CTRL_MAC_ADDR VERSION_1 ACCESS_PLATFORM > > and refer to this value when adding a device. > > To create a device with a max of 5 VQPs: > vdpa dev add name vdpa-a mgmtdev auxiliary/mlx5_core.sf.1 max_vqp 5 > > Please note that for patches that were changed I removed "Reviewed-by" > and "Acked-by". > > v6 -> v7: > 1. Make use of cf_mutex for serializing netlink set/get with other > calls. > 2. Some fixes (See in each patch) > 3. Add patch for vdpa_sim to report supported features > 4. "Reviewed-by" and "Acked-by" removed from patch 0007 since it had > slightly changed. > > Eli Cohen (14): > vdpa: Provide interface to read driver features > vdpa/mlx5: Distribute RX virtqueues in RQT object > vdpa: Sync calls set/get config/status with cf_mutex > vdpa: Read device configuration only if FEATURES_OK > vdpa: Allow to configure max data virtqueues > vdpa/mlx5: Fix config_attr_mask assignment > vdpa/mlx5: Support configuring max data virtqueue > vdpa: Add support for returning device configuration information > vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() > vdpa: Support reporting max device capabilities > vdpa/mlx5: Report max device capabilities > vdpa/vdpa_sim: Configure max supported virtqueues > vdpa: Use BIT_ULL for bit operations > vdpa/vdpa_sim_net: Report max device capabilities > > drivers/vdpa/alibaba/eni_vdpa.c | 16 +++- > drivers/vdpa/ifcvf/ifcvf_main.c | 16 +++- > drivers/vdpa/mlx5/net/mlx5_vnet.c | 134 ++++++++++++++++----------- > drivers/vdpa/vdpa.c | 100 ++++++++++++++++---- > drivers/vdpa/vdpa_sim/vdpa_sim.c | 21 +++-- > drivers/vdpa/vdpa_sim/vdpa_sim_net.c | 2 + > drivers/vdpa/vdpa_user/vduse_dev.c | 16 +++- > drivers/vdpa/virtio_pci/vp_vdpa.c | 16 +++- > drivers/vhost/vdpa.c | 11 +-- > drivers/virtio/virtio_vdpa.c | 7 +- > include/linux/vdpa.h | 36 +++++-- > include/uapi/linux/vdpa.h | 6 ++ > 12 files changed, 271 insertions(+), 110 deletions(-) > > -- > 2.34.1 _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization