All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wupeng Ma <mawupeng1@huawei.com>
To: <corbet@lwn.net>, <will@kernel.org>, <ardb@kernel.org>,
	<catalin.marinas@arm.com>
Cc: <tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
	<dave.hansen@linux.intel.com>, <x86@kernel.org>, <hpa@zytor.com>,
	<dvhart@infradead.org>, <andy@infradead.org>, <rppt@kernel.org>,
	<akpm@linux-foundation.org>, <paul.walmsley@sifive.com>,
	<palmer@dabbelt.com>, <aou@eecs.berkeley.edu>,
	<paulmck@kernel.org>, <keescook@chromium.org>,
	<songmuchun@bytedance.com>, <rdunlap@infradead.org>,
	<damien.lemoal@opensource.wdc.com>, <swboyd@chromium.org>,
	<wei.liu@kernel.org>, <robin.murphy@arm.com>, <david@redhat.com>,
	<mawupeng1@huawei.com>, <anshuman.khandual@arm.com>,
	<thunder.leizhen@huawei.com>, <wangkefeng.wang@huawei.com>,
	<gpiccoli@igalia.com>, <chenhuacai@kernel.org>,
	<geert@linux-m68k.org>, <chenzhou10@huawei.com>,
	<vijayb@linux.microsoft.com>, <linux-doc@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-efi@vger.kernel.org>,
	<platform-driver-x86@vger.kernel.org>, <linux-mm@kvack.org>,
	<linux-riscv@lists.infradead.org>
Subject: [PATCH v3 0/6] introduce mirrored memory support for arm64
Date: Tue, 7 Jun 2022 17:37:59 +0800	[thread overview]
Message-ID: <20220607093805.1354256-1-mawupeng1@huawei.com> (raw)

From: Ma Wupeng <mawupeng1@huawei.com>

Commit b05b9f5f9dcf ("x86, mirror: x86 enabling - find mirrored memory ranges")
introduced mirrored memory support for x86. This support rely on UEFI to
report mirrored memory address ranges.  See UEFI 2.5 spec pages 157-158:

  http://www.uefi.org/sites/default/files/resources/UEFI%202_5.pdf

Memory mirroring is a technique used to separate memory into two separate
channels, usually on a memory device, like a server. In memory mirroring,
one channel is copied to another to create redundancy. This method makes
input/output (I/O) registers and memory appear with more than one address
range because the same physical byte is accessible at more than one
address. Using memory mirroring, higher memory reliability and a higher
level of memory consolidation are possible.

These EFI memory regions have various attributes, and the "mirrored"
attribute is one of them. The physical memory region whose descriptors
in EFI memory map has EFI_MEMORY_MORE_RELIABLE attribute (bit: 16) are
mirrored. The address range mirroring feature of the kernel arranges such
mirrored regions into normal zones and other regions into movable zones.

Arm64 can support this too. So mirrored memory support is added to support
arm64.

The main purpose of this patch set is to introduce mirrored support for
arm64 and we have already fixed the problems we had which is shown in
patch #5 to patch #8 and try to bring total isolation in patch #9 which
will disable mirror feature if kernelcore is not specified.

In order to test this support in arm64:
- patch this patch set
- add kernelcore=mirror in kernel parameter
- start you kernel

Patch #1-#2 introduce mirrored memory support form arm64.
Patch #3-#5 fix some bugs for arm64 if memory reliable is enabled.
Patch #6 disable mirror feature if kernelcore is not specified.

Thanks to Ard Biesheuvel's hard work [1], now kernel will perfer mirrored
memory if kaslr is enabled.

[1] https://lore.kernel.org/linux-arm-kernel/CAMj1kXEPVEzMgOM4+Yj6PxHA-jFuDOAUdDJSiSxy_XaP4P7LSw@mail.gmail.com/T/

Changelog since v2:
- remove efi_fake_mem support
- remove Commit ("remove some redundant code in ia64 efi_init") since
  efi_print_memmap() is not public
- add mirror flag back on initrd memory

Changelog since v1:
- update changelog in cover letter
- use PHYS_PFN in patch #7

