[PATCH v12 2/4] uacce: add uacce driver
zhangfei.gao at linaro.org
Tue Feb 25 19:36:49 AEDT 2020
On 2020/2/25 上午2:22, Raj, Ashok wrote:
> Hi Kenneth,
> sorry for waking up late on this patchset.
> +static int uacce_fops_open(struct inode *inode, struct file *filep)
> + struct uacce_mm *uacce_mm = NULL;
> + struct uacce_device *uacce;
> + struct uacce_queue *q;
> + int ret = 0;
> + uacce = xa_load(&uacce_xa, iminor(inode));
> + if (!uacce)
> + return -ENODEV;
> + q = kzalloc(sizeof(struct uacce_queue), GFP_KERNEL);
> + if (!q)
> + return -ENOMEM;
> + mutex_lock(&uacce->mm_lock);
> + uacce_mm = uacce_mm_get(uacce, q, current->mm);
> I think having this at open time is a bit unnatural. Since when a process
> does fork, we do not inherit the PASID. Although it inherits the fd
> but cannot use the mmaped address in the child.
> If you move this to the mmap time, its more natural. The child could
> do a mmap() get a new PASID + mmio space to work with the hardware.
Thanks for the suggestion.
We will consider fork in the next step, may need some time.
More information about the Linux-accelerators