Dear Hongzhan:
Seems the tsc=reliable doesn't have effect.
BTW tsc is the clock source of x86, I was wandering if it's the same
usage for ARM64?
Thank you.
Ivan
在 2022/3/16 14:16,“Chen, Hongzhan”<[email protected]> 写入:
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.