On Mon, May 22, 2023 at 09:17:46PM +0100, Luca Boccassi wrote: > On Mon, 22 May 2023 at 21:13, Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > > > On Mon, 22 May 2023 15:19:17 +0200 Simon Horman wrote: > > > > TLI, that AF_UNIX can be a kernel module... > > > > I'm really not excited in exposing pidfd_prepare() to non-core kernel > > > > code. Would it be possible to please simply refuse SO_PEERPIDFD and > > > > SCM_PIDFD if AF_UNIX is compiled as a module? I feel that this must be > > > > super rare because it risks breaking even simplistic userspace. > > > > > > It occurs to me that it may be simpler to not allow AF_UNIX to be a module. > > > But perhaps that breaks something for someone... > > > > Both of the two options (disable the feature with unix=m, make unix > > bool) could lead to breakage, I reckon at least the latter makes > > the breakage more obvious? So not allowing AF_UNIX as a module > > gets my vote as well. > > > > A mechanism of exporting symbols for core/internal use only would > > find a lot of use in networking :( > > We are eagerly waiting for this UAPI to be merged so that we can use > it in userspace (systemd/dbus/dbus-broker/polkitd), so I would much > rather if such impactful changes could be delayed until after, as > there is bound to be somebody complaining about such a change, and > making this dependent on that will likely jeopardize landing this > series. > v6 adds fixed this so that's disabled if AF_UNIX is not built-in via > 'IS_BUILTIN', and that seems like a perfect starting point to me, if > AF_UNIX can be made non-optional or non-module it can be refactored > easily later. No objections from my side, as long as we're not exposing symbols that we'd rather not have exposed, or otherwise creating new problems. Let's resolve the AF_UNIX question at some point.