drivers/octeontx2: fix icc build for i686
[dpdk.git] / drivers / raw / ifpga_rawdev / ifpga_rawdev.c
index 33b2511..fef89e6 100644 (file)
@@ -225,7 +225,7 @@ ifpga_rawdev_reset(struct rte_rawdev *dev)
 }
 
 static int
-fpga_pr(struct rte_rawdev *raw_dev, u32 port_id, u64 *buffer, u32 size,
+fpga_pr(struct rte_rawdev *raw_dev, u32 port_id, const char *buffer, u32 size,
                        u64 *status)
 {
 
@@ -292,9 +292,15 @@ 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;
+       if (buffer_size <= 0) {
+               ret = -EINVAL;
+               goto close_fd;
+       }
+
        IFPGA_RAWDEV_PMD_INFO("bitstream file size: %zu\n", buffer_size);
        buffer = rte_malloc(NULL, buffer_size, 0);
        if (!buffer) {
@@ -493,8 +499,8 @@ ifpga_rawdev_get_attr(struct rte_rawdev *dev,
        if (!strcmp(attr_name, "LineSideLinkPortNum")) {
                if (opae_manager_get_retimer_info(mgr, &opae_rtm_info))
                        return -1;
-               uint64_t tmp = opae_rtm_info.ports_per_retimer *
-                       opae_rtm_info.nums_retimer;
+               uint64_t tmp = (uint64_t)opae_rtm_info.ports_per_retimer *
+                                       (uint64_t)opae_rtm_info.nums_retimer;
                *attr_value = tmp;
                return 0;
        }
@@ -546,8 +552,8 @@ ifpga_rawdev_get_attr(struct rte_rawdev *dev,
        if (!strcmp(attr_name, "NICSideLinkPortNum")) {
                if (opae_manager_get_retimer_info(mgr, &opae_rtm_info))
                        return -1;
-               uint64_t tmp = opae_rtm_info.nums_fvl *
-                                       opae_rtm_info.ports_per_fvl;
+               uint64_t tmp = (uint64_t)opae_rtm_info.nums_fvl *
+                                       (uint64_t)opae_rtm_info.ports_per_fvl;
                *attr_value = tmp;
                return 0;
        }