On Tue, May 20, 2025 at 08:36:18PM +1000, Michael Ellerman wrote: > Madhavan Srinivasan <ma...@linux.ibm.com> writes: > > Since termio interface is now obsolete, include/uapi/asm/ioctls.h > > has some constant macros referring to "struct termio", this caused > > build failure at userspace. > > > > In file included from /usr/include/asm/ioctl.h:12, > > from /usr/include/asm/ioctls.h:5, > > from tst-ioctls.c:3: > > tst-ioctls.c: In function 'get_TCGETA': > > tst-ioctls.c:12:10: error: invalid application of 'sizeof' to incomplete > > type 'struct termio' > > 12 | return TCGETA; > > | ^~~~~~ > > > > Even though termios.h provides "struct termio", trying to juggle > > definitions around to > > make it compile could introduce regressions. So better to open code it. > > > > Reported-by: Tulio Magno <tul...@ascii.art.br> > > Closes: https://lore.kernel.org/linuxppc-dev/8734dji5wl....@ascii.art.br/ > > Suggested-by: Nicholas Piggin <npig...@gmail.com> > > Signed-off-by: Madhavan Srinivasan <ma...@linux.ibm.com> > > --- > > Changelog v1: > > - mpe pointing out mistake in hardcoded values. > > Fixed the same. > > > > arch/powerpc/include/uapi/asm/ioctls.h | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/arch/powerpc/include/uapi/asm/ioctls.h > > b/arch/powerpc/include/uapi/asm/ioctls.h > > index 2c145da3b774..b5211e413829 100644 > > --- a/arch/powerpc/include/uapi/asm/ioctls.h > > +++ b/arch/powerpc/include/uapi/asm/ioctls.h > > @@ -23,10 +23,10 @@ > > #define TCSETSW _IOW('t', 21, struct termios) > > #define TCSETSF _IOW('t', 22, struct termios) > > > > -#define TCGETA _IOR('t', 23, struct termio) > > -#define TCSETA _IOW('t', 24, struct termio) > > -#define TCSETAW _IOW('t', 25, struct termio) > > -#define TCSETAF _IOW('t', 28, struct termio) > > +#define TCGETA 0x40147417 /* _IOR('t', 23, struct termio) */ > > +#define TCSETA 0x80147418 /* _IOW('t', 24, struct termio) */ > > +#define TCSETAW 0x80147419 /* _IOW('t', 25, struct termio) */ > > +#define TCSETAF 0x8014741c /* _IOW('t', 28, struct termio) */ > > These values look right to me. And the values should never change, so > hard-coding them is a reasonable solution. > > Reviewed-by: Michael Ellerman <m...@ellerman.id.au>
Has this been forgotten? We are having to carry it for userspace to continue, and this should really be pushed to Linus. Tested-by: Justin M. Forbes <jfor...@fedoraproject.org> > > cheers >