Re: [RFC] Why is set_config not supported in mlx5_vnet?
From: Dragos Tatulea <dtatulea@nvidia.com>
Date: 2024-08-26 15:53:57
Also in:
kvm, lkml, virtualization
On 26.08.24 16:26, Carlos Bilbao wrote:
Hello Dragos, On 8/26/24 4:06 AM, Dragos Tatulea wrote:quoted
On 23.08.24 18:54, Carlos Bilbao wrote:quoted
Hello, I'm debugging my vDPA setup, and when using ioctl to retrieve the configuration, I noticed that it's running in half duplex mode: Configuration data (24 bytes): MAC address: (Mac address) Status: 0x0001 Max virtqueue pairs: 8 MTU: 1500 Speed: 0 Mb Duplex: Half Duplex RSS max key size: 0 RSS max indirection table length: 0 Supported hash types: 0x00000000 I believe this might be contributing to the underperformance of vDPA.mlx5_vdpa vDPA devicess currently do not support the VIRTIO_NET_F_SPEED_DUPLEX feature which reports speed and duplex. You can check the state on the PF.According to ethtool, all my devices are running at full duplex. I assume I can disregard this configuration output from the module then.
Yep.
quoted
quoted
While looking into how to change this option for Mellanox, I read the following kernel code in mlx5_vnet.c: static void mlx5_vdpa_set_config(struct vdpa_device *vdev, unsigned int offset, const void *buf, unsigned int len) { /* not supported */ } I was wondering why this is the case.TBH, I don't know why it was not added. But in general, the control VQ is the better way as it's dynamic.quoted
Is there another way for me to change these configuration settings?The configuration is done using control VQ for most things (MTU, MAC, VQs, etc). Make sure that you have the CTRL_VQ feature set (should be on by default). It should appear in `vdpa mgmtdev show` and `vdpa dev config show`.I see that CTRL_VQ is indeed enabled. Is there any documentation on how to use the control VQ to get/set vDPA configuration values?
You are most likely using it already through through qemu. You can check if the CTR_VQ feature also shows up in the output of `vdpa dev config show`. What values are you trying to configure btw? Thanks, Dragos