The configuration file "kernel/Kconfig. preempt" says that PREEMPT_RT is fully preemptible, but from the function preempt_model_full() it can be seen that PREEMPT is full preemption model. -------------------------- kernel/Kconfig.preempt config PREEMPT bool "Preemptible Kernel (Low-Latency Desktop)" config PREEMPT_RT bool "Fully Preemptible Kernel (Real-Time)" include/linux/preempt.h static inline bool preempt_model_full(void) { return IS_ENABLED(CONFIG_PREEMPT); } --------------------------
"kernel/Kconfig. preempt" should be consistent with the function preempt_model_full(). Modify the file "kernel/Kconfig.preempt" as follows. ------------------ config PREEMPT bool "Fully Preemptible Kernel (Low-Latency Desktop)" config PREEMPT_RT bool "Real-time Kernel" ------------------