The documentation of that function promises to never sleep. However on PREEMPT_RT a spinlock_t might in fact sleep. Reword the documentation so users can predict its behavior better. mempool could also replace spinlock_t with raw_spinlock_t which doesn't sleep even on PREEMPT_RT but that would take away the improved preemptibility of sleeping locks. Signed-off-by: Thomas Weißschuh --- mm/mempool.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/mempool.c b/mm/mempool.c index 1c38e873e546fadcc594f041874eb42774e3df16..cceb09b75ebe35f263a5fb95ff6d400221ecbdd5 100644 --- a/mm/mempool.c +++ b/mm/mempool.c @@ -461,8 +461,8 @@ EXPORT_SYMBOL(mempool_alloc_noprof); * mempool_create(). * * 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. + * an element from the preallocated elements. It only takes a single spinlock_t + * and immediately returns if no preallocated elements are available. * * Return: pointer to the allocated element or %NULL if no elements are * available. --- base-commit: 3a8660878839faadb4f1a6dd72c3179c1df56787 change-id: 20251014-mempool-doc-625dd4996110 Best regards, -- Thomas Weißschuh