mm/slub.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-)
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.
Acked-by: Harry Yoo (Oracle) <harry@kernel.org>
Signed-off-by: Hao Li <hao.li@linux.dev>
---
Thanks Harry for good suggestion!
---
mm/slub.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/mm/slub.c b/mm/slub.c
index 4927407c9699..92362eeb13e5 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 have been replaced with a new one if more than
+ * sheaf->capacity objects are requested.
+ *
+ * Return: -ENOMEM on failure. Some objects might have been added to the sheaf
+ * but the sheaf will not be replaced.
*
* In practice we always refill to full sheaf's capacity.
*/
--
2.50.1
On 4/7/26 13:59, Hao Li wrote: > 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. > > Acked-by: Harry Yoo (Oracle) <harry@kernel.org> > Signed-off-by: Hao Li <hao.li@linux.dev> > --- > Thanks Harry for good suggestion! Thanks! Added to slab/for-next > --- > mm/slub.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/mm/slub.c b/mm/slub.c > index 4927407c9699..92362eeb13e5 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 have been replaced with a new one if more than > + * sheaf->capacity objects are requested. > + * > + * Return: -ENOMEM on failure. Some objects might have been added to the sheaf > + * but the sheaf will not be replaced. > * > * In practice we always refill to full sheaf's capacity. > */
© 2016 - 2026 Red Hat, Inc.