public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Joerg Roedel <joro@8bytes•org>
To: Tianyu Lan <ltykernel@gmail•com>
Cc: kys@microsoft•com, haiyangz@microsoft•com,
	sthemmin@microsoft•com, wei.liu@kernel•org, decui@microsoft•com,
	tglx@linutronix•de, mingo@redhat•com, bp@alien8•de,
	x86@kernel•org, hpa@zytor•com, arnd@arndb•de,
	dave.hansen@linux•intel.com, luto@kernel•org,
	peterz@infradead•org, akpm@linux-foundation•org,
	kirill.shutemov@linux•intel.com, rppt@kernel•org,
	hannes@cmpxchg•org, cai@lca•pw, krish.sadhukhan@oracle•com,
	saravanand@fb•com, Tianyu.Lan@microsoft•com,
	konrad.wilk@oracle•com, hch@lst•de, m.szyprowski@samsung•com,
	robin.murphy@arm•com, boris.ostrovsky@oracle•com,
	jgross@suse•com, sstabellini@kernel•org, will@kernel•org,
	xen-devel@lists•xenproject.org, davem@davemloft•net,
	kuba@kernel•org, jejb@linux•ibm.com, martin.petersen@oracle•com,
	iommu@lists•linux-foundation.org, linux-arch@vger•kernel.org,
	linux-hyperv@vger•kernel.org, linux-kernel@vger•kernel.org,
	linux-scsi@vger•kernel.org, netdev@vger•kernel.org,
	vkuznets@redhat•com, thomas.lendacky@amd•com,
	brijesh.singh@amd•com, sunilmut@microsoft•com
Subject: Re: [RFC PATCH V3 01/11] x86/HV: Initialize GHCB page in Isolation VM
Date: Wed, 9 Jun 2021 14:38:29 +0200	[thread overview]
Message-ID: <YMC2RSr/J1WYCvtz@8bytes.org> (raw)
In-Reply-To: <20210530150628.2063957-2-ltykernel@gmail.com>

On Sun, May 30, 2021 at 11:06:18AM -0400, Tianyu Lan wrote:
> From: Tianyu Lan <Tianyu.Lan@microsoft•com>
> 
> Hyper-V exposes GHCB page via SEV ES GHCB MSR for SNP guest
> to communicate with hypervisor. Map GHCB page for all
> cpus to read/write MSR register and submit hvcall request
> via GHCB.
> 
> Signed-off-by: Tianyu Lan <Tianyu.Lan@microsoft•com>
> ---
>  arch/x86/hyperv/hv_init.c       | 60 ++++++++++++++++++++++++++++++---
>  arch/x86/include/asm/mshyperv.h |  2 ++
>  include/asm-generic/mshyperv.h  |  2 ++
>  3 files changed, 60 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/x86/hyperv/hv_init.c b/arch/x86/hyperv/hv_init.c
> index bb0ae4b5c00f..dc74d01cb859 100644
> --- a/arch/x86/hyperv/hv_init.c
> +++ b/arch/x86/hyperv/hv_init.c
> @@ -60,6 +60,9 @@ static int hv_cpu_init(unsigned int cpu)
>  	struct hv_vp_assist_page **hvp = &hv_vp_assist_page[smp_processor_id()];
>  	void **input_arg;
>  	struct page *pg;
> +	u64 ghcb_gpa;
> +	void *ghcb_va;
> +	void **ghcb_base;

Any reason you can't reuse the SEV-ES support code in the Linux kernel?
It already has code to setup GHCBs for all vCPUs.

I see that you don't need #VC handling in your SNP VMs because of the
paravisor running underneath it, but just re-using the GHCB setup code
shouldn't be too hard.

Regards,

	Joerg

  parent reply	other threads:[~2021-06-09 12:38 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-30 15:06 [RFC PATCH V3 00/11] x86/Hyper-V: Add Hyper-V Isolation VM support Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 01/11] x86/HV: Initialize GHCB page in Isolation VM Tianyu Lan
