Hi Ivan According to the description "@sevko I found that I didn't need the nohz_full= (I think it's redundant given the isolcpus=nohz) but I had to add tsc=reliable, on CentOS 8 with kernel 4.18. – Joshua Chia" , it seems that there is solution with 4.18 , which should work with 4.19?
Regards Hongzhan Chen -----Original Message----- From: Ivan Jiang <[email protected]> Sent: Wednesday, March 16, 2022 1:55 PM To: Chen, Hongzhan <[email protected]>; [email protected] Subject: Re: CONFIG_NO_HZ_FULL = y but still have arch-timer on isolation CPUs Dear Hongzhan: My kernel is 4.19.165, indeed remove xenomai, the phenomenon is the same. Maybe it’s a bug in this kernel, and how can I trace this bug if it is fixed in some patch? Thank you. Ivan 在 2022/3/16 11:30,“Chen, Hongzhan”<[email protected]> 写入: Hi Ivan Hope that what discussed in https://stackoverflow.com/questions/60322119/completely-eliminating-the-timer-tick-in-modern-linux-5-0 may help you. Seems that there need do more settings for kernel parameters per your requirement but I have not tried myself. When you remove Xenomai, the phenomenon is the same? Regards Hongzhan Chen -----Original Message----- From: Xenomai <[email protected]> On Behalf Of Ivan Jiang via Xenomai Sent: Tuesday, March 15, 2022 12:01 PM To: [email protected] Subject: CONFIG_NO_HZ_FULL = y but still have arch-timer on isolation CPUs Dear Guys: I’ve set the configs like this CONFIG_NO_HZ_FULL = y CONFIG_RCU_NOCB_CPU=y CONFIG_PREEMPT=y CONFIG_CPU_IDLE=n CONFIG_ARM_CPUIDLE=n CONFIG_CPU_FREQ=n And setenv isolcpus=1 xenomai.supported_cpus=0x02 nohz_full=1 irqaffinity=0 rcu_nocbs=1 The CPU is Cortex-A55 Dual core and I use CPU 0 as Linux CPU and CPU1 for isolation core. But cat /proc/interrupts still the arch_timers are increasing the same time on both CPUs. Seems NO_HZ_FULL = y has no effect. The boot log as below: [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU dyntick-idle grace-period acceleration is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=2. [ 0.000000] rcu: RCU priority boosting: priority 1 delay 500 ms. [ 0.000000] Tasks RCU enabled. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] GICv3: Distributor has no Range Selector support [ 0.000000] GICv3: no VLPI support, no direct LPI support [ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000011940000 [ 0.000000] NO_HZ: Full dynticks CPUs: 1. [ 0.000000] rcu: Offload RCU callbacks from CPUs: 1. [ 0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (virt). Please help me to analysis this situation. Very appreciate, Chen.
