Project:Toolchain/sys-kernel/linux-headers

From Gentoo Wiki
Jump to:navigation Jump to:search

Linux headers is a set of low-level headers mostly used by toolchain packages, boot loaders and linux-specific tools.

Special care must be taken when bumping headers. See testing HOWTO for details. Currently patchset and script for tarball generation live in git tree

Testing

The best test is to make sure gcc and glibc can survive rebuild and system reboot.

Also check if applications can still be built against newer headers. The list of tools known to use linux-headers directly is in testing HOWTO

Random factoids

new linux-headers / old linux kernel

It is fine to have new linux-headers (for example, 4.14) installed and old kernel running (for example, 3.13).

Software should accomodate (glibc does) for lack of runtime support of new syscalls, ioctls and such.

See kernel documentation for caveats and promises.

old linux-headers / new linux kernel

TODO: clarify in glibc upstream.

Despite the glibc FAQ entry it is fine to have old linux-headers (for example, 3.13) installed and new kernel running (for example, 4.14).

Userspace software will not be aware of new features (syscalls, ioctls, structs) added since 3.13 but it should not break things. Unless bugs in the software (should be fixed). Or found out why software breaks and this section should be fixed :)

linux-headers / linux kernel keywording policies

There is no direct relation of linux kernel versus linux-headers stabilization.

linux-headers are fine to be stabled as soon as they are ready and are known not to break userspace.