On Sun, Nov 03, 2024 at 03:51:53PM +0100, Alexandre Ghiti wrote: > In order to produce a generic kernel, a user can select > CONFIG_COMBO_SPINLOCKS which will fallback at runtime to the ticket > spinlock implementation if Zabha or Ziccrse are not present. > > Note that we can't use alternatives here because the discovery of > extensions is done too late and we need to start with the qspinlock > implementation because the ticket spinlock implementation would pollute > the spinlock value, so let's use static keys. > > This is largely based on Guo's work and Leonardo reviews at [1]. > > Link: https://lore.kernel.org/linux-riscv/20231225125847.2778638-1-guoren@xxxxxxxxxx/ [1] > Signed-off-by: Guo Ren <guoren@xxxxxxxxxx> > Signed-off-by: Alexandre Ghiti <alexghiti@xxxxxxxxxxxx> This patch (now commit ab83647fadae2 ("riscv: Add qspinlock support")) breaks boot on polarfire soc. It dies before outputting anything to the console. My .config has: # CONFIG_RISCV_TICKET_SPINLOCKS is not set # CONFIG_RISCV_QUEUED_SPINLOCKS is not set CONFIG_RISCV_COMBO_SPINLOCKS=y
Attachment:
signature.asc
Description: PGP signature