I need to look more at the genpool code, but I thought I'd ask too.
Yazen,
gen_pool_add_owner() is the code that adds an extra chunk to an existing genpool.
This bit doesn't look obviously safe against a #MC at the wrong moment in the middle of
the list_add_rcu()
spin_lock(&pool->lock);
list_add_rcu(&chunk->next_chunk, &pool->chunks);
spin_unlock(&pool->lock);