linux-alpha.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] alpha: don't reference obsolete termio struct for TC* constants
@ 2025-10-01 23:00 Sam James
  2025-10-19 19:18 ` Sam James
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Sam James @ 2025-10-01 23:00 UTC (permalink / raw)
  To: Richard Henderson, Matt Turner
  Cc: Sam James, Stian Halseth, Magnus Lindholm, linux-alpha,
	linux-kernel

Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
drops the legacy termio struct, but the ioctls.h header still defines some
TC* constants in terms of termio (via sizeof). Hardcode the values instead.

This fixes building Python for example, which falls over like:
  ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'

Link: https://bugs.gentoo.org/961769
Link: https://bugs.gentoo.org/962600
Co-authored-by: Stian Halseth <stian@itx.no>
Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
---
v3: Fix constants per Magnus.
v2: Fix title.

 arch/alpha/include/uapi/asm/ioctls.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/alpha/include/uapi/asm/ioctls.h b/arch/alpha/include/uapi/asm/ioctls.h
index 971311605288f..a09d04b49cc65 100644
--- a/arch/alpha/include/uapi/asm/ioctls.h
+++ b/arch/alpha/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          0x40127417
+#define TCSETA          0x80127418
+#define TCSETAW         0x80127419
+#define TCSETAF         0x8012741c
 
 #define TCSBRK		_IO('t', 29)
 #define TCXONC		_IO('t', 30)
-- 
2.51.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-10-01 23:00 [PATCH] alpha: don't reference obsolete termio struct for TC* constants Sam James
@ 2025-10-19 19:18 ` Sam James
  2025-11-29 16:31 ` Magnus Lindholm
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Sam James @ 2025-10-19 19:18 UTC (permalink / raw)
  To: Richard Henderson
  Cc: Matt Turner, Stian Halseth, Magnus Lindholm, linux-alpha,
	linux-kernel

Sam James <sam@gentoo.org> writes:

> Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
> drops the legacy termio struct, but the ioctls.h header still defines some
> TC* constants in terms of termio (via sizeof). Hardcode the values instead.
>
> This fixes building Python for example, which falls over like:
>   ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'
>
> Link: https://bugs.gentoo.org/961769
> Link: https://bugs.gentoo.org/962600
> Co-authored-by: Stian Halseth <stian@itx.no>
> Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
> Signed-off-by: Sam James <sam@gentoo.org>
> ---
> v3: Fix constants per Magnus.
> v2: Fix title.

Ping.

>
>  arch/alpha/include/uapi/asm/ioctls.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/alpha/include/uapi/asm/ioctls.h b/arch/alpha/include/uapi/asm/ioctls.h
> index 971311605288f..a09d04b49cc65 100644
> --- a/arch/alpha/include/uapi/asm/ioctls.h
> +++ b/arch/alpha/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          0x40127417
> +#define TCSETA          0x80127418
> +#define TCSETAW         0x80127419
> +#define TCSETAF         0x8012741c
>  
>  #define TCSBRK		_IO('t', 29)
>  #define TCXONC		_IO('t', 30)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-10-01 23:00 [PATCH] alpha: don't reference obsolete termio struct for TC* constants Sam James
  2025-10-19 19:18 ` Sam James
