• Rasmus Villemoes's avatar
    soc: fsl: qe: drop broken lazy call of cpm_muram_init() · b6231ea2
    Rasmus Villemoes authored
    cpm_muram_alloc_common() tries to support a kind of lazy
    initialization - if the muram_pool has not been created yet, it calls
    cpm_muram_init(). Now, cpm_muram_alloc_common() is always called under
    
    	spin_lock_irqsave(&cpm_muram_lock, flags);
    
    and cpm_muram_init() does gen_pool_create() (which implies a
    GFP_KERNEL allocation) and ioremap(), not to mention the fun that
    ensues from cpm_muram_init() doing
    
    	spin_lock_init(&cpm_muram_lock);
    
    In other words, this has never worked, so nobody can have been relying
    on it.
    
    cpm_muram_init() is called from a subsys_initcall (either from
    cpm_init() in arch/powerpc/sysdev/cpm_common.c or, via qe_reset(),
    from qe_init() in drivers/soc/fsl/qe/qe.c).
    Reviewed-by: default avatarTimur Tabi <timur@kernel.org>
    Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
    Signed-off-by: default avatarLi Yang <leoyang.li@nxp.com>
    b6231ea2
qe_common.c 6.03 KB