Re: [PATCH 1/9] mempool: update kerneldoc comments

Vlastimil Babka
2025-11-05T14:02:18Z

On 10/31/25 10:34, Christoph Hellwig wrote:
> Use proper formatting, use full sentences and reduce some verbosity in
> function parameter descriptions.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> ---
> mm/mempool.c | 36 +++++++++++++++++-------------------
> 1 file changed, 17 insertions(+), 19 deletions(-)
>
> diff --git a/mm/mempool.c b/mm/mempool.c
> index 1c38e873e546..d7c55a98c2be 100644
> --- a/mm/mempool.c
> +++ b/mm/mempool.c
> @@ -372,18 +372,15 @@ int mempool_resize(mempool_t *pool, int new_min_nr)
> EXPORT_SYMBOL(mempool_resize);
>
> /**
> - * 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.
> + * mempool_alloc - allocate an element from a memory pool
> + * @pool: pointer to the memory pool
> + * @gfp_mask: GFP_* flags.
> *
> - * this function only sleeps if the alloc_fn() function sleeps or
> - * returns NULL. Note that due to preallocation, this function
> - * *never* fails when called from process contexts. (it might
> - * fail if called from an IRQ context.)

Why remove this part? Isn't it the most important behavior of mempools?

> - * Note: using __GFP_ZERO is not supported.
> + * Note: This function only sleeps if the alloc_fn callback sleeps or returns
> + * %NULL. Using __GFP_ZERO is not supported.
> *
> - * Return: pointer to the allocated element or %NULL on error.
> + * Return: pointer to the allocated element or %NULL on error. This function
> + * never returns %NULL when @gfp_mask allows sleeping.
> */
> void *mempool_alloc_noprof(mempool_t *pool, gfp_t gfp_mask)
> {
> @@ -456,11 +453,10 @@ EXPORT_SYMBOL(mempool_alloc_noprof);
>
> /**
> * mempool_alloc_preallocated - allocate an element from preallocated elements
> - * belonging to a specific memory pool
> - * @pool: pointer to the memory pool which was allocated via
> - * mempool_create().
> + * belonging to a memory pool
> + * @pool: pointer to the memory pool
> *
> - * This function is similar to mempool_alloc, but it only attempts allocating
> + * This function is similar to mempool_alloc(), but it only attempts allocating
> * an element from the preallocated elements. It does not sleep and immediately
> * returns if no preallocated elements are available.
> *
> @@ -492,12 +488,14 @@ void *mempool_alloc_preallocated(mempool_t *pool)
> EXPORT_SYMBOL(mempool_alloc_preallocated);
>
> /**
> - * mempool_free - return an element to the pool.
> - * @element: pool element pointer.
> - * @pool: pointer to the memory pool which was allocated via
> - * mempool_create().
> + * mempool_free - return an element to a mempool
> + * @element: pointer to element
> + * @pool: pointer to the memory pool
> + *
> + * Returns @elem to @pool if its needs replenishing, else free it using
> + * the free_fn callback in @pool.
> *
> - * this function only sleeps if the free_fn() function sleeps.
> + * This function only sleeps if the free_fn callback sleeps.
> */
> void mempool_free(void *element, mempool_t *pool)
> {