Re: [PATCH v1] dmaengine: idxd: Fix allowing write() from different address spaces
From: Dave Jiang
Date: Wed Apr 16 2025 - 10:53:10 EST
On 4/15/25 7:52 PM, Vinicius Costa Gomes wrote:
> Check if the process submitting the descriptor belongs to the same
> address space as the one that opened the file, reject otherwise.
>
> Fixes: 6827738dc684 ("dmaengine: idxd: add a write() method for applications to submit work")
> Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@xxxxxxxxx>
Reviewed-by: Dave Jiang <dave.jiang@xxxxxxxxx>
> ---
> drivers/dma/idxd/cdev.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/dma/idxd/cdev.c b/drivers/dma/idxd/cdev.c
> index ff94ee892339..373c622fcddc 100644
> --- a/drivers/dma/idxd/cdev.c
> +++ b/drivers/dma/idxd/cdev.c
> @@ -473,6 +473,9 @@ static ssize_t idxd_cdev_write(struct file *filp, const char __user *buf, size_t
> ssize_t written = 0;
> int i;
>
> + if (current->mm != ctx->mm)
> + return -EPERM;
> +
> for (i = 0; i < len/sizeof(struct dsa_hw_desc); i++) {
> int rc = idxd_submit_user_descriptor(ctx, udesc + i);
>