what can potentially go wrong when running a custom vanilla kernel (e.g 3.16.3) with an LTS distro (e.g Linux mint 17)
1 Answer
There is not much risk to this as long as you don't vastly exceed the latest version used on the distro, although even then there's no definite problem that will occur. The primary issue is that although the kernel -> userspace ABI is supposed to be stable, there could, in theory, be a point at which it breaks. Find a copy of Debian 2.0 and build a 3.17 kernel on it to see what happens; if it actually builds (it might not because of the older gcc/libc), it would not surprise me if it went on to work just fine.
Some software, including the native C library, is compiled using header files from the kernel source. Again, this might lead to problems if these are vastly different versions. Since the C library is fundamental, you would likely notice any problems right away.1 By "vastly" I do not mean the difference between 3.4 and 3.16. If your current distro has ever run a 3.x kernel you should be fine running any 3.x kernel. The distro certainly does not replace the C library when it upgrades the kernel.
In short, although the distros always recommend you use their version of the source, in practice it won't be an issue. If you build a vanilla kernel and it doesn't work for some reason, it is because you configured it wrong, not because it was missing whatever little tweaks the distros add. I seem to always end up running custom kernels (even when I start out intending not to) and in more than a decade of that on dozens of machines I've never had a problem related to using the vanilla source.
1. The only time I've seen a genuinely screwed up kernel -- as opposed to one that simply lacks functionality because it is misconfigured -- it was cross-compiled on a different platform using a contrived toolchain (i.e., not with the native library from the target). "Screwed up" is here relative to the userspace; the kernel booted and worked, but after login some other basic userland tools immediately failed. This is not necessarily dangerous. Failures of that sort are almost certainly just failures, much like a segmentation fault. Nothing nefarious has happened, just you can't do what you hoped to do. The kernel itself won't go berserk, it just won't cooperate properly (everything becomes less likely to happen, good or bad).
-
Thank you for good answers. I compiled a vanilla 3.16.3 kernel for some time back using the generic config from the distro + adding some patches. Works pretty nice,except that JACK doen not work properly..:/– NicolaiCommented Nov 11, 2014 at 20:51