In the in-place refill case, some objects may already have been added before the function returns -ENOMEM. Clarify this behavior and polish the rest of the comment for readability. Signed-off-by: Hao Li --- Thanks Harry for suggestions on v1! --- mm/slub.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/mm/slub.c b/mm/slub.c index 4927407c9699..a45eb1bd2ce5 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -5120,12 +5120,15 @@ void kmem_cache_return_sheaf(struct kmem_cache *s, gfp_t gfp, } /* - * refill a sheaf previously returned by kmem_cache_prefill_sheaf to at least - * the given size + * Refill a sheaf previously returned by kmem_cache_prefill_sheaf to at least + * the given size. * - * the sheaf might be replaced by a new one when requesting more than - * s->sheaf_capacity objects if such replacement is necessary, but the refill - * fails (returning -ENOMEM), the existing sheaf is left intact + * Return: 0 on success. The sheaf will contain at least @size objects. + * The sheaf might be replaced with a new one if more than sheaf->capacity + * objects are requested. + * + * Return: -ENOMEM on failure. The refill might partially fill the existing + * sheaf or leave it unchanged, but it will not replace the existing sheaf. * * In practice we always refill to full sheaf's capacity. */ -- 2.50.1