• Daniel Jordan's avatar
    padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible · cc491d8e
    Daniel Jordan authored
    With pcrypt's cpumask no longer used, take the CPU hotplug lock inside
    padata_alloc_possible.
    
    Useful later in the series for avoiding nested acquisition of the CPU
    hotplug lock in padata when padata_alloc_possible is allocating an
    unbound workqueue.
    
    Without this patch, this nested acquisition would happen later in the
    series:
    
          pcrypt_init_padata
            get_online_cpus
            alloc_padata_possible
              alloc_padata
                alloc_workqueue(WQ_UNBOUND)   // later in the series
                  alloc_and_link_pwqs
                    apply_wqattrs_lock
                      get_online_cpus         // recursive rwsem acquisition
    Signed-off-by: default avatarDaniel Jordan <daniel.m.jordan@oracle.com>
    Acked-by: default avatarSteffen Klassert <steffen.klassert@secunet.com>
    Cc: Herbert Xu <herbert@gondor.apana.org.au>
    Cc: Lai Jiangshan <jiangshanlai@gmail.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Tejun Heo <tj@kernel.org>
    Cc: linux-crypto@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    cc491d8e
pcrypt.c 9.08 KB