[PATCH 4/5] ARM: Disable jump-label on PREEMPT_RT.
Sebastian Andrzej Siewior
bigeasy at linutronix.de
Thu Oct 30 00:55:58 PDT 2025
On 2025-10-30 15:45:07 [+0800], Xie Yuanbin wrote:
> On Thu, 30 Oct 2025 08:23:39 +0100, Sebastian Andrzej Siewior wrote:
> > It is not a performance issue, it is a latency issue. If the scheduling
> > latency increases by 300us because of this then the PREEMPT_RT system
> > becomes worthless.
>
> I understand what you mean. But this delay only occurs when the static
> key is enabled/disabled, right? For users, we can control when to
> enable/disable the static key, but it's a real shame if jump labels
> aren't available.
> Therefore, my personal opinion is that informing users that JUMP_LABEL
> might cause unexpected delays, rather than disabling it, would be more
> appropriate. ;)
You can't really control when jump labels are enabled/ disabled. For
instance this happens if you enable/ disable trace points.
Arm64 and X86 replaced the stop_machine() logic with something else that
does not affect latency in that magnitude. If Arm could something
similar then fine but until then I don't see a way around it.
There are other things that are disabled on PREEMPT_RT due to latency
reasons such as transparent huge pages or expedited RCU.
> Xie Yuanbin
Sebastian
More information about the linux-arm-kernel
mailing list