On Wed, 24 May 2023 at 11:43, Aleksandr Mikhalitsyn <aleksandr.mikhalitsyn@xxxxxxxxxxxxx> wrote: > > On Tue, May 23, 2023 at 11:08 PM Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > > > On Tue, 23 May 2023 11:44:01 +0100 Luca Boccassi wrote: > > > > I really would like to avoid that because it will just mean that someone > > > > else will abuse that function and then make an argument why we should > > > > export the other function. > > > > > > > > I think it would be ok if we required that unix support is built in > > > > because it's not unprecedented either and we're not breaking anything. > > > > Bpf has the same requirement: > > > > > > > > #if IS_BUILTIN(CONFIG_UNIX) && defined(CONFIG_BPF_SYSCALL) > > > > struct bpf_unix_iter_state { > > > > struct seq_net_private p; > > > > unsigned int cur_sk; > > > > unsigned int end_sk; > > > > unsigned int max_sk; > > > > struct sock **batch; > > > > bool st_bucket_done; > > > > }; > > > > > > > > and > > > > > > > > #if IS_BUILTIN(CONFIG_UNIX) && defined(CONFIG_BPF_SYSCALL) && defined(CONFIG_PROC_FS) > > > > DEFINE_BPF_ITER_FUNC(unix, struct bpf_iter_meta *meta, > > > > struct unix_sock *unix_sk, uid_t uid) > > > > Don't think we should bring BPF into arguments about uAPI consistency :S > > > > > Some data points: Debian, Ubuntu, Fedora, RHEL, CentOS, Archlinux all > > > ship with CONFIG_UNIX=y, so a missing SCM_PIDFD in unlikely to have a > > > widespread impact, and if it does, it might encourage someone to > > > review their kconfig. > > > > IDK how you can argue that everyone sets UNIX to =y so hiding SCM_PIDFD > > is fine and at the same time not be okay with making UNIX a bool :S > > > > > As mentioned on the v5 thread, we are waiting for this API to get the > > > userspace side sorted (systemd/dbus/dbus-broker/polkit), so I'd be > > > really grateful if we could start with the simplest and most > > > conservative approach (which seems to be the current one in v6 to me), > > > and then eventually later decide whether to export more functions, or > > > to deprecate CONFIG_UNIX=m, or something else entirely, as that > > > doesn't really affect the shape of the UAPI, just the details of its > > > availability. Thank you. > > > > Just throw in a patch to make UNIX a bool and stop arguing then. > > Dear Jakub, > > Thanks for your attention to these patch series! > > I'm ready to prepare/send a patch to make CONFIG_UNIX bool. > > I will send SO_PEERPIDFD as an independent patch too, because it > doesn't require this change with CONFIG_UNIX > and we can avoid waiting until CONFIG_UNIX change will be merged. > I've a feeling that the discussion around making CONFIG_UNIX to be a > boolean won't be easy and fast ;-) Thank you, that sounds great to me, I can start using SO_PEERPIDFD independently of SCM_PIDFD, there's no hard dependency between the two. Kind regards, Luca Boccassi