Mon, Jun 17, 2024 at 11:44:53AM CEST, parav@xxxxxxxxxx wrote: > >> From: Jiri Pirko <jiri@xxxxxxxxxxx> >> Sent: Monday, June 17, 2024 3:09 PM >> >> Mon, Jun 17, 2024 at 04:57:23AM CEST, parav@xxxxxxxxxx wrote: >> > >> > >> >> From: Jason Wang <jasowang@xxxxxxxxxx> >> >> Sent: Monday, June 17, 2024 7:18 AM >> >> >> >> On Wed, Jun 12, 2024 at 2:30 PM Jiri Pirko <jiri@xxxxxxxxxxx> wrote: >> >> > >> >> > Wed, Jun 12, 2024 at 03:58:10AM CEST, kuba@xxxxxxxxxx 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 >> >Above command is privilege command done by the hypervisor on the port function. >Vpda level setting the mac is similar to a function owner driver setting the mac on the self netdev (even though devlink side has configured some mac for it). >For example, >$ ip link set dev wlan1 address 00:11:22:33:44:55 Hmm, under what sceratio exacly this is needed? I mean, the VM that has VDPA device can actually do that too. That is the actual function owner. > >> 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? >A eswitch may allow incoming and outgoing traffic from multiple mac addresses left to the tc rules to decide. >It does not need two eswitch ports. Ugh.