Re: [PATCH] riscv: require alternatives framework when selecting FPU support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 22, 2023 at 03:17:13PM +0000, Conor Dooley wrote:
> On Wed, Mar 22, 2023 at 01:46:31PM +0100, Andrew Jones wrote:
> > On Wed, Mar 22, 2023 at 01:09:07PM +0100, Jason A. Donenfeld wrote:
> > > When moving switch_to's has_fpu() over to using riscv_has_extension_
> > > likely() rather than static branchs, the FPU code gained a dependency on
> > > the alternatives framework. If CONFIG_RISCV_ALTERNATIVE isn't selected
> > > when CONFIG_FPU is, then has_fpu() returns false, and switch_to does not
> > > work as intended. So select CONFIG_RISCV_ALTERNATIVE when CONFIG_FPU is
> > > selected.
> > > 
> > > Fixes: 702e64550b12 ("riscv: fpu: switch has_fpu() to riscv_has_extension_likely()")
> > > Link: https://lore.kernel.org/all/ZBruFRwt3rUVngPu@xxxxxxxxx/
> > > Cc: Jisheng Zhang <jszhang@xxxxxxxxxx>
> > > Cc: Andrew Jones <ajones@xxxxxxxxxxxxxxxx>
> > > Cc: Heiko Stuebner <heiko@xxxxxxxxx>
> > > Cc: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> 
> Thanks for fixing it!
> Reviewed-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> 
> > > Signed-off-by: Jason A. Donenfeld <Jason@xxxxxxxxx>
> > > ---
> > >  arch/riscv/Kconfig | 1 +
> > >  1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> > > index c5e42cc37604..0f59350c699d 100644
> > > --- a/arch/riscv/Kconfig
> > > +++ b/arch/riscv/Kconfig
> > > @@ -467,6 +467,7 @@ config TOOLCHAIN_HAS_ZIHINTPAUSE
> > >  config FPU
> > >  	bool "FPU support"
> > >  	default y
> > > +	select RISCV_ALTERNATIVE
> > >  	help
> > >  	  Say N here if you want to disable all floating-point related procedure
> > >  	  in the kernel.
> > > -- 
> > > 2.40.0
> > >
> > 
> > Reviewed-by: Andrew Jones <ajones@xxxxxxxxxxxxxxxx>
> > 
> > I took a look to see if we missed anything else and see that we should
> > do the same patch for KVM. I'll send one.
> > 
> > (It's tempting to just select RISCV_ALTERNATIVE from RISCV, but maybe we
> >  can defer that wedding a bit longer.)
> 
> At that point, the config option should just go away entirely, no?

Ah, yes, and that makes the idea even more attractive, as we could remove
several ifdefs.

Thanks,
drew



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux