On 2/23/26 20:09, Ekansh Gupta wrote:
...
> +int qda_ioctl_gem_mmap_offset(struct drm_device *dev, void *data, struct 
> drm_file *file_priv)
> +{
> +       struct drm_qda_gem_mmap_offset *args = data;
> +       struct drm_gem_object *gem_obj;
> +       int ret;
> +
> +       gem_obj = qda_gem_lookup_object(file_priv, args->handle);
> +       if (IS_ERR(gem_obj))
> +               return PTR_ERR(gem_obj);
> +
> +       ret = drm_gem_create_mmap_offset(gem_obj);
> +       if (ret == 0)
> +               args->offset = drm_vma_node_offset_addr(&gem_obj->vma_node);
> +
> +       drm_gem_object_put(gem_obj);
> +       return ret;

You should probably use drm_gem_dumb_map_offset() instead of open coding this.

Otherwise you allow mmap() of imported objects which is not allowed at all.

Regards,
Christian.

Reply via email to