lkml.org 
[lkml]   [2022]   [Jun]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH V5] riscv: Add qspinlock support
    From

    On 6/20/22 16:42, Arnd Bergmann wrote:
    > On Mon, Jun 20, 2022 at 5:54 PM <guoren@kernel.org> wrote:
    >>> +config RISCV_USE_QUEUED_SPINLOCKS
    >> + bool "Using queued spinlock instead of ticket-lock"
    > Maybe we can just make ARCH_USE_QUEUED_SPINLOCKS
    > user visible and give users the choice between the two generic
    > implementations across all architectures that support the qspinlock
    > variant.
    >
    > In arch/riscv, you'd then just have a
    >
    > select ARCH_HAVE_QUEUED_SPINLOCKS
    >
    > diff --git a/arch/riscv/include/asm/spinlock.h
    > b/arch/riscv/include/asm/spinlock.h
    >> new file mode 100644
    >> index 000000000000..fd3fd09cff52
    >> --- /dev/null
    >> +++ b/arch/riscv/include/asm/spinlock.h
    >> @@ -0,0 +1,12 @@
    >> +/* SPDX-License-Identifier: GPL-2.0 */
    >> +#ifndef __ASM_SPINLOCK_H
    >> +#define __ASM_SPINLOCK_H
    >> +
    >> +#ifdef CONFIG_ARCH_USE_QUEUED_SPINLOCKS
    >> +#include <asm/qspinlock.h>
    >> +#include <asm/qrwlock.h>
    >> +#else
    >> +#include <asm-generic/spinlock.h>
    >> +#endif
    >> +
    > Along the same lines:
    >
    > I think I'd prefer the header changes to be done in the asm-generic
    > version of this file, so this can be shared across all architectures
    > that want to give the choice between ticket and queued spinlock.

    I concur. Qspinlock is only needed if we want to support systems with a
    large number of CPUs. For systems with a small number of CPUs. It
    doesn't matter if qspinlock or the ticket lock is being used.

    Cheers,
    Longman

    \
     
     \ /
      Last update: 2022-06-20 23:17    [W:3.022 / U:0.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site