Re: [PATCH v2 02/17] psp: base PSP device support

Willem de Bruijn
2025-06-27T16:10:34Z

Jakub Kicinski wrote:
> On Thu, 26 Jun 2025 13:20:45 -0400 Willem de Bruijn wrote:
> > > > IDPF does support multiple "vports" (num_alloc_vports), and with that
> > > > struct net_device, from a single BDF.
> > >
> > > Upstream? If yes then I'm very bad at reviewing code :D
> >
> > I then don't think I want to focus your attention on this, but..
> >
> > See use num_alloc_ports in idpf_init_task. Which keeps requeueing
> > itself until num_default_vports is reached. Which is a variable
> > received from the device in VIRTCHNL2_OP_GET_CAPS.
>
> That's not too bad, one of the older drivers had a sysfs interface
> for creating the sub-interfaces IIRC :/
>
> We should be able to share one psp_dev if the implementation shares PSP
> between blocks.

Great.

> I was trying to write the code so that it'd be possible
> to attach the psp_dev to veth / netkit
> IIRC the main_netdev was supposed to be special in terms of
> permissions, the admin in the netns where main_netdev sits is
> the admin of the device (for rotations and config).
> But I was planning to add a secondary list of "attached devices"
> which have access to non-privileged operations.

That makes sense. I like how this approach enables support for such
devices without having to explicitly pipe through net_device_ops
(what legacy Google PSP implementation had to do for each of ipvlan,
bonding, etc).