• Somnath Kotur's avatar
    bnxt_en: Fix double DMA unmapping for XDP_REDIRECT · 8baeef76
    Somnath Kotur authored
    Remove the dma_unmap_page_attrs() call in the driver's XDP_REDIRECT
    code path.  This should have been removed when we let the page pool
    handle the DMA mapping.  This bug causes the warning:
    
    WARNING: CPU: 7 PID: 59 at drivers/iommu/dma-iommu.c:1198 iommu_dma_unmap_page+0xd5/0x100
    CPU: 7 PID: 59 Comm: ksoftirqd/7 Tainted: G        W          6.8.0-1010-gcp #11-Ubuntu
    Hardware name: Dell Inc. PowerEdge R7525/0PYVT1, BIOS 2.15.2 04/02/2024
    RIP: 0010:iommu_dma_unmap_page+0xd5/0x100
    Code: 89 ee 48 89 df e8 cb f2 69 ff 48 83 c4 08 5b 41 5c 41 5d 41 5e 41 5f 5d 31 c0 31 d2 31 c9 31 f6 31 ff 45 31 c0 e9 ab 17 71 00 <0f> 0b 48 83 c4 08 5b 41 5c 41 5d 41 5e 41 5f 5d 31 c0 31 d2 31 c9
    RSP: 0018:ffffab1fc0597a48 EFLAGS: 00010246
    RAX: 0000000000000000 RBX: ffff99ff838280c8 RCX: 0000000000000000
    RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
    RBP: ffffab1fc0597a78 R08: 0000000000000002 R09: ffffab1fc0597c1c
    R10: ffffab1fc0597cd3 R11: ffff99ffe375acd8 R12: 00000000e65b9000
    R13: 0000000000000050 R14: 0000000000001000 R15: 0000000000000002
    FS:  0000000000000000(0000) GS:ffff9a06efb80000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 0000565c34c37210 CR3: 00000005c7e3e000 CR4: 0000000000350ef0
    ? show_regs+0x6d/0x80
    ? __warn+0x89/0x150
    ? iommu_dma_unmap_page+0xd5/0x100
    ? report_bug+0x16a/0x190
    ? handle_bug+0x51/0xa0
    ? exc_invalid_op+0x18/0x80
    ? iommu_dma_unmap_page+0xd5/0x100
    ? iommu_dma_unmap_page+0x35/0x100
    dma_unmap_page_attrs+0x55/0x220
    ? bpf_prog_4d7e87c0d30db711_xdp_dispatcher+0x64/0x9f
    bnxt_rx_xdp+0x237/0x520 [bnxt_en]
    bnxt_rx_pkt+0x640/0xdd0 [bnxt_en]
    __bnxt_poll_work+0x1a1/0x3d0 [bnxt_en]
    bnxt_poll+0xaa/0x1e0 [bnxt_en]
    __napi_poll+0x33/0x1e0
    net_rx_action+0x18a/0x2f0
    
    Fixes: 578fcfd2 ("bnxt_en: Let the page pool manage the DMA mapping")
    Reviewed-by: default avatarAndy Gospodarek <andrew.gospodarek@broadcom.com>
    Reviewed-by: default avatarKalesh AP <kalesh-anakkur.purayil@broadcom.com>
    Signed-off-by: default avatarSomnath Kotur <somnath.kotur@broadcom.com>
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Reviewed-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Link: https://patch.msgid.link/20240820203415.168178-1-michael.chan@broadcom.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    8baeef76
bnxt_xdp.c 12.2 KB