Subject: Re: [net-next 14/15] net/mlx5: Light probe local SFs

From: Jakub Kicinski <[email-masked]>
Date: Tue, 27 Jun 2023 10:35:39 -0700

On Tue, 27 Jun 2023 19:16:42 +0200 Jiri Pirko wrote:
> Hmm, how that could be generated by kernel if it should be really
> unique? Consider an example scenario where you have 2 DPUS (smartnic
> with CPUs) plugged into a single host.
> 
> 1) On DPU 1 you do:
>    $ sudo devlink port add pci/0000:08:00.0 flavour pcisf pfnum 1 sfnum 103
>    pci/0000:08:00.0/32770: type eth netdev eth10 flavour pcisf controller 1 pfnum 0 sfnum 103 splittable false
>        function:
>        hw_addr 00:00:00:00:00:00 state inactive opstate detached uuid XXX
> 
> 2) On DPU 2 you do:
>    $ sudo devlink port add pci/0000:08:00.0 flavour pcisf pfnum 1 sfnum 103
>    pci/0000:08:00.0/32770: type eth netdev eth10 flavour pcisf controller 1 pfnum 0 sfnum 103 splittable false
>        function:
>        hw_addr 00:00:00:00:00:00 state inactive opstate detached uuid XXX
> 
> There is no way to sync between kernel running in the DPUs.
> Both SFs in this example would be externaly created on the host. The
> host will see 2 devices with the same uuid XXX, collision.

https://en.wikipedia.org/wiki/Universally_unique_identifier

tl;dr the whole point of UUIDs is that collisions do not happen