Messages in this thread | | | Date | Tue, 13 May 2014 14:43:06 +0800 | From | Lai Jiangshan <> | Subject | Re: [PATCH 06/10 V2] workqueue: convert worker_idr to worker_ida |
| |
On 05/13/2014 05:40 AM, Tejun Heo wrote: > On Mon, May 12, 2014 at 02:56:18PM +0800, Lai Jiangshan wrote: >> @@ -1681,7 +1682,6 @@ static void worker_detach_from_pool(struct worker *worker, >> struct completion *detach_completion = NULL; >> >> mutex_lock(&pool->manager_mutex); >> - idr_remove(&pool->worker_idr, worker->id); >> list_del(&worker->node); >> if (list_empty(&pool->workers)) >> detach_completion = pool->detach_completion; > > Why are we moving ida removal to the caller here? Does
ida is for worker ID pool->workers list and worker_detach_from_pool() are for attaching/detaching
moving ida removal to the caller removes the unneeded coupling.
> worker_detach_from_pool() get used for something else later? Up until > this point, the distinction seems pretty arbitrary. > >> @@ -1757,8 +1754,6 @@ static struct worker *create_worker(struct worker_pool *pool) >> if (pool->flags & POOL_DISASSOCIATED) >> worker->flags |= WORKER_UNBOUND; >> >> - /* successful, commit the pointer to idr */ >> - idr_replace(&pool->worker_idr, worker, worker->id); > > Ah, the comment is removed altogether. Please disregard my previous > review on the comment. > > Thanks. >
| |