From: vanshika.shukla@nxp.com
To: dev@dpdk.org, Hemant Agrawal <hemant.agrawal@nxp.com>,
Sachin Saxena <sachin.saxena@nxp.com>,
Nipun Gupta <nipun.gupta@amd.com>,
Roy Pledge <roy.pledge@nxp.com>,
Youri Querry <youri.querry_1@nxp.com>
Cc: stable@dpdk.org, Rohit Raj <rohit.raj@nxp.com>
Subject: [v5 19/42] bus/fslmc: fix coverity issue
Date: Wed, 23 Oct 2024 17:29:32 +0530 [thread overview]
Message-ID: <20241023115955.1207617-20-vanshika.shukla@nxp.com> (raw)
In-Reply-To: <20241023115955.1207617-1-vanshika.shukla@nxp.com>
From: Rohit Raj <rohit.raj@nxp.com>
Fix Issues reported by NXP Internal Coverity.
Fixes: 64f131a82fbe ("bus/fslmc: add qbman debug")
Cc: hemant.agrawal@nxp.com
Cc: stable@dpdk.org
Signed-off-by: Rohit Raj <rohit.raj@nxp.com>
---
drivers/bus/fslmc/qbman/qbman_debug.c | 49 +++++++++++++++++----------
1 file changed, 32 insertions(+), 17 deletions(-)
diff --git a/drivers/bus/fslmc/qbman/qbman_debug.c b/drivers/bus/fslmc/qbman/qbman_debug.c
index eea06988ff..0e471ec3fd 100644
--- a/drivers/bus/fslmc/qbman/qbman_debug.c
+++ b/drivers/bus/fslmc/qbman/qbman_debug.c
@@ -1,6 +1,6 @@
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright (C) 2015 Freescale Semiconductor, Inc.
- * Copyright 2018-2020 NXP
+ * Copyright 2018-2020,2022 NXP
*/
#include "compat.h"
@@ -37,6 +37,7 @@ int qbman_bp_query(struct qbman_swp *s, uint32_t bpid,
struct qbman_bp_query_rslt *r)
{
struct qbman_bp_query_desc *p;
+ struct qbman_bp_query_rslt *bp_query_rslt;
/* Start the management command */
p = (struct qbman_bp_query_desc *)qbman_swp_mc_start(s);
@@ -47,14 +48,16 @@ int qbman_bp_query(struct qbman_swp *s, uint32_t bpid,
p->bpid = bpid;
/* Complete the management command */
- *r = *(struct qbman_bp_query_rslt *)qbman_swp_mc_complete(s, p,
- QBMAN_BP_QUERY);
- if (!r) {
+ bp_query_rslt = (struct qbman_bp_query_rslt *)qbman_swp_mc_complete(s,
+ p, QBMAN_BP_QUERY);
+ if (!bp_query_rslt) {
pr_err("qbman: Query BPID %d failed, no response\n",
bpid);
return -EIO;
}
+ *r = *bp_query_rslt;
+
/* Decode the outcome */
QBMAN_BUG_ON((r->verb & QBMAN_RESPONSE_VERB_MASK) != QBMAN_BP_QUERY);
@@ -202,20 +205,23 @@ int qbman_fq_query(struct qbman_swp *s, uint32_t fqid,
struct qbman_fq_query_rslt *r)
{
struct qbman_fq_query_desc *p;
+ struct qbman_fq_query_rslt *fq_query_rslt;
p = (struct qbman_fq_query_desc *)qbman_swp_mc_start(s);
if (!p)
return -EBUSY;
p->fqid = fqid;
- *r = *(struct qbman_fq_query_rslt *)qbman_swp_mc_complete(s, p,
- QBMAN_FQ_QUERY);
- if (!r) {
+ fq_query_rslt = (struct qbman_fq_query_rslt *)qbman_swp_mc_complete(s,
+ p, QBMAN_FQ_QUERY);
+ if (!fq_query_rslt) {
pr_err("qbman: Query FQID %d failed, no response\n",
fqid);
return -EIO;
}
+ *r = *fq_query_rslt;
+
/* Decode the outcome */
QBMAN_BUG_ON((r->verb & QBMAN_RESPONSE_VERB_MASK) != QBMAN_FQ_QUERY);
@@ -398,20 +404,23 @@ int qbman_cgr_query(struct qbman_swp *s, uint32_t cgid,
struct qbman_cgr_query_rslt *r)
{
struct qbman_cgr_query_desc *p;
+ struct qbman_cgr_query_rslt *cgr_query_rslt;
p = (struct qbman_cgr_query_desc *)qbman_swp_mc_start(s);
if (!p)
return -EBUSY;
p->cgid = cgid;
- *r = *(struct qbman_cgr_query_rslt *)qbman_swp_mc_complete(s, p,
- QBMAN_CGR_QUERY);
- if (!r) {
+ cgr_query_rslt = (struct qbman_cgr_query_rslt *)qbman_swp_mc_complete(s,
+ p, QBMAN_CGR_QUERY);
+ if (!cgr_query_rslt) {
pr_err("qbman: Query CGID %d failed, no response\n",
cgid);
return -EIO;
}
+ *r = *cgr_query_rslt;
+
/* Decode the outcome */
QBMAN_BUG_ON((r->verb & QBMAN_RESPONSE_VERB_MASK) != QBMAN_CGR_QUERY);
@@ -473,20 +482,23 @@ int qbman_cgr_wred_query(struct qbman_swp *s, uint32_t cgid,
struct qbman_wred_query_rslt *r)
{
struct qbman_cgr_query_desc *p;
+ struct qbman_wred_query_rslt *wred_query_rslt;
p = (struct qbman_cgr_query_desc *)qbman_swp_mc_start(s);
if (!p)
return -EBUSY;
p->cgid = cgid;
- *r = *(struct qbman_wred_query_rslt *)qbman_swp_mc_complete(s, p,
- QBMAN_WRED_QUERY);
- if (!r) {
+ wred_query_rslt = (struct qbman_wred_query_rslt *)qbman_swp_mc_complete(
+ s, p, QBMAN_WRED_QUERY);
+ if (!wred_query_rslt) {
pr_err("qbman: Query CGID WRED %d failed, no response\n",
cgid);
return -EIO;
}
+ *r = *wred_query_rslt;
+
/* Decode the outcome */
QBMAN_BUG_ON((r->verb & QBMAN_RESPONSE_VERB_MASK) != QBMAN_WRED_QUERY);
@@ -527,7 +539,7 @@ void qbman_cgr_attr_wred_dp_decompose(uint32_t dp, uint64_t *minth,
if (mn == 0)
*maxth = ma;
else
- *maxth = ((ma+256) * (1<<(mn-1)));
+ *maxth = ((uint64_t)(ma+256) * (1<<(mn-1)));
if (step_s == 0)
*minth = *maxth - step_i;
@@ -630,6 +642,7 @@ int qbman_wqchan_query(struct qbman_swp *s, uint16_t chanid,
struct qbman_wqchan_query_rslt *r)
{
struct qbman_wqchan_query_desc *p;
+ struct qbman_wqchan_query_rslt *wqchan_query_rslt;
/* Start the management command */
p = (struct qbman_wqchan_query_desc *)qbman_swp_mc_start(s);
@@ -640,14 +653,16 @@ int qbman_wqchan_query(struct qbman_swp *s, uint16_t chanid,
p->chid = chanid;
/* Complete the management command */
- *r = *(struct qbman_wqchan_query_rslt *)qbman_swp_mc_complete(s, p,
- QBMAN_WQ_QUERY);
- if (!r) {
+ wqchan_query_rslt = (struct qbman_wqchan_query_rslt *)qbman_swp_mc_complete(
+ s, p, QBMAN_WQ_QUERY);
+ if (!wqchan_query_rslt) {
pr_err("qbman: Query WQ Channel %d failed, no response\n",
chanid);
return -EIO;
}
+ *r = *wqchan_query_rslt;
+
/* Decode the outcome */
QBMAN_BUG_ON((r->verb & QBMAN_RESPONSE_VERB_MASK) != QBMAN_WQ_QUERY);
--
2.25.1
next prev parent reply other threads:[~2024-10-23 12:00 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20240918075056.1838654-2-vanshika.shukla@nxp.com>
[not found] ` <20241014120126.170790-1-vanshika.shukla@nxp.com>
2024-10-14 12:01 ` [v3 35/43] net/dpaa2: fix memory corruption in TM vanshika.shukla
[not found] ` <20241022191256.516818-1-vanshika.shukla@nxp.com>
2024-10-22 19:12 ` [v4 19/42] bus/fslmc: fix coverity issue vanshika.shukla
2024-10-22 19:12 ` [v4 34/42] net/dpaa2: fix memory corruption in TM vanshika.shukla
[not found] ` <20241023115955.1207617-1-vanshika.shukla@nxp.com>
2024-10-23 11:59 ` vanshika.shukla [this message]
2024-10-23 11:59 ` [v5 " vanshika.shukla
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241023115955.1207617-20-vanshika.shukla@nxp.com \
--to=vanshika.shukla@nxp.com \
--cc=dev@dpdk.org \
--cc=hemant.agrawal@nxp.com \
--cc=nipun.gupta@amd.com \
--cc=rohit.raj@nxp.com \
--cc=roy.pledge@nxp.com \
--cc=sachin.saxena@nxp.com \
--cc=stable@dpdk.org \
--cc=youri.querry_1@nxp.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).