Hello, On Tue, Aug 18, 2026 at 04:59:17PM -0700, Ziyang Men wrote: > > > The bpf_cgroup_base_stat() takes an rstat spinlock_t, which can sleep on > > > PREEMPT_RT. > > > > Is this actually required? This doesn't really make sense to me. Shouldn't > > what SLEEPABLE mean change on RT kernels instead? > > Oh sorry, I didn't notice that. > > I might be wrong: this function calls the cputime_adjust(), which in turn > acquires raw_spin_lock_irqsave(), so there would be NMI deadlock in the > perf_event program. The __css_rstat_lock() take the spin_lock_irq() as well. > So > maybe a SLEEPABLE tag is still necessary?
I think this is for BPF folks to answer. I don't think SLEEPABLE is needed because of RT but yeah it wouldn't be safe to be called from nmi context. Thanks. -- tejun

