DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] common/cnxk: fix Coverity issues
@ 2024-02-28  6:46 psatheesh
  2024-02-29 18:31 ` Jerin Jacob
  2024-03-01  3:35 ` [dpdk-dev] [PATCH v2 1/2] common/cnxk: remove dead code psatheesh
  0 siblings, 2 replies; 5+ messages in thread
From: psatheesh @ 2024-02-28  6:46 UTC (permalink / raw)
  To: Nithin Dabilpuram, Kiran Kumar K, Sunil Kumar Kori, Satha Rao,
	Jerin Jacob
  Cc: dev, Satheesh Paul, stable, Harman Kalra

From: Satheesh Paul <psatheesh@marvell.com>

Fix Out-of-bounds access and remove dead code
reported by Coverity.

Coverity issue: 384431, 384439, 380992
Fixes: 585bb3e538f9 ("common/cnxk: add VF support to base device class")
Fixes: da1ec39060b2 ("common/cnxk: delay inline device RQ enable to dev start")
Cc: stable@dpdk.org

Signed-off-by: Satheesh Paul <psatheesh@marvell.com>
Reviewed-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
Reviewed-by: Harman Kalra <hkalra@marvell.com>
---
 drivers/common/cnxk/roc_dev.c     | 2 ++
 drivers/common/cnxk/roc_nix_inl.c | 3 +--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/common/cnxk/roc_dev.c b/drivers/common/cnxk/roc_dev.c
index 084343c3b4..14aff233d5 100644
--- a/drivers/common/cnxk/roc_dev.c
+++ b/drivers/common/cnxk/roc_dev.c
@@ -502,6 +502,8 @@ pf_vf_mbox_send_up_msg(struct dev *dev, void *rec_msg)
 	size_t size;
 
 	size = PLT_ALIGN(mbox_id2size(msg->hdr.id), MBOX_MSG_ALIGN);
