Re: [PATCH v7 3/5] locking/qspinlock: Introduce CNA into the slow path of qspinlock
From: Peter Zijlstra <peterz@infradead.org>
Date: 2020-01-22 09:23:01
Also in:
linux-arch, lkml
From: Peter Zijlstra <peterz@infradead.org>
Date: 2020-01-22 09:23:01
Also in:
linux-arch, lkml
On Tue, Jan 21, 2020 at 09:29:19PM +0100, Peter Zijlstra wrote:
@@ -92,8 +92,8 @@ static int __init cna_init_nodes(void) } early_initcall(cna_init_nodes); -static inline bool cna_try_change_tail(struct qspinlock *lock, u32 val, - struct mcs_spinlock *node) +static inline bool cna_try_clear_tail(struct qspinlock *lock, u32 val, + struct mcs_spinlock *node) { struct mcs_spinlock *head_2nd, *tail_2nd; u32 new;
Also, that whole function is placed wrong; it should be between cna_wait_head_or_lock() and cna_pass_lock(), then it's in the order they appear in the slow path, ie. the order they actually run. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel