All of lore.kernel.org
 help / color / mirror / Atom feed
From: "David Hildenbrand (Arm)" <david@kernel.org>
To: "Lorenzo Stoakes (ARM)" <ljs@kernel.org>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Jason Gunthorpe" <jgg@ziepe.ca>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Peter Xu" <peterx@redhat.com>,
	"Matthew Wilcox (Oracle)" <willy@infradead.org>,
	"Jan Kara" <jack@suse.cz>, "Rik van Riel" <riel@surriel.com>,
	"Liam R. Howlett" <liam@infradead.org>,
	"Vlastimil Babka" <vbabka@kernel.org>,
	"Harry Yoo" <harry@kernel.org>, "Jann Horn" <jannh@google.com>,
	"Lance Yang" <lance.yang@linux.dev>, "Zi Yan" <ziy@nvidia.com>,
	"Matthew Brost" <matthew.brost@intel.com>,
	"Joshua Hahn" <joshua.hahnjy@gmail.com>,
	"Byungchul Park" <byungchul@sk.com>,
	"Gregory Price" <gourry@gourry.net>,
	"Ying Huang" <ying.huang@linux.alibaba.com>,
	"Alistair Popple" <apopple@nvidia.com>,
	"Baolin Wang" <baolin.wang@linux.alibaba.com>,
	"Nico Pache" <nico.pache@linux.dev>,
	"Ryan Roberts" <ryan.roberts@arm.com>,
	"Dev Jain" <dev.jain@arm.com>, "Barry Song" <baohua@kernel.org>,
	"Usama Arif" <usama.arif@linux.dev>,
	"Kiryl Shutsemau" <kas@kernel.org>, "Xu Xin" <xu.xin@linux.dev>,
	"Chengming Zhou" <chengming.zhou@linux.dev>,
	"Madhavan Srinivasan" <maddy@linux.ibm.com>,
	"Nicholas Piggin" <npiggin@gmail.com>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
	"Ritesh Harjani (IBM)" <ritesh.list@gmail.com>,
	"Shrikanth Hegde" <sshegde@linux.ibm.com>,
	"Pedro Falcato" <pfalcato@suse.de>,
	"Kairui Song" <kasong@tencent.com>,
	"Qi Zheng" <qi.zheng@linux.dev>,
	"Shakeel Butt" <shakeel.butt@linux.dev>,
	"Axel Rasmussen" <axelrasmussen@google.com>,
	"Yuanchu Xie" <yuanchu@google.com>, "Wei Xu" <weixugc@google.com>,
	"Baoquan He" <baoquan.he@linux.dev>,
	"Mike Rapoport" <rppt@kernel.org>,
	"Suren Baghdasaryan" <surenb@google.com>,
	"Michal Hocko" <mhocko@suse.com>,
	"Leon Romanovsky" <leon@kernel.org>, "SJ Park" <sj@kernel.org>,
	"Rakie Kim" <rakie.kim@sk.com>,
	"David Rientjes" <rientjes@google.com>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Christian Brauner" <brauner@kernel.org>,
	"Peter Zijlstra" <peterz@infradead.org>,
	"Ingo Molnar" <mingo@redhat.com>,
	"Arnaldo Carvalho de Melo" <acme@kernel.org>,
	"Namhyung Kim" <namhyung@kernel.org>,
	"Mark Rutland" <mark.rutland@arm.com>,
	"Alexander Shishkin" <alexander.shishkin@linux.intel.com>,
	"Jiri Olsa" <jolsa@kernel.org>, "Ian Rogers" <irogers@google.com>,
	"Adrian Hunter" <adrian.hunter@intel.com>,
	"James Clark" <james.clark@linaro.org>,
	"Masami Hiramatsu" <mhiramat@kernel.org>,
	"Oleg Nesterov" <oleg@redhat.com>,
	"John Johansen" <john.johansen@canonical.com>,
	"Georgia Garcia" <georgia.garcia@canonical.com>,
	"Paul Moore" <paul@paul-moore.com>,
	"James Morris" <jmorris@namei.org>,
	"Serge E. Hallyn" <serge@hallyn.com>,
	"Mimi Zohar" <zohar@linux.ibm.com>,
	"Roberto Sassu" <roberto.sassu@huawei.com>,
	"Dmitry Kasatkin" <dmitry.kasatkin@gmail.com>,
	"Eric Snowberg" <eric.snowberg@oracle.com>,
	"Fan Wu" <wufan@kernel.org>,
	"Stephen Smalley" <stephen.smalley.work@gmail.com>,
	"Ondrej Mosnáček" <omosnacek@gmail.com>
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	kvm@vger.kernel.org, damon@lists.linux.dev,
	linux-trace-kernel@vger.kernel.org,
	linux-perf-users@vger.kernel.org, apparmor@lists.ubuntu.com,
	linux-security-module@vger.kernel.org,
	linux-integrity@vger.kernel.org, selinux@vger.kernel.org
Subject: Re: [PATCH 07/13] mm/madvise: convert madvise_vma_behavior() to use vma_flags_t
Date: Mon, 9 Nov 2026 14:44:40 +0100	[thread overview]
Message-ID: <ac29cf71-a1af-4ce7-96c3-aea5a771979a@kernel.org> (raw)
In-Reply-To: <20261105-late-2026-vma-flags-v1-7-0d3cd15ab75f@kernel.org>

On 11/5/26 22:30, Lorenzo Stoakes (ARM) wrote:
> Replace use of the legacy vm_flags_t flags with vma_flags_t values
> throughout the madvise logic.
> 
> In order to do so, update ksm_madvise() and hugepage_madvise() to take a
> vma_flags_t pointer, and update their other callers in mremap and the
> powerpc KVM ultravisor code accordingly.
> 
> In the latter case we replace vm_flags_reset() with vma_overwrite_flags().
> The VMA is write locked at this point, so the atomic flags preserved by
> vma_overwrite_flags() cannot differ from those copied, and the behaviour
> is unchanged.
> 
> No functional change intended.
> 
> Signed-off-by: Lorenzo Stoakes (ARM) <ljs@kernel.org>
> ---
>  arch/powerpc/kvm/book3s_hv_uvmem.c | 10 ++++----
>  include/linux/huge_mm.h            |  4 ++--
>  include/linux/ksm.h                |  4 ++--
>  mm/khugepaged.c                    | 10 ++++----
>  mm/ksm.c                           | 11 +++++----
>  mm/madvise.c                       | 47 ++++++++++++++++++++------------------
>  mm/mremap.c                        |  2 +-
>  7 files changed, 46 insertions(+), 42 deletions(-)
> 
> diff --git a/arch/powerpc/kvm/book3s_hv_uvmem.c b/arch/powerpc/kvm/book3s_hv_uvmem.c
> index 463aef870c4e..0fa50bee2ffc 100644
> --- a/arch/powerpc/kvm/book3s_hv_uvmem.c
> +++ b/arch/powerpc/kvm/book3s_hv_uvmem.c
> @@ -393,7 +393,7 @@ static int kvmppc_memslot_page_merge(struct kvm *kvm,
>  {
>  	unsigned long gfn = memslot->base_gfn;
>  	unsigned long end, start = gfn_to_hva(kvm, gfn);
> -	vm_flags_t vm_flags;
> +	vma_flags_t vma_flags;
>  	int ret = 0;
>  	struct vm_area_struct *vma;
>  	int merge_flag = (merge) ? MADV_MERGEABLE : MADV_UNMERGEABLE;
> @@ -411,15 +411,15 @@ static int kvmppc_memslot_page_merge(struct kvm *kvm,
>  			break;
>  		}
>  		vma_start_write(vma);
> -		/* Copy vm_flags to avoid partial modifications in ksm_madvise */
> -		vm_flags = vma->vm_flags;
> +		/* Copy flags to avoid partial modifications in ksm_madvise */
> +		vma_flags = vma->flags;
>  		ret = ksm_madvise(vma, vma->vm_start, vma->vm_end,
> -			  merge_flag, &vm_flags);
> +			  merge_flag, &vma_flags);

Unusual indentation (before your change).

>  		if (ret) {
>  			ret = H_STATE;
>  			break;
>  		}
> -		vm_flags_reset(vma, vm_flags);
> +		vma_overwrite_flags(vma, vma_flags);
>  		start = vma->vm_end;
>  	} while (end > vma->vm_end);
>  
> diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h
> index c745f7ad2298..8b6f4101eabf 100644
> --- a/include/linux/huge_mm.h
> +++ b/include/linux/huge_mm.h
> @@ -508,7 +508,7 @@ change_huge_pud(struct mmu_gather *tlb, struct vm_area_struct *vma,
>  			__split_huge_pud(__vma, __pud, __address);	\
>  	}  while (0)
>  
> -int hugepage_madvise(struct vm_area_struct *vma, vm_flags_t *vm_flags,
> +int hugepage_madvise(struct vm_area_struct *vma, vma_flags_t *vma_flags,
>  		     int advice);
>  int madvise_collapse(struct vm_area_struct *vma, unsigned long start,
>  		     unsigned long end, bool *lock_dropped);
> @@ -710,7 +710,7 @@ static inline bool unmap_huge_pmd_locked(struct vm_area_struct *vma,
>  	do { } while (0)
>  
>  static inline int hugepage_madvise(struct vm_area_struct *vma,
> -				   vm_flags_t *vm_flags, int advice)
> +				   vma_flags_t *vma_flags, int advice)

Could do two tabs while at it.

>  {
>  	return -EINVAL;
>  }
> diff --git a/include/linux/ksm.h b/include/linux/ksm.h
> index d39d0d5483a2..1ffc69a72a1a 100644
> --- a/include/linux/ksm.h
> +++ b/include/linux/ksm.h
> @@ -16,7 +16,7 @@
>  
>  #ifdef CONFIG_KSM
>  int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
> -		unsigned long end, int advice, vm_flags_t *vm_flags);
> +		unsigned long end, int advice, vma_flags_t *vma_flags);
>  vma_flags_t ksm_vma_flags(struct mm_struct *mm, const struct file *file,
>  			  vma_flags_t vma_flags);
>  int ksm_enable_merge_any(struct mm_struct *mm);
> @@ -139,7 +139,7 @@ static inline void collect_procs_ksm(const struct folio *folio,
>  
>  #ifdef CONFIG_MMU
>  static inline int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
> -		unsigned long end, int advice, vm_flags_t *vm_flags)
> +		unsigned long end, int advice, vma_flags_t *vma_flags)
>  {
>  	return 0;
>  }
> diff --git a/mm/khugepaged.c b/mm/khugepaged.c
> index a2c7c6a0768d..be1f779c8da5 100644
> --- a/mm/khugepaged.c
> +++ b/mm/khugepaged.c
> @@ -363,16 +363,16 @@ static unsigned int collapse_max_ptes_swap(struct collapse_control *cc,
>  }
>  
>  int hugepage_madvise(struct vm_area_struct *vma,
> -		     vm_flags_t *vm_flags, int advice)
> +		     vma_flags_t *vma_flags, int advice)
>  {
>  	switch (advice) {
>  	case MADV_HUGEPAGE:
> -		*vm_flags &= ~VM_NOHUGEPAGE;
> -		*vm_flags |= VM_HUGEPAGE;
> +		vma_flags_clear(vma_flags, VMA_NOHUGEPAGE_BIT);
> +		vma_flags_set(vma_flags, VMA_HUGEPAGE_BIT);
>  		break;
>  	case MADV_NOHUGEPAGE:
> -		*vm_flags &= ~VM_HUGEPAGE;
> -		*vm_flags |= VM_NOHUGEPAGE;
> +		vma_flags_clear(vma_flags, VMA_HUGEPAGE_BIT);
> +		vma_flags_set(vma_flags, VMA_NOHUGEPAGE_BIT);
>  		/*
>  		 * Setting VM_NOHUGEPAGE will prevent khugepaged from scanning
>  		 * this vma even if we leave the mm registered in khugepaged if
> diff --git a/mm/ksm.c b/mm/ksm.c
> index 61b772bba229..3eb9c1ec2f87 100644
> --- a/mm/ksm.c
> +++ b/mm/ksm.c
> @@ -779,7 +779,8 @@ static struct vm_area_struct *find_mergeable_vma(struct mm_struct *mm,
>  	if (ksm_test_exit(mm))
>  		return NULL;
>  	vma = vma_lookup(mm, addr);
> -	if (!vma || !vma_test(vma, VMA_MERGEABLE_BIT) || !vma_has_anon_rmap(vma))
> +	if (!vma || !vma_test(vma, VMA_MERGEABLE_BIT) ||
> +	    !vma_has_anon_rmap(vma))
>  		return NULL;
>  	return vma;
>  }
> @@ -3021,7 +3022,7 @@ int ksm_disable(struct mm_struct *mm)
>  }
>  
>  int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
> -		unsigned long end, int advice, vm_flags_t *vm_flags)
> +		unsigned long end, int advice, vma_flags_t *vma_flags)
>  {
>  	struct mm_struct *mm = vma->vm_mm;
>  	int err;
> @@ -3039,11 +3040,11 @@ int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
>  				return err;
>  		}
>  
> -		*vm_flags |= VM_MERGEABLE;
> +		vma_flags_set(vma_flags, VMA_MERGEABLE_BIT);
>  		break;
>  
>  	case MADV_UNMERGEABLE:
> -		if (!(*vm_flags & VM_MERGEABLE))
> +		if (!vma_flags_test(vma_flags, VMA_MERGEABLE_BIT))
>  			return 0;		/* just ignore the advice */
>  
>  		if (vma_has_anon_rmap(vma)) {
> @@ -3052,7 +3053,7 @@ int ksm_madvise(struct vm_area_struct *vma, unsigned long start,
>  				return err;
>  		}
>  
> -		*vm_flags &= ~VM_MERGEABLE;
> +		vma_flags_clear(vma_flags, VMA_MERGEABLE_BIT);
>  		break;
>  	}
>  
> diff --git a/mm/madvise.c b/mm/madvise.c
> index e9fa4f71efea..1b539e67b00d 100644
> --- a/mm/madvise.c
> +++ b/mm/madvise.c
> @@ -148,11 +148,10 @@ static int replace_anon_vma_name(struct vm_area_struct *vma,
>   * Update the vm_flags or anon_name on region of a vma, splitting it or merging
>   * it as necessary. Must be called with mmap_lock held for writing.
>   */
> -static int madvise_update_vma(vm_flags_t new_flags,
> +static int madvise_update_vma(vma_flags_t new_vma_flags,
>  		struct madvise_behavior *madv_behavior)
>  {
>  	struct vm_area_struct *vma = madv_behavior->vma;
> -	vma_flags_t new_vma_flags = legacy_to_vma_flags(new_flags);
>  	struct madvise_behavior_range *range = &madv_behavior->range;
>  	struct anon_vma_name *anon_name = madv_behavior->anon_name;
>  	bool set_new_anon_name = madv_behavior->behavior == __MADV_SET_ANON_VMA_NAME;
> @@ -601,7 +600,8 @@ static void madvise_cold_page_range(struct mmu_gather *tlb,
>  
>  static inline bool can_madv_lru_vma(struct vm_area_struct *vma)
>  {
> -	return !(vma->vm_flags & (VM_LOCKED|VM_PFNMAP|VM_HUGETLB));
> +	return !vma_test_any(vma, VMA_LOCKED_BIT, VMA_PFNMAP_BIT,
> +			     VMA_HUGETLB_BIT);
>  }
>  
>  static long madvise_cold(struct madvise_behavior *madv_behavior)
> @@ -650,7 +650,7 @@ static long madvise_pageout(struct madvise_behavior *madv_behavior)
>  	 * further to pageout dirty anon pages.
>  	 */
>  	if (!vma_is_anonymous(vma) && (!can_do_file_pageout(vma) &&
> -				(vma->vm_flags & VM_MAYSHARE)))
> +				vma_test(vma, VMA_MAYSHARE_BIT)))

Another weird indentation. Likely because the spare set of () that are not
necessary?


Acked-by: David Hildenbrand (Arm) <david@kernel.org>

-- 
Cheers,

David

  parent reply	other threads:[~2026-11-09 13:45 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-05 21:30 [PATCH 00/13] mm: continue vma_flags_t conversion Lorenzo Stoakes (ARM)
2026-11-05 21:30 ` [PATCH 01/13] mm/gup: convert GUP code to use vma_flags_t Lorenzo Stoakes (ARM)
2026-11-05 21:38   ` sashiko-bot
2026-11-06  3:47   ` Barry Song
2026-11-06  5:47   ` Lance Yang
2026-11-09 13:32   ` David Hildenbrand
2026-11-05 21:30 ` [PATCH 02/13] mm/filemap: convert fault and readahead logic " Lorenzo Stoakes (ARM)
2026-11-05 21:41   ` sashiko-bot
2026-11-06 11:53     ` Lorenzo Stoakes (ARM)
2026-11-08  7:20       ` Barry Song
2026-11-08  7:42         ` Barry Song
2026-11-09 12:26           ` Lorenzo Stoakes (ARM)
2026-11-05 21:30 ` [PATCH 03/13] mm/rmap: convert remaining VMA flag tests " Lorenzo Stoakes (ARM)
2026-11-05 21:37   ` sashiko-bot
2026-11-06  3:04   ` Baolin Wang
2026-11-06  3:57   ` Barry Song
2026-11-06 11:21     ` Lorenzo Stoakes (ARM)
2026-11-06  5:54   ` Lance Yang
2026-11-09 13:31   ` David Hildenbrand
2026-11-05 21:30 ` [PATCH 04/13] mm/migrate: convert " Lorenzo Stoakes (ARM)
2026-11-05 21:39   ` sashiko-bot
2026-11-06  3:05   ` Baolin Wang
2026-11-06  4:10   ` Barry Song
2026-11-06  5:58   ` Lance Yang
2026-11-09 13:31   ` David Hildenbrand
2026-11-05 21:30 ` [PATCH 05/13] mm: convert THP " Lorenzo Stoakes (ARM)
2026-11-05 21:40   ` sashiko-bot
2026-11-06  3:07   ` Baolin Wang
2026-11-06  4:01   ` Barry Song
2026-11-06  6:03   ` Lance Yang
2026-11-06 14:36   ` David Hildenbrand (Arm)
2026-11-09 12:27     ` Lorenzo Stoakes (ARM)
2026-11-09 13:38   ` David Hildenbrand
2026-11-05 21:30 ` [PATCH 06/13] mm/ksm: convert " Lorenzo Stoakes (ARM)
2026-11-05 21:40   ` sashiko-bot
2026-11-06  6:09   ` Lance Yang
2026-11-06  7:42   ` Xu Xin (vivo)
2026-11-09 13:30   ` David Hildenbrand
2026-11-05 21:30 ` [PATCH 07/13] mm/madvise: convert madvise_vma_behavior() " Lorenzo Stoakes (ARM)
2026-11-05 21:43   ` sashiko-bot
2026-11-06  6:38   ` Lance Yang
2026-11-09 13:44   ` David Hildenbrand (Arm) [this message]
2026-11-09 14:10   ` David Hildenbrand (Arm)
2026-11-09 17:01     ` Lorenzo Stoakes (ARM)
2026-11-05 21:30 ` [PATCH 08/13] mm: convert miscellaneous VMA flag tests " Lorenzo Stoakes (ARM)
2026-11-05 21:43   ` sashiko-bot
2026-11-06  1:01   ` SJ Park
2026-11-06  6:40   ` Lance Yang
2026-11-09 13:45   ` David Hildenbrand (Arm)
2026-11-12  5:36   ` Gregory Price (Meta)
2026-11-05 21:31 ` [PATCH 09/13] fs/proc/task_mmu: convert " Lorenzo Stoakes (ARM)
2026-11-05 21:45   ` sashiko-bot
2026-11-06  6:59   ` Lance Yang
2026-11-06 10:46     ` Lorenzo Stoakes (ARM)
2026-11-05 21:31 ` [PATCH 10/13] fs/coredump: convert vma_dump_size() " Lorenzo Stoakes (ARM)
2026-11-05 21:44   ` sashiko-bot
2026-11-06  7:03   ` Lance Yang
2026-11-05 21:31 ` [PATCH 11/13] uprobes: convert VMA flag tests " Lorenzo Stoakes (ARM)
2026-11-05 21:44   ` sashiko-bot
2026-11-06  7:12   ` Lance Yang
2026-11-05 21:31 ` [PATCH 12/13] perf: " Lorenzo Stoakes (ARM)
2026-11-05 21:46   ` sashiko-bot
2026-11-06  7:45   ` Lance Yang
2026-11-05 21:31 ` [PATCH 13/13] security: " Lorenzo Stoakes (ARM)
2026-11-05 21:46   ` sashiko-bot
2026-11-05 23:17   ` Paul Moore
2026-11-06  1:22     ` Paul Moore
2026-11-06  2:13       ` Fan Wu
2026-11-06 10:13     ` Lorenzo Stoakes (ARM)
2026-11-06  7:51   ` Lance Yang
2026-11-06 14:35 ` [PATCH 00/13] mm: continue vma_flags_t conversion David Hildenbrand (Arm)
2026-11-06 15:22   ` Lorenzo Stoakes (ARM)
2026-11-07 19:26     ` David Hildenbrand (Arm)
2026-11-07 20:09       ` Lorenzo Stoakes (ARM)
2026-11-09 13:40         ` David Hildenbrand (Arm)
2026-11-09 17:44           ` Andrew Morton
2026-11-09 17:48             ` David Hildenbrand (Arm)
2026-11-09 17:50               ` Andrew Morton

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=ac29cf71-a1af-4ce7-96c3-aea5a771979a@kernel.org \
    --to=david@kernel.org \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=apopple@nvidia.com \
    --cc=apparmor@lists.ubuntu.com \
    --cc=axelrasmussen@google.com \
    --cc=baohua@kernel.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=baoquan.he@linux.dev \
    --cc=brauner@kernel.org \
    --cc=byungchul@sk.com \
    --cc=chengming.zhou@linux.dev \
    --cc=chleroy@kernel.org \
    --cc=damon@lists.linux.dev \
    --cc=dev.jain@arm.com \
    --cc=dmitry.kasatkin@gmail.com \
    --cc=eric.snowberg@oracle.com \
    --cc=georgia.garcia@canonical.com \
    --cc=gourry@gourry.net \
    --cc=harry@kernel.org \
    --cc=irogers@google.com \
    --cc=jack@suse.cz \
    --cc=james.clark@linaro.org \
    --cc=jannh@google.com \
    --cc=jgg@ziepe.ca \
    --cc=jhubbard@nvidia.com \
    --cc=jmorris@namei.org \
    --cc=john.johansen@canonical.com \
    --cc=jolsa@kernel.org \
    --cc=joshua.hahnjy@gmail.com \
    --cc=kas@kernel.org \
    --cc=kasong@tencent.com \
    --cc=kvm@vger.kernel.org \
    --cc=lance.yang@linux.dev \
    --cc=leon@kernel.org \
    --cc=liam@infradead.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=ljs@kernel.org \
    --cc=maddy@linux.ibm.com \
    --cc=mark.rutland@arm.com \
    --cc=matthew.brost@intel.com \
    --cc=mhiramat@kernel.org \
    --cc=mhocko@suse.com \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=namhyung@kernel.org \
    --cc=nico.pache@linux.dev \
    --cc=npiggin@gmail.com \
    --cc=oleg@redhat.com \
    --cc=omosnacek@gmail.com \
    --cc=paul@paul-moore.com \
    --cc=peterx@redhat.com \
    --cc=peterz@infradead.org \
    --cc=pfalcato@suse.de \
    --cc=qi.zheng@linux.dev \
    --cc=rakie.kim@sk.com \
    --cc=riel@surriel.com \
    --cc=rientjes@google.com \
    --cc=ritesh.list@gmail.com \
    --cc=roberto.sassu@huawei.com \
    --cc=rppt@kernel.org \
    --cc=ryan.roberts@arm.com \
    --cc=selinux@vger.kernel.org \
    --cc=serge@hallyn.com \
    --cc=shakeel.butt@linux.dev \
    --cc=sj@kernel.org \
    --cc=sshegde@linux.ibm.com \
    --cc=stephen.smalley.work@gmail.com \
    --cc=surenb@google.com \
    --cc=usama.arif@linux.dev \
    --cc=vbabka@kernel.org \
    --cc=viro@zeniv.linux.org.uk \
    --cc=weixugc@google.com \
    --cc=willy@infradead.org \
    --cc=wufan@kernel.org \
    --cc=xu.xin@linux.dev \
    --cc=ying.huang@linux.alibaba.com \
    --cc=yuanchu@google.com \
    --cc=ziy@nvidia.com \
    --cc=zohar@linux.ibm.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 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.