Ma Wupeng (6):
  efi: Make efi_find_mirror() public
  arm64/mirror: arm64 enabling - find mirrored memory ranges
  mm: Ratelimited mirrored memory related warning messages
  mm: Demote warning message in vmemmap_verify() to debug level
  mm: Add mirror flag back on initrd memory
  efi: Disable mirror feature if kernelcore is not specified

 .../admin-guide/kernel-parameters.txt         |  2 +-
 arch/arm64/kernel/setup.c                     |  1 +
 arch/arm64/mm/init.c                          |  9 +++++++
 arch/x86/include/asm/efi.h                    |  4 ---
 arch/x86/platform/efi/efi.c                   | 23 ----------------
 drivers/firmware/efi/efi.c                    | 26 +++++++++++++++++++
 include/linux/efi.h                           |  3 +++
 include/linux/memblock.h                      |  1 +
 include/linux/mm.h                            |  2 ++
 mm/memblock.c                                 | 24 +++++++++++++++--
 mm/page_alloc.c                               |  2 +-
 mm/sparse-vmemmap.c                           |  2 +-
 12 files changed, 67 insertions(+), 32 deletions(-)

-- 
2.25.1


WARNING: multiple messages have this Message-ID (diff)
From: Wupeng Ma <mawupeng1@huawei.com>
To: <corbet@lwn.net>, <will@kernel.org>, <ardb@kernel.org>,
	<catalin.marinas@arm.com>
Cc: <tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
	<dave.hansen@linux.intel.com>, <x86@kernel.org>, <hpa@zytor.com>,
	<dvhart@infradead.org>, <andy@infradead.org>, <rppt@kernel.org>,
	<akpm@linux-foundation.org>, <paul.walmsley@sifive.com>,
	<palmer@dabbelt.com>, <aou@eecs.berkeley.edu>,
	<paulmck@kernel.org>, <keescook@chromium.org>,
	<songmuchun@bytedance.com>, <rdunlap@infradead.org>,
	<damien.lemoal@opensource.wdc.com>, <swboyd@chromium.org>,
	<wei.liu@kernel.org>, <robin.murphy@arm.com>, <david@redhat.com>,
	<mawupeng1@huawei.com>, <anshuman.khandual@arm.com>,
	<thunder.leizhen@huawei.com>, <wangkefeng.wang@huawei.com>,
	<gpiccoli@igalia.com>, <chenhuacai@kernel.org>,
	<geert@linux-m68k.org>, <chenzhou10@huawei.com>,
	<vijayb@linux.microsoft.com>, <linux-doc@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-efi@vger.kernel.org>,
	<platform-driver-x86@vger.kernel.org>, <linux-mm@kvack.org>,
	<linux-riscv@lists.infradead.org>
Subject: [PATCH v3 0/6] introduce mirrored memory support for arm64
Date: Tue, 7 Jun 2022 17:37:59 +0800	[thread overview]
Message-ID: <20220607093805.1354256-1-mawupeng1@huawei.com> (raw)

From: Ma Wupeng <mawupeng1@huawei.com>

Commit b05b9f5f9dcf ("x86, mirror: x86 enabling - find mirrored memory ranges")
introduced mirrored memory support for x86. This support rely on UEFI to
report mirrored memory address ranges.  See UEFI 2.5 spec pages 157-158:

  http://www.uefi.org/sites/default/files/resources/UEFI%202_5.pdf

Memory mirroring is a technique used to separate memory into two separate
channels, usually on a memory device, like a server. In memory mirroring,
one channel is copied to another to create redundancy. This method makes
input/output (I/O) registers and memory appear with more than one address
range because the same physical byte is accessible at more than one
address. Using memory mirroring, higher memory reliability and a higher
level of memory consolidation are possible.

These EFI memory regions have various attributes, and the "mirrored"
attribute is one of them. The physical memory region whose descriptors
in EFI memory map has EFI_MEMORY_MORE_RELIABLE attribute (bit: 16) are
mirrored. The address range mirroring feature of the kernel arranges such
mirrored regions into normal zones and other regions into movable zones.

Arm64 can support this too. So mirrored memory support is added to support
arm64.

The main purpose of this patch set is to introduce mirrored support for
arm64 and we have already fixed the problems we had which is shown in
patch #5 to patch #8 and try to bring total isolation in patch #9 which
will disable mirror feature if kernelcore is not specified.

In order to test this support in arm64:
- patch this patch set
- add kernelcore=mirror in kernel parameter
- start you kernel

Patch #1-#2 introduce mirrored memory support form arm64.
Patch #3-#5 fix some bugs for arm64 if memory reliable is enabled.
Patch #6 disable mirror feature if kernelcore is not specified.

Thanks to Ard Biesheuvel's hard work [1], now kernel will perfer mirrored
memory if kaslr is enabled.

[1] https://lore.kernel.org/linux-arm-kernel/CAMj1kXEPVEzMgOM4+Yj6PxHA-jFuDOAUdDJSiSxy_XaP4P7LSw@mail.gmail.com/T/

Changelog since v2:
- remove efi_fake_mem support
- remove Commit ("remove some redundant code in ia64 efi_init") since
  efi_print_memmap() is not public
- add mirror flag back on initrd memory

Changelog since v1:
- update changelog in cover letter
- use PHYS_PFN in patch #7

Ma Wupeng (6):
  efi: Make efi_find_mirror() public
  arm64/mirror: arm64 enabling - find mirrored memory ranges
  mm: Ratelimited mirrored memory related warning messages
  mm: Demote warning message in vmemmap_verify() to debug level
  mm: Add mirror flag back on initrd memory
  efi: Disable mirror feature if kernelcore is not specified

 .../admin-guide/kernel-parameters.txt         |  2 +-
 arch/arm64/kernel/setup.c                     |  1 +
 arch/arm64/mm/init.c                          |  9 +++++++
 arch/x86/include/asm/efi.h                    |  4 ---
 arch/x86/platform/efi/efi.c                   | 23 ----------------
 drivers/firmware/efi/efi.c                    | 26 +++++++++++++++++++
 include/linux/efi.h                           |  3 +++
 include/linux/memblock.h                      |  1 +
 include/linux/mm.h                            |  2 ++
 mm/memblock.c                                 | 24 +++++++++++++++--
 mm/page_alloc.c                               |  2 +-
 mm/sparse-vmemmap.c                           |  2 +-
 12 files changed, 67 insertions(+), 32 deletions(-)

-- 
2.25.1


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

WARNING: multiple messages have this Message-ID (diff)
From: Wupeng Ma <mawupeng1@huawei.com>
To: <corbet@lwn.net>, <will@kernel.org>, <ardb@kernel.org>,
	<catalin.marinas@arm.com>
Cc: <tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
	<dave.hansen@linux.intel.com>, <x86@kernel.org>, <hpa@zytor.com>,
	<dvhart@infradead.org>, <andy@infradead.org>, <rppt@kernel.org>,
	<akpm@linux-foundation.org>, <paul.walmsley@sifive.com>,
	<palmer@dabbelt.com>, <aou@eecs.berkeley.edu>,
	<paulmck@kernel.org>, <keescook@chromium.org>,
	<songmuchun@bytedance.com>, <rdunlap@infradead.org>,
	<damien.lemoal@opensource.wdc.com>, <swboyd@chromium.org>,
	<wei.liu@kernel.org>, <robin.murphy@arm.com>, <david@redhat.com>,
	<mawupeng1@huawei.com>, <anshuman.khandual@arm.com>,
	<thunder.leizhen@huawei.com>, <wangkefeng.wang@huawei.com>,
	<gpiccoli@igalia.com>, <chenhuacai@kernel.org>,
	<geert@linux-m68k.org>, <chenzhou10@huawei.com>,
	<vijayb@linux.microsoft.com>, <linux-doc@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-efi@vger.kernel.org>,
	<platform-driver-x86@vger.kernel.org>, <linux-mm@kvack.org>,
	<linux-riscv@lists.infradead.org>
Subject: [PATCH v3 0/6] introduce mirrored memory support for arm64
Date: Tue, 7 Jun 2022 17:37:59 +0800	[thread overview]
Message-ID: <20220607093805.1354256-1-mawupeng1@huawei.com> (raw)

From: Ma Wupeng <mawupeng1@huawei.com>

Commit b05b9f5f9dcf ("x86, mirror: x86 enabling - find mirrored memory ranges")
introduced mirrored memory support for x86. This support rely on UEFI to
report mirrored memory address ranges.  See UEFI 2.5 spec pages 157-158:

  http://www.uefi.org/sites/default/files/resources/UEFI%202_5.pdf

Memory mirroring is a technique used to separate memory into two separate
channels, usually on a memory device, like a server. In memory mirroring,
one channel is copied to another to create redundancy. This method makes
input/output (I/O) registers and memory appear with more than one address
range because the same physical byte is accessible at more than one
address. Using memory mirroring, higher memory reliability and a higher
level of memory consolidation are possible.

These EFI memory regions have various attributes, and the "mirrored"
attribute is one of them. The physical memory region whose descriptors
in EFI memory map has EFI_MEMORY_MORE_RELIABLE attribute (bit: 16) are
mirrored. The address range mirroring feature of the kernel arranges such
mirrored regions into normal zones and other regions into movable zones.

Arm64 can support this too. So mirrored memory support is added to support
arm64.

The main purpose of this patch set is to introduce mirrored support for
arm64 and we have already fixed the problems we had which is shown in
patch #5 to patch #8 and try to bring total isolation in patch #9 which
will disable mirror feature if kernelcore is not specified.

