• Alexander Sverdlin's avatar
    crypto: qat - Silence smp_processor_id() warning · 9349108a
    Alexander Sverdlin authored
    commit 1b82feb6 upstream.
    
    It seems that smp_processor_id() is only used for a best-effort
    load-balancing, refer to qat_crypto_get_instance_node(). It's not feasible
    to disable preemption for the duration of the crypto requests. Therefore,
    just silence the warning. This commit is similar to e7a9b05c
    ("crypto: cavium - Fix smp_processor_id() warnings").
    
    Silences the following splat:
    BUG: using smp_processor_id() in preemptible [00000000] code: cryptomgr_test/2904
    caller is qat_alg_ablkcipher_setkey+0x300/0x4a0 [intel_qat]
    CPU: 1 PID: 2904 Comm: cryptomgr_test Tainted: P           O    4.14.69 #1
    ...
    Call Trace:
     dump_stack+0x5f/0x86
     check_preemption_disabled+0xd3/0xe0
     qat_alg_ablkcipher_setkey+0x300/0x4a0 [intel_qat]
     skcipher_setkey_ablkcipher+0x2b/0x40
     __test_skcipher+0x1f3/0xb20
     ? cpumask_next_and+0x26/0x40
     ? find_busiest_group+0x10e/0x9d0
     ? preempt_count_add+0x49/0xa0
     ? try_module_get+0x61/0xf0
     ? crypto_mod_get+0x15/0x30
     ? __kmalloc+0x1df/0x1f0
     ? __crypto_alloc_tfm+0x116/0x180
     ? crypto_skcipher_init_tfm+0xa6/0x180
     ? crypto_create_tfm+0x4b/0xf0
     test_skcipher+0x21/0xa0
     alg_test_skcipher+0x3f/0xa0
     alg_test.part.6+0x126/0x2a0
     ? finish_task_switch+0x21b/0x260
     ? __schedule+0x1e9/0x800
     ? __wake_up_common+0x8d/0x140
     cryptomgr_test+0x40/0x50
     kthread+0xff/0x130
     ? cryptomgr_notify+0x540/0x540
     ? kthread_create_on_node+0x70/0x70
     ret_from_fork+0x24/0x50
    
    Fixes: ed8ccaef ("crypto: qat - Add support for SRIOV")
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarAlexander Sverdlin <alexander.sverdlin@nokia.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    9349108a
adf_common_drv.h 11.1 KB