Messages in this thread | | | Date | Mon, 7 Nov 2022 19:41:05 +0900 | From | Akira Yokosawa <> | Subject | Duplicate kernel-doc comments for ksize() |
| |
Hi Kees,
"make htmldocs" reports duplicate C declaration of ksize() as follows:
/linux/Documentation/core-api/mm-api:43: ./mm/slab_common.c:1428: WARNING: Duplicate C declaration, also defined at core-api/mm-api:212. Declaration is '.. c:function:: size_t ksize (const void *objp)'.
This is due to the kernel-doc comment for ksize() added in include/linux/slab.h by a commit you have authored: 05a940656e1e ("slab:Introduce kmalloc_size_roundup()").
/** * ksize - Report actual allocation size of associated object * * @objp: Pointer returned from a prior kmalloc()-family allocation. * * This should not be used for writing beyond the originally requested * allocation size. Either use krealloc() or round up the allocation size * with kmalloc_size_roundup() prior to allocation. If this is used to * access beyond the originally requested allocation size, UBSAN_BOUNDS * and/or FORTIFY_SOURCE may trip, since they only know about the * originally allocated size via the __alloc_size attribute. */
There is another kernel-doc comment in mm/slab_common.c (originally by Manfred, since v2.6.14):
/** * ksize - get the actual amount of memory allocated for a given object * @objp: Pointer to the object * * kmalloc may internally round up allocations and return more memory * than requested. ksize() can be used to determine the actual amount of * memory allocated. The caller may use this additional memory, even though * a smaller amount of memory was initially specified with the kmalloc call. * The caller must guarantee that objp points to a valid object previously * allocated with either kmalloc() or kmem_cache_alloc(). The object * must not be freed during the duration of the call. * * Return: size of the actual memory used by @objp in bytes */
I guess the one in slab_common.c is outdated and can be removed. Can you please take care of it?
Thanks, Akira
| |