In order to test this support in arm64:
- patch this patch set
- add kernelcore=mirror in kernel parameter
- start you kernel

Patch #1-#2 introduce mirrored memory support form arm64.
Patch #3-#5 fix some bugs for arm64 if memory reliable is enabled.
Patch #6 disable mirror feature if kernelcore is not specified.

Thanks to Ard Biesheuvel's hard work [1], now kernel will perfer mirrored
memory if kaslr is enabled.

[1] https://lore.kernel.org/linux-arm-kernel/CAMj1kXEPVEzMgOM4+Yj6PxHA-jFuDOAUdDJSiSxy_XaP4P7LSw@mail.gmail.com/T/

Changelog since v2:
- remove efi_fake_mem support
- remove Commit ("remove some redundant code in ia64 efi_init") since
  efi_print_memmap() is not public
- add mirror flag back on initrd memory

Changelog since v1:
- update changelog in cover letter
- use PHYS_PFN in patch #7

Ma Wupeng (6):
  efi: Make efi_find_mirror() public
  arm64/mirror: arm64 enabling - find mirrored memory ranges
  mm: Ratelimited mirrored memory related warning messages
  mm: Demote warning message in vmemmap_verify() to debug level
  mm: Add mirror flag back on initrd memory
  efi: Disable mirror feature if kernelcore is not specified

 .../admin-guide/kernel-parameters.txt         |  2 +-
 arch/arm64/kernel/setup.c                     |  1 +
 arch/arm64/mm/init.c                          |  9 +++++++
 arch/x86/include/asm/efi.h                    |  4 ---
 arch/x86/platform/efi/efi.c                   | 23 ----------------
 drivers/firmware/efi/efi.c                    | 26 +++++++++++++++++++
 include/linux/efi.h                           |  3 +++
 include/linux/memblock.h                      |  1 +
 include/linux/mm.h                            |  2 ++
 mm/memblock.c                                 | 24 +++++++++++++++--
 mm/page_alloc.c                               |  2 +-
 mm/sparse-vmemmap.c                           |  2 +-
 12 files changed, 67 insertions(+), 32 deletions(-)

-- 
2.25.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

             reply	other threads:[~2022-06-07  9:16 UTC|newest]