+	if (size < sizeof(struct mbox_msghdr))
+		return;
 	/* Send UP message to all VF's */
 	for (vf = 0; vf < vf_mbox->ndevs; vf++) {
 		/* VF active */
diff --git a/drivers/common/cnxk/roc_nix_inl.c b/drivers/common/cnxk/roc_nix_inl.c
index a205c658e9..7dbeae5017 100644
--- a/drivers/common/cnxk/roc_nix_inl.c
+++ b/drivers/common/cnxk/roc_nix_inl.c
@@ -677,8 +677,7 @@ roc_nix_reassembly_configure(uint32_t max_wait_time, uint16_t max_frags)
 		return -EFAULT;
 
 	PLT_SET_USED(max_frags);
-	if (idev == NULL)
-		return -ENOTSUP;
+
 	roc_cpt = idev->cpt;
 	if (!roc_cpt) {
 		plt_err("Cannot support inline inbound, cryptodev not probed");
-- 
2.39.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH] common/cnxk: fix Coverity issues
  2024-02-28  6:46 [dpdk-dev] [PATCH] common/cnxk: fix Coverity issues psatheesh
@ 2024-02-29 18:31 ` Jerin Jacob
  2024-03-01  3:35 ` [dpdk-dev] [PATCH v2 1/2] common/cnxk: remove dead code psatheesh
  1 sibling, 0 replies; 5+ messages in thread
From: Jerin Jacob @ 2024-02-29 18:31 UTC (permalink / raw)
  To: psatheesh
  Cc: Nithin Dabilpuram, Kiran Kumar K, Sunil Kumar Kori, Satha Rao,
	Jerin Jacob, dev, stable, Harman Kalra

On Wed, Feb 28, 2024 at 12:25 PM <psatheesh@marvell.com> wrote:
>
> From: Satheesh Paul <psatheesh@marvell.com>


Please change the subject "common/cnxk: fix Coverity issues" and align
on what is fixed and send as separate patches.



> Fix Out-of-bounds access and remove dead code
> reported by Coverity.
>
> Coverity issue: 384431, 384439, 380992
> Fixes: 585bb3e538f9 ("common/cnxk: add VF support to base device class")
> Fixes: da1ec39060b2 ("common/cnxk: delay inline device RQ enable to dev start")
> Cc: stable@dpdk.org
>
> Signed-off-by: Satheesh Paul <psatheesh@marvell.com>
> Reviewed-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
> Reviewed-by: Harman Kalra <hkalra@marvell.com>
> ---
>  drivers/common/cnxk/roc_dev.c     | 2 ++
>  drivers/common/cnxk/roc_nix_inl.c | 3 +--
>  2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/common/cnxk/roc_dev.c b/drivers/common/cnxk/roc_dev.c
> index 084343c3b4..14aff233d5 100644
> --- a/drivers/common/cnxk/roc_dev.c
> +++ b/drivers/common/cnxk/roc_dev.c
> @@ -502,6 +502,8 @@ pf_vf_mbox_send_up_msg(struct dev *dev, void *rec_msg)
>         size_t size;
>
>         size = PLT_ALIGN(mbox_id2size(msg->hdr.id), MBOX_MSG_ALIGN);
> +       if (size < sizeof(struct mbox_msghdr))
> +               return;
>         /* Send UP message to all VF's */
>         for (vf = 0; vf < vf_mbox->ndevs; vf++) {
>                 /* VF active */
> diff --git a/drivers/common/cnxk/roc_nix_inl.c b/drivers/common/cnxk/roc_nix_inl.c
> index a205c658e9..7dbeae5017 100644
> --- a/drivers/common/cnxk/roc_nix_inl.c
> +++ b/drivers/common/cnxk/roc_nix_inl.c
> @@ -677,8 +677,7 @@ roc_nix_reassembly_configure(uint32_t max_wait_time, uint16_t max_frags)
>                 return -EFAULT;
>
>         PLT_SET_USED(max_frags);
> -       if (idev == NULL)
> -               return -ENOTSUP;
> +
>         roc_cpt = idev->cpt;
>         if (!roc_cpt) {
>                 plt_err("Cannot support inline inbound, cryptodev not probed");
> --
> 2.39.2
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [dpdk-dev] [PATCH v2 1/2] common/cnxk: remove dead code
  2024-02-28  6:46 [dpdk-dev] [PATCH] common/cnxk: fix Coverity issues psatheesh
  2024-02-29 18:31 ` Jerin Jacob
@ 2024-03-01  3:35 ` psatheesh
  2024-03-01  3:35   ` [dpdk-dev] [PATCH v2 2/2] common/cnxk: fix possible out-of-bounds access psatheesh
  1 sibling, 1 reply; 5+ messages in thread
From: psatheesh @ 2024-03-01  3:35 UTC (permalink / raw)
  To: Nithin Dabilpuram, Kiran Kumar K, Sunil Kumar Kori, Satha Rao
  Cc: dev, Satheesh Paul, stable

From: Satheesh Paul <psatheesh@marvell.com>

Removed dead code reported by Coverity.

Coverity issue: 380992
Fixes: da1ec39060b2 ("common/cnxk: delay inline device RQ enable to dev start")
Cc: stable@dpdk.org

Signed-off-by: Satheesh Paul <psatheesh@marvell.com>
Reviewed-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
---
v2:
* Split the patch and updated commit message.

 drivers/common/cnxk/roc_nix_inl.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/common/cnxk/roc_nix_inl.c b/drivers/common/cnxk/roc_nix_inl.c
index a205c658e9..7dbeae5017 100644
--- a/drivers/common/cnxk/roc_nix_inl.c
+++ b/drivers/common/cnxk/roc_nix_inl.c
@@ -677,8 +677,7 @@ roc_nix_reassembly_configure(uint32_t max_wait_time, uint16_t max_frags)
 		return -EFAULT;
 
 	PLT_SET_USED(max_frags);
-	if (idev == NULL)
-		return -ENOTSUP;
+
 	roc_cpt = idev->cpt;
 	if (!roc_cpt) {
 		plt_err("Cannot support inline inbound, cryptodev not probed");
-- 
2.39.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [dpdk-dev] [PATCH v2 2/2] common/cnxk: fix possible out-of-bounds access
  2024-03-01  3:35 ` [dpdk-dev] [PATCH v2 1/2] common/cnxk: remove dead code psatheesh
@ 2024-03-01  3:35   ` psatheesh
  2024-03-03 15:16     ` Jerin Jacob
  0 siblings, 1 reply; 5+ messages in thread
From: psatheesh @ 2024-03-01  3:35 UTC (permalink / raw)
  To: Nithin Dabilpuram, Kiran Kumar K, Sunil Kumar Kori, Satha Rao,
	Jerin Jacob
  Cc: dev, Satheesh Paul, stable, Harman Kalra

From: Satheesh Paul <psatheesh@marvell.com>

The subtraction expression in mbox_memcpy() can wrap around
causing an out-of-bounds access. Added a check on 'size' to
fix this.

Coverity issue: 384431, 384439
Fixes: 585bb3e538f9 ("common/cnxk: add VF support to base device class")
Cc: stable@dpdk.org

Signed-off-by: Satheesh Paul <psatheesh@marvell.com>
Reviewed-by: Harman Kalra <hkalra@marvell.com>
---
 drivers/common/cnxk/roc_dev.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/common/cnxk/roc_dev.c b/drivers/common/cnxk/roc_dev.c
index 084343c3b4..14aff233d5 100644
--- a/drivers/common/cnxk/roc_dev.c
+++ b/drivers/common/cnxk/roc_dev.c
@@ -502,6 +502,8 @@ pf_vf_mbox_send_up_msg(struct dev *dev, void *rec_msg)
 	size_t size;
 
 	size = PLT_ALIGN(mbox_id2size(msg->hdr.id), MBOX_MSG_ALIGN);
+	if (size < sizeof(struct mbox_msghdr))
+		return;
 	/* Send UP message to all VF's */
 	for (vf = 0; vf < vf_mbox->ndevs; vf++) {
 		/* VF active */
-- 
2.39.2


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [dpdk-dev] [PATCH v2 2/2] common/cnxk: fix possible out-of-bounds access
  2024-03-01  3:35   ` [dpdk-dev] [PATCH v2 2/2] common/cnxk: fix possible out-of-bounds access psatheesh
@ 2024-03-03 15:16     ` Jerin Jacob
  0 siblings, 0 replies; 5+ messages in thread
From: Jerin Jacob @ 2024-03-03 15:16 UTC (permalink / raw)
  To: psatheesh
  Cc: Nithin Dabilpuram, Kiran Kumar K, Sunil Kumar Kori, Satha Rao,
	Jerin Jacob, dev, stable, Harman Kalra

On Fri, Mar 1, 2024 at 9:05 AM <psatheesh@marvell.com> wrote:
>
> From: Satheesh Paul <psatheesh@marvell.com>
>
> The subtraction expression in mbox_memcpy() can wrap around
> causing an out-of-bounds access. Added a check on 'size' to
> fix this.
>
> Coverity issue: 384431, 384439
> Fixes: 585bb3e538f9 ("common/cnxk: add VF support to base device class")
> Cc: stable@dpdk.org
>
> Signed-off-by: Satheesh Paul <psatheesh@marvell.com>
> Reviewed-by: Harman Kalra <hkalra@marvell.com>


Series applied to dpdk-next-net-mrvl/for-main. Thanks

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-03-03 15:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-28  6:46 [dpdk-dev] [PATCH] common/cnxk: fix Coverity issues psatheesh
2024-02-29 18:31 ` Jerin Jacob
2024-03-01  3:35 ` [dpdk-dev] [PATCH v2 1/2] common/cnxk: remove dead code psatheesh
2024-03-01  3:35   ` [dpdk-dev] [PATCH v2 2/2] common/cnxk: fix possible out-of-bounds access psatheesh
2024-03-03 15:16     ` Jerin Jacob

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).