When running crypto test case, there is below calltrace because of
allocating memory with GFP_KERNEL parameter in atomic context.
Call trace:
......
__might_resched+0x154/0x1c0
 __might_sleep+0x54/0xa4
 __kmem_cache_alloc_node+0x434/0x594
 kmalloc_trace+0x54/0x140
 dpa_alloc_new+0x58/0x280
 qman_alloc_fqid_range+0x3c/0x4c
 qman_create_fq+0x6c/0x440
 create_caam_req_fq+0x88/0x170
 caam_drv_ctx_init+0x134/0x2d4
 get_drv_ctx.part.0+0xbc/0xdc
 aead_edesc_alloc+0x630/0x980
 aead_encrypt+0x38/0xc0
 crypto_aead_encrypt+0x2c/0x40
 test_aead_vec_cfg+0x234/0x84c
 test_aead+0xc4/0x160
 alg_test_aead+0x9c/0x1a0
 alg_test+0x380/0x540
 cryptomgr_test+0x34/0x54
......
To avoid this calltrace, replace GFP_KERNEL with GFP_ATOMIC.

Signed-off-by: Meng Li <meng...@windriver.com>
---
 drivers/staging/fsl_qbman/dpa_alloc.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/fsl_qbman/dpa_alloc.c 
b/drivers/staging/fsl_qbman/dpa_alloc.c
index e420ef73325a..f23bc11e30d2 100644
--- a/drivers/staging/fsl_qbman/dpa_alloc.c
+++ b/drivers/staging/fsl_qbman/dpa_alloc.c
@@ -447,16 +447,16 @@ int dpa_alloc_new(struct dpa_alloc *alloc, u32 *result, 
u32 count, u32 align,
        /* If 'align' is 0, it should behave as though it was 1 */
        if (!align)
                align = 1;
-       margin_left = kmalloc(sizeof(*margin_left), GFP_KERNEL);
+       margin_left = kmalloc(sizeof(*margin_left), GFP_ATOMIC);
        if (!margin_left)
                goto err;
-       margin_right = kmalloc(sizeof(*margin_right), GFP_KERNEL);
+       margin_right = kmalloc(sizeof(*margin_right), GFP_ATOMIC);
        if (!margin_right) {
                kfree(margin_left);
                goto err;
        }
        /* Add the allocation to the used list */
-       used_node = kmalloc(sizeof(*used_node), GFP_KERNEL);
+       used_node = kmalloc(sizeof(*used_node), GFP_ATOMIC);
        if (!used_node) {
                kfree(margin_right);
                kfree(margin_left);
-- 
2.34.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#13080): 
https://lists.yoctoproject.org/g/linux-yocto/message/13080
Mute This Topic: https://lists.yoctoproject.org/mt/101451577/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to