• Meng Li's avatar
    crypto: caam - replace this_cpu_ptr with raw_cpu_ptr · efd21e10
    Meng Li authored
    When enable the kernel debug config, there is below calltrace detected:
    BUG: using smp_processor_id() in preemptible [00000000] code: cryptomgr_test/339
    caller is debug_smp_processor_id+0x20/0x30
    CPU: 9 PID: 339 Comm: cryptomgr_test Not tainted 5.10.63-yocto-standard #1
    Hardware name: NXP Layerscape LX2160ARDB (DT)
    Call trace:
     dump_backtrace+0x0/0x1a0
     show_stack+0x24/0x30
     dump_stack+0xf0/0x13c
     check_preemption_disabled+0x100/0x110
     debug_smp_processor_id+0x20/0x30
     dpaa2_caam_enqueue+0x10c/0x25c
     ......
     cryptomgr_test+0x38/0x60
     kthread+0x158/0x164
     ret_from_fork+0x10/0x38
    According to the comment in commit ac5d15b4("crypto: caam/qi2
     - use affine DPIOs "), because preemption is no longer disabled
    while trying to enqueue an FQID, it might be possible to run the
    enqueue on a different CPU(due to migration, when in process context),
    however this wouldn't be a functionality issue. But there will be
    above calltrace when enable kernel debug config. So, replace this_cpu_ptr
    with raw_cpu_ptr to avoid above call trace.
    
    Fixes: ac5d15b4 ("crypto: caam/qi2 - use affine DPIOs")
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarMeng Li <Meng.Li@windriver.com>
    Reviewed-by: default avatarHoria Geantă <horia.geanta@nxp.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    efd21e10
caamalg_qi2.c 149 KB