Trouble selecting "Fully Preemptible Kernel (Real-Time)" when configuring/compiling kernel 5.4
by spartanscrub from LinuxQuestions.org on (#52HCK)
Hello,
I am trying to compile the 5.4 kernel with the latest stable PREEMPT_RT patch (5.4.28-rt19) but for some reason can't select the Fully Preemptible Kernel (RT)option inside make nconfig/menconfig.
I've compiled the 4.19 rt patch before, and it was as simple as copying the current config (/boot/config-4.18-xxx) to the new .config, and the option would show. Now I only see:
Code:No Forced Preemption (Server)
Voluntary Kernel Preemption (Desktop)
Preemptible Kernel (Low-Latency Desktop)And if I press F4 to "ShowAll", I do see the option:
Code:XXX Fully Preemptible Kernel (Real-Time)But cannot select it. I've tried manually setting it in .config with various PREEMPT options like:
Code:CONFIG_PREEMPT=y
CONFIG_PREEMPT_RT_BASE=y
CONFIG_PREEMPT_RT_FULL=yBut it never shows. I just went ahead and compiled it with Code:CONFIG_PREEMPT_RT_FULL=y (which is overwritten before when saving the make nconfig), but it seems it's still not the fully preemptive kernel that is installed.
With 4.19, uname -a would show something like
Code:Linux 4.19.106-rt45 #2 SMP PREEMPT RT <date>or something like that, but now it will just say
Code:Linux 5.4.28-rt19 #2 <date>Anyone know what I'm missing here?
As a side note, is there a general template RT .config file anywhere? Most examples I see just say test out what works for you and go from there. But it takes me nearly 2 hrs to compile so it's pretty annoying trying to just change minor things. I go through the config and try to remove all the stuff I'm pretty confident I don't need, but there'e still a ton I leave and it's somehow bigger than the default kernel I am copying the config from!!
Current sizes:
7.6M vmlinuz
24M initramfs
vs new compiled & installed
8.5M vmlinuz
28M initramfs
I've read that the initramfs isn't actually even needed, and I can just build everything into the kernel (not modules) which would be nice, but I've never been able to get up grub correctly to load everything. Anyway that's a different thing that should probably be a separate thread.
OS: CentOS 8.1.1911
Kernel: 4.180-147.8.1 -> 5.2.28-rt19


I am trying to compile the 5.4 kernel with the latest stable PREEMPT_RT patch (5.4.28-rt19) but for some reason can't select the Fully Preemptible Kernel (RT)option inside make nconfig/menconfig.
I've compiled the 4.19 rt patch before, and it was as simple as copying the current config (/boot/config-4.18-xxx) to the new .config, and the option would show. Now I only see:
Code:No Forced Preemption (Server)
Voluntary Kernel Preemption (Desktop)
Preemptible Kernel (Low-Latency Desktop)And if I press F4 to "ShowAll", I do see the option:
Code:XXX Fully Preemptible Kernel (Real-Time)But cannot select it. I've tried manually setting it in .config with various PREEMPT options like:
Code:CONFIG_PREEMPT=y
CONFIG_PREEMPT_RT_BASE=y
CONFIG_PREEMPT_RT_FULL=yBut it never shows. I just went ahead and compiled it with Code:CONFIG_PREEMPT_RT_FULL=y (which is overwritten before when saving the make nconfig), but it seems it's still not the fully preemptive kernel that is installed.
With 4.19, uname -a would show something like
Code:Linux 4.19.106-rt45 #2 SMP PREEMPT RT <date>or something like that, but now it will just say
Code:Linux 5.4.28-rt19 #2 <date>Anyone know what I'm missing here?
As a side note, is there a general template RT .config file anywhere? Most examples I see just say test out what works for you and go from there. But it takes me nearly 2 hrs to compile so it's pretty annoying trying to just change minor things. I go through the config and try to remove all the stuff I'm pretty confident I don't need, but there'e still a ton I leave and it's somehow bigger than the default kernel I am copying the config from!!
Current sizes:
7.6M vmlinuz
24M initramfs
vs new compiled & installed
8.5M vmlinuz
28M initramfs
I've read that the initramfs isn't actually even needed, and I can just build everything into the kernel (not modules) which would be nice, but I've never been able to get up grub correctly to load everything. Anyway that's a different thing that should probably be a separate thread.
OS: CentOS 8.1.1911
Kernel: 4.180-147.8.1 -> 5.2.28-rt19