From: "Graf (AWS), Alexander" <graf@amazon.de>
To: Pasha Tatashin <pasha.tatashin@soleen.com>,
"linux-kselftest@vger.kernel.org"
<linux-kselftest@vger.kernel.org>,
"legion@kernel.org" <legion@kernel.org>,
"kees@kernel.org" <kees@kernel.org>,
"will@kernel.org" <will@kernel.org>,
"ruanjinjie@huawei.com" <ruanjinjie@huawei.com>,
"atomlin@atomlin.com" <atomlin@atomlin.com>,
"rppt@kernel.org" <rppt@kernel.org>,
"jani.nikula@intel.com" <jani.nikula@intel.com>,
"hamzamahfooz@linux.microsoft.com"
<hamzamahfooz@linux.microsoft.com>,
"joey.gouly@arm.com" <joey.gouly@arm.com>,
"tglx@kernel.org" <tglx@kernel.org>,
"nsc@kernel.org" <nsc@kernel.org>,
"alexandre.chartre@oracle.com" <alexandre.chartre@oracle.com>,
"james.morse@arm.com" <james.morse@arm.com>,
"dianders@chromium.org" <dianders@chromium.org>,
"bp@alien8.de" <bp@alien8.de>,
"jpoimboe@kernel.org" <jpoimboe@kernel.org>,
"shuah@kernel.org" <shuah@kernel.org>,
"catalin.marinas@arm.com" <catalin.marinas@arm.com>,
"linux-kbuild@vger.kernel.org" <linux-kbuild@vger.kernel.org>,
"linux-arch@vger.kernel.org" <linux-arch@vger.kernel.org>,
"kvmarm@lists.linux.dev" <kvmarm@lists.linux.dev>,
"jaredwhite@microsoft.com" <jaredwhite@microsoft.com>,
"johan@kernel.org" <johan@kernel.org>,
"pbonzini@redhat.com" <pbonzini@redhat.com>,
"mingo@redhat.com" <mingo@redhat.com>,
"linux-mm@kvack.org" <linux-mm@kvack.org>,
"seanjc@google.com" <seanjc@google.com>,
"mark.rutland@arm.com" <mark.rutland@arm.com>,
"vdonnefort@google.com" <vdonnefort@google.com>,
"tarunsahu@google.com" <tarunsahu@google.com>,
"gshan@redhat.com" <gshan@redhat.com>,
"skhan@linuxfoundation.org" <skhan@linuxfoundation.org>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"xur@google.com" <xur@google.com>,
"djbw@kernel.org" <djbw@kernel.org>,
"oupton@kernel.org" <oupton@kernel.org>,
"nogikh@google.com" <nogikh@google.com>,
"sumitg@nvidia.com" <sumitg@nvidia.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"zengheng4@huawei.com" <zengheng4@huawei.com>,
"peterz@infradead.org" <peterz@infradead.org>,
"corbet@lwn.net" <corbet@lwn.net>,
"suzuki.poulose@arm.com" <suzuki.poulose@arm.com>,
"luto@kernel.org" <luto@kernel.org>,
"hpa@zytor.com" <hpa@zytor.com>,
"zhangpengjie2@huawei.com" <zhangpengjie2@huawei.com>,
"x86@kernel.org" <x86@kernel.org>,
"yuzenghui@huawei.com" <yuzenghui@huawei.com>,
"jic23@kernel.org" <jic23@kernel.org>,
"ardb@kernel.org" <ardb@kernel.org>,
"petr.pavlu@suse.com" <petr.pavlu@suse.com>,
"ryan.roberts@arm.com" <ryan.roberts@arm.com>,
"kexec@lists.infradead.org" <kexec@lists.infradead.org>,
"pratyush@kernel.org" <pratyush@kernel.org>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
"rdunlap@infradead.org" <rdunlap@infradead.org>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"fuad.tabba@linux.dev" <fuad.tabba@linux.dev>,
"maz@kernel.org" <maz@kernel.org>,
"mbenes@suse.cz" <mbenes@suse.cz>,
"jgross@suse.com" <jgross@suse.com>,
"seiden@linux.ibm.com" <seiden@linux.ibm.com>,
"pierre.gondois@arm.com" <pierre.gondois@arm.com>,
"song@kernel.org" <song@kernel.org>,
"nathan@kernel.org" <nathan@kernel.org>,
"pmladek@suse.com" <pmladek@suse.com>,
"chao.gao@intel.com" <chao.gao@intel.com>,
"zhenglifeng1@huawei.com" <zhenglifeng1@huawei.com>,
"arnd@arndb.de" <arnd@arndb.de>,
"sidnayyar@google.com" <sidnayyar@google.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"vladimir.murzin@arm.com" <vladimir.murzin@arm.com>,
"kas@kernel.org" <kas@kernel.org>
Subject: Re: [RFC PATCH 00/46] Orphaned Virtual Machines
Date: Mon, 21 Sep 2026 07:42:13 +0000 [thread overview]
Message-ID: <f0dca19e-a154-4597-99e8-7d03eb511d25@amazon.com> (raw)
In-Reply-To: <20260920193650.3373435-1-pasha.tatashin@soleen.com>
On 20.09.26 21:36, Pasha Tatashin wrote:
> This RFC series is a PoC intended to showcase e2e working OrphanVMs
> uninterrupted continuing execution on preserved physical CPUs across a
> host kernel live update, prepared for the LPC'26 presentation at the
> KVM Microconf [1].
>
> The original design proposal discussion can be found at [2].
>
> This series is applied on top of v7.3-rc1 + the "[PATCH v4 00/11]
> liveupdate: kvm: Guest_memfd preservation" series [3]. The whole branch
> can be accessed at [4].
>
> It was tested on Intel Xeon Granite Rapids-AP, AMD EPYC Turin, and ARM
> Neoverse V2, as well as in emulation on QEMU and Intel Simics. However,
> it is still very early WIP, and is not anywhere near being production
> ready.
>
> Overview & Submission Strategy
> ==============================
> While this RFC bundles the e2e stack, it is NOT intended to be merged as
> a single series, the goal of this series is to have a discussion about
> the technical layers, and the challenges that need to be solved in order
> to have full Caretaker support within the kernel.
>
> Some of the arch/* changes duplicate small helpers (such as GICv3 list
> register accessors or low-level VMCS/VMCB/sysreg helpers) that could be
> shared with existing KVM/arch code if those routines and their callees
> are moved to static inlines or annotated with __cpu_preserved_text (and
> built without ftrace/KASAN/per-CPU references, as enforced by objtool
> and modpost). To avoid sprinkling __cpu_preserved_text annotations
> across core arch/* files in this PoC, those helpers are kept local to
> caretaker.c for now and can be consolidated when individual platform
> support is upstreamed.
>
> The series is structured into at least 8 workstreams that will be
> discussed and worked on separately:
>
> 1. Workstream 1: Preparation Patches (Patches 01-06)
> Architecture-neutral and arch-specific preparatory cleanups (in
> future these could be bundled with the workstreams that require these
> changes):
> 01. KVM: luo: Delegate VM creation type to kvm_arch_vm_luo_preserve
> 02. KVM: arm64: Split demux_c15_{get,set}_val from userspace
> accessors
> 03. KVM: arm64: Split kvm_sys_reg_{get,set}_user from kernel
> accessors
> 04. x86/mm/ident_map: Add force_pte to support 4K PTE identity
> mappings
> 05. arm64: mm: Add trans_pgd_map_range() support
> 06. x86/smp: Skip offline CPUs for REBOOT_VECTOR in
> native_stop_other_cpus()
>
> 2. Workstream 2: In-Kernel In-RAM vCPU State Preservation via LUO
> (Patches 07-10)
> Allows performing suspend/resume-type preservation across kexec
> without carrying the vCPU internal state in the VMM in userspace,
> keeping all vCPU state in-kernel:
> 07. KVM: luo: Support vCPU file preservation across live updates
> 08. KVM: x86: Add x86 vCPU LUO preservation ABI and register
> helpers
> 09. KVM: x86: Implement architectural vCPU state preservation via
> LUO
> 10. KVM: arm64: Implement architectural vCPU state preservation via
> LUO
>
> 3. Workstream 3: Physical CPU Preservation Core & x86 Support
> (Patches 11-24)
> Introduces the physical CPU preservation subsystem (cpu_preserve),
> linker sections (.text.cpu_preserved, .data.cpu_preserved) with
> build-time section isolation checks in modpost and objtool, isolated
> transition page table management (struct cpu_preserved_as), and sysfs
> interfaces. Allows booting the machine with some CPUs removed from
> the OS scheduler, and provides infrastructure for executing orphaned
> jobs on such CPUs:
> 11. liveupdate: Define CPU preservation linker sections
> 12. liveupdate: Add liveupdate_session_name() helper
> 13. cpu_preserve: Add physical CPU preservation ABI and core API
> headers
> 14. cpu_preserve: Add core physical CPU preservation state and park
> loop
> 15. cpu_preserve: Add physical CPU preservation lifecycle and build
> rules
> 16. liveupdate: cpu_preserve: Add sysfs interface
> 17. liveupdate: cpu_preserve: Add isolated address space management
> API
> 18. liveupdate: cpu_preserve: Add LUO file handler for preserved
> physical CPUs
> 19. x86: liveupdate: Add low-level physical CPU preservation
> assembly
> 20. x86: liveupdate: Add physical CPU preservation context and page
> table support
> 21. selftests: liveupdate: Add physical CPU preservation unit tests
> 22. selftests: liveupdate: Add physical CPU preservation live
> update tests
> 23. Documentation: liveupdate: Add physical CPU preservation
> documentation
> 24. MAINTAINERS: Add entry for KVM Caretaker
>
> 4. Workstream 4: ARM64 Support for Physical CPU Preservation (Patch 25)
> Enables physical CPU preservation on ARM64 using isolated transition
> page tables (trans_pgd_map_range()), cache maintenance to PoC, and
> GICv3 redistributor SGI wake helpers:
> 25. arm64: liveupdate: Add support for physical CPU preservation
>
> 5. Workstream 5: On-Core Scheduling Framework (oncore) (Patches 26-27)
> (Note: This layer sits between cpu_preserve and the KVM Caretaker and
> Kernel Caretaker (Future Work for Orphaned Processes))
> Provides a runqueue and time-slice scheduling framework
> (kernel/liveupdate/oncore.c) that multiplexes preserved workloads
> onto preserved physical CPUs during the kexec blackout window:
> 26. oncore: Add on-core KHO ABI and public framework headers
> 27. oncore: Implement on-core session lifecycle and scheduling loop
>
> 6. Workstream 6: KVM Caretaker Core & Intel VMX Support
> (Patches 28-39)
> Introduces the KVM Caretaker execution engine (virt/kvm/caretaker.c),
> vCPU detach/attach/cancel lifecycle, optional cross-kexec execution
> telemetry and debugfs reporting, x86 TDP MMU KHO page table
> preservation, x86 common Caretaker runtime (LAPIC timer injection,
> VM-exit dispatch, instruction decoding), and the Intel VMX Caretaker
> backend:
> 28. KVM: caretaker: Add Caretaker control block and architecture
> ops headers
> 29. KVM: caretaker: Implement Caretaker session memory mapping
> helpers
> 30. KVM: caretaker: Integrate Caretaker vCPU detach, attach, and
> cancel with KVM
> 31. KVM: caretaker: Add generic KHO ABI telemetry and debugfs
> reporting
> 32. KVM: x86: Add TDP MMU KHO preservation helpers
> 33. KVM: x86: Add Caretaker x86 KHO ABI and runtime context headers
> 34. KVM: x86: Implement Caretaker LAPIC timer and interrupt
> injection
> 35. KVM: x86: Implement Caretaker VM-exit dispatch and instruction
> decoders
> 36. KVM: x86: Implement Caretaker run loop and LUO detach/attach
> lifecycle
> 37. KVM: VMX: Add Caretaker VMX assembly guest entry/exit routine
> and helpers
> 38. KVM: VMX: Implement Caretaker VMX VMCS lifecycle and exit
> dispatch
> 39. KVM: VMX: Integrate Caretaker VMX detach serialization and KVM
> registration
>
> 7. Workstream 7: KVM Caretaker for AMD SVM (Patches 40-41)
> Implements the AMD SVM Caretaker backend (caretaker_vmenter.S, VMCB
> lifecycle, exit decoding, and next-RIP sync):
> 40. KVM: SVM: Add Caretaker SVM assembly guest entry/exit routine
> 41. KVM: SVM: Implement Caretaker SVM VMCB lifecycle and exit
> dispatch
>
> 8. Workstream 8: KVM Caretaker for ARM64 (Patches 42-46)
> Implements the ARM64 VHE Caretaker backend (caretaker_vmenter.S,
> EL2 exception vectors, GICv3 CPU interface & arch timer emulation,
> system register trap handling, and Stage-2 fault handling):
> 42. KVM: arm64: Add Caretaker arm64 KHO ABI and runtime context
> headers
> 43. KVM: arm64: Add Caretaker EL2 exception vectors and guest
> entry/exit assembly
> 44. KVM: arm64: Implement Caretaker GICv3 CPU interface and arch
> timer emulation
> 45. KVM: arm64: Implement Caretaker system register trap and
> exception handlers
> 46. KVM: arm64: Implement Caretaker vCPU run loop and LUO
> detach/attach lifecycle
>
> Architectural Design Layers
> ===========================
> The OrphanVM architecture is layered so that each subsystem has zero
> upward symbol dependencies:
>
> +--------------------------------------------------------------------+
> | Layer 4: KVM Caretaker Engine (virt/kvm/caretaker.c + arch/kvm/*) |
> | - VMENTER/VMRUN/ERET guest execution loop |
> | - Handling of timer preemption, HLT/WFI, MSR/sysreg traps |
> | - Yield on unhandled I/O or Stage-2 MMIO faults |
> +--------------------------------------------------------------------+
I had a superficial look at the code only, but it looked like we're not
reusing any of the existing KVM code for entry or exit handling. I was
hoping we could refactor some bits of KVM code into functionality that
is safe stand-alone and functionality that does require the larger
kernel ecosystem, then annotate the stand-alone ones as caretaker (btw,
abbreviating as kvmct would shorten your function names significantly
:)) and then consume them from both contexts.
Do you have any timing measurements for the approach as is?
Also, your patch set is cut off at 39/46. I was very curious to see how
you deal with vGIC and context switching in the caretaker environment :).
Alex
next prev parent reply other threads:[~2026-09-21 7:42 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-20 19:36 Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 01/46] KVM: luo: Delegate VM creation type to kvm_arch_vm_luo_preserve Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 02/46] KVM: arm64: Split demux_c15_{get,set}_val from userspace accessors Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 03/46] KVM: arm64: Split kvm_sys_reg_{get,set}_user from kernel accessors Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 04/46] x86/mm/ident_map: Add force_pte to support 4K PTE identity mappings Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 05/46] arm64: mm: Add trans_pgd_map_range() support Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 06/46] x86/smp: Skip offline CPUs for REBOOT_VECTOR in native_stop_other_cpus() Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 07/46] KVM: luo: Support vCPU file preservation across live updates Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 08/46] KVM: x86: Add x86 vCPU LUO preservation ABI and register helpers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 09/46] KVM: x86: Implement architectural vCPU state preservation via LUO Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 10/46] KVM: arm64: " Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 11/46] liveupdate: Define CPU preservation linker sections Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 12/46] liveupdate: Add liveupdate_session_name() helper Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 13/46] cpu_preserve: Add physical CPU preservation ABI and core API headers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 14/46] cpu_preserve: Add core physical CPU preservation state and park loop Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 15/46] cpu_preserve: Add physical CPU preservation lifecycle and build rules Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 16/46] liveupdate: cpu_preserve: Add sysfs interface Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 17/46] liveupdate: cpu_preserve: Add isolated address space management API Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 18/46] liveupdate: cpu_preserve: Add LUO file handler for preserved physical CPUs Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 19/46] x86: liveupdate: Add low-level physical CPU preservation assembly Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 20/46] x86: liveupdate: Add physical CPU preservation context and page table support Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 21/46] selftests: liveupdate: Add physical CPU preservation unit tests Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 22/46] selftests: liveupdate: Add physical CPU preservation live update tests Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 23/46] Documentation: liveupdate: Add physical CPU preservation documentation Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 24/46] MAINTAINERS: Add entry for KVM Caretaker Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 25/46] arm64: liveupdate: Add support for physical CPU preservation Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 26/46] oncore: Add on-core KHO ABI and public framework headers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 27/46] oncore: Implement on-core session lifecycle and scheduling loop Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 28/46] KVM: caretaker: Add Caretaker control block and architecture ops headers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 29/46] KVM: caretaker: Implement Caretaker session memory mapping helpers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 30/46] KVM: caretaker: Integrate Caretaker vCPU detach, attach, and cancel with KVM Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 31/46] KVM: caretaker: Add generic KHO ABI telemetry and debugfs reporting Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 32/46] KVM: x86: Add TDP MMU KHO preservation helpers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 33/46] KVM: x86: Add Caretaker x86 KHO ABI and runtime context headers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 34/46] KVM: x86: Implement Caretaker LAPIC timer and interrupt injection Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 35/46] KVM: x86: Implement Caretaker VM-exit dispatch and instruction decoders Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 36/46] KVM: x86: Implement Caretaker run loop and LUO detach/attach lifecycle Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 37/46] KVM: VMX: Add Caretaker VMX assembly guest entry/exit routine and helpers Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 38/46] KVM: VMX: Implement Caretaker VMX VMCS lifecycle and exit dispatch Pasha Tatashin
2026-09-20 19:36 ` [RFC PATCH 39/46] KVM: VMX: Integrate Caretaker VMX detach serialization and KVM registration Pasha Tatashin
2026-09-21 7:42 ` Graf (AWS), Alexander [this message]
2026-09-21 21:00 ` Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 40/46] KVM: SVM: Add Caretaker SVM assembly guest entry/exit routine Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 41/46] KVM: SVM: Implement Caretaker SVM VMCB lifecycle and exit dispatch Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 42/46] KVM: arm64: Add Caretaker arm64 KHO ABI and runtime context headers Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 43/46] KVM: arm64: Add Caretaker EL2 exception vectors and guest entry/exit assembly Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 44/46] KVM: arm64: Implement Caretaker GICv3 CPU interface and arch timer emulation Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 45/46] KVM: arm64: Implement Caretaker system register trap and exception handlers Pasha Tatashin
2026-09-21 21:00 ` [RFC PATCH 46/46] KVM: arm64: Implement Caretaker vCPU run loop and LUO detach/attach lifecycle Pasha Tatashin
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=f0dca19e-a154-4597-99e8-7d03eb511d25@amazon.com \
--to=graf@amazon.de \
--cc=alexandre.chartre@oracle.com \
--cc=ardb@kernel.org \
--cc=arnd@arndb.de \
--cc=atomlin@atomlin.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=chao.gao@intel.com \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=dianders@chromium.org \
--cc=djbw@kernel.org \
--cc=fuad.tabba@linux.dev \
--cc=gshan@redhat.com \
--cc=hamzamahfooz@linux.microsoft.com \
--cc=hpa@zytor.com \
--cc=james.morse@arm.com \
--cc=jani.nikula@intel.com \
--cc=jaredwhite@microsoft.com \
--cc=jgross@suse.com \
--cc=jic23@kernel.org \
--cc=joey.gouly@arm.com \
--cc=johan@kernel.org \
--cc=jpoimboe@kernel.org \
--cc=kas@kernel.org \
--cc=kees@kernel.org \
--cc=kexec@lists.infradead.org \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=legion@kernel.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=luto@kernel.org \
--cc=mark.rutland@arm.com \
--cc=maz@kernel.org \
--cc=mbenes@suse.cz \
--cc=mingo@redhat.com \
--cc=nathan@kernel.org \
--cc=nogikh@google.com \
--cc=nsc@kernel.org \
--cc=oupton@kernel.org \
--cc=pasha.tatashin@soleen.com \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=petr.pavlu@suse.com \
--cc=pierre.gondois@arm.com \
--cc=pmladek@suse.com \
--cc=pratyush@kernel.org \
--cc=rdunlap@infradead.org \
--cc=rppt@kernel.org \
--cc=ruanjinjie@huawei.com \
--cc=ryan.roberts@arm.com \
--cc=seanjc@google.com \
--cc=seiden@linux.ibm.com \
--cc=shuah@kernel.org \
--cc=sidnayyar@google.com \
--cc=skhan@linuxfoundation.org \
--cc=song@kernel.org \
--cc=sumitg@nvidia.com \
--cc=suzuki.poulose@arm.com \
--cc=tarunsahu@google.com \
--cc=tglx@kernel.org \
--cc=vdonnefort@google.com \
--cc=vladimir.murzin@arm.com \
--cc=will@kernel.org \
--cc=x86@kernel.org \
--cc=xur@google.com \
--cc=yuzenghui@huawei.com \
--cc=zengheng4@huawei.com \
--cc=zhangpengjie2@huawei.com \
--cc=zhenglifeng1@huawei.com \
/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
all inboxes | Powered by JetHome®