[PATCH] linux/termio: remove <termio.h> and struct termio

Carlos O'Donell carlos@redhat.com
Mon Mar 31 13:18:52 GMT 2025


On 3/27/25 6:10 PM, Florian Weimer wrote:
> * H. Peter Anvin:
> 
>> The <termio.h> interface is absolutely ancient: it was obsoleted by
>> <termios.h> already in the first version of POSIX (1988) and thus
>> predates the very first version of Linux. Unfortunately, some constant
>> macros are used both by <termio.h> and <termios.h>; particularly
>> problematic is the baud rate constants since the termio interface
>> *requires* that the baud rate is set via an enumeration as part of
>> c_cflag.
>>
>> In preparation of revamping the termios interface to support the
>> arbitrary baud rate capability that the Linux kernel has supported
>> since 2008, remove <termio.h> in the hope that no one still uses this
>> archaic interface.
>>
>> Note that there is no actual code in glibc to support termio: it is
>> purely an unabstracted ioctl() interface.
> 
> Do you have copyright assignment with the FSF?  If not, we'd prefer
> Signed-off-by: even if it's just deleting code. 8-)  I assume you are
> familiar with the DCO terms.
> 
> The mechanics look okay to me.  If we want to push this into upstream
> now, we'd need a NEWS entry, under “Deprecated and removed features, and
> other changes affecting compatibility”.
> 
> Let's wait a bit and see what others think about the removal of these
> interfaces.

I think we should remove them and clean this up.

If we do it now we have ~4 months of Fedora Rawhide, OpenSUSE Tumbleweed
testing to see what breaks.

We won't know until we clean this up and then follow up.

-- 
Cheers,
Carlos.



More information about the Libc-alpha mailing list