kernel taint
also: kernel taint flag, tainted kernel
A kernel taint is a flag set by the Linux kernel to indicate that it has loaded untrusted code, encountered errors, or is running in an unsupported state, which may affect stability and support.
The kernel maintains a taint status to mark itself as potentially unreliable or unsupported. Common causes include loading proprietary kernel modules (like NVIDIA drivers), encountering fatal hardware errors, or using unsupported kernel features. When tainted, the kernel broadcasts this state to help developers and support teams identify potential issues.
You can check the taint status by reading /proc/sys/kernel/tainted or running cat /proc/cmdline and looking for taint messages in kernel logs via dmesg. Each taint reason is represented by a letter or number in the taint bitmask.
For example, loading a proprietary graphics driver sets the P (proprietary) taint flag. If a kernel panic occurs on a tainted kernel, Linux distributions may refuse to provide support, since the taint indicates potential interference from non-standard code.