Re: [yocto-patches] [pseudo] [PATCH 0/3] closefrom/close_range: protect every pseudo fd, then drop one

Richard Purdie <[email protected]> Wed, 29 Jul 2026 09:14:13 +0100
Newsgroups org.yoctoproject.lists.yocto-patches
Message-ID <37a61cc641f5c8384248013f0e634ebefebe288b.camel@linuxfoundation.org>
On Wed, 2026-07-29 at 07:19 +0100, Richard Purdie via
lists.yoctoproject.org wrote:
> On Wed, 2026-07-29 at 05:08 +0000, Babanpreet Singh wrote:
> > On Tue, 2026-07-28 at 16:59 +0100, Richard Purdie wrote:
> > > I think the missing piece is this:
> > >=20
> > > - if (op !=3D OP_CHROOT && op !=3D OP_CHDIR && op !=3D OP_CLOSE && op
> > > !=3D OP_CLOSEFROM && op !=3D OP_DUP
> > > + if (op !=3D OP_CHROOT && op !=3D OP_CHDIR && op !=3D OP_CLOSE && op
> > > !=3D OP_CLOSEFROM && op !=3D OP_CLOSE_RANGE && op !=3D OP_DUP
> >=20
> > Sorry for the breakage, and thanks for chasing it down.
> >=20
> > I can reproduce it both ways on master-next at 6d65d74, with a
> > probe that
> > opens an fd and calls close_range(fd, ~0U, 0):
> >=20
> > =C2=A0 no PSEUDO_*_PATHS set=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0 OK
> > =C2=A0 PSEUDO_IGNORE_PATHS covering the fd's path=C2=A0=C2=A0 SIGSEGV
> > =C2=A0 PSEUDO_INCLUDE_PATHS set, path not in it=C2=A0=C2=A0=C2=A0=C2=A0=
 SIGSEGV
> > =C2=A0 same env, closefrom() instead=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 OK
> > =C2=A0 all of the above, plus your line=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 OK
> >=20
> > For OP_CLOSE_RANGE the path comes from fd_path(lowfd), the ignore
> > check
> > hits it, and pseudo_client_op() returns early with result still 0,
> > which
> > close_range.c then dereferences.
> >=20
> > Two things before I respin. Do you want the three fd-protect
> > patches
> > resent, or will you carry the master-next commits since you have
> > already
> > resolved the conflicts? And the ignore-path line: fold it into the
> > close_range patch with a Suggested-by, or keep it as your own
> > commit ahead
> > of it? Either works for me.
>=20
> You can fold the above piece in with a suggested by, it doesn't make
> sense in a commit on its own. I can take the other fd-protect patches
> if you're ok with that change, I need to update the commit messages.
>=20
> Whilst most builds are testing cleanly, we are seeing these two
> failures:
>=20
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/4403
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/23/builds/4466
>=20
> which look like a pseudo problem, and that is with the current pseudo
> master-next. I think there is still some issue remaining somewhere
> unfortunately. I'm afraid I don't know what it is.

One of those doesn't look to be pseudo, the arm one definitely does
though. It looks like it may be arch specific.

Cheers,

Richard