2024-04-02 19:08:22

by Sean Christopherson

[permalink] [raw]
Subject: [ANNOUNCE] KVM Microconference at LPC 2024

We are planning on submitting a CFP to host a second annual KVM Microconference
at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
our submission as strong as possible, please respond if you will likely attend,
and/or have a potential topic that you would like to include in the proposal.
The tentative submission is below.

Note! This is extremely time sensitive, as the deadline for submitting is
April 4th (yeah, we completely missed the initial announcement).

Sorry for the super short notice. :-(

P.S. The Cc list is very ad hoc, please forward at will.

===================
KVM Microconference
===================

KVM (Kernel-based Virtual Machine) enables the use of hardware features to
improve the efficiency, performance, and security of virtual machines (VMs)
created and managed by userspace. KVM was originally developed to accelerate
VMs running a traditional kernel and operating system, in a world where the
host kernel and userspace are part of the VM's trusted computing base (TCB).

KVM has long since expanded to cover a wide (and growing) array of use cases,
e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
the TCB of security sensitive workloads, etc. The expectations placed on KVM
have also matured accordingly, e.g. functionality that once was "good enough"
no longer meets the needs and demands of KVM users.

The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
in order to satisfy new and upcoming requirements. Of particular interest is
extending and enhancing guest_memfd, a guest-first memory API that was heavily
discussed at the 2023 KVM Microconference, and merged in v6.8.

Potential Topics:
- Removing guest memory from the host kernel's direct map[1]
- Mapping guest_memfd into host userspace[2]
- Hugepage support for guest_memfd[3]
- Eliminating "struct page" for guest_memfd
- Passthrough/mediated PMU virtualization[4]
- Pagetable-based Virtual Machine (PVM)[5]
- Optimizing/hardening KVM usage of GUP[6][7]
- Defining KVM requirements for hardware vendors
- Utilizing "fault" injection to increase test coverage of edge cases

[1] https://lore.kernel.org/all/[email protected]
[2] https://lore.kernel.org/all/[email protected]
[3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
[4] https://lore.kernel.org/all/[email protected]
[5] https://lore.kernel.org/all/[email protected]
[6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
[7] https://lore.kernel.org/all/[email protected]


2024-04-03 11:24:17

by Sandipan Das

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

On 4/3/2024 12:36 AM, Sean Christopherson wrote:
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]
> - Eliminating "struct page" for guest_memfd
> - Passthrough/mediated PMU virtualization[4]
> - Pagetable-based Virtual Machine (PVM)[5]
> - Optimizing/hardening KVM usage of GUP[6][7]
> - Defining KVM requirements for hardware vendors
> - Utilizing "fault" injection to increase test coverage of edge cases
>
> [1] https://lore.kernel.org/all/[email protected]
> [2] https://lore.kernel.org/all/[email protected]
> [3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
> [4] https://lore.kernel.org/all/[email protected]
> [5] https://lore.kernel.org/all/[email protected]
> [6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
> [7] https://lore.kernel.org/all/[email protected]

Passthrough PMU lays the foundation for enabling some current and upcoming PMU
virtualization features on AMD processors. Manali and I have been working on them
and would like to participate in the discussion.

- Sandipan

2024-04-03 15:42:06

by Will Deacon

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

Hi Sean,

On Tue, Apr 02, 2024 at 12:06:52PM -0700, Sean Christopherson wrote:
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(

There'll definitely be a few of us attending from the pKVM side and we're
interesting in the usual stuff: Android, arm64, CoCo, guest_memfd, virtio,
etc.

The big topic for us right now is figuring out what our user ABI should
look like for upstream.

Will

2024-04-03 16:13:11

by Gupta, Pankaj

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

Hi Sean,

> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]
> - Eliminating "struct page" for guest_memfd
> - Passthrough/mediated PMU virtualization[4]
> - Pagetable-based Virtual Machine (PVM)[5]
> - Optimizing/hardening KVM usage of GUP[6][7]
> - Defining KVM requirements for hardware vendors
> - Utilizing "fault" injection to increase test coverage of edge cases

Want to discuss the 'guest_memfd support for mirror VM'.

For SEV SNP live migration support, migration helper would run as a
mirror VM. The mirror VM would use the existing KVM API's to copy the
KVM context and populate the NPT page tables at page fault time. For
designing the guest_memfd API's for mirror VM, want to consider the post
copy use case as well so that the copying of paged-in memory in mirror
VM would have a separate memory view.

Would like to attend and discuss with the community suggestions on the
mirror VM with guestmem_fd implementation ideas to cater the use-cases.


Thanks,
Pankaj


>
> [1] https://lore.kernel.org/all/[email protected]
> [2] https://lore.kernel.org/all/[email protected]
> [3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
> [4] https://lore.kernel.org/all/[email protected]
> [5] https://lore.kernel.org/all/[email protected]
> [6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
> [7] https://lore.kernel.org/all/[email protected]
>


2024-04-03 17:57:02

by Michael Roth

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

On Tue, Apr 02, 2024 at 12:06:52PM -0700, Sean Christopherson wrote:
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]
> - Eliminating "struct page" for guest_memfd

Another gmem proposal we were considering was:

- Scalability/Performance Analysis of guest_memfd

Mainly looking at things like points of contention during lazy acceptance for
large guests, page-conversion latency increases, impact of discard/realloc
(prealloc?) of gmem pages from userspace, etc.

Thanks,

Mike

> - Passthrough/mediated PMU virtualization[4]
> - Pagetable-based Virtual Machine (PVM)[5]
> - Optimizing/hardening KVM usage of GUP[6][7]
> - Defining KVM requirements for hardware vendors
> - Utilizing "fault" injection to increase test coverage of edge cases
>
> [1] https://lore.kernel.org/all/[email protected]
> [2] https://lore.kernel.org/all/[email protected]
> [3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
> [4] https://lore.kernel.org/all/[email protected]
> [5] https://lore.kernel.org/all/[email protected]
> [6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
> [7] https://lore.kernel.org/all/[email protected]

2024-04-04 00:19:31

by Vishal Annapurve

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

On Tue, Apr 2, 2024 at 12:08 PM Sean Christopherson <[email protected]> wrote:
>
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]

I and Ackerley would like to discuss 1G page support with guest_memfd
and its implications on host MM and IOMMU implementation.

Regards,
Vishal

2024-04-04 13:10:33

by Lai Jiangshan

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

On Wed, Apr 3, 2024 at 3:08 AM Sean Christopherson <[email protected]> wrote:
>
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]
> - Eliminating "struct page" for guest_memfd
> - Passthrough/mediated PMU virtualization[4]
> - Pagetable-based Virtual Machine (PVM)[5]

Wenlong and I would like to share the various use cases of PVM and
discuss its inherent value, underlying technology, and prospects for
the future. We also aim to initiate a discussion on the design of an
effective PV page table management system, with a particular focus on
optimizing it for Nested-TDP as well as PVM scenarios.

Thanks
Lai

> - Optimizing/hardening KVM usage of GUP[6][7]
> - Defining KVM requirements for hardware vendors
> - Utilizing "fault" injection to increase test coverage of edge cases
>
> [1] https://lore.kernel.org/all/[email protected]
> [2] https://lore.kernel.org/all/[email protected]
> [3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
> [4] https://lore.kernel.org/all/[email protected]
> [5] https://lore.kernel.org/all/20240226143630.33643-1-jiangshanlai@gmailcom
> [6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
> [7] https://lore.kernel.org/all/[email protected]
>

2024-04-04 18:36:52

by Mickaël Salaün

[permalink] [raw]
Subject: Re: [ANNOUNCE] KVM Microconference at LPC 2024

On Tue, Apr 02, 2024 at 12:06:52PM -0700, Sean Christopherson wrote:
> We are planning on submitting a CFP to host a second annual KVM Microconference
> at Linux Plumbers Conference 2024 (https://lpc.events/event/18). To help make
> our submission as strong as possible, please respond if you will likely attend,
> and/or have a potential topic that you would like to include in the proposal.
> The tentative submission is below.
>
> Note! This is extremely time sensitive, as the deadline for submitting is
> April 4th (yeah, we completely missed the initial announcement).
>
> Sorry for the super short notice. :-(
>
> P.S. The Cc list is very ad hoc, please forward at will.
>
> ===================
> KVM Microconference
> ===================
>
> KVM (Kernel-based Virtual Machine) enables the use of hardware features to
> improve the efficiency, performance, and security of virtual machines (VMs)
> created and managed by userspace. KVM was originally developed to accelerate
> VMs running a traditional kernel and operating system, in a world where the
> host kernel and userspace are part of the VM's trusted computing base (TCB).
>
> KVM has long since expanded to cover a wide (and growing) array of use cases,
> e.g. sandboxing untrusted workloads, deprivileging third party code, reducing
> the TCB of security sensitive workloads, etc. The expectations placed on KVM
> have also matured accordingly, e.g. functionality that once was "good enough"
> no longer meets the needs and demands of KVM users.
>
> The KVM Microconference will focus on how to evolve KVM and adjacent subsystems
> in order to satisfy new and upcoming requirements. Of particular interest is
> extending and enhancing guest_memfd, a guest-first memory API that was heavily
> discussed at the 2023 KVM Microconference, and merged in v6.8.
>
> Potential Topics:
> - Removing guest memory from the host kernel's direct map[1]
> - Mapping guest_memfd into host userspace[2]
> - Hugepage support for guest_memfd[3]
> - Eliminating "struct page" for guest_memfd
> - Passthrough/mediated PMU virtualization[4]
> - Pagetable-based Virtual Machine (PVM)[5]
> - Optimizing/hardening KVM usage of GUP[6][7]
> - Defining KVM requirements for hardware vendors
> - Utilizing "fault" injection to increase test coverage of edge cases

We are still working on Heki to improve CR-pinning, memory protection,
related interfaces and tests. We'll send a new patch series shortly on
CR-pinning (only), and follow-ups later. By September, we'll like to
share some updates and this microconference would be a good opportunity,
with the right format this time. ;)

>
> [1] https://lore.kernel.org/all/[email protected]
> [2] https://lore.kernel.org/all/[email protected]
> [3] https://lore.kernel.org/all/CABgObfa=DH7FySBviF63OS9sVog_wt-AqYgtUAGKqnY5Bizivw@mail.gmail.com
> [4] https://lore.kernel.org/all/[email protected]
> [5] https://lore.kernel.org/all/[email protected]
> [6] https://lore.kernel.org/all/CABgObfZCay5-zaZd9mCYGMeS106L055CxsdOWWvRTUk2TPYycg@mail.gmail.com
> [7] https://lore.kernel.org/all/[email protected]
>