Re: [OE-core] [pseudo][PATCH] fcntl: Add support for F_GETPIPE_SZ

Mike Crowe
2021-08-12T07:46:21Z

On Wednesday 11 August 2021 at 22:38:23 +0100, Richard Purdie wrote:
> On Wed, 2021-08-11 at 16:58 +0100, Mike Crowe via lists.openembedded.org wrote:
> > When running the test suite on my Debian 11 box I see many occurrences
> > of:
> >
> >  unknown fcntl argument 1032, assuming long argument.
> >
> > (for example from test-execl.sh.)
> >
> > It appears that this is F_GETPIPE_SZ and it takes no arguments. Let's
> > add it to avoid the warning messages.
> >
> > I could add F_SETPIPE_SZ too, but that apparently takes an int argument
> > which would mean moving the va_arg call into the switch statement. :(
> >
> > Signed-off-by: Mike Crowe <mac@mcrowe.com>
> > ---
> >  ports/linux/guts/fcntl.c | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/ports/linux/guts/fcntl.c b/ports/linux/guts/fcntl.c
> > index 434c7f3..e9c6140 100644
> > --- a/ports/linux/guts/fcntl.c
> > +++ b/ports/linux/guts/fcntl.c
> > @@ -37,6 +37,9 @@
> >   case F_GETOWN:
> >   case F_GETSIG:
> >   case F_GETLEASE:
> > +#if defined(F_GETPIPE_SZ)
> > + case F_GETPIPE_SZ:
> > +#endif
> >   rc = real_fcntl(fd, cmd);
> >   break;
> >   /* long argument */
>
> This goes make to making pseudo host specific which will break uninative/sstate.
> We'll probably have to add a define if it isn't defined to get the behaviour we
> need.

Good point. I should have realised that.

> It is probably only a question of time before some program is using F_SETPIPE_SZ
> too :(

OK. I'll work on a new patch that supports F_GETPIPE_SZ and F_SETPIPE_SZ
without relying on the constants being available.

Thanks!

Mike.