Thread overview: 102+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-07  9:37 Wupeng Ma [this message]
2022-06-07  9:37 ` [PATCH v3 0/6] introduce mirrored memory support for arm64 Wupeng Ma
2022-06-07  9:37 ` Wupeng Ma
2022-06-07  9:38 ` [PATCH v3 1/6] efi: Make efi_find_mirror() public Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-10  9:22   ` Kefeng Wang
2022-06-10  9:22     ` Kefeng Wang
2022-06-10  9:22     ` Kefeng Wang
2022-06-07  9:38 ` [PATCH v3 2/6] arm64/mirror: arm64 enabling - find mirrored memory ranges Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-10  9:27   ` Kefeng Wang
2022-06-10  9:27     ` Kefeng Wang
2022-06-10  9:27     ` Kefeng Wang
2022-06-10  9:34     ` Ard Biesheuvel
2022-06-10  9:34       ` Ard Biesheuvel
2022-06-10  9:34       ` Ard Biesheuvel
2022-06-10 10:24       ` Kefeng Wang
2022-06-10 10:24         ` Kefeng Wang
2022-06-10 10:24         ` Kefeng Wang
2022-06-10 11:17         ` Ard Biesheuvel
2022-06-10 11:17           ` Ard Biesheuvel
2022-06-10 11:17           ` Ard Biesheuvel
2022-06-07  9:38 ` [PATCH v3 3/6] mm: Ratelimited mirrored memory related warning messages Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07 12:24   ` David Hildenbrand
2022-06-07 12:24     ` David Hildenbrand
2022-06-07 12:24     ` David Hildenbrand
2022-06-08  9:44   ` Mike Rapoport
2022-06-08  9:44     ` Mike Rapoport
2022-06-08  9:44     ` Mike Rapoport
2022-06-08 10:02   ` Anshuman Khandual
2022-06-08 10:02     ` Anshuman Khandual
2022-06-08 10:02     ` Anshuman Khandual
2022-06-10  9:29   ` Kefeng Wang
2022-06-10  9:29     ` Kefeng Wang
2022-06-10  9:29     ` Kefeng Wang
2022-06-07  9:38 ` [PATCH v3 4/6] mm: Demote warning message in vmemmap_verify() to debug level Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07 12:25   ` David Hildenbrand
2022-06-07 12:25     ` David Hildenbrand
2022-06-07 12:25     ` David Hildenbrand
2022-06-08  1:26     ` mawupeng
2022-06-08  1:26       ` mawupeng
2022-06-08  1:26       ` mawupeng
2022-06-08 10:00       ` Anshuman Khandual
2022-06-08 10:00         ` Anshuman Khandual
2022-06-08 10:00         ` Anshuman Khandual
2022-06-09  8:13         ` mawupeng
2022-06-09  8:13           ` mawupeng
2022-06-09  8:13           ` mawupeng
2022-06-10  9:35           ` Kefeng Wang
2022-06-10  9:35             ` Kefeng Wang
2022-06-10  9:35             ` Kefeng Wang
2022-06-07  9:38 ` [PATCH v3 5/6] mm: Add mirror flag back on initrd memory Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07 12:21   ` David Hildenbrand
2022-06-07 12:21     ` David Hildenbrand
2022-06-07 12:21     ` David Hildenbrand
2022-06-07 14:49     ` Ard Biesheuvel
2022-06-07 14:49       ` Ard Biesheuvel
2022-06-07 14:49       ` Ard Biesheuvel
2022-06-08  7:27       ` mawupeng
2022-06-08  7:27         ` mawupeng
2022-06-08  7:27         ` mawupeng
2022-06-08 10:02         ` Mike Rapoport
2022-06-08 10:02           ` Mike Rapoport
2022-06-08 10:02           ` Mike Rapoport
2022-06-08 10:08           ` David Hildenbrand
2022-06-08 10:08             ` David Hildenbrand
2022-06-08 10:08             ` David Hildenbrand
2022-06-08 10:12             ` Ard Biesheuvel
2022-06-08 10:12               ` Ard Biesheuvel
2022-06-08 10:12               ` Ard Biesheuvel
2022-06-09  8:15               ` mawupeng
2022-06-09  8:15                 ` mawupeng
2022-06-09  8:15                 ` mawupeng
2022-06-10 11:06                 ` Ard Biesheuvel
2022-06-10 11:06                   ` Ard Biesheuvel
2022-06-10 11:06                   ` Ard Biesheuvel
2022-06-07  9:38 ` [PATCH v3 6/6] efi: Disable mirror feature if kernelcore is not specified Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-07  9:38   ` Wupeng Ma
2022-06-10 11:20   ` Ard Biesheuvel
2022-06-10 11:20     ` Ard Biesheuvel
2022-06-10 11:20     ` Ard Biesheuvel
2022-06-10 12:15     ` Kefeng Wang
2022-06-10 12:15       ` Kefeng Wang
2022-06-10 12:15       ` Kefeng Wang
2022-06-10 11:23 ` [PATCH v3 0/6] introduce mirrored memory support for arm64 Ard Biesheuvel
2022-06-10 11:23   ` Ard Biesheuvel
2022-06-10 11:23   ` Ard Biesheuvel
2022-06-10 11:24   ` Ard Biesheuvel
2022-06-10 11:24     ` Ard Biesheuvel
2022-06-10 11:24     ` Ard Biesheuvel
2022-06-11  9:56   ` Mike Rapoport
2022-06-11  9:56     ` Mike Rapoport
2022-06-11  9:56     ` Mike Rapoport

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=20220607093805.1354256-1-mawupeng1@huawei.com \
    --to=mawupeng1@huawei.com \
    --cc=akpm@linux-foundation.org \
    --cc=andy@infradead.org \
    --cc=anshuman.khandual@arm.com \
    --cc=aou@eecs.berkeley.edu \
    --cc=ardb@kernel.org \
    --cc=bp@alien8.de \
    --cc=catalin.marinas@arm.com \
    --cc=chenhuacai@kernel.org \
    --cc=chenzhou10@huawei.com \
    --cc=corbet@lwn.net \
    --cc=damien.lemoal@opensource.wdc.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@redhat.com \
    --cc=dvhart@infradead.org \
    --cc=geert@linux-m68k.org \
    --cc=gpiccoli@igalia.com \
    --cc=hpa@zytor.com \
    --cc=keescook@chromium.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=mingo@redhat.com \
    --cc=palmer@dabbelt.com \
    --cc=paul.walmsley@sifive.com \
    --cc=paulmck@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=rdunlap@infradead.org \
    --cc=robin.murphy@arm.com \
    --cc=rppt@kernel.org \
    --cc=songmuchun@bytedance.com \
    --cc=swboyd@chromium.org \
    --cc=tglx@linutronix.de \
    --cc=thunder.leizhen@huawei.com \
    --cc=vijayb@linux.microsoft.com \
    --cc=wangkefeng.wang@huawei.com \
    --cc=wei.liu@kernel.org \
    --cc=will@kernel.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.