Description of problem: The header file serial_reg.h is not installed. It should be located in directory /usr/include/linux Version-Release number of selected component (if applicable): /usr/src/kernels/2.6.18-1.2849.fc6-i686/ How reproducible: The file was not installed with the original FC-6 kernel (2.6.18-1.2798.fc6-i686) or the update 2.6.18-1.2849.fc6-i686 Steps to Reproduce: 1. Install FC-6 from distribution DVD. 2. ls /usr/include/linux/serial_reg.h Actual results: ls: /usr/include/linux/serial_reg.h: No such file or directory Expected results: This file should be installed in directory /usr/include/linux as it was in previous versions of Fedora Core (and Red Hat before that). Additional info: The file is included with the kernel, i.e., /usr/src/kernels/2.6.18-1.2798.fc6-i686/include/linux/serial_reg.h /usr/src/kernels/2.6.18-1.2849.fc6-i686/include/linux/serial_reg.h
Absent justification for using this kernel-private header in userspace.
Was it always kernel-private? For whatever reason the header was included in some 10-year-old software which proceeded to break under FC-6 because of its removal. Deleting the header from the software appears not to cause a problem under FC-6, but I can only keep my fingers crossed that the software will continue to work properly without it for users running older versions of Linux.
Fairly much, yes. We were never so coherent about exporting headers as we are in the kernel nowadays, but it never made much sense to be including serial_reg.h from userspace -- not unless you were trying to poke at UARTs directly, which you really shouldn't be doing.
Thanks David. I appreciate the explanation.