ppc64le: `NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!` when turning off SMT

From: Paul Menzel
Date: Tue Feb 08 2022 - 02:32:45 EST


Dear Linux folks,


On the POWER8 server IBM S822LC running Ubuntu 21.10, Linux 5.17-rc1+ built with

$ grep HZ /boot/config-5.17.0-rc1+
CONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not set
CONFIG_NO_HZ_IDLE=y
# CONFIG_NO_HZ_FULL is not set
CONFIG_NO_HZ=y
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250

once warned about a NOHZ tick-stop error, when I executed `sudo /usr/sbin/ppc64_cpu --smt=off` (so that KVM would work).

```
$ dmesg
[ 0.000000] Linux version 5.17.0-rc1+ (pmenzel@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) (Ubuntu clang version 13.0.0-2, LLD 13.0.0) #1 SMP Fri Jan 28 17:13:04 CET 2022
[…]
[271272.030262] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271272.305726] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271272.549790] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271274.885167] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271275.113896] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271275.412902] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271275.625245] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271275.833107] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271276.041391] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
[271277.244880] NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #20!!!
```


Kind regards,

Paul