[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YsRucXLUueWlAeJC@worktop.programming.kicks-ass.net>
Date:   Tue, 5 Jul 2022 19:01:37 +0200
From:   Peter Zijlstra <peterz@...radead.org>
To:     Nicholas Piggin <npiggin@...il.com>
Cc:     Ingo Molnar <mingo@...hat.com>, Will Deacon <will@...nel.org>,
        Waiman Long <longman@...hat.com>,
        Boqun Feng <boqun.feng@...il.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 03/13] locking/qspinlock: split common mcs queueing code
 into its own function
On Tue, Jul 05, 2022 at 12:38:10AM +1000, Nicholas Piggin wrote:
> +void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val)
> +{
> +	if (pv_enabled()) {
> +		queued_spin_lock_mcs_queue(lock);
> +		return;
> +	}
> +
> +	if (virt_spin_lock(lock))
> +		return;
> +
This reminds me; at the time I meant to make queued_spin_lock_slowpath()
a static_call() and redirect the function appropriately at boot time.
But that was before static_call() was merged and I never seem to have
gotten around to doing that afterwards...
Powered by blists - more mailing lists
 
