mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-15 09:03:59 +08:00
drm/ttm: Remove ttm_bo_mmap() and friends
The function ttm_bo_mmap is unused. Remove it and it's helpers; including the verify_access callback in struct ttm_device_funcs. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210525151055.8174-8-tzimmermann@suse.de
This commit is contained in:
parent
cbc5caf778
commit
031df82514
@ -560,30 +560,6 @@ static const struct vm_operations_struct ttm_bo_vm_ops = {
|
||||
.access = ttm_bo_vm_access,
|
||||
};
|
||||
|
||||
static struct ttm_buffer_object *ttm_bo_vm_lookup(struct ttm_device *bdev,
|
||||
unsigned long offset,
|
||||
unsigned long pages)
|
||||
{
|
||||
struct drm_vma_offset_node *node;
|
||||
struct ttm_buffer_object *bo = NULL;
|
||||
|
||||
drm_vma_offset_lock_lookup(bdev->vma_manager);
|
||||
|
||||
node = drm_vma_offset_lookup_locked(bdev->vma_manager, offset, pages);
|
||||
if (likely(node)) {
|
||||
bo = container_of(node, struct ttm_buffer_object,
|
||||
base.vma_node);
|
||||
bo = ttm_bo_get_unless_zero(bo);
|
||||
}
|
||||
|
||||
drm_vma_offset_unlock_lookup(bdev->vma_manager);
|
||||
|
||||
if (!bo)
|
||||
pr_err("Could not find buffer object to map\n");
|
||||
|
||||
return bo;
|
||||
}
|
||||
|
||||
static void ttm_bo_mmap_vma_setup(struct ttm_buffer_object *bo, struct vm_area_struct *vma)
|
||||
{
|
||||
/*
|
||||
@ -611,35 +587,6 @@ static void ttm_bo_mmap_vma_setup(struct ttm_buffer_object *bo, struct vm_area_s
|
||||
vma->vm_flags |= VM_IO | VM_DONTEXPAND | VM_DONTDUMP;
|
||||
}
|
||||
|
||||
int ttm_bo_mmap(struct file *filp, struct vm_area_struct *vma,
|
||||
struct ttm_device *bdev)
|
||||
{
|
||||
struct ttm_buffer_object *bo;
|
||||
int ret;
|
||||
|
||||
if (unlikely(vma->vm_pgoff < DRM_FILE_PAGE_OFFSET_START))
|
||||
return -EINVAL;
|
||||
|
||||
bo = ttm_bo_vm_lookup(bdev, vma->vm_pgoff, vma_pages(vma));
|
||||
if (unlikely(!bo))
|
||||
return -EINVAL;
|
||||
|
||||
if (unlikely(!bo->bdev->funcs->verify_access)) {
|
||||
ret = -EPERM;
|
||||
goto out_unref;
|
||||
}
|
||||
ret = bo->bdev->funcs->verify_access(bo, filp);
|
||||
if (unlikely(ret != 0))
|
||||
goto out_unref;
|
||||
|
||||
ttm_bo_mmap_vma_setup(bo, vma);
|
||||
return 0;
|
||||
out_unref:
|
||||
ttm_bo_put(bo);
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(ttm_bo_mmap);
|
||||
|
||||
int ttm_bo_mmap_obj(struct vm_area_struct *vma, struct ttm_buffer_object *bo)
|
||||
{
|
||||
ttm_bo_get(bo);
|
||||
|
@ -524,19 +524,6 @@ void ttm_bo_vunmap(struct ttm_buffer_object *bo, struct dma_buf_map *map);
|
||||
*/
|
||||
int ttm_bo_mmap_obj(struct vm_area_struct *vma, struct ttm_buffer_object *bo);
|
||||
|
||||
/**
|
||||
* ttm_bo_mmap - mmap out of the ttm device address space.
|
||||
*
|
||||
* @filp: filp as input from the mmap method.
|
||||
* @vma: vma as input from the mmap method.
|
||||
* @bdev: Pointer to the ttm_device with the address space manager.
|
||||
*
|
||||
* This function is intended to be called by the device mmap method.
|
||||
* if the device address space is to be backed by the bo manager.
|
||||
*/
|
||||
int ttm_bo_mmap(struct file *filp, struct vm_area_struct *vma,
|
||||
struct ttm_device *bdev);
|
||||
|
||||
/**
|
||||
* ttm_bo_io
|
||||
*
|
||||
|
@ -161,21 +161,6 @@ struct ttm_device_funcs {
|
||||
struct ttm_resource *new_mem,
|
||||
struct ttm_place *hop);
|
||||
|
||||
/**
|
||||
* struct ttm_bo_driver_member verify_access
|
||||
*
|
||||
* @bo: Pointer to a buffer object.
|
||||
* @filp: Pointer to a struct file trying to access the object.
|
||||
*
|
||||
* Called from the map / write / read methods to verify that the
|
||||
* caller is permitted to access the buffer object.
|
||||
* This member may be set to NULL, which will refuse this kind of
|
||||
* access for all buffer objects.
|
||||
* This function should return 0 if access is granted, -EPERM otherwise.
|
||||
*/
|
||||
int (*verify_access)(struct ttm_buffer_object *bo,
|
||||
struct file *filp);
|
||||
|
||||
/**
|
||||
* Hook to notify driver about a resource delete.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user