2024-03-26 23:15:06

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 0/6] Documentation fixes for memory allocation profiling

With the introduction of [1] kernel-doc can handle _noprof function names.
This patchset changes back _noprof documentation changes introduced in
memory allocation profiling patchset [2].
Changes are split into several patches, each undoing changes in a specific
patch from the original patchset so that it's easy to squash the fix into
the initial patch if Andrew wants to do that.
Changes apply cleanly over mm-unstable and are tested with [1] applied.

[1] https://lore.kernel.org/all/[email protected]/
[2] https://lore.kernel.org/all/[email protected]/

Suren Baghdasaryan (6):
Documentation: rhashtable: undo _noprof additions in the documentation
Documentation: mm: undo _noprof additions in the documentation
Documentation: mempool: undo _noprof additions in the documentation
Documentation: mm: vmalloc: undo _noprof additions in the
documentation
Documentation: mm: percpu: undo _noprof additions in the documentation
Documentation: mm/slab: undo _noprof additions in the documentation

lib/rhashtable.c | 6 +++---
mm/mempolicy.c | 6 +++---
mm/mempool.c | 2 +-
mm/nommu.c | 8 ++++----
mm/page_alloc.c | 8 ++++----
mm/percpu.c | 2 +-
mm/slub.c | 2 +-
mm/util.c | 10 +++++-----
mm/vmalloc.c | 14 +++++++-------
9 files changed, 29 insertions(+), 29 deletions(-)


base-commit: 4aaccadb5c04dd4d4519c8762a38010a32d904a3
prerequisite-patch-id: 1c2be401fcd818b167ef7d506a2fb87fea230835
prerequisite-patch-id: d3c1b90bc5ee32295962c5d30bd79dfb6eb774c3
prerequisite-patch-id: 25e37766c40250d564a0c198e2af01a9aae33c92
prerequisite-patch-id: ed3859d70637371a854c212aa08db8f28edbede4
--
2.44.0.396.g6e790dbe36-goog



2024-03-26 23:15:16

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 1/6] Documentation: rhashtable: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: 11c91be0e244 ("rhashtable: plumb through alloc tag")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
lib/rhashtable.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/rhashtable.c b/lib/rhashtable.c
index 35d841cf2b43..dbbed19f8fff 100644
--- a/lib/rhashtable.c
+++ b/lib/rhashtable.c
@@ -979,7 +979,7 @@ static u32 rhashtable_jhash2(const void *key, u32 length, u32 seed)
}

/**
- * rhashtable_init_noprof - initialize a new hash table
+ * rhashtable_init - initialize a new hash table
* @ht: hash table to be initialized
* @params: configuration parameters
*
@@ -1085,13 +1085,13 @@ int rhashtable_init_noprof(struct rhashtable *ht,
EXPORT_SYMBOL_GPL(rhashtable_init_noprof);

/**
- * rhltable_init_noprof - initialize a new hash list table
+ * rhltable_init - initialize a new hash list table
* @hlt: hash list table to be initialized
* @params: configuration parameters
*
* Initializes a new hash list table.
*
- * See documentation for rhashtable_init_noprof.
+ * See documentation for rhashtable_init.
*/
int rhltable_init_noprof(struct rhltable *hlt, const struct rhashtable_params *params)
{
--
2.44.0.396.g6e790dbe36-goog


2024-03-26 23:15:34

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 2/6] Documentation: mm: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: 6522e08ac1c6 ("mm: enable page allocation tagging")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
mm/mempolicy.c | 6 +++---
mm/page_alloc.c | 8 ++++----
2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 3fae74b62c51..913cff5da5a3 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -2209,7 +2209,7 @@ static struct page *alloc_pages_preferred_many(gfp_t gfp, unsigned int order,
}

