[PATCH] mm: vmalloc: update outdated comment for renamed vread()

Kexin Sun posted 1 patch 1 week, 6 days ago
fs/pstore/ram_core.c |  2 +-
mm/vmalloc.c         | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
[PATCH] mm: vmalloc: update outdated comment for renamed vread()
Posted by Kexin Sun 1 week, 6 days ago
The function vread() was renamed to vread_iter() in commit
4c91c07c93bb ("mm: vmalloc: convert vread() to vread_iter()"),
converting from a buffer-based to an iterator-based interface.

Update the kdoc of vread_iter() to reflect the new interface:
replace references to @buf with @iter, drop the stale "kernel's
buffer" requirement, and update the self-reference from vread()
to vread_iter().

Also update the stale vread() reference in pstore's ram_core.c.

Assisted-by: unnamed:deepseek-v3.2 coccinelle
Signed-off-by: Kexin Sun <kexinsun@smail.nju.edu.cn>
---
 fs/pstore/ram_core.c |  2 +-
 mm/vmalloc.c         | 10 +++++-----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c
index ed97494abf60..738283a85ea2 100644
--- a/fs/pstore/ram_core.c
+++ b/fs/pstore/ram_core.c
@@ -450,7 +450,7 @@ static void *persistent_ram_vmap(phys_addr_t start, size_t size,
 		pages[i] = pfn_to_page(addr >> PAGE_SHIFT);
 	}
 	/*
-	 * VM_IOREMAP used here to bypass this region during vread()
+	 * VM_IOREMAP used here to bypass this region during vread_iter()
 	 * and kmap_atomic() (i.e. kcore) to avoid __va() failures.
 	 */
 	vaddr = vmap(pages, page_count, VM_MAP | VM_IOREMAP, prot);
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 61caa55a4402..9ee256884f78 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -4575,20 +4575,20 @@ static size_t vmap_ram_vread_iter(struct iov_iter *iter, const char *addr,
  * @count:        number of bytes to be read.
  *
  * This function checks that addr is a valid vmalloc'ed area, and
- * copy data from that area to a given buffer. If the given memory range
+ * copy data from that area to a given iterator. If the given memory range
  * of [addr...addr+count) includes some valid address, data is copied to
- * proper area of @buf. If there are memory holes, they'll be zero-filled.
+ * proper area of @iter. If there are memory holes, they'll be zero-filled.
  * IOREMAP area is treated as memory hole and no copy is done.
  *
  * If [addr...addr+count) doesn't includes any intersects with alive
- * vm_struct area, returns 0. @buf should be kernel's buffer.
+ * vm_struct area, returns 0.
  *
- * Note: In usual ops, vread() is never necessary because the caller
+ * Note: In usual ops, vread_iter() is never necessary because the caller
  * should know vmalloc() area is valid and can use memcpy().
  * This is for routines which have to access vmalloc area without
  * any information, as /proc/kcore.
  *
- * Return: number of bytes for which addr and buf should be increased
+ * Return: number of bytes for which addr and iter should be advanced
  * (same number as @count) or %0 if [addr...addr+count) doesn't
  * include any intersection with valid vmalloc area
  */
-- 
2.25.1
Re: [PATCH] mm: vmalloc: update outdated comment for renamed vread()
Posted by Andrew Morton 1 week ago
On Sat, 21 Mar 2026 18:58:20 +0800 Kexin Sun <kexinsun@smail.nju.edu.cn> wrote:

> The function vread() was renamed to vread_iter() in commit
> 4c91c07c93bb ("mm: vmalloc: convert vread() to vread_iter()"),
> converting from a buffer-based to an iterator-based interface.
> 
> Update the kdoc of vread_iter() to reflect the new interface:
> replace references to @buf with @iter, drop the stale "kernel's
> buffer" requirement, and update the self-reference from vread()
> to vread_iter().
> 
> Also update the stale vread() reference in pstore's ram_core.c.
> 

LGTM, thanks.

> 
> diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c
> index ed97494abf60..738283a85ea2 100644
> --- a/fs/pstore/ram_core.c
> +++ b/fs/pstore/ram_core.c
> @@ -450,7 +450,7 @@ static void *persistent_ram_vmap(phys_addr_t start, size_t size,
>  		pages[i] = pfn_to_page(addr >> PAGE_SHIFT);
>  	}
>  	/*
> -	 * VM_IOREMAP used here to bypass this region during vread()
> +	 * VM_IOREMAP used here to bypass this region during vread_iter()
>  	 * and kmap_atomic() (i.e. kcore) to avoid __va() failures.
>  	 */
>  	vaddr = vmap(pages, page_count, VM_MAP | VM_IOREMAP, prot);
> diff --git a/mm/vmalloc.c b/mm/vmalloc.c
> index 61caa55a4402..9ee256884f78 100644
> --- a/mm/vmalloc.c
> +++ b/mm/vmalloc.c
> @@ -4575,20 +4575,20 @@ static size_t vmap_ram_vread_iter(struct iov_iter *iter, const char *addr,
>   * @count:        number of bytes to be read.
>   *
>   * This function checks that addr is a valid vmalloc'ed area, and
> - * copy data from that area to a given buffer. If the given memory range
> + * copy data from that area to a given iterator. If the given memory range

I'll sneak-edit this to read "copies data".

>   * of [addr...addr+count) includes some valid address, data is copied to
> - * proper area of @buf. If there are memory holes, they'll be zero-filled.
> + * proper area of @iter. If there are memory holes, they'll be zero-filled.
>   * IOREMAP area is treated as memory hole and no copy is done.
>   *
>   * If [addr...addr+count) doesn't includes any intersects with alive
> - * vm_struct area, returns 0. @buf should be kernel's buffer.
> + * vm_struct area, returns 0.
>   *
> - * Note: In usual ops, vread() is never necessary because the caller
> + * Note: In usual ops, vread_iter() is never necessary because the caller
>   * should know vmalloc() area is valid and can use memcpy().
>   * This is for routines which have to access vmalloc area without
>   * any information, as /proc/kcore.
>   *
> - * Return: number of bytes for which addr and buf should be increased
> + * Return: number of bytes for which addr and iter should be advanced
>   * (same number as @count) or %0 if [addr...addr+count) doesn't
>   * include any intersection with valid vmalloc area
>   */

Things like `addr' and `count' should be `@addr' and `@count', but
that's a differnt patch.  And we probably make this mistake in a
zillion other places.