[v3] net/vmxnet3: fix a missing vmxnet3 register command
Checks
Commit Message
Vmxnet3 uses capability registers to advertise the supported
capabilities of UPT device. It uses DCR0_REG command register
for this purpose. However, the register command enum misses
one command which technically is not used by dpdk vmxnet3
driver yet. This can cause issue for commands added later.
For example, DCR0_REG and MAX_CAPABILITIES register commands
when issued will lead to incorrect command being executed in
the hypervisor. The return values can be unexpected and can
result in some capabilities being disabled and affect vnics
requesting Uniform Passthroguh (UPT) mode.
This patch fixes this issue by adding a reserved
command in its place.
Fixes: 5241d61bd865 ("net/vmxnet3: support capability registers")
Cc: stable@dpdk.org
Signed-off-by: Ronak Doshi <ronak.doshi@broadcom.com>
--
Change log
v2: fixed typo
v3: updated commit message with more information
---
drivers/net/vmxnet3/base/vmxnet3_defs.h | 1 +
1 file changed, 1 insertion(+)
Comments
On 4/22/2024 7:10 PM, Ronak Doshi wrote:
> Vmxnet3 uses capability registers to advertise the supported
> capabilities of UPT device. It uses DCR0_REG command register
> for this purpose. However, the register command enum misses
> one command which technically is not used by dpdk vmxnet3
> driver yet. This can cause issue for commands added later.
> For example, DCR0_REG and MAX_CAPABILITIES register commands
> when issued will lead to incorrect command being executed in
> the hypervisor. The return values can be unexpected and can
> result in some capabilities being disabled and affect vnics
> requesting Uniform Passthroguh (UPT) mode.
>
> This patch fixes this issue by adding a reserved
> command in its place.
>
> Fixes: 5241d61bd865 ("net/vmxnet3: support capability registers")
> Cc: stable@dpdk.org
>
> Signed-off-by: Ronak Doshi <ronak.doshi@broadcom.com>
>
Applied to dpdk-next-net/main, thanks.
On 4/26/2024 2:51 PM, Ferruh Yigit wrote:
> On 4/22/2024 7:10 PM, Ronak Doshi wrote:
>> Vmxnet3 uses capability registers to advertise the supported
>> capabilities of UPT device. It uses DCR0_REG command register
>> for this purpose. However, the register command enum misses
>> one command which technically is not used by dpdk vmxnet3
>> driver yet. This can cause issue for commands added later.
>> For example, DCR0_REG and MAX_CAPABILITIES register commands
>> when issued will lead to incorrect command being executed in
>> the hypervisor. The return values can be unexpected and can
>> result in some capabilities being disabled and affect vnics
>> requesting Uniform Passthroguh (UPT) mode.
>>
>> This patch fixes this issue by adding a reserved
>> command in its place.
>>
>> Fixes: 5241d61bd865 ("net/vmxnet3: support capability registers")
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Ronak Doshi <ronak.doshi@broadcom.com>
>>
>
> Applied to dpdk-next-net/main, thanks.
>
Hi Jochen, Ajit,
Independent from this patch.
Do you want to handle this driver in the next-net-brcm tree?
If so a maintainers file update and update to CI & patchwork script
required to select correct tree for driver.
@@ -126,6 +126,7 @@ typedef enum {
VMXNET3_CMD_RESERVED7,
VMXNET3_CMD_RESERVED8,
VMXNET3_CMD_GET_MAX_QUEUES_CONF,
+ VMXNET3_CMD_RESERVED11,
VMXNET3_CMD_GET_MAX_CAPABILITIES,
VMXNET3_CMD_GET_DCR0_REG,
} Vmxnet3_Cmd;