raw/ifpga: fix file descriptor leak in error path
authorLi Qiang <liq3ea@163.com>
Tue, 16 Apr 2019 05:05:14 +0000 (13:05 +0800)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 2 May 2019 21:48:37 +0000 (23:48 +0200)
In rte_fpga_do_pr() function, if 'stat' return error the
'file_fd' is never closed thus leading a fd leak.
This patch avoids this.

Coverity issue: 279441
Fixes: ef1e8ede3da59e ("raw/ifpga: add Intel FPGA bus rawdev driver")
Cc: stable@dpdk.org
Signed-off-by: Li Qiang <liq3ea@163.com>
Acked-by: Rosen Xu <rosen.xu@intel.com>
drivers/raw/ifpga_rawdev/ifpga_rawdev.c

index 33b2511..41be1a2 100644 (file)
@@ -292,7 +292,8 @@ rte_fpga_do_pr(struct rte_rawdev *rawdev, int port_id,
        if (ret) {
                IFPGA_RAWDEV_PMD_ERR("stat on bitstream file failed: %s\n",
                                file_name);
-               return -EINVAL;
+               ret = -EINVAL;
+               goto close_fd;
        }
        buffer_size = file_stat.st_size;
        IFPGA_RAWDEV_PMD_INFO("bitstream file size: %zu\n", buffer_size);