Re: [PATCH v2 05/33] mm/rmap: update mm/interval_tree.c comments
"Vlastimil Babka (SUSE)" <[email protected]> Mon, 13 Jul 2026 19:48:18 +0200
| Newsgroups | org.kernel.vger.linux-sgx,dev.linux.lists.damon,dev.linux.lists.iommu,dev.linux.lists.nvdimm,org.kernel.vger.kvm,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-parisc,org.kernel.vger.linux-perf-users,org.kernel.vger.linux-tegra,org.kernel.vger.linux-trace-kernel,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
On 7/10/26 22:16, Lorenzo Stoakes wrote: > Update the file comment to clarify that both file-backed and anonymous > interval trees are provided, referencing the relevant data types for > clarity. > > Also add comments to indicate which parts of the file apply to each. > > While we're here, convert the VM_BUG_ON_VMA() to VM_WARN_ON_ONCE_VMA(). > > Reviewed-by: Pedro Falcato <[email protected]> > Reviewed-by: Gregory Price <[email protected]> > Signed-off-by: Lorenzo Stoakes <[email protected]> Reviewed-by: Vlastimil Babka (SUSE) <[email protected]> > --- > mm/interval_tree.c | 9 +++++++-- > 1 file changed, 7 insertions(+), 2 deletions(-) > > diff --git a/mm/interval_tree.c b/mm/interval_tree.c > index 344d1f5946c7..2d50bc6228c4 100644 > --- a/mm/interval_tree.c > +++ b/mm/interval_tree.c > @@ -1,6 +1,7 @@ > // SPDX-License-Identifier: GPL-2.0-only > /* > - * mm/interval_tree.c - interval tree for mapping->i_mmap > + * mm/interval_tree.c - interval tree for address_space->i_mmap and > + * anon_vma->rb_root > * > * Copyright (C) 2012, Michel Lespinasse <[email protected]> > */ > @@ -10,6 +11,8 @@ > #include <linux/rmap.h> > #include <linux/interval_tree_generic.h> > > +/* File-backed interval tree (address_space->i_mmap) */ > + > INTERVAL_TREE_DEFINE(struct vm_area_struct, shared.rb, > unsigned long, shared.rb_subtree_last, > vma_start_pgoff, vma_last_pgoff, /* empty */, vma_interval_tree) > @@ -23,7 +26,7 @@ void vma_interval_tree_insert_after(struct vm_area_struct *node, > struct vm_area_struct *parent; > unsigned long last = vma_last_pgoff(node); > > - VM_BUG_ON_VMA(vma_start_pgoff(node) != vma_start_pgoff(prev), node); > + VM_WARN_ON_ONCE_VMA(vma_start_pgoff(node) != vma_start_pgoff(prev), node); > > if (!prev->shared.rb.rb_right) { > parent = prev; > @@ -48,6 +51,8 @@ void vma_interval_tree_insert_after(struct vm_area_struct *node, > &vma_interval_tree_augment); > } > > +/* Anonymous interval tree (anon_vma->rb_root) */ > + > static inline unsigned long avc_start_pgoff(struct anon_vma_chain *avc) > { > return vma_start_pgoff(avc->vma); >