2021-06-07  6:41   ` Christoph Hellwig
2021-06-07  8:14     ` Tianyu Lan
2021-06-09 12:38   ` Joerg Roedel [this message]
2021-06-10 14:13     ` Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 02/11] x86/HV: Initialize shared memory boundary in the " Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 03/11] x86/Hyper-V: Add new hvcall guest address host visibility support Tianyu Lan
2021-05-30 18:25   ` Borislav Petkov
2021-05-31  4:08     ` Tianyu Lan
2021-06-10  9:47   ` Vitaly Kuznetsov
2021-06-10 14:18     ` Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 04/11] HV: Add Write/Read MSR registers via ghcb Tianyu Lan
2021-06-09 12:46   ` Joerg Roedel
2021-06-10 14:15     ` Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 05/11] HV: Add ghcb hvcall support for SNP VM Tianyu Lan
2021-06-09 12:49   ` Joerg Roedel
2021-05-30 15:06 ` [RFC PATCH V3 06/11] HV/Vmbus: Add SNP support for VMbus channel initiate message Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 07/11] HV/Vmbus: Initialize VMbus ring buffer for Isolation VM Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 08/11] swiotlb: Add bounce buffer remap address setting function Tianyu Lan
2021-06-07  6:43   ` Christoph Hellwig
2021-06-07 14:56     ` Tianyu Lan
2021-06-10 14:25       ` Tianyu Lan
2021-06-14  7:12       ` Christoph Hellwig
2021-06-14 13:29         ` Tom Lendacky
2021-06-14 13:37         ` Tianyu Lan
2021-06-14 13:42           ` Tianyu Lan
2021-06-14 13:49     ` Robin Murphy
2021-06-14 15:32       ` Christoph Hellwig
2021-06-15 15:24         ` Tianyu Lan
2021-07-12  9:40           ` Tianyu Lan
2021-05-30 15:06 ` [RFC PATCH V3 09/11] HV/IOMMU: Enable swiotlb bounce buffer for Isolation VM Tianyu Lan
2021-06-02  1:16   ` Boris Ostrovsky
2021-06-02 15:01     ` Tianyu Lan
2021-06-02 16:02       ` Boris Ostrovsky
2021-06-03 15:37         ` Tianyu Lan
2021-06-03 17:04           ` Boris Ostrovsky
2021-06-07  6:44             ` Christoph Hellwig
2021-05-30 15:06 ` [RFC PATCH V3 10/11] HV/Netvsc: Add Isolation VM support for netvsc driver Tianyu Lan
2021-06-07  6:50   ` Christoph Hellwig
2021-06-07 15:21     ` Tianyu Lan
2021-06-14  7:09       ` Christoph Hellwig
2021-06-14 14:04         ` Tianyu Lan
2021-06-14 15:33           ` Christoph Hellwig
2021-06-15 14:31             ` Tianyu Lan
2021-06-10  9:52   ` Vitaly Kuznetsov
2021-05-30 15:06 ` [RFC PATCH V3 11/11] HV/Storvsc: Add Isolation VM support for storvsc driver Tianyu Lan
2021-06-07  6:46   ` Christoph Hellwig
2021-06-07 14:59     ` Tianyu Lan

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=YMC2RSr/J1WYCvtz@8bytes.org \
    --to=joro@8bytes$(echo .)org \
    --cc=Tianyu.Lan@microsoft$(echo .)com \
    --cc=akpm@linux-foundation$(echo .)org \
    --cc=arnd@arndb$(echo .)de \
    --cc=boris.ostrovsky@oracle$(echo .)com \
    --cc=bp@alien8$(echo .)de \
    --cc=brijesh.singh@amd$(echo .)com \
    --cc=cai@lca$(echo .)pw \
    --cc=dave.hansen@linux$(echo .)intel.com \
    --cc=davem@davemloft$(echo .)net \
    --cc=decui@microsoft$(echo .)com \
    --cc=haiyangz@microsoft$(echo .)com \
    --cc=hannes@cmpxchg$(echo .)org \
    --cc=hch@lst$(echo .)de \
    --cc=hpa@zytor$(echo .)com \
    --cc=iommu@lists$(echo .)linux-foundation.org \
    --cc=jejb@linux$(echo .)ibm.com \
    --cc=jgross@suse$(echo .)com \
    --cc=kirill.shutemov@linux$(echo .)intel.com \
    --cc=konrad.wilk@oracle$(echo .)com \
    --cc=krish.sadhukhan@oracle$(echo .)com \
    --cc=kuba@kernel$(echo .)org \
    --cc=kys@microsoft$(echo .)com \
    --cc=linux-arch@vger$(echo .)kernel.org \
    --cc=linux-hyperv@vger$(echo .)kernel.org \
    --cc=linux-kernel@vger$(echo .)kernel.org \
    --cc=linux-scsi@vger$(echo .)kernel.org \
    --cc=ltykernel@gmail$(echo .)com \
    --cc=luto@kernel$(echo .)org \
    --cc=m.szyprowski@samsung$(echo .)com \
    --cc=martin.petersen@oracle$(echo .)com \
    --cc=mingo@redhat$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=peterz@infradead$(echo .)org \
    --cc=robin.murphy@arm$(echo .)com \
    --cc=rppt@kernel$(echo .)org \
    --cc=saravanand@fb$(echo .)com \
    --cc=sstabellini@kernel$(echo .)org \
    --cc=sthemmin@microsoft$(echo .)com \
    --cc=sunilmut@microsoft$(echo .)com \
    --cc=tglx@linutronix$(echo .)de \
    --cc=thomas.lendacky@amd$(echo .)com \
    --cc=vkuznets@redhat$(echo .)com \
    --cc=wei.liu@kernel$(echo .)org \
    --cc=will@kernel$(echo .)org \
    --cc=x86@kernel$(echo .)org \
    --cc=xen-devel@lists$(echo .)xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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