Unfair qspinlocks on ARM64 without LSE atomics => 3ms delay in interrupt handling

Kurt Kanzenbach kurt at linutronix.de
Fri Apr 28 00:37:03 PDT 2023


On Fri Apr 28 2023, Sebastian Andrzej Siewior wrote:
> On 2023-04-27 15:45:09 [+0200], Kurt Kanzenbach wrote:
>> > Are we aware of other concrete case where it bites? Even with just
>> > "normal" contented spin_lock usage?
>> 
>> Well, some years ago I've observed a similar problem with ARM64
>> spinlocks, cpu_relax() and retry loops (in the futex code). It also
>> generated latency spikes up to 2-3ms. Back then, it was easily
>> reproducible using stress-ng --ptrace 4.
>
> That was fixed by
> 	https://patchwork.kernel.org/project/linux-arm-kernel/patch/1399528508-2806-1-git-send-email-arjun.kv@samsung.com
>
> if my memory serves me well.

We've had a different processor, but yes, we configured CPUACTLR_EL1[31]
to 1 in U-Boot to avoid any kernel modifications. Maybe it helps here
too?

Thanks,
Kurt

[1] - https://developer.arm.com/documentation/100095/0003/way1382037666700
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 861 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20230428/3f01ffd2/attachment.sig>


More information about the linux-arm-kernel mailing list