What Should I Do If a VM Is Suspended Due to an EulerOS 2.9 Kernel Defect?
Symptom
There is a small chance of a deadlock occurring on an EulerOS 2.9 node, which is caused by community issues related to scheduling in the kernel. This can lead to the suspension of the VM.
Impact
- x86 kernel version: 4.18.0-147.5.1.6.h1152.eulerosv2r9.x86_64
- Arm kernel version: 4.19.90-vhulk2103.1.0.h1144.eulerosv2r9.aarch64
Possible Causes
The scheduling in the EulerOS 4.18 kernel has issues related to CPU cgroup usage. When CFS bandwidth control is configured and CPU bandwidth control is triggered, it may result in warn-level alarms being generated. This process holds the rq lock for scheduling. This can cause a deadlock with other processes. Specifically, an ABBA deadlock may occur in x86_64 and an AA deadlock in aarch64.
Solution
You can change the value of kernel.printk in the configuration file to rectify the fault. The kernel.printk parameter controls how kernel log information is exported and the output level.
- Check the current configurations of kernel.printk in the configuration file.
grep "kernel.printk" /etc/sysctl.conf
In the command output, the value of kernel.printk is 7 4 1 7.
- Delete the kernel.printk configuration.
sed -i '/^kernel.printk/d' /etc/sysctl.conf
- Run the following command to check whether the configuration file is modified.
No command output is displayed.
grep "kernel.printk" /etc/sysctl.conf
- Reconfigure kernel.printk.
x86_64 version:
- Run the following command:
sysctl -w kernel.printk="4 4 1 7"
- Run the following command to check whether the modification is successful:
sysctl -a | grep kernel.printk
Ensure that the value of kernel.printk is 4 4 1 7.
Arm version:- Run the following command:
sysctl -w kernel.printk="1 4 1 7"
- Run the following command to check whether the modification is successful:
sysctl -a | grep kernel.printk
Ensure that the value of kernel.printk is 1 4 1 7.
- Run the following command:
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot