On Fri, Jan 14, 2022 at 08:54:05PM +0000, Maciej W. Rozycki wrote: > Fix a user API regression introduced with commit f76edd8f7ce0 ("tty: > cyclades, remove this orphan"), which removed a part of the API and > caused compilation errors for user programs using said part, such as > GCC 9 in its libsanitizer component[1]: > > .../libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc:160:10: fatal error: linux/cyclades.h: No such file or directory > 160 | #include <linux/cyclades.h> > | ^~~~~~~~~~~~~~~~~~ > compilation terminated. > make[4]: *** [Makefile:664: sanitizer_platform_limits_posix.lo] Error 1 So all we need is an empty header file? Why bring back all of the unused structures? > Any part of the public API is a contract between the kernel and the > userland and therefore once there it must not be removed even if its > implementation side has gone and any relevant calls will now fail > unconditionally. Does this code actually use any of these structures? > Revert the part of the commit referred then that affects the user API, > bringing the most recent version of <linux/cyclades.h> back verbatim > modulo the removal of trailing whitespace which used to be there, and > updating <linux/major.h> accordingly. Why major.h? What uses that? No userspace code should care about that. Also, your text here is full of trailing whitespace, so I couldn't take this commit as-is anyway :( thanks, greg k-h