Patch "RDMA/bnxt_re: Fix the page details for the srq created by kernel consumers" has been added to the 6.12-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    RDMA/bnxt_re: Fix the page details for the srq created by kernel consumers

to the 6.12-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     rdma-bnxt_re-fix-the-page-details-for-the-srq-create.patch
and it can be found in the queue-6.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 31f2ff0cf1c5833c4108a64066c93f84038c154e
Author: Kashyap Desai <kashyap.desai@xxxxxxxxxxxx>
Date:   Sat Feb 22 07:20:21 2025 -0800

    RDMA/bnxt_re: Fix the page details for the srq created by kernel consumers
    
    [ Upstream commit b66535356a4834a234f99e16a97eb51f2c6c5a7d ]
    
    While using nvme target with use_srq on, below kernel panic is noticed.
    
    [  549.698111] bnxt_en 0000:41:00.0 enp65s0np0: FEC autoneg off encoding: Clause 91 RS(544,514)
    [  566.393619] Oops: divide error: 0000 [#1] PREEMPT SMP NOPTI
    ..
    [  566.393799]  <TASK>
    [  566.393807]  ? __die_body+0x1a/0x60
    [  566.393823]  ? die+0x38/0x60
    [  566.393835]  ? do_trap+0xe4/0x110
    [  566.393847]  ? bnxt_qplib_alloc_init_hwq+0x1d4/0x580 [bnxt_re]
    [  566.393867]  ? bnxt_qplib_alloc_init_hwq+0x1d4/0x580 [bnxt_re]
    [  566.393881]  ? do_error_trap+0x7c/0x120
    [  566.393890]  ? bnxt_qplib_alloc_init_hwq+0x1d4/0x580 [bnxt_re]
    [  566.393911]  ? exc_divide_error+0x34/0x50
    [  566.393923]  ? bnxt_qplib_alloc_init_hwq+0x1d4/0x580 [bnxt_re]
    [  566.393939]  ? asm_exc_divide_error+0x16/0x20
    [  566.393966]  ? bnxt_qplib_alloc_init_hwq+0x1d4/0x580 [bnxt_re]
    [  566.393997]  bnxt_qplib_create_srq+0xc9/0x340 [bnxt_re]
    [  566.394040]  bnxt_re_create_srq+0x335/0x3b0 [bnxt_re]
    [  566.394057]  ? srso_return_thunk+0x5/0x5f
    [  566.394068]  ? __init_swait_queue_head+0x4a/0x60
    [  566.394090]  ib_create_srq_user+0xa7/0x150 [ib_core]
    [  566.394147]  nvmet_rdma_queue_connect+0x7d0/0xbe0 [nvmet_rdma]
    [  566.394174]  ? lock_release+0x22c/0x3f0
    [  566.394187]  ? srso_return_thunk+0x5/0x5f
    
    Page size and shift info is set only for the user space SRQs.
    Set page size and page shift for kernel space SRQs also.
    
    Fixes: 0c4dcd602817 ("RDMA/bnxt_re: Refactor hardware queue memory allocation")
    Signed-off-by: Kashyap Desai <kashyap.desai@xxxxxxxxxxxx>
    Signed-off-by: Selvin Xavier <selvin.xavier@xxxxxxxxxxxx>
    Link: https://patch.msgid.link/1740237621-29291-1-git-send-email-selvin.xavier@xxxxxxxxxxxx
    Signed-off-by: Leon Romanovsky <leon@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/infiniband/hw/bnxt_re/ib_verbs.c b/drivers/infiniband/hw/bnxt_re/ib_verbs.c
index 13c1563c2da62..0b21d8b5d9629 100644
--- a/drivers/infiniband/hw/bnxt_re/ib_verbs.c
+++ b/drivers/infiniband/hw/bnxt_re/ib_verbs.c
@@ -1815,6 +1815,8 @@ int bnxt_re_create_srq(struct ib_srq *ib_srq,
 	srq->qplib_srq.threshold = srq_init_attr->attr.srq_limit;
 	srq->srq_limit = srq_init_attr->attr.srq_limit;
 	srq->qplib_srq.eventq_hw_ring_id = rdev->nqr->nq[0].ring_id;
+	srq->qplib_srq.sg_info.pgsize = PAGE_SIZE;
+	srq->qplib_srq.sg_info.pgshft = PAGE_SHIFT;
 	nq = &rdev->nqr->nq[0];
 
 	if (udata) {




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux