lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAAhV-H5TJPqRcgS6jywWDSNsCvd-PsVacgxgoiF-fJ00ZnS4uA@mail.gmail.com>
Date: Thu, 4 Jan 2024 17:55:32 +0800
From: Huacai Chen <chenhuacai@...nel.org>
To: Samuel Holland <samuel.holland@...ive.com>
Cc: linux-arm-kernel@...ts.infradead.org, linuxppc-dev@...ts.ozlabs.org, 
	x86@...nel.org, linux-riscv@...ts.infradead.org, 
	Christoph Hellwig <hch@....de>, loongarch@...ts.linux.dev, linux-kernel@...r.kernel.org, 
	amd-gfx@...ts.freedesktop.org, linux-arch@...r.kernel.org, 
	WANG Xuerui <git@...0n.name>
Subject: Re: [PATCH v2 07/14] LoongArch: Implement ARCH_HAS_KERNEL_FPU_SUPPORT

Hi, Samuel,

On Thu, Dec 28, 2023 at 9:42 AM Samuel Holland
<samuel.holland@...ive.com> wrote:
>
> LoongArch already provides kernel_fpu_begin() and kernel_fpu_end() in
> asm/fpu.h, so it only needs to add kernel_fpu_available() and export
> the CFLAGS adjustments.
>
> Acked-by: WANG Xuerui <git@...0n.name>
> Reviewed-by: Christoph Hellwig <hch@....de>
> Signed-off-by: Samuel Holland <samuel.holland@...ive.com>
> ---
>
> (no changes since v1)
>
>  arch/loongarch/Kconfig           | 1 +
>  arch/loongarch/Makefile          | 5 ++++-
>  arch/loongarch/include/asm/fpu.h | 1 +
>  3 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig
> index ee123820a476..65d4475565b8 100644
> --- a/arch/loongarch/Kconfig
> +++ b/arch/loongarch/Kconfig
> @@ -15,6 +15,7 @@ config LOONGARCH
>         select ARCH_HAS_CPU_FINALIZE_INIT
>         select ARCH_HAS_FORTIFY_SOURCE
>         select ARCH_HAS_KCOV
> +       select ARCH_HAS_KERNEL_FPU_SUPPORT if CPU_HAS_FPU
>         select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS
>         select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
>         select ARCH_HAS_PTE_SPECIAL
> diff --git a/arch/loongarch/Makefile b/arch/loongarch/Makefile
> index 4ba8d67ddb09..1afe28feaba5 100644
> --- a/arch/loongarch/Makefile
> +++ b/arch/loongarch/Makefile
> @@ -25,6 +25,9 @@ endif
>  32bit-emul             = elf32loongarch
>  64bit-emul             = elf64loongarch
>
> +CC_FLAGS_FPU           := -mfpu=64
> +CC_FLAGS_NO_FPU                := -msoft-float
We will add LoongArch32 support later, maybe it should be -mfpu=32 in
that case, and do other archs have the case that only support FP32?

Huacai

> +
>  ifdef CONFIG_DYNAMIC_FTRACE
>  KBUILD_CPPFLAGS += -DCC_USING_PATCHABLE_FUNCTION_ENTRY
>  CC_FLAGS_FTRACE := -fpatchable-function-entry=2
> @@ -46,7 +49,7 @@ ld-emul                       = $(64bit-emul)
>  cflags-y               += -mabi=lp64s
>  endif
>
> -cflags-y                       += -pipe -msoft-float
> +cflags-y                       += -pipe $(CC_FLAGS_NO_FPU)
>  LDFLAGS_vmlinux                        += -static -n -nostdlib
>
>  # When the assembler supports explicit relocation hint, we must use it.
> diff --git a/arch/loongarch/include/asm/fpu.h b/arch/loongarch/include/asm/fpu.h
> index c2d8962fda00..3177674228f8 100644
> --- a/arch/loongarch/include/asm/fpu.h
> +++ b/arch/loongarch/include/asm/fpu.h
> @@ -21,6 +21,7 @@
>
>  struct sigcontext;
>
> +#define kernel_fpu_available() cpu_has_fpu
>  extern void kernel_fpu_begin(void);
>  extern void kernel_fpu_end(void);
>
> --
> 2.42.0
>
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