Package: linux-source Severity: normal X-Debbugs-Cc: corcodel.mar...@gmail.com
Hi , i describe some situation wich occur on linux kernel: File kernel/rcu/tree_exp.h static void rcu_report_exp_cpu_mult(struct rcu_node *rnp, unsigned long mask, bool wake) { int cpu; unsigned long flags; struct rcu_data *rdp; raw_spin_lock_irqsave_rcu_node(rnp, flags); if (!(rnp->expmask & mask)) { raw_spin_unlock_irqrestore_rcu_node(rnp, flags); return; } WRITE_ONCE(rnp->expmask, rnp->expmask & ~mask); for_each_leaf_node_cpu_mask(rnp, cpu, mask) { rdp = per_cpu_ptr(&rcu_data, cpu); if (!IS_ENABLED(CONFIG_NO_HZ_FULL) || !rdp->rcu_forced_tick_exp) continue; rdp->rcu_forced_tick_exp = false; tick_dep_clear_cpu(cpu, TICK_DEP_BIT_RCU_EXP); } __rcu_report_exp_rnp(rnp, wake, flags); /* Releases rnp->lock. */ } >From function IS_ENABLED(CONFIG_NO_HZ_FULL) is only for muscle, using this manner just inject delays on operations. -- System Information: Debian Release: 12.9 APT prefers stable APT policy: (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 6.12.5+ (SMP w/8 CPU threads; PREEMPT) Kernel taint flags: TAINT_OOT_MODULE Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system)