LPIC-2 Linux Kernel and System Startup Practice Question
A company runs a high-frequency trading application that requires extremely low latency. The system administrator has compiled a custom Linux kernel with various real-time patches and tuned kernel parameters. After deploying the new kernel, the application performance degrades significantly. The administrator suspects that kernel preemption settings are causing context switch overhead. Which of the following actions should the administrator take to diagnose and optimize the kernel preemption model?
⚠ Common exam trap
Candidates often assume kernel parameters can be changed at runtime via sysctl or /sys files, but the preemption model is a static compile-time choice unless the kernel is built with CONFIG_PREEMPT_DYNAMIC, which is not indicated in this scenario.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Check /proc/sched_debug for preemption counters and adjust the kernel's preemption model by recompiling with CONFIG_PREEMPT_NONE instead of CONFIG_PREEMPT
The kernel preemption model is a compile-time configuration, not a runtime parameter. To change from CONFIG_PREEMPT (full preemption) to CONFIG_PREEMPT_NONE (no forced preemption), the administrator must recompile the kernel with the appropriate configuration. Checking /proc/sched_debug can reveal preemption-related counters and context switch statistics, helping confirm that excessive preemption is causing overhead.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Use sysctl to set 'kernel.preempt_model' to 'none'
Why it's wrong here
There is no sysctl parameter for preemption model.
- ✗
Add 'preempt=none' to the kernel command line
Why it's wrong here
The preemption model is not a kernel command-line parameter; it is compiled into the kernel.
- ✓
Check /proc/sched_debug for preemption counters and adjust the kernel's preemption model by recompiling with CONFIG_PREEMPT_NONE instead of CONFIG_PREEMPT
Why this is correct
The preemption model (none, voluntary, full) is a compile-time config; /proc/sched_debug reveals preemption activity.
- ✗
Change the kernel preemption model at runtime by writing to /sys/kernel/preempt_control
Why it's wrong here
No such runtime control exists; preemption model is set at compile time.
Go deeper
Related to this question
About these practice questions
This LPIC-2 question is part of Courseiva's 507-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This LPIC-2 practice question is part of Courseiva's free LPI certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the LPIC-2 exam.