On 10/25/21 11:44 AM, Arnd Bergmann wrote:
On Mon, Oct 25, 2021 at 5:28 PM Waiman Long <longman@xxxxxxxxxx> wrote:On 10/25/21 9:06 AM, Arnd Bergmann wrote:On s390, we pick between the cmpxchg() based directed-yield when running on virtualized CPUs, and a normal qspinlock when running on a dedicated CPU.I am not aware that s390 is using qspinlocks at all as I don't see ARCH_USE_QUEUED_SPINLOCKS being set anywhere under arch/s390. I only see that it uses a cmpxchg based spinlock.Sorry, I should not have said "normal" here. See arch/s390/lib/spinlock.c for their custom queued spinlocks as implemented in arch_spin_lock_queued(). I don't know if that code actually does the same thing as the generic qspinlock, but it seems at least similar.
Yes, you are right. Their queued lock code looks like a custom version of the pvqspinlock code.
Cheers, Longman