raw/octeontx2_dma: fix unavailable PCI device in dpivf

Message ID 20210409075922.122787-1-radhac@marvell.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series raw/octeontx2_dma: fix unavailable PCI device in dpivf |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS

Commit Message

Radha Chintakuntla April 9, 2021, 7:59 a.m. UTC
  The PCI device address is being used for sending mailbox which was
introduced in previous commit which replaced the macros so that
multiple DPI blocks in the hardware can be supported.

This patch fixes a NULL pointer access by assigning the PCI device
structure to dpivf.

Fixes: 4495bd887d38 ("raw/octeontx2_dma: support multiple DPI blocks")

Signed-off-by: Radha Mohan Chintakuntla <radhac@marvell.com>
---
 drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Radha Mohan April 9, 2021, 8:07 a.m. UTC | #1
On Fri, Apr 9, 2021 at 1:29 PM Radha Mohan Chintakuntla
<radhac@marvell.com> wrote:
>
> The PCI device address is being used for sending mailbox which was
> introduced in previous commit which replaced the macros so that
> multiple DPI blocks in the hardware can be supported.
>
> This patch fixes a NULL pointer access by assigning the PCI device
> structure to dpivf.
>
> Fixes: 4495bd887d38 ("raw/octeontx2_dma: support multiple DPI blocks")
>
> Signed-off-by: Radha Mohan Chintakuntla <radhac@marvell.com>
> ---
>  drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c b/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
> index efdba2779b..8c01f25ec7 100644
> --- a/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
> +++ b/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
> @@ -389,6 +389,7 @@ otx2_dpi_rawdev_probe(struct rte_pci_driver *pci_drv __rte_unused,
>         vf_id = ((pci_dev->addr.devid & 0x1F) << 3) |
>                  (pci_dev->addr.function & 0x7);
>         vf_id -= 1;
> +       dpivf->dev = pci_dev;
>         dpivf->state = DPI_QUEUE_START;
>         dpivf->vf_id = vf_id;
>         dpivf->vf_bar0 = (uintptr_t)pci_dev->mem_resource[0].addr;
> --
> 2.24.1

I sent another with proper subject patch version. Please ignore this.
  

Patch

diff --git a/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c b/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
index efdba2779b..8c01f25ec7 100644
--- a/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
+++ b/drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c
@@ -389,6 +389,7 @@  otx2_dpi_rawdev_probe(struct rte_pci_driver *pci_drv __rte_unused,
 	vf_id = ((pci_dev->addr.devid & 0x1F) << 3) |
 		 (pci_dev->addr.function & 0x7);
 	vf_id -= 1;
+	dpivf->dev = pci_dev;
 	dpivf->state = DPI_QUEUE_START;
 	dpivf->vf_id = vf_id;
 	dpivf->vf_bar0 = (uintptr_t)pci_dev->mem_resource[0].addr;