[PATCH v2] net/memif: default to physical socket

Nathan Skrzypczak nathan.skrzypczak at gmail.com
Tue Feb 7 18:26:33 CET 2023


Hi Ferruh,

Sorry for the late reply,
You can probably drop this patch.

Kind regards,
-Nathan

Le ven. 9 déc. 2022 à 16:13, Ferruh Yigit <ferruh.yigit at amd.com> a écrit :

> On 12/8/2022 11:24 AM, Nathan Skrzypczak wrote:
> > Hi Stephen, Hi Ferruh,
> >
> > I don't have a strong opinion on usage of regular sockets vs abstract
> > sockets. My point is that most existing memif implementations
> > either don't yet properly support abstract sockets or require extra
> > flags to be passed by users (iirc VPP, gomemif, libmemif, etc...).
> > As a matter of fact, abstract socket support in dpdk was broken until
> > quite recently. So I expect most users to be somewhat
> > constrained by their implementation to use regular sockets.
> >
> > Also, as a user when you come with a filesystem path, understanding you
> > need to pass the following is not really straightforward
> > --vdev=net_memif,socket=/tmp/memif.sock,socket-abstract=no
> >
> > A better solution might be to use the '@' prefix which seems the usual
> > representation and remove the socket-abstract=no altogether
> > --vdev=net_memif,socket=@memif
> > --vdev=net_memif,socket=/tmp/memif.sock
> >
>
> There is a default socket value ('/run/memif.sock'), that is why
> additional 'socket-abstract' parameter is required:
>
> abstract socket:
> --vdev=net_memif0
>
> regular socket ('/run/memif.sock'):
> --vdev=net_memif0,socket-abstract=no
>
>
> Using '@memif' syntax an option to *replace* 'socket-abstract=no'
> syntax, but this will break existing user interface.
>
> And if intentions is NOT replace usage, but add '@memif' syntax, it
> doesn't add much value since abstract socket is already default option,
> although it doesn't hurt.
>
>
>
> Instead, by keeping existing user interface, we can say if user
> explicitly set a socket value, regular socket is implied, like:
>
> abstract:
> --vdev=net_memif0
> --vdev=net_memif0,socket-abstract=yes
> --vdev=net_memif0,socket=/tmp/memif.sock,socket-abstract=yes
> [socket-abstract overrides]
>
> regular:
> --vdev=net_memif0,socket=/tmp/memif.sock
> --vdev=net_memif0,socket-abstract=no
> --vdev=net_memif0,socket=/tmp/memif.sock,socket-abstract=no
>
>
> Does this improve user experience for regular sockets?
>
>
>
> > What do you think ?
> >
> > (Also iirc Jakub is not receiving emails on this address)
> >
> > Cheers
> > -Nathan
> >
> > Le mer. 7 déc. 2022 à 22:01, Stephen Hemminger
> > <stephen at networkplumber.org <mailto:stephen at networkplumber.org>> a
> écrit :
> >
> >     On Wed, 7 Dec 2022 17:15:06 +0000
> >     Ferruh Yigit <ferruh.yigit at amd.com <mailto:ferruh.yigit at amd.com>>
> wrote:
> >
> >     > On 12/7/2022 3:56 PM, Nathan Skrzypczak wrote:
> >     > > Hi Ferruh,
> >     > >
> >     >
> >     > Hi Nathan,
> >     >
> >     > > Thank you for your reply,
> >     > >
> >     > > On the potential confusion for users of the DPDK memif PMD : when
> >     > > defaulting to abstract sockets was added in [0] (v20.10 release)
> >     > > it did change the existing behavior, so reverting it would
> >     restore the
> >     > > old behavior.> Also abstract sockets are quite a unusual feature
> >     in linux (a 0byte
> >     > > prefixed string...), so I'm expecting most users of memif to
> >     just use
> >     > > regular sockets because they're way easier to handle.
> >     > >
> >     >
> >     > Not sure if regular socket is easier to handle, or users prefer
> >     regular
> >     > sockets, we need more input on these.
> >
> >     Regular sockets are actually harder handle, it is more that users
> >     are less familiar with them! Regular sockets have to go through
> >     file permission checks which makes dealing with containers and
> SELinux
> >     hard.  Regular sockets persist when application crashes which makes
> >     recovery harder.
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mails.dpdk.org/archives/dev/attachments/20230207/bab86f32/attachment-0001.htm>


More information about the dev mailing list