Re: [PATCH 1/2] vdpa: support set mac address from vdpa tool

Jiri Pirko
2024-06-17T09:39:30Z

Mon, Jun 17, 2024 at 04:57:23AM CEST, parav@nvidia.com wrote:
>
>
>> From: Jason Wang <jasowang@redhat.com>
>> Sent: Monday, June 17, 2024 7:18 AM
>>
>> On Wed, Jun 12, 2024 at 2:30 PM Jiri Pirko <jiri@resnulli.us> wrote:
>> >
>> > Wed, Jun 12, 2024 at 03:58:10AM CEST, kuba@kernel.org wrote:
>> > >On Tue, 11 Jun 2024 13:32:32 +0800 Cindy Lu wrote:
>> > >> Add new UAPI to support the mac address from vdpa tool Function
>> > >> vdpa_nl_cmd_dev_config_set_doit() will get the MAC address from the
>> > >> vdpa tool and then set it to the device.
>> > >>
>> > >> The usage is: vdpa dev set name vdpa_name mac **:**:**:**:**:**
>> > >
>> > >Why don't you use devlink?
>> >
>> > Fair question. Why does vdpa-specific uapi even exist? To have
>> > driver-specific uapi Does not make any sense to me :/
>>
>> It came with devlink first actually, but switched to a dedicated uAPI.
>>
>> Parav(cced) may explain more here.
>>
>Devlink configures function level mac that applies to all protocol devices (vdpa, rdma, netdev) etc.
>Additionally, vdpa device level mac can be different (an additional one) to apply to only vdpa traffic.
>Hence dedicated uAPI was added.

There is 1:1 relation between vdpa instance and devlink port, isn't it?
Then we have:
devlink port function set DEV/PORT_INDEX hw_addr ADDR

Which does exactly what you need, configure function hw address (mac).

When you say VDPA traffic, do you suggest there might be VDPA instance
and netdev running on the same VF in parallel. If yes, do we have 2
eswitch port representors to be separately used to steer the traffic?
If no, how is that supposed to be working?