From: Ferruh Yigit <ferruh.yigit@amd.com>
To: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>,
Stephen Hemminger <stephen@networkplumber.org>
Cc: andrew.rybchenko@oktetlabs.ru,
Jakub Grajciar <jgrajcia@cisco.com>,
dev@dpdk.org
Subject: Re: [PATCH v2] net/memif: default to physical socket
Date: Fri, 9 Dec 2022 15:13:02 +0000 [thread overview]
Message-ID: <c04224c8-2e58-a553-0266-6bf2650abef7@amd.com> (raw)
In-Reply-To: <CABsT2sOv+9eREFT5rvtk3X5KPdHCnJV30UAMc62c4xxsU_5ssw@mail.gmail.com>
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@networkplumber.org <mailto:stephen@networkplumber.org>> a écrit :
>
> On Wed, 7 Dec 2022 17:15:06 +0000
> Ferruh Yigit <ferruh.yigit@amd.com <mailto:ferruh.yigit@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 prev parent reply other threads:[~2022-12-09 15:13 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-10 10:40 [PATCH] " Nathan Skrzypczak
2022-10-17 12:12 ` [PATCH v2] " Nathan Skrzypczak
2022-12-07 15:14 ` Ferruh Yigit
2022-12-07 15:56 ` Nathan Skrzypczak
2022-12-07 17:15 ` Ferruh Yigit
2022-12-07 21:01 ` Stephen Hemminger
2022-12-08 11:24 ` Nathan Skrzypczak
2022-12-09 15:13 ` Ferruh Yigit [this message]
2023-02-07 17:26 ` Nathan Skrzypczak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c04224c8-2e58-a553-0266-6bf2650abef7@amd.com \
--to=ferruh.yigit@amd.com \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=dev@dpdk.org \
--cc=jgrajcia@cisco.com \
--cc=nathan.skrzypczak@gmail.com \
--cc=stephen@networkplumber.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).