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: <c0eb7bf9-0ca1-4289-b8d3-36b5e15a43a9@amd.com>
Date: Thu, 20 Jun 2024 15:47:35 -0500
From: "Kalra, Ashish" <ashish.kalra@....com>
To: Borislav Petkov <bp@...nel.org>, X86 ML <x86@...nel.org>
Cc: LKML <linux-kernel@...r.kernel.org>, "Borislav Petkov (AMD)"
 <bp@...en8.de>, Joerg Roedel <joro@...tes.org>,
 Michael Roth <michael.roth@....com>, Nikunj A Dadhania <nikunj@....com>,
 Tom Lendacky <thomas.lendacky@....com>
Subject: Re: [PATCH] x86/sev: Move SEV compilation units

Hello Boris,

On 6/19/2024 4:30 AM, Borislav Petkov wrote:
> From: "Borislav Petkov (AMD)" <bp@...en8.de>
>
> A long time ago we said that we're going to move the coco stuff where it
> belongs
>
>   https://lore.kernel.org/all/Yg5nh1RknPRwIrb8@zn.tnic
>
> and not keep it in arch/x86/kernel. TDX did that and SEV can't find time
> to do so. So lemme do it. If people have trouble converting their
> ongoing featuritis patches, ask me for a sed script.
>
> No functional changes.
>
> Cc: Ashish Kalra <Ashish.Kalra@....com>
> Cc: Joerg Roedel <joro@...tes.org>
> Cc: Michael Roth <michael.roth@....com>
> Cc: Nikunj A Dadhania <nikunj@....com>
> Cc: Tom Lendacky <thomas.lendacky@....com>
> Signed-off-by: Borislav Petkov (AMD) <bp@...en8.de>
> ---
>  arch/x86/boot/compressed/sev.c                      | 2 +-
>  arch/x86/coco/Makefile                              | 1 +
>  arch/x86/coco/sev/Makefile                          | 3 +++
>  arch/x86/{kernel/sev.c => coco/sev/core.c}          | 2 +-
>  arch/x86/{kernel/sev-shared.c => coco/sev/shared.c} | 0
>  arch/x86/kernel/Makefile                            | 2 --
>  6 files changed, 6 insertions(+), 4 deletions(-)
>  create mode 100644 arch/x86/coco/sev/Makefile
>  rename arch/x86/{kernel/sev.c => coco/sev/core.c} (99%)
>  rename arch/x86/{kernel/sev-shared.c => coco/sev/shared.c} (100%)
>
> diff --git a/arch/x86/boot/compressed/sev.c b/arch/x86/boot/compressed/sev.c
> index 697057250faa..cd44e120fe53 100644
> --- a/arch/x86/boot/compressed/sev.c
> +++ b/arch/x86/boot/compressed/sev.c
> @@ -127,7 +127,7 @@ static bool fault_in_kernel_space(unsigned long address)
>  #include "../../lib/insn.c"
>  
>  /* Include code for early handlers */
> -#include "../../kernel/sev-shared.c"
> +#include "../../coco/sev/shared.c"
>  
>  static struct svsm_ca *svsm_get_caa(void)
>  {
> diff --git a/arch/x86/coco/Makefile b/arch/x86/coco/Makefile
> index c816acf78b6a..eabdc7486538 100644
> --- a/arch/x86/coco/Makefile
> +++ b/arch/x86/coco/Makefile
> @@ -6,3 +6,4 @@ CFLAGS_core.o		+= -fno-stack-protector
>  obj-y += core.o
>  
>  obj-$(CONFIG_INTEL_TDX_GUEST)	+= tdx/
> +obj-$(CONFIG_AMD_MEM_ENCRYPT)   += sev/
> diff --git a/arch/x86/coco/sev/Makefile b/arch/x86/coco/sev/Makefile
> new file mode 100644
> index 000000000000..b89ba3fba343
> --- /dev/null
> +++ b/arch/x86/coco/sev/Makefile
> @@ -0,0 +1,3 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +obj-y += core.o
> diff --git a/arch/x86/kernel/sev.c b/arch/x86/coco/sev/core.c
> similarity index 99%
> rename from arch/x86/kernel/sev.c
> rename to arch/x86/coco/sev/core.c
> index 726d9df505e7..082d61d85dfc 100644
> --- a/arch/x86/kernel/sev.c
> +++ b/arch/x86/coco/sev/core.c
> @@ -613,7 +613,7 @@ static __always_inline void vc_forward_exception(struct es_em_ctxt *ctxt)
>  }
>  
>  /* Include code shared with pre-decompression boot stage */
> -#include "sev-shared.c"
> +#include "shared.c"
>  
>  static inline struct svsm_ca *svsm_get_caa(void)
>  {
> diff --git a/arch/x86/kernel/sev-shared.c b/arch/x86/coco/sev/shared.c
> similarity index 100%
> rename from arch/x86/kernel/sev-shared.c
> rename to arch/x86/coco/sev/shared.c
> diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
> index 20a0dd51700a..b22ceb9fdf57 100644
> --- a/arch/x86/kernel/Makefile
> +++ b/arch/x86/kernel/Makefile
> @@ -142,8 +142,6 @@ obj-$(CONFIG_UNWINDER_ORC)		+= unwind_orc.o
>  obj-$(CONFIG_UNWINDER_FRAME_POINTER)	+= unwind_frame.o
>  obj-$(CONFIG_UNWINDER_GUESS)		+= unwind_guess.o
>  
> -obj-$(CONFIG_AMD_MEM_ENCRYPT)		+= sev.o
> -
>  obj-$(CONFIG_CFI_CLANG)			+= cfi.o
>  
>  obj-$(CONFIG_CALL_THUNKS)		+= callthunks.o

Reviewed-by: Ashish Kalra <ashish.kalra@....com>

I have rebased SNP guest kexec and kdump patches on top of this patch and they work without any issues with this patch applied.

Will be posting SNP guest kexec and kdump rebased on top of this patch.

Thanks, Ashish


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