On Fri, Jan 9, 2026 at 2:39 PM Steven Rostedt <[email protected]> wrote: > > On Fri, 9 Jan 2026 17:33:26 -0500 > Steven Rostedt <[email protected]> wrote: > > > How is this about lttng? Sure he cares about that, but even tracepoints > > that lttng uses doesn't get affected any more than ftrace or bpf. > > Because lttng is one of the callbacks. The migrate disable happens in > > the in-tree portion of the code. > > > > So you are saying that all the tracepoints for xfs are not in a fastpath? > > Regardless of tracing. I now have my RT hat on. The spin_locks that are > converted to mutex use migrate disable. The fact that migrate_disable > in modules are close to 10x slower than the same code in-kernel is > troubling to say the least. It means that modules in RT take a hit > every time they take a spin_lock(). > > The migrate disable being slow for modules is no longer just a tracing > issue. It's a PREEMPT_RT issue.
migrate_enable/disable() wasn't inlined for a long time. It bothered us enough, since sleepable bpf is the main user of it besides RT, so we made an effort to inline it. RT, at the same time, doesn't inline rt_spin_lock() itself so inlining migrate_disable() or not is not 10x at all. Benchmark spin_lock on RT in-tree and in-module and I bet there won't be a big difference.