@ 2025-11-29 16:31 ` Magnus Lindholm
  2025-11-29 17:59 ` Magnus Lindholm
  2025-12-01  3:50 ` Maciej W. Rozycki
  3 siblings, 0 replies; 8+ messages in thread
From: Magnus Lindholm @ 2025-11-29 16:31 UTC (permalink / raw)
  To: Sam James
  Cc: Richard Henderson, Matt Turner, Stian Halseth, linux-alpha,
	linux-kernel

Thanks, looks good to me, sorry for a late reply.

Reviewed-by: Magnus Lindholm <linmag7@gmail.com>


On Thu, Oct 2, 2025 at 1:01 AM Sam James <sam@gentoo.org> wrote:
>
> Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
> drops the legacy termio struct, but the ioctls.h header still defines some
> TC* constants in terms of termio (via sizeof). Hardcode the values instead.
>
> This fixes building Python for example, which falls over like:
>   ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'
>
> Link: https://bugs.gentoo.org/961769
> Link: https://bugs.gentoo.org/962600
> Co-authored-by: Stian Halseth <stian@itx.no>
> Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
> Signed-off-by: Sam James <sam@gentoo.org>
> ---
> v3: Fix constants per Magnus.
> v2: Fix title.
>
>  arch/alpha/include/uapi/asm/ioctls.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/alpha/include/uapi/asm/ioctls.h b/arch/alpha/include/uapi/asm/ioctls.h
> index 971311605288f..a09d04b49cc65 100644
> --- a/arch/alpha/include/uapi/asm/ioctls.h
> +++ b/arch/alpha/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          0x40127417
> +#define TCSETA          0x80127418
> +#define TCSETAW         0x80127419
> +#define TCSETAF         0x8012741c
>
>  #define TCSBRK         _IO('t', 29)
>  #define TCXONC         _IO('t', 30)
> --
> 2.51.0
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-10-01 23:00 [PATCH] alpha: don't reference obsolete termio struct for TC* constants Sam James
  2025-10-19 19:18 ` Sam James
  2025-11-29 16:31 ` Magnus Lindholm
@ 2025-11-29 17:59 ` Magnus Lindholm
  2025-12-01  3:50 ` Maciej W. Rozycki
  3 siblings, 0 replies; 8+ messages in thread
From: Magnus Lindholm @ 2025-11-29 17:59 UTC (permalink / raw)
  To: Sam James
  Cc: Richard Henderson, Matt Turner, Stian Halseth, linux-alpha,
	linux-kernel

On Thu, Oct 2, 2025 at 1:01 AM Sam James <sam@gentoo.org> wrote:
>
> Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
> drops the legacy termio struct, but the ioctls.h header still defines some
> TC* constants in terms of termio (via sizeof). Hardcode the values instead.
>
> This fixes building Python for example, which falls over like:
>   ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'
>
> Link: https://bugs.gentoo.org/961769
> Link: https://bugs.gentoo.org/962600
> Co-authored-by: Stian Halseth <stian@itx.no>
> Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
> Signed-off-by: Sam James <sam@gentoo.org>
> ---
> v3: Fix constants per Magnus.
> v2: Fix title.
>
>  arch/alpha/include/uapi/asm/ioctls.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/alpha/include/uapi/asm/ioctls.h b/arch/alpha/include/uapi/asm/ioctls.h
> index 971311605288f..a09d04b49cc65 100644
> --- a/arch/alpha/include/uapi/asm/ioctls.h
> +++ b/arch/alpha/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          0x40127417
> +#define TCSETA          0x80127418
> +#define TCSETAW         0x80127419
> +#define TCSETAF         0x8012741c
>
>  #define TCSBRK         _IO('t', 29)
>  #define TCXONC         _IO('t', 30)
> --
> 2.51.0
>

Thanks, looks good to me!

Reviewed-by: Magnus Lindholm <linmag7@gmail.com>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-10-01 23:00 [PATCH] alpha: don't reference obsolete termio struct for TC* constants Sam James
                   ` (2 preceding siblings ...)
  2025-11-29 17:59 ` Magnus Lindholm
@ 2025-12-01  3:50 ` Maciej W. Rozycki
  2025-12-01  3:59   ` Sam James
  3 siblings, 1 reply; 8+ messages in thread
From: Maciej W. Rozycki @ 2025-12-01  3:50 UTC (permalink / raw)
  To: Sam James
  Cc: Richard Henderson, Matt Turner, Stian Halseth, Magnus Lindholm,
	linux-alpha, linux-kernel

On Thu, 2 Oct 2025, Sam James wrote:

> Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
> drops the legacy termio struct, but the ioctls.h header still defines some
> TC* constants in terms of termio (via sizeof). Hardcode the values instead.
> 
> This fixes building Python for example, which falls over like:
>   ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'
> 
> Link: https://bugs.gentoo.org/961769
> Link: https://bugs.gentoo.org/962600
> Co-authored-by: Stian Halseth <stian@itx.no>
> Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
> Signed-off-by: Sam James <sam@gentoo.org>

 FWIW, the documented tag for co-authors is Co-developed-by: and you're 
supposed to collect corresponding Signed-off-by: tags from each of them 
too.  Cf. <Documentation/process/submitting-patches.rst> and the examples 
there.

  Maciej

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-12-01  3:50 ` Maciej W. Rozycki
@ 2025-12-01  3:59   ` Sam James
  2025-12-01  6:34     ` Magnus Lindholm
  0 siblings, 1 reply; 8+ messages in thread
