dpaa2-switch: fix size of the dma_unmap
authorIoana Ciornei <ioana.ciornei@nxp.com>
Tue, 12 Dec 2023 16:43:25 +0000 (18:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Dec 2023 16:01:50 +0000 (17:01 +0100)
[ Upstream commit 2aad7d4189a923b24efa8ea6ad09059882b1bfe4 ]

The size of the DMA unmap was wrongly put as a sizeof of a pointer.
Change the value of the DMA unmap to be the actual macro used for the
allocation and the DMA map.

Fixes: 1110318d83e8 ("dpaa2-switch: add tc flower hardware offload on ingress traffic")
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Link: https://lore.kernel.org/r/20231212164326.2753457-2-ioana.ciornei@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/freescale/dpaa2/dpaa2-switch-flower.c

index 4798fb7..b6a534a 100644 (file)
@@ -139,7 +139,8 @@ int dpaa2_switch_acl_entry_add(struct dpaa2_switch_filter_block *filter_block,
        err = dpsw_acl_add_entry(ethsw->mc_io, 0, ethsw->dpsw_handle,
                                 filter_block->acl_id, acl_entry_cfg);
 
-       dma_unmap_single(dev, acl_entry_cfg->key_iova, sizeof(cmd_buff),
+       dma_unmap_single(dev, acl_entry_cfg->key_iova,
+                        DPAA2_ETHSW_PORT_ACL_CMD_BUF_SIZE,
                         DMA_TO_DEVICE);
        if (err) {
                dev_err(dev, "dpsw_acl_add_entry() failed %d\n", err);
@@ -181,8 +182,8 @@ dpaa2_switch_acl_entry_remove(struct dpaa2_switch_filter_block *block,
        err = dpsw_acl_remove_entry(ethsw->mc_io, 0, ethsw->dpsw_handle,
                                    block->acl_id, acl_entry_cfg);
 
-       dma_unmap_single(dev, acl_entry_cfg->key_iova, sizeof(cmd_buff),
-                        DMA_TO_DEVICE);
+       dma_unmap_single(dev, acl_entry_cfg->key_iova,
+                        DPAA2_ETHSW_PORT_ACL_CMD_BUF_SIZE, DMA_TO_DEVICE);
        if (err) {
                dev_err(dev, "dpsw_acl_remove_entry() failed %d\n", err);
                kfree(cmd_buff);