On Fri, Dec 12, 2014 at 06:19:55PM +0800, Lai Jiangshan wrote:
...
>  fail:
> -     if (id >= 0)
> -             ida_simple_remove(&pool->worker_ida, id);
> +     if (node != NUMA_NO_NODE) {
> +             node = NUMA_NO_NODE;
> +             goto again;
> +     }
> +     ida_simple_remove(&pool->worker_ida, id);

The retry seems too general for the problem case it's trying to solve.
Can we interlock it properly with node offline event?  On node
offline, grab pool_mutex and clear all pool->node's which match the
node which is going down and take it off circulation.

Thanks.

-- 
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to