From: Sam James @ 2025-12-01  3:59 UTC (permalink / raw)
  To: Maciej W. Rozycki
  Cc: Richard Henderson, Matt Turner, Stian Halseth, Magnus Lindholm,
	linux-alpha, linux-kernel

"Maciej W. Rozycki" <macro@orcam.me.uk> writes:

> On Thu, 2 Oct 2025, Sam James wrote:
>
>> Similar in nature to ab107276607af90b13a5994997e19b7b9731e251. glibc-2.42
>> drops the legacy termio struct, but the ioctls.h header still defines some
>> TC* constants in terms of termio (via sizeof). Hardcode the values instead.
>> 
>> This fixes building Python for example, which falls over like:
>>   ./Modules/termios.c:1119:16: error: invalid application of 'sizeof' to incomplete type 'struct termio'
>> 
>> Link: https://bugs.gentoo.org/961769
>> Link: https://bugs.gentoo.org/962600
>> Co-authored-by: Stian Halseth <stian@itx.no>
>> Co-authored-by: Magnus Lindholm <linmag7@gmail.com>
>> Signed-off-by: Sam James <sam@gentoo.org>
>
>  FWIW, the documented tag for co-authors is Co-developed-by: and you're 
> supposed to collect corresponding Signed-off-by: tags from each of them 
> too.  Cf. <Documentation/process/submitting-patches.rst> and the examples 
> there.

Thanks, though I'd say I was more being gracious here and that it's not
strictly required to have them here at all.

Anyway, Magnus, I can resend with just my Signed-off-by (and nothing
else) if you like, or can you do that in your tree?

>
>   Maciej

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-12-01  3:59   ` Sam James
@ 2025-12-01  6:34     ` Magnus Lindholm
  2025-12-01  6:40       ` Sam James
  0 siblings, 1 reply; 8+ messages in thread
From: Magnus Lindholm @ 2025-12-01  6:34 UTC (permalink / raw)
  To: Sam James
  Cc: Maciej W. Rozycki, Richard Henderson, Matt Turner, Stian Halseth,
	linux-alpha, linux-kernel

>
> Thanks, though I'd say I was more being gracious here and that it's not
> strictly required to have them here at all.
>
> Anyway, Magnus, I can resend with just my Signed-off-by (and nothing
> else) if you like, or can you do that in your tree?
>
> >
> >   Maciej


Hi, Thanks Maciej for pointing this out. Sam, lets send it out again
that way Stian can add his Signed-off-by tag as well

Magnus

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH] alpha: don't reference obsolete termio struct for TC* constants
  2025-12-01  6:34     ` Magnus Lindholm
@ 2025-12-01  6:40       ` Sam James
  0 siblings, 0 replies; 8+ messages in thread
From: Sam James @ 2025-12-01  6:40 UTC (permalink / raw)
  To: Magnus Lindholm
  Cc: Maciej W. Rozycki, Richard Henderson, Matt Turner, Stian Halseth,
	linux-alpha, linux-kernel

Magnus Lindholm <linmag7@gmail.com> writes:

>>
>> Thanks, though I'd say I was more being gracious here and that it's not
>> strictly required to have them here at all.
>>
>> Anyway, Magnus, I can resend with just my Signed-off-by (and nothing
>> else) if you like, or can you do that in your tree?
>>
>> >
>> >   Maciej
>
>
> Hi, Thanks Maciej for pointing this out. Sam, lets send it out again
> that way Stian can add his Signed-off-by tag as well

Sure.

>
> Magnus

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-12-01  6:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-01 23:00 [PATCH] alpha: don't reference obsolete termio struct for TC* constants Sam James
2025-10-19 19:18 ` Sam James
2025-11-29 16:31 ` Magnus Lindholm
2025-11-29 17:59 ` Magnus Lindholm
2025-12-01  3:50 ` Maciej W. Rozycki
2025-12-01  3:59   ` Sam James
2025-12-01  6:34     ` Magnus Lindholm
2025-12-01  6:40       ` Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).