/**
- * alloc_pages_mpol_noprof - Allocate pages according to NUMA mempolicy.
+ * alloc_pages_mpol - Allocate pages according to NUMA mempolicy.
* @gfp: GFP flags.
* @order: Order of the page allocation.
* @pol: Pointer to the NUMA mempolicy.
@@ -2278,7 +2278,7 @@ struct page *alloc_pages_mpol_noprof(gfp_t gfp, unsigned int order,
}

/**
- * vma_alloc_folio_noprof - Allocate a folio for a VMA.
+ * vma_alloc_folio - Allocate a folio for a VMA.
* @gfp: GFP flags.
* @order: Order of the folio.
* @vma: Pointer to VMA.
@@ -2309,7 +2309,7 @@ struct folio *vma_alloc_folio_noprof(gfp_t gfp, int order, struct vm_area_struct
EXPORT_SYMBOL(vma_alloc_folio_noprof);

/**
- * alloc_pages_noprof - Allocate pages.
+ * alloc_pages - Allocate pages.
* @gfp: GFP flags.
* @order: Power of two of number of pages to allocate.
*
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 370ea1711828..8cdb8cc2958e 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -4973,7 +4973,7 @@ static void *make_alloc_exact(unsigned long addr, unsigned int order,
}

/**
- * alloc_pages_exact_noprof - allocate an exact number physically-contiguous pages.
+ * alloc_pages_exact - allocate an exact number physically-contiguous pages.
* @size: the number of bytes to allocate
* @gfp_mask: GFP flags for the allocation, must not contain __GFP_COMP
*
@@ -5001,7 +5001,7 @@ void *alloc_pages_exact_noprof(size_t size, gfp_t gfp_mask)
EXPORT_SYMBOL(alloc_pages_exact_noprof);

/**
- * alloc_pages_exact_nid_noprof - allocate an exact number of physically-contiguous
+ * alloc_pages_exact_nid - allocate an exact number of physically-contiguous
* pages on a node.
* @nid: the preferred node ID where memory should be allocated
* @size: the number of bytes to allocate
@@ -6458,7 +6458,7 @@ int __alloc_contig_migrate_range(struct compact_control *cc,
}

/**
- * alloc_contig_range_noprof() -- tries to allocate given range of pages
+ * alloc_contig_range() -- tries to allocate given range of pages
* @start: start PFN to allocate
* @end: one-past-the-last PFN to allocate
* @migratetype: migratetype of the underlying pageblocks (either
@@ -6622,7 +6622,7 @@ static bool zone_spans_last_pfn(const struct zone *zone,
}

/**
- * alloc_contig_pages_noprof() -- tries to find and allocate contiguous range of pages
+ * alloc_contig_pages() -- tries to find and allocate contiguous range of pages
* @nr_pages: Number of contiguous pages to allocate
* @gfp_mask: GFP mask to limit search and used during compaction
* @nid: Target node
--
2.44.0.396.g6e790dbe36-goog


2024-03-26 23:15:50

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 3/6] Documentation: mempool: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: 01d3a2ac5e7f ("mempool: hook up to memory allocation profiling")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
mm/mempool.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/mempool.c b/mm/mempool.c
index 602e6eba68d3..63d4e3778bbd 100644
--- a/mm/mempool.c
+++ b/mm/mempool.c
@@ -366,7 +366,7 @@ int mempool_resize(mempool_t *pool, int new_min_nr)
EXPORT_SYMBOL(mempool_resize);

/**
- * mempool_alloc_noprof - allocate an element from a specific memory pool
+ * mempool_alloc - allocate an element from a specific memory pool
* @pool: pointer to the memory pool which was allocated via
* mempool_create().
* @gfp_mask: the usual allocation bitmask.
--
2.44.0.396.g6e790dbe36-goog


2024-03-26 23:16:05

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 4/6] Documentation: mm: vmalloc: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: ed49858097c1 ("mm: vmalloc: enable memory allocation profiling")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
mm/nommu.c | 8 ++++----
mm/util.c | 6 +++---
mm/vmalloc.c | 14 +++++++-------
3 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/mm/nommu.c b/mm/nommu.c
index c0c58631d6cb..331d2f778695 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -223,7 +223,7 @@ void *vzalloc_noprof(unsigned long size)
EXPORT_SYMBOL(vzalloc_noprof);

/**
- * vmalloc_node_noprof - allocate memory on a specific node
+ * vmalloc_node - allocate memory on a specific node
* @size: allocation size
* @node: numa node
*
@@ -240,7 +240,7 @@ void *vmalloc_node_noprof(unsigned long size, int node)
EXPORT_SYMBOL(vmalloc_node_noprof);

/**
- * vzalloc_node_noprof - allocate memory on a specific node with zero fill
+ * vzalloc_node - allocate memory on a specific node with zero fill
* @size: allocation size
* @node: numa node
*
@@ -258,7 +258,7 @@ void *vzalloc_node_noprof(unsigned long size, int node)
EXPORT_SYMBOL(vzalloc_node_noprof);

/**
- * vmalloc_32_noprof - allocate virtually contiguous memory (32bit addressable)
+ * vmalloc_32 - allocate virtually contiguous memory (32bit addressable)
* @size: allocation size
*
* Allocate enough 32bit PA addressable pages to cover @size from the
@@ -271,7 +271,7 @@ void *vmalloc_32_noprof(unsigned long size)
EXPORT_SYMBOL(vmalloc_32_noprof);

/**
- * vmalloc_32_user_noprof - allocate zeroed virtually contiguous 32bit memory
+ * vmalloc_32_user - allocate zeroed virtually contiguous 32bit memory
* @size: allocation size
*
* The resulting memory area is 32bit addressable and zeroed so it can be
diff --git a/mm/util.c b/mm/util.c
index 157b5edcba75..73703d6cd3dc 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -715,7 +715,7 @@ void *kvrealloc_noprof(const void *p, size_t oldsize, size_t newsize, gfp_t flag
EXPORT_SYMBOL(kvrealloc_noprof);

/**
- * __vmalloc_array_noprof - allocate memory for a virtually contiguous array.
+ * __vmalloc_array - allocate memory for a virtually contiguous array.
* @n: number of elements.
* @size: element size.
* @flags: the type of memory to allocate (see kmalloc).
@@ -731,7 +731,7 @@ void *__vmalloc_array_noprof(size_t n, size_t size, gfp_t flags)
EXPORT_SYMBOL(__vmalloc_array_noprof);

/**
- * vmalloc_array_noprof - allocate memory for a virtually contiguous array.
+ * vmalloc_array - allocate memory for a virtually contiguous array.
* @n: number of elements.
* @size: element size.
*/
@@ -754,7 +754,7 @@ void *__vcalloc_noprof(size_t n, size_t size, gfp_t flags)
EXPORT_SYMBOL(__vcalloc_noprof);

