Re: [PATCH v2 1/4] man/man3*: document the glibc 2.42+ baud_t termios interface
"H. Peter Anvin" <[email protected]> Tue, 30 Jun 2026 15:01:02 -0700
| Newsgroups | org.kernel.vger.linux-man |
|---|---|
| Message-ID | <[email protected]> |
On 2026-06-30 14:17, Alejandro Colomar wrote: >> >> However, doing that using the broken-up diffs that you want would be very >> difficult at least for me, as I'm neither particularly comfortable with troff >> nor a good technical writer, plus that this is a "spare time" project for me. >> I would be willing to try to submit such a rewrite, but if that means >> refactoring it into small diffs it isn't going to happen. > > I can break the page myself. I can use the break points that you told > me above. > > Do you prefer that I break the page in small bits and then you apply > your patches on top of that? Or would that be inconvenient for you? > No, that would probably be the best way forward. >> In fact, I *did* rewrite and restructure significant chunks of the termios >> chapter of the glibc texinfo manual during this work partly due to the sheer >> number of errors that had collected over the years, partly because the clarity >> was muffled by unclear language caused by wanting to pretend that the tty >> interface is anything other than an emulation of an RS232 interface. >> Explaining it as an *abstraction* of an RS232 interface that may be real or >> virtual really clarifies a whole lot of things. >> >> As such, I would be very very interested in what you think of the formulations >> I used in that document. Perhaps we could use some of them if you think that >> such a rewrite would be worthwhile. >> >> I *very* strongly believe, however, that the ioctl_tty(2) interface needs to >> be kept separate and that we shouldn't muddle that into the termios(3) man >> page. It's possible that we should be factoring out the termios parts of the >> kernel interface into ioctl_termios(2), as the rest of the tty ioctls >> generally coexist just fine with the termios(3) interface and thus fall into a >> separate class. > > Okay; I'll try to do that, and send the patches to you for a review of > the overall break points. When I'm finished, you can rewrite the text > as you wish. Does that sound good? Sounds great to me. >> >> Speaking of ioctl_tty(2)... >> >> One thing I have wondered about is that in ioctl_tty(2) you state to use >> <asm/termbits.h> as the include, but in practice applications use >> <linux/termios.h>. > > IIRC, we weren't sure which header was preferred, so I put one that > looked correct. I never used these interfaces myself, so it's probably > good to change it. Feel free to send patches for that. Yep, I will look at ioctl_tty(2) and its fellows, but I think that needs to be separate. >> There are considerable subtleties in using the kernel >> termios interfaces, as they are architecture-specific *AND* mutually exclusive >> from the glibc one (neither the types nor the constants necessarily match up.) >> On PowerPC, for historical reasons, the ioctl values in <sys/ioctl.h> for >> TC[GS]ETS* don't even match the kernel ones and are intercepted in glibc and >> redirected to the *glibc* tc[gs]etattr() functions, expecting the glibc >> structure which I do believe is different in that it has a different number of >> reserved special character slots which also pushes out the c_ispeed and >> c_ospeed members. >> >> Let me know what you think. > > I mostly agree with everything, I think. There's too much to be > specific, so maybe I should split the page, and then we can discuss more > concrete patches. > > I'll wait for your confirmation to start breaking the page into many > bits.