2013-08-16 05:34:05

by Li Bin

[permalink] [raw]
Subject: [PATCH] workqueue: Fix manage_workers() RETURNS description

No functional change. The comment of function manage_workers()
RETURNS description is obvious wrong, same as the CONTEXT.
Fix it.

Signed-off-by: Libin <[email protected]>
---
kernel/workqueue.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index 7f5d4be..e8ee7a4 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -2033,8 +2033,8 @@ static bool maybe_destroy_workers(struct worker_pool *pool)
* multiple times. Does GFP_KERNEL allocations.
*
* RETURNS:
- * spin_lock_irq(pool->lock) which may be released and regrabbed
- * multiple times. Does GFP_KERNEL allocations.
+ * %false if the poll don't need management and the caller can safely
+ * start processing works, %true otherwise.
*/
static bool manage_workers(struct worker *worker)
{
--
1.8.2.1


2013-08-16 14:46:17

by Tejun Heo

[permalink] [raw]
Subject: Re: [PATCH] workqueue: Fix manage_workers() RETURNS description

On Fri, Aug 16, 2013 at 01:33:35PM +0800, Libin wrote:
> @@ -2033,8 +2033,8 @@ static bool maybe_destroy_workers(struct worker_pool *pool)
> * multiple times. Does GFP_KERNEL allocations.
> *
> * RETURNS:
> - * spin_lock_irq(pool->lock) which may be released and regrabbed
> - * multiple times. Does GFP_KERNEL allocations.
> + * %false if the poll don't need management and the caller can safely
^
typo

> + * start processing works, %true otherwise.

So, %true indicates that the function released pool->lock and
reacquired it to perform some management function and that the
conditions that the caller verified while holding the lock before
calling the function might no longer be true.

Can you please update the patch accordingly?

Thanks.

--
tejun