On Tue, 19 May 2026 11:01:28 +0800
[email protected] wrote:

> +RTE_EXPORT_INTERNAL_SYMBOL(sxe2_drv_dev_dma_unmap)
> +int32_t
> +sxe2_drv_dev_dma_unmap(struct sxe2_common_device *cdev, uint64_t iova)
> +{
> +     int32_t ret = 0;
> +     int32_t cmd_fd = 0;
> +     struct sxe2_ioctl_iommu_dma_unmap cmd_params;
> +
> +     if (cdev->config.kernel_reset) {
> +             ret = -EPERM;
> +             PMD_LOG_WARN(COM, "kernel reset, need restart app.");
> +             goto l_end;
> +     }
> +
> +     if (!cdev->config.support_iommu)
> +             goto l_end;
> +
> +     cmd_fd = SXE2_CDEV_TO_CMD_FD(cdev);
> +     if (cmd_fd < 0) {
> +             ret = -EBADF;
> +             PMD_LOG_ERR(COM, "Failed to exec cmd, fd=%d", cmd_fd);
> +             goto l_end;
> +     }
> +
> +     PMD_LOG_DEBUG(COM, "fd %d dma unmap iova=0x%"PRIX64"",
> +             cmd_fd, iova);
> +
> +     memset(&cmd_params, 0, sizeof(struct sxe2_ioctl_iommu_dma_unmap));
> +     cmd_params.iova = iova;
> +
> +     (void)pthread_mutex_lock(&cdev->config.lock);
> +     ret = ioctl(cmd_fd, SXE2_COM_CMD_DMA_UNMAP, &cmd_params);
> +     if (ret < 0) {
> +             PMD_LOG_INFO(COM, "Failed to dma unmap, fd=%d, ret=%d, err:%s",
> +                             cmd_fd, ret, strerror(errno));
> +             ret = -EIO;
> +             (void)pthread_mutex_unlock(&cdev->config.lock);
> +             goto l_end;
> +     }
> +     (void)pthread_mutex_unlock(&cdev->config.lock);
> +
> +l_end:
> +     return ret;
> +}
> +

You shouldn't need the cast void cast around pthread_mutex_lock/unlock;
other drivers don't do that.

Also, git complains about this when doing merge.
Applying: common/sxe2: add ioctl interface for DMA map and unmap
/home/shemminger/DPDK/main/.git/worktrees/sxe2/rebase-apply/patch:192: new 
blank line at EOF.
+

Reply via email to