Thanks Yunjian for the fix.
Acked-by: Sachin Saxena<sachin.sax...@oss.nxp.com>
On 26-Aug-20 5:24 PM, wangyunjian wrote:
From: Yunjian Wang <wangyunj...@huawei.com>
The fd is possibly a negative value while it is passed as an
argument to function "close". Fix the check to the fd.
Fixes: b9c94167904f ("bus/dpaa: decouple FQ portal alloc and init")
Cc: sta...@dpdk.org
Signed-off-by: Yunjian Wang <wangyunj...@huawei.com>
---
drivers/bus/dpaa/base/qbman/qman_driver.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/bus/dpaa/base/qbman/qman_driver.c
b/drivers/bus/dpaa/base/qbman/qman_driver.c
index 1166d68e2..1bff0bc2f 100644
--- a/drivers/bus/dpaa/base/qbman/qman_driver.c
+++ b/drivers/bus/dpaa/base/qbman/qman_driver.c
@@ -142,7 +142,7 @@ struct qman_portal *fsl_qman_fq_portal_create(int *fd)
struct qm_portal_config *q_pcfg;
struct dpaa_ioctl_irq_map irq_map;
struct dpaa_ioctl_portal_map q_map = {0};
- int q_fd = 0, ret;
+ int q_fd = -1, ret;
q_pcfg = kzalloc((sizeof(struct qm_portal_config)), 0);
if (!q_pcfg) {
@@ -191,7 +191,7 @@ struct qman_portal *fsl_qman_fq_portal_create(int *fd)
err:
if (portal)
qman_free_global_portal(portal);
- if (q_fd)
+ if (q_fd != -1)
close(q_fd);
process_portal_unmap(&q_map.addr);
kfree(q_pcfg);