/**
- * vcalloc_noprof - allocate and zero memory for a virtually contiguous array.
+ * vcalloc - allocate and zero memory for a virtually contiguous array.
* @n: number of elements.
* @size: element size.
*/
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index e94ce4562805..48344d3014fd 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -3685,7 +3685,7 @@ static void *__vmalloc_area_node(struct vm_struct *area, gfp_t gfp_mask,
}

/**
- * __vmalloc_node_range_noprof - allocate virtually contiguous memory
+ * __vmalloc_node_range - allocate virtually contiguous memory
* @size: allocation size
* @align: desired alignment
* @start: vm area range start
@@ -3841,7 +3841,7 @@ void *__vmalloc_node_range_noprof(unsigned long size, unsigned long align,
}

/**
- * __vmalloc_node_noprof - allocate virtually contiguous memory
+ * __vmalloc_node - allocate virtually contiguous memory
* @size: allocation size
* @align: desired alignment
* @gfp_mask: flags for the page level allocator
@@ -3921,7 +3921,7 @@ void *vmalloc_huge_noprof(unsigned long size, gfp_t gfp_mask)
EXPORT_SYMBOL_GPL(vmalloc_huge_noprof);

/**
- * vzalloc_noprof - allocate virtually contiguous memory with zero fill
+ * vzalloc - allocate virtually contiguous memory with zero fill
* @size: allocation size
*
* Allocate enough pages to cover @size from the page level
@@ -3959,7 +3959,7 @@ void *vmalloc_user_noprof(unsigned long size)
EXPORT_SYMBOL(vmalloc_user_noprof);

/**
- * vmalloc_node_noprof - allocate memory on a specific node
+ * vmalloc_node - allocate memory on a specific node
* @size: allocation size
* @node: numa node
*
@@ -3979,7 +3979,7 @@ void *vmalloc_node_noprof(unsigned long size, int node)
EXPORT_SYMBOL(vmalloc_node_noprof);

/**
- * vzalloc_node_noprof - allocate memory on a specific node with zero fill
+ * vzalloc_node - allocate memory on a specific node with zero fill
* @size: allocation size
* @node: numa node
*
@@ -4009,7 +4009,7 @@ EXPORT_SYMBOL(vzalloc_node_noprof);
#endif

/**
- * vmalloc_32_noprof - allocate virtually contiguous memory (32bit addressable)
+ * vmalloc_32 - allocate virtually contiguous memory (32bit addressable)
* @size: allocation size
*
* Allocate enough 32bit PA addressable pages to cover @size from the
@@ -4025,7 +4025,7 @@ void *vmalloc_32_noprof(unsigned long size)
EXPORT_SYMBOL(vmalloc_32_noprof);

/**
- * vmalloc_32_user_noprof - allocate zeroed virtually contiguous 32bit memory
+ * vmalloc_32_user - allocate zeroed virtually contiguous 32bit memory
* @size: allocation size
*
* The resulting memory area is 32bit addressable and zeroed so it can be
--
2.44.0.396.g6e790dbe36-goog


2024-03-26 23:16:14

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 5/6] Documentation: mm: percpu: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: b3942167cb9f ("mm: percpu: enable per-cpu allocation tagging")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
mm/percpu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/percpu.c b/mm/percpu.c
index dd7eeb370134..474e3683b74d 100644
--- a/mm/percpu.c
+++ b/mm/percpu.c
@@ -1726,7 +1726,7 @@ static void pcpu_alloc_tag_free_hook(struct pcpu_chunk *chunk, int off, size_t s
#endif

/**
- * pcpu_alloc_noprof - the percpu allocator
+ * pcpu_alloc - the percpu allocator
* @size: size of area to allocate in bytes
* @align: alignment of area (max PAGE_SIZE)
* @reserved: allocate from the reserved chunk if available
--
2.44.0.396.g6e790dbe36-goog


2024-03-26 23:30:04

by Suren Baghdasaryan

[permalink] [raw]
Subject: [PATCH 6/6] Documentation: mm/slab: undo _noprof additions in the documentation

With kernel-doc script change to handle xyz_noprof() names, the previous
documentation changes and not needed anymore.

Fixes: bc7b83f5e4bf ("mm/slab: enable slab allocation tagging for kmalloc and friends")
Signed-off-by: Suren Baghdasaryan <[email protected]>
Cc: [email protected]
Cc: Randy Dunlap <[email protected]>
Cc: Kent Overstreet <[email protected]>
---
mm/slub.c | 2 +-
mm/util.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/mm/slub.c b/mm/slub.c
index 7b68a3451eb9..be047279c9e9 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -4091,7 +4091,7 @@ void *kmem_cache_alloc_lru_noprof(struct kmem_cache *s, struct list_lru *lru,
EXPORT_SYMBOL(kmem_cache_alloc_lru_noprof);

/**
- * kmem_cache_alloc_node_noprof - Allocate an object on the specified node
+ * kmem_cache_alloc_node - Allocate an object on the specified node
* @s: The cache to allocate from.
* @gfpflags: See kmalloc().
* @node: node number of the target node.
diff --git a/mm/util.c b/mm/util.c
index 73703d6cd3dc..a9e911b22b99 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -115,7 +115,7 @@ char *kstrndup(const char *s, size_t max, gfp_t gfp)
EXPORT_SYMBOL(kstrndup);

/**
- * kmemdup_noprof - duplicate region of memory
+ * kmemdup - duplicate region of memory
*
* @src: memory region to duplicate
* @len: memory region length
@@ -594,7 +594,7 @@ unsigned long vm_mmap(struct file *file, unsigned long addr,
EXPORT_SYMBOL(vm_mmap);

/**
- * kvmalloc_node_noprof - attempt to allocate physically contiguous memory, but upon
+ * kvmalloc_node - attempt to allocate physically contiguous memory, but upon
* failure, fall back to non-contiguous (vmalloc) allocation.
* @size: size of the request.
* @flags: gfp mask for the allocation - must be compatible (superset) with GFP_KERNEL.
--
2.44.0.396.g6e790dbe36-goog


2024-03-27 05:46:21

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH 0/6] Documentation fixes for memory allocation profiling



On 3/26/24 16:14, Suren Baghdasaryan wrote:
> With the introduction of [1] kernel-doc can handle _noprof function names.
> This patchset changes back _noprof documentation changes introduced in
> memory allocation profiling patchset [2].
> Changes are split into several patches, each undoing changes in a specific
> patch from the original patchset so that it's easy to squash the fix into
> the initial patch if Andrew wants to do that.
> Changes apply cleanly over mm-unstable and are tested with [1] applied.
>
> [1] https://lore.kernel.org/all/[email protected]/
> [2] https://lore.kernel.org/all/[email protected]/
>
> Suren Baghdasaryan (6):
> Documentation: rhashtable: undo _noprof additions in the documentation
> Documentation: mm: undo _noprof additions in the documentation
> Documentation: mempool: undo _noprof additions in the documentation
> Documentation: mm: vmalloc: undo _noprof additions in the
> documentation
> Documentation: mm: percpu: undo _noprof additions in the documentation
> Documentation: mm/slab: undo _noprof additions in the documentation
>

Tested-by: Randy Dunlap <[email protected]>

Thanks.

> lib/rhashtable.c | 6 +++---
> mm/mempolicy.c | 6 +++---
> mm/mempool.c | 2 +-
> mm/nommu.c | 8 ++++----
> mm/page_alloc.c | 8 ++++----
> mm/percpu.c | 2 +-
> mm/slub.c | 2 +-
> mm/util.c | 10 +++++-----
> mm/vmalloc.c | 14 +++++++-------
> 9 files changed, 29 insertions(+), 29 deletions(-)
>
>
> base-commit: 4aaccadb5c04dd4d4519c8762a38010a32d904a3
> prerequisite-patch-id: 1c2be401fcd818b167ef7d506a2fb87fea230835
> prerequisite-patch-id: d3c1b90bc5ee32295962c5d30bd79dfb6eb774c3
> prerequisite-patch-id: 25e37766c40250d564a0c198e2af01a9aae33c92
> prerequisite-patch-id: ed3859d70637371a854c212aa08db8f28edbede4

--
#Randy