On 03/02, Christian Brauner wrote: > > On Sun, Mar 02, 2025 at 02:09:36PM +0100, Oleg Nesterov wrote: > > On 02/28, Christian Brauner wrote: > > > > > > @@ -696,6 +696,10 @@ struct file *pidfs_alloc_file(struct pid *pid, unsigned int flags) > > > return ERR_PTR(ret); > > > > > > pidfd_file = dentry_open(&path, flags, current_cred()); > > > + /* Raise PIDFD_THREAD explicitly as dentry_open() strips it. */ > > ^^^^^^^^^^^^^^^^^^^^^^^ > > Hmm, does it? > > > > dentry_open(flags) just passes "flags" to alloc_empty_file()->init_file(), > > and init_file(flags) does > > > > f->f_flags = flags; > > > > dentry_open() > -> do_dentry_open() > { > f->f_flags &= ~(O_CREAT | O_EXCL | O_NOCTTY | O_TRUNC); Ah, indeed, thanks ;) so perhaps you can update the comment, s/dentry_open/do_dentry_open/ to make it more clear? Oleg.