From: vbabka@suse.cz
To: Ashish Kalra <Ashish.Kalra@amd.com>,
x86@kernel.org, linux-kernel@vger.kernel.org,
kvm@vger.kernel.org, linux-coco@lists.linux.dev,
linux-mm@kvack.org, linux-crypto@vger.kernel.org
Cc: tglx@linutronix.de, mingo@redhat.com, jroedel@suse.de,
thomas.lendacky@amd.com, hpa@zytor.com, ardb@kernel.org,
pbonzini@redhat.com, seanjc@google.com, vkuznets@redhat.com,
jmattson@google.com, luto@kernel.org,
dave.hansen@linux.intel.com, slp@redhat.com, pgonda@google.com,
peterz@infradead.org, srinivas.pandruvada@linux.intel.com,
rientjes@google.com, dovmurik@linux.ibm.com, tobin@ibm.com,
bp@alien8.de, michael.roth@amd.com, kirill@shutemov.name,
ak@linux.intel.com, tony.luck@intel.com, marcorr@google.com,
sathyanarayanan.kuppuswamy@linux.intel.com, alpergun@google.com,
dgilbert@redhat.com, jarkko@kernel.org
Subject: Re: [PATCH Part2 v6 09/49] x86/fault: Add support to handle the RMP fault for user address
Date: Thu, 11 Aug 2022 17:15:32 +0200 [thread overview]
Message-ID: <263a89da-d533-412e-a798-6d1334ff10e9@suse.cz> (raw)
In-Reply-To: <0ecb0a4781be933fcadeb56a85070818ef3566e7.1655761627.git.ashish.kalra@amd.com>
On 6/21/22 01:03, Ashish Kalra wrote:
> From: Brijesh Singh <brijesh.singh@amd.com>
>
> When SEV-SNP is enabled globally, a write from the host goes through the
> RMP check. When the host writes to pages, hardware checks the following
> conditions at the end of page walk:
>
> 1. Assigned bit in the RMP table is zero (i.e page is shared).
> 2. If the page table entry that gives the sPA indicates that the target
> page size is a large page, then all RMP entries for the 4KB
> constituting pages of the target must have the assigned bit 0.
> 3. Immutable bit in the RMP table is not zero.
>
> The hardware will raise page fault if one of the above conditions is not
> met. Try resolving the fault instead of taking fault again and again. If
> the host attempts to write to the guest private memory then send the
> SIGBUS signal to kill the process. If the page level between the host and
> RMP entry does not match, then split the address to keep the RMP and host
> page levels in sync.
>
> Signed-off-by: Brijesh Singh <brijesh.singh@amd.com>
> ---
> arch/x86/mm/fault.c | 66 ++++++++++++++++++++++++++++++++++++++++
> include/linux/mm.h | 3 +-
> include/linux/mm_types.h | 3 ++
> mm/memory.c | 13 ++++++++
> 4 files changed, 84 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
> index a4c270e99f7f..f5de9673093a 100644
> --- a/arch/x86/mm/fault.c
> +++ b/arch/x86/mm/fault.c
> @@ -19,6 +19,7 @@
> #include <linux/uaccess.h> /* faulthandler_disabled() */
> #include <linux/efi.h> /* efi_crash_gracefully_on_page_fault()*/
> #include <linux/mm_types.h>
> +#include <linux/sev.h> /* snp_lookup_rmpentry() */
>
> #include <asm/cpufeature.h> /* boot_cpu_has, ... */
> #include <asm/traps.h> /* dotraplinkage, ... */
> @@ -1209,6 +1210,60 @@ do_kern_addr_fault(struct pt_regs *regs, unsigned long hw_error_code,
> }
> NOKPROBE_SYMBOL(do_kern_addr_fault);
>
> +static inline size_t pages_per_hpage(int level)
> +{
> + return page_level_size(level) / PAGE_SIZE;
> +}
> +
> +/*
> + * Return 1 if the caller need to retry, 0 if it the address need to be split
> + * in order to resolve the fault.
> + */
> +static int handle_user_rmp_page_fault(struct pt_regs *regs, unsigned long error_code,
> + unsigned long address)
> +{
> + int rmp_level, level;
> + pte_t *pte;
> + u64 pfn;
> +
> + pte = lookup_address_in_mm(current->mm, address, &level);
> +
> + /*
> + * It can happen if there was a race between an unmap event and
> + * the RMP fault delivery.
> + */
> + if (!pte || !pte_present(*pte))
> + return 1;
> +
> + pfn = pte_pfn(*pte);
> +
> + /* If its large page then calculte the fault pfn */
> + if (level > PG_LEVEL_4K) {
> + unsigned long mask;
> +
> + mask = pages_per_hpage(level) - pages_per_hpage(level - 1);
> + pfn |= (address >> PAGE_SHIFT) & mask;
> + }
> +
> + /*
> + * If its a guest private page, then the fault cannot be resolved.
> + * Send a SIGBUS to terminate the process.
> + */
> + if (snp_lookup_rmpentry(pfn, &rmp_level)) {
> + do_sigbus(regs, error_code, address, VM_FAULT_SIGBUS);
> + return 1;
> + }
> +
> + /*
> + * The backing page level is higher than the RMP page level, request
> + * to split the page.
> + */
> + if (level > rmp_level)
> + return 0;
I don't see any checks that make sure this is in fact a THP, and not e.g.
hugetlb (which is disallowed only later in patch 25/49), or even something
else unexpected. Calling blindly __split_huge_pmd() in
handle_split_page_fault() on anything that's not a THP will just make it
return without splitting anything, and then this will result in a page fault
loop? Some kind of warning and a SIGBUS would be more safe I think.
> +
> + return 1;
> +}
> +
> /*
> * Handle faults in the user portion of the address space. Nothing in here
> * should check X86_PF_USER without a specific justification: for almost
> @@ -1306,6 +1361,17 @@ void do_user_addr_fault(struct pt_regs *regs,
> if (error_code & X86_PF_INSTR)
> flags |= FAULT_FLAG_INSTRUCTION;
>
> + /*
> + * If its an RMP violation, try resolving it.
> + */
> + if (error_code & X86_PF_RMP) {
> + if (handle_user_rmp_page_fault(regs, error_code, address))
> + return;
> +
> + /* Ask to split the page */
> + flags |= FAULT_FLAG_PAGE_SPLIT;
> + }
> +
> #ifdef CONFIG_X86_64
> /*
> * Faults in the vsyscall page might need emulation. The
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index de32c0383387..2ccc562d166f 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -463,7 +463,8 @@ static inline bool fault_flag_allow_retry_first(enum fault_flag flags)
> { FAULT_FLAG_USER, "USER" }, \
> { FAULT_FLAG_REMOTE, "REMOTE" }, \
> { FAULT_FLAG_INSTRUCTION, "INSTRUCTION" }, \
> - { FAULT_FLAG_INTERRUPTIBLE, "INTERRUPTIBLE" }
> + { FAULT_FLAG_INTERRUPTIBLE, "INTERRUPTIBLE" }, \
> + { FAULT_FLAG_PAGE_SPLIT, "PAGESPLIT" }
>
> /*
> * vm_fault is filled by the pagefault handler and passed to the vma's
> diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
> index 6dfaf271ebf8..aa2d8d48ce3e 100644
> --- a/include/linux/mm_types.h
> +++ b/include/linux/mm_types.h
> @@ -818,6 +818,8 @@ typedef struct {
> * mapped R/O.
> * @FAULT_FLAG_ORIG_PTE_VALID: whether the fault has vmf->orig_pte cached.
> * We should only access orig_pte if this flag set.
> + * @FAULT_FLAG_PAGE_SPLIT: The fault was due page size mismatch, split the
> + * region to smaller page size and retry.
> *
> * About @FAULT_FLAG_ALLOW_RETRY and @FAULT_FLAG_TRIED: we can specify
> * whether we would allow page faults to retry by specifying these two
> @@ -855,6 +857,7 @@ enum fault_flag {
> FAULT_FLAG_INTERRUPTIBLE = 1 << 9,
> FAULT_FLAG_UNSHARE = 1 << 10,
> FAULT_FLAG_ORIG_PTE_VALID = 1 << 11,
> + FAULT_FLAG_PAGE_SPLIT = 1 << 12,
> };
>
> typedef unsigned int __bitwise zap_flags_t;
> diff --git a/mm/memory.c b/mm/memory.c
> index 7274f2b52bca..c2187ffcbb8e 100644
> --- a/mm/memory.c
> +++ b/mm/memory.c
> @@ -4945,6 +4945,15 @@ static vm_fault_t handle_pte_fault(struct vm_fault *vmf)
> return 0;
> }
>
> +static int handle_split_page_fault(struct vm_fault *vmf)
> +{
> + if (!IS_ENABLED(CONFIG_AMD_MEM_ENCRYPT))
> + return VM_FAULT_SIGBUS;
> +
> + __split_huge_pmd(vmf->vma, vmf->pmd, vmf->address, false, NULL);
> + return 0;
> +}
> +
> /*
> * By the time we get here, we already hold the mm semaphore
> *
> @@ -5024,6 +5033,10 @@ static vm_fault_t __handle_mm_fault(struct vm_area_struct *vma,
> pmd_migration_entry_wait(mm, vmf.pmd);
> return 0;
> }
> +
> + if (flags & FAULT_FLAG_PAGE_SPLIT)
> + return handle_split_page_fault(&vmf);
> +
> if (pmd_trans_huge(vmf.orig_pmd) || pmd_devmap(vmf.orig_pmd)) {
> if (pmd_protnone(vmf.orig_pmd) && vma_is_accessible(vma))
> return do_huge_pmd_numa_page(&vmf);
next prev parent reply other threads:[~2022-08-11 15:15 UTC|newest]
Thread overview: 305+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-20 22:56 [PATCH Part2 v6 00/49] Add AMD Secure Nested Paging (SEV-SNP) Ashish Kalra
2022-06-20 22:59 ` [PATCH Part2 v6 01/49] x86/cpufeatures: Add SEV-SNP CPU feature Ashish Kalra
2022-06-21 8:58 ` Borislav Petkov
2022-06-20 22:59 ` [PATCH Part2 v6 02/49] iommu/amd: Introduce function to check SEV-SNP support Ashish Kalra
2022-06-21 15:28 ` Peter Gonda
2022-06-21 17:45 ` Kalra, Ashish
2022-06-21 17:50 ` Peter Gonda
2022-06-22 7:33 ` Suthikulpanit, Suravee
2022-08-25 1:28 ` jarkko
2022-08-25 1:30 ` Jarkko Sakkinen
2022-08-26 18:54 ` Kalra, Ashish
2022-08-28 4:18 ` Jarkko Sakkinen
2022-07-01 10:42 ` Borislav Petkov
2022-07-05 13:56 ` Kalra, Ashish
2022-07-05 14:33 ` Borislav Petkov
2022-07-05 14:53 ` Kalra, Ashish
2022-06-20 23:02 ` [PATCH Part2 v6 03/49] x86/sev: Add the host SEV-SNP initialization support Ashish Kalra
2022-06-21 15:47 ` Peter Gonda
2022-06-21 17:59 ` Kalra, Ashish
2022-06-23 20:48 ` Marc Orr
2022-06-23 22:22 ` Kalra, Ashish
2022-07-17 10:01 ` Borislav Petkov
2022-07-19 3:56 ` Kalra, Ashish
2022-07-19 8:38 ` Borislav Petkov
2022-07-19 11:34 ` Kalra, Ashish
2022-06-20 23:02 ` [PATCH Part2 v6 04/49] x86/sev: set SYSCFG.MFMD Ashish Kalra
2022-06-23 21:00 ` Marc Orr
2022-07-21 11:29 ` Borislav Petkov
2022-08-01 21:16 ` Kalra, Ashish
2022-06-20 23:02 ` [PATCH Part2 v6 05/49] x86/sev: Add RMP entry lookup helpers Ashish Kalra
2022-06-22 14:13 ` Dave Hansen
2022-06-22 14:22 ` Kalra, Ashish
2022-06-22 14:29 ` Dave Hansen
2022-06-22 18:15 ` Kalra, Ashish
2022-06-22 18:17 ` Dave Hansen
2022-06-22 18:34 ` Kalra, Ashish
2022-06-22 18:42 ` Dave Hansen
2022-06-22 19:43 ` Kalra, Ashish
2022-06-22 19:49 ` Dave Hansen
2022-06-22 20:15 ` Kalra, Ashish
2022-06-22 20:58 ` Kalra, Ashish
2022-06-23 22:36 ` Sean Christopherson
2022-06-23 22:43 ` Kalra, Ashish
2022-07-22 11:35 ` Borislav Petkov
2022-07-22 19:04 ` Sean Christopherson
2022-07-22 19:25 ` Borislav Petkov
2022-07-22 19:38 ` Borislav Petkov
2022-08-01 21:53 ` Kalra, Ashish
2022-07-22 22:16 ` Sean Christopherson
2022-07-22 22:25 ` Borislav Petkov
2022-08-01 21:50 ` Kalra, Ashish
2022-06-23 21:30 ` Marc Orr
2022-07-22 11:43 ` Borislav Petkov
2022-08-01 21:45 ` Kalra, Ashish
2022-07-25 14:32 ` Borislav Petkov
2022-08-01 22:04 ` Kalra, Ashish
2022-06-20 23:02 ` [PATCH Part2 v6 06/49] x86/sev: Add helper functions for RMPUPDATE and PSMASH instruction Ashish Kalra
2022-06-21 16:40 ` Dr. David Alan Gilbert
2022-06-21 17:38 ` Kalra, Ashish
2022-06-22 18:17 ` Kalra, Ashish
2022-06-28 10:50 ` Dr. David Alan Gilbert
2022-06-28 17:57 ` Kalra, Ashish
2022-06-28 18:58 ` Dr. David Alan Gilbert
2022-06-28 19:03 ` Dave Hansen
2022-07-25 13:24 ` Borislav Petkov
2022-08-01 23:32 ` Kalra, Ashish
2022-08-02 14:14 ` Borislav Petkov
2022-06-22 14:26 ` Dave Hansen
2022-06-22 18:04 ` Kalra, Ashish
2022-07-24 17:31 ` Dov Murik
2022-08-02 4:49 ` Kalra, Ashish
2022-07-25 14:36 ` Borislav Petkov
2022-08-01 22:31 ` Kalra, Ashish
2022-08-03 20:26 ` Borislav Petkov
2022-06-20 23:03 ` [PATCH Part2 v6 07/49] x86/sev: Invalid pages from direct map when adding it to RMP table Ashish Kalra
2022-06-24 0:06 ` Marc Orr
2022-07-27 17:01 ` Borislav Petkov
2022-08-01 23:57 ` Kalra, Ashish
2022-08-04 12:11 ` Borislav Petkov
2022-11-02 3:12 ` Kalra, Ashish
2022-11-02 11:27 ` Borislav Petkov
2022-12-19 15:00 ` Michael Roth
2022-12-19 20:08 ` Borislav Petkov
2022-12-27 21:49 ` Kalra, Ashish
2022-12-29 17:09 ` Borislav Petkov
2023-01-05 21:46 ` Kalra, Ashish
2023-01-05 22:08 ` Marc Orr
2023-01-05 22:27 ` Kalra, Ashish
2023-01-05 22:31 ` Marc Orr
2022-12-30 15:19 ` Mike Rapoport
2022-06-20 23:03 ` [PATCH Part2 v6 08/49] x86/traps: Define RMP violation #PF error code Ashish Kalra
2022-08-08 13:13 ` Borislav Petkov
2022-06-20 23:03 ` [PATCH Part2 v6 09/49] x86/fault: Add support to handle the RMP fault for user address Ashish Kalra
2022-06-22 14:29 ` Jeremi Piotrowski
2022-07-12 11:57 ` Jarkko Sakkinen
2022-07-12 14:29 ` Kalra, Ashish
2022-07-12 14:54 ` Jarkko Sakkinen
2022-08-09 16:55 ` Borislav Petkov
2022-08-10 3:59 ` Kalra, Ashish
2022-08-10 9:42 ` Borislav Petkov
2022-08-10 22:00 ` Kalra, Ashish
2022-08-11 14:27 ` Borislav Petkov
2022-09-01 20:32 ` Kalra, Ashish
2022-09-02 6:52 ` Borislav Petkov
2022-09-02 15:33 ` Kalra, Ashish
2022-09-03 4:25 ` Borislav Petkov
2022-09-03 5:51 ` Kalra, Ashish
2022-09-03 6:57 ` Kalra, Ashish
2022-09-03 8:31 ` Boris Petkov
2022-09-03 17:30 ` Kalra, Ashish
2022-09-04 6:37 ` Borislav Petkov
2022-09-06 14:06 ` Kalra, Ashish
2022-09-06 10:25 ` Jarkko Sakkinen
2022-09-06 10:33 ` Jarkko Sakkinen
2022-09-06 13:54 ` Marc Orr
2022-09-06 14:17 ` Kalra, Ashish
2022-09-06 15:06 ` Michael Roth
2022-09-06 16:39 ` Kalra, Ashish
2022-09-07 5:14 ` Marc Orr
2022-09-06 15:44 ` Jarkko Sakkinen
2022-09-08 7:46 ` Jarkko Sakkinen
2022-09-08 7:57 ` Jarkko Sakkinen
2022-08-11 15:15 ` vbabka [this message]
2022-09-06 2:30 ` Dave Hansen
2022-06-20 23:03 ` [PATCH Part2 v6 10/49] x86/fault: Add support to dump RMP entry on fault Ashish Kalra
2022-06-22 14:33 ` Jeremi Piotrowski
2022-06-22 14:42 ` Jeremi Piotrowski
2022-06-22 18:08 ` Kalra, Ashish
2022-08-23 13:21 ` Borislav Petkov
2022-06-20 23:04 ` [PATCH Part2 v6 11/49] crypto:ccp: Define the SEV-SNP commands Ashish Kalra
2022-09-20 13:03 ` Borislav Petkov
2022-09-20 13:46 ` Kalra, Ashish
2022-09-20 14:04 ` Borislav Petkov
2022-06-20 23:04 ` [PATCH Part2 v6 12/49] crypto: ccp: Add support to initialize the AMD-SP for SEV-SNP Ashish Kalra
2022-10-01 17:33 ` Borislav Petkov
2022-10-14 21:09 ` Kalra, Ashish
2022-10-14 21:31 ` Kalra, Ashish
2022-10-25 8:56 ` Borislav Petkov
2022-10-19 18:48 ` Kalra, Ashish
2022-10-23 21:17 ` Jarkko Sakkinen
2022-10-25 9:07 ` Borislav Petkov
2022-10-25 8:30 ` Borislav Petkov
2022-06-20 23:04 ` [PATCH Part2 v6 13/49] crypto:ccp: Provide APIs to issue SEV-SNP commands Ashish Kalra
2022-06-21 21:43 ` Peter Gonda
2022-06-22 1:44 ` Kalra, Ashish
2022-08-02 10:52 ` Jarkko Sakkinen
2022-10-01 20:17 ` Borislav Petkov
2022-10-03 14:38 ` Kalra, Ashish
2022-10-03 16:16 ` Borislav Petkov
2022-10-03 17:11 ` Kalra, Ashish
2022-10-03 17:45 ` Borislav Petkov
2022-10-03 18:01 ` Peter Gonda
2022-10-03 18:16 ` Borislav Petkov
2022-10-03 18:43 ` Kalra, Ashish
2022-10-03 18:53 ` Borislav Petkov
2022-06-20 23:05 ` [PATCH Part2 v6 14/49] crypto: ccp: Handle the legacy TMR allocation when SNP is enabled Ashish Kalra
2022-06-21 18:11 ` Peter Gonda
2022-06-21 20:17 ` Kalra, Ashish
2022-06-24 14:19 ` Peter Gonda
2022-08-02 12:17 ` jarkko
2022-08-02 11:17 ` Jarkko Sakkinen
2022-10-13 15:15 ` Borislav Petkov
2022-10-14 20:00 ` Kalra, Ashish
2022-10-25 10:25 ` Borislav Petkov
2022-10-31 20:10 ` Kalra, Ashish
2022-10-31 21:15 ` Borislav Petkov
2022-10-31 21:58 ` Kalra, Ashish
2022-11-02 11:22 ` Borislav Petkov
2022-11-14 23:36 ` Kalra, Ashish
2022-11-15 14:26 ` Borislav Petkov
2022-11-15 15:14 ` Vlastimil Babka
2022-11-15 15:22 ` Borislav Petkov
2022-11-15 16:27 ` Borislav Petkov
2022-11-15 22:44 ` Kalra, Ashish
2022-11-15 17:24 ` Kalra, Ashish
2022-11-15 18:15 ` Kalra, Ashish
2022-11-16 9:08 ` Vlastimil Babka
2022-11-16 10:19 ` Kalra, Ashish
2022-11-16 10:25 ` Vlastimil Babka
2022-11-16 18:01 ` Kalra, Ashish
2022-11-16 18:33 ` Borislav Petkov
2022-11-16 18:53 ` Kalra, Ashish
2022-11-16 19:09 ` Borislav Petkov
2022-11-16 19:23 ` Kalra, Ashish
2022-11-16 18:32 ` Dave Hansen
2022-11-16 5:19 ` HORIGUCHI NAOYA(堀口 直也)
2022-11-16 10:28 ` Kalra, Ashish
2022-11-16 23:41 ` HORIGUCHI NAOYA(堀口 直也)
2022-11-17 20:56 ` Kalra, Ashish
2022-11-20 21:34 ` Borislav Petkov
2022-11-22 0:37 ` Kalra, Ashish
2022-11-22 10:17 ` Borislav Petkov
2022-11-22 10:32 ` Kalra, Ashish
2022-11-22 10:44 ` Borislav Petkov
2022-11-22 11:44 ` Kalra, Ashish
2022-11-23 11:40 ` Borislav Petkov
2022-11-23 18:32 ` Kalra, Ashish
2022-06-20 23:05 ` [PATCH Part2 v6 15/49] crypto: ccp: Handle the legacy SEV command " Ashish Kalra
2022-06-20 23:05 ` [PATCH Part2 v6 16/49] crypto: ccp: Add the SNP_PLATFORM_STATUS command Ashish Kalra
2022-06-20 23:05 ` [PATCH Part2 v6 17/49] crypto: ccp: Add the SNP_{SET,GET}_EXT_CONFIG command Ashish Kalra
2022-06-21 22:13 ` Peter Gonda
2022-06-22 1:58 ` Kalra, Ashish
2022-08-02 12:31 ` Jarkko Sakkinen
2022-08-08 19:27 ` Dionna Amalie Glaze
2022-08-08 21:32 ` Tom Lendacky
2022-08-08 23:25 ` Dionna Amalie Glaze
2022-06-20 23:06 ` [PATCH Part2 v6 18/49] crypto: ccp: Provide APIs to query extended attestation report Ashish Kalra
2022-06-21 22:30 ` Peter Gonda
2022-08-02 12:39 ` Jarkko Sakkinen
2022-06-20 23:06 ` [PATCH Part2 v6 19/49] KVM: SVM: Add support to handle AP reset MSR protocol Ashish Kalra
2022-06-20 23:06 ` [PATCH Part2 v6 20/49] KVM: SVM: Provide the Hypervisor Feature support VMGEXIT Ashish Kalra
2022-06-20 23:06 ` [PATCH Part2 v6 21/49] KVM: SVM: Make AVIC backing, VMSA and VMCB memory allocation SNP safe Ashish Kalra
2022-08-04 11:32 ` Vlastimil Babka
2022-06-20 23:07 ` [PATCH Part2 v6 22/49] KVM: SVM: Add initial SEV-SNP support Ashish Kalra
2022-06-20 23:07 ` [PATCH Part2 v6 23/49] KVM: SVM: Add KVM_SNP_INIT command Ashish Kalra
2022-06-20 23:07 ` [PATCH Part2 v6 24/49] KVM: SVM: Add KVM_SEV_SNP_LAUNCH_START command Ashish Kalra
2022-06-24 14:42 ` Peter Gonda
2022-06-24 18:17 ` Kalra, Ashish
2022-08-02 13:19 ` Jarkko Sakkinen
2022-06-20 23:07 ` [PATCH Part2 v6 25/49] KVM: SVM: Disallow registering memory range from HugeTLB for SNP guest Ashish Kalra
2022-08-04 13:37 ` Vlastimil Babka
2022-06-20 23:08 ` [PATCH Part2 v6 26/49] KVM: SVM: Add KVM_SEV_SNP_LAUNCH_UPDATE command Ashish Kalra
2022-06-24 14:33 ` Peter Gonda
2022-06-29 18:14 ` Kalra, Ashish
2022-08-02 12:50 ` Jarkko Sakkinen
2022-08-09 13:55 ` Sabin Rapan
2022-08-15 23:04 ` Kalra, Ashish
2022-06-20 23:08 ` [PATCH Part2 v6 27/49] KVM: SVM: Mark the private vma unmerable for SEV-SNP guests Ashish Kalra
2022-06-22 10:29 ` Dr. David Alan Gilbert
2022-08-04 10:56 ` Vlastimil Babka
2022-06-20 23:08 ` [PATCH Part2 v6 28/49] KVM: SVM: Add KVM_SEV_SNP_LAUNCH_FINISH command Ashish Kalra
2022-07-11 14:05 ` Peter Gonda
2022-07-11 22:41 ` Kalra, Ashish
2022-07-12 14:45 ` Peter Gonda
2022-07-12 15:22 ` Kalra, Ashish
2022-07-12 16:04 ` Peter Gonda
2022-07-12 17:40 ` Tom Lendacky
2022-07-13 14:59 ` Peter Gonda
2022-08-02 13:28 ` Jarkko Sakkinen
2022-09-08 14:55 ` [[PATCH for v6]] KVM: SEV: fix snp_launch_finish Harald Hoyer
2022-09-08 15:11 ` Sean Christopherson
2022-09-08 20:34 ` Jarkko Sakkinen
2022-09-09 8:04 ` [PATCH Part2 v6 28/49] KVM: SVM: Add KVM_SEV_SNP_LAUNCH_FINISH command Harald Hoyer
2022-06-20 23:08 ` [PATCH Part2 v6 29/49] KVM: X86: Keep the NPT and RMP page level in sync Ashish Kalra
2022-07-12 16:44 ` Jarkko Sakkinen
2022-06-20 23:09 ` [PATCH Part2 v6 30/49] KVM: x86/mmu: Introduce kvm_mmu_map_tdp_page() for use by TDX and SNP Ashish Kalra
2022-06-20 23:09 ` [PATCH Part2 v6 31/49] KVM: x86: Introduce kvm_mmu_get_tdp_walk() for SEV-SNP use Ashish Kalra
2022-09-07 17:45 ` Alper Gun
2022-06-20 23:09 ` [PATCH Part2 v6 32/49] KVM: x86: Define RMP page fault error bits for #NPF Ashish Kalra
2022-06-20 23:10 ` [PATCH Part2 v6 33/49] KVM: x86: Update page-fault trace to log full 64-bit error code Ashish Kalra
2022-07-25 11:19 ` Vlastimil Babka
2022-06-20 23:10 ` [PATCH Part2 v6 34/49] KVM: SVM: Do not use long-lived GHCB map while setting scratch area Ashish Kalra
2022-06-20 23:10 ` [PATCH Part2 v6 35/49] KVM: SVM: Remove the long-lived GHCB host map Ashish Kalra
2022-06-24 15:12 ` Peter Gonda
2022-06-24 20:14 ` Kalra, Ashish
2022-07-07 20:06 ` Peter Gonda
2022-07-07 20:31 ` Kalra, Ashish
2022-07-08 15:54 ` Peter Gonda
2022-07-08 15:59 ` Kalra, Ashish
2022-06-20 23:11 ` [PATCH Part2 v6 36/49] KVM: SVM: Add support to handle GHCB GPA register VMGEXIT Ashish Kalra
2022-06-28 13:28 ` Dr. David Alan Gilbert
2022-06-20 23:11 ` [PATCH Part2 v6 37/49] KVM: SVM: Add support to handle MSR based Page State Change VMGEXIT Ashish Kalra
2022-08-19 16:54 ` Peter Gonda
2022-09-19 17:53 ` Alper Gun
2022-09-19 21:38 ` Tom Lendacky
2022-09-19 22:02 ` Alper Gun
2022-09-19 22:18 ` Tom Lendacky
2022-09-19 23:46 ` Ashish Kalra
2022-09-26 15:19 ` Peter Gonda
2022-10-12 20:15 ` Kalra, Ashish
2022-10-12 22:57 ` Michael Roth
2022-06-20 23:11 ` [PATCH Part2 v6 38/49] KVM: SVM: Add support to handle " Ashish Kalra
2022-06-20 23:12 ` [PATCH Part2 v6 39/49] KVM: SVM: Introduce ops for the post gfn map and unmap Ashish Kalra
2022-08-18 3:47 ` Alper Gun
2022-11-17 20:18 ` Peter Gonda
2022-11-17 20:28 ` Kalra, Ashish
2022-11-17 21:36 ` Kalra, Ashish
2022-06-20 23:12 ` [PATCH Part2 v6 40/49] KVM: x86: Export the kvm_zap_gfn_range() for the SNP use Ashish Kalra
2022-06-20 23:13 ` [PATCH Part2 v6 41/49] KVM: SVM: Add support to handle the RMP nested page fault Ashish Kalra
2022-07-12 12:33 ` Jarkko Sakkinen
2022-07-12 12:45 ` Jarkko Sakkinen
2022-07-12 12:48 ` Jarkko Sakkinen
2022-07-12 15:32 ` Kalra, Ashish
2022-10-10 22:03 ` Alper Gun
2022-10-11 2:32 ` Kalra, Ashish
2022-10-12 22:53 ` Alper Gun
2022-10-13 15:00 ` Kalra, Ashish
2022-06-20 23:13 ` [PATCH Part2 v6 42/49] KVM: SVM: Provide support for SNP_GUEST_REQUEST NAE event Ashish Kalra
2022-06-24 16:25 ` Peter Gonda
2022-06-27 19:03 ` Kalra, Ashish
2022-06-29 19:15 ` Kalra, Ashish
2022-07-08 15:28 ` Peter Gonda
2022-10-21 19:06 ` Tom Lendacky
2022-10-21 21:12 ` Kalra, Ashish
2022-10-21 21:30 ` Tom Lendacky
2022-10-21 21:56 ` Kalra, Ashish
2022-06-20 23:13 ` [PATCH Part2 v6 43/49] KVM: SVM: Use a VMSA physical address variable for populating VMCB Ashish Kalra
2022-06-20 23:14 ` [PATCH Part2 v6 44/49] KVM: SVM: Support SEV-SNP AP Creation NAE event Ashish Kalra
2022-06-20 23:14 ` [PATCH Part2 v6 45/49] KVM: SVM: Add module parameter to enable the SEV-SNP Ashish Kalra
2022-06-20 23:14 ` [PATCH Part2 v6 46/49] ccp: add support to decrypt the page Ashish Kalra
2022-06-20 23:14 ` [PATCH Part2 v6 47/49] *fix for stale per-cpu pointer due to cond_resched during ghcb mapping Ashish Kalra
2022-06-24 16:35 ` Peter Gonda
2022-06-24 16:44 ` Kalra, Ashish
2022-06-20 23:15 ` [PATCH Part2 v6 48/49] *debug: warn and retry failed rmpupdates Ashish Kalra
2022-06-20 23:15 ` [PATCH Part2 v6 49/49] KVM: SVM: Sync the GHCB scratch buffer using already mapped ghcb Ashish Kalra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=263a89da-d533-412e-a798-6d1334ff10e9@suse.cz \
--to=vbabka@suse.cz \
--cc=Ashish.Kalra@amd.com \
--cc=ak@linux.intel.com \
--cc=alpergun@google.com \
--cc=ardb@kernel.org \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=dgilbert@redhat.com \
--cc=dovmurik@linux.ibm.com \
--cc=hpa@zytor.com \
--cc=jarkko@kernel.org \
--cc=jmattson@google.com \
--cc=jroedel@suse.de \
--cc=kirill@shutemov.name \
--cc=kvm@vger.kernel.org \
--cc=linux-coco@lists.linux.dev \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=luto@kernel.org \
--cc=marcorr@google.com \
--cc=michael.roth@amd.com \
--cc=mingo@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=pgonda@google.com \
--cc=rientjes@google.com \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=seanjc@google.com \
--cc=slp@redhat.com \
--cc=srinivas.pandruvada@linux.intel.com \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.com \
--cc=tobin@ibm.com \
--cc=tony.luck@intel.com \
--cc=vkuznets@redhat.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).