1 环境
硬件环境:LS1046A arm64
系统环境:openEuler release 22.03 (LTS-SP1) + Linux kernel 4.19.26
2 问题说明
我的硬件平台需要适配一下 openEuler release 22.03 (LTS-SP1) 但是目前只能使用原来硬件平台的内核,在适配的过程中,发现 一个内核线程始终占用一个cpu资源。
3 问题排查
perf top 显示如下
频繁调用的几个函数,使用ftrace 都没有看到具体有用的调用栈。
perf record -F 99 -p 3006 -g -- sleep 60
perf report -n --stdio
从linux内核代码里看是 rht_deferred_worker 在处理哈希表类似的工作,但是具体看不到是哪个
通过排除法,stop服务 或者 ps aux 后kill掉可疑程序发现 是firewalld.service造成的。