Loading drivers/gpu/drm/ttm/ttm_agp_backend.c +3 −1 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ * Keith Packard. */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_module.h" #include "ttm/ttm_bo_driver.h" #include "ttm/ttm_page_alloc.h" Loading Loading @@ -74,7 +76,7 @@ static int ttm_agp_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) ret = agp_bind_memory(mem, node->start); if (ret) printk(KERN_ERR TTM_PFX "AGP Bind memory failed.\n"); pr_err("AGP Bind memory failed\n"); return ret; } Loading drivers/gpu/drm/ttm/ttm_bo.c +31 −41 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com> */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_module.h" #include "ttm/ttm_bo_driver.h" #include "ttm/ttm_placement.h" Loading Loading @@ -68,15 +70,13 @@ static void ttm_mem_type_debug(struct ttm_bo_device *bdev, int mem_type) { struct ttm_mem_type_manager *man = &bdev->man[mem_type]; printk(KERN_ERR TTM_PFX " has_type: %d\n", man->has_type); printk(KERN_ERR TTM_PFX " use_type: %d\n", man->use_type); printk(KERN_ERR TTM_PFX " flags: 0x%08X\n", man->flags); printk(KERN_ERR TTM_PFX " gpu_offset: 0x%08lX\n", man->gpu_offset); printk(KERN_ERR TTM_PFX " size: %llu\n", man->size); printk(KERN_ERR TTM_PFX " available_caching: 0x%08X\n", man->available_caching); printk(KERN_ERR TTM_PFX " default_caching: 0x%08X\n", man->default_caching); pr_err(" has_type: %d\n", man->has_type); pr_err(" use_type: %d\n", man->use_type); pr_err(" flags: 0x%08X\n", man->flags); pr_err(" gpu_offset: 0x%08lX\n", man->gpu_offset); pr_err(" size: %llu\n", man->size); pr_err(" available_caching: 0x%08X\n", man->available_caching); pr_err(" default_caching: 0x%08X\n", man->default_caching); if (mem_type != TTM_PL_SYSTEM) (*man->func->debug)(man, TTM_PFX); } Loading @@ -86,7 +86,7 @@ static void ttm_bo_mem_space_debug(struct ttm_buffer_object *bo, { int i, ret, mem_type; printk(KERN_ERR TTM_PFX "No space for %p (%lu pages, %luK, %luM)\n", pr_err("No space for %p (%lu pages, %luK, %luM)\n", bo, bo->mem.num_pages, bo->mem.size >> 10, bo->mem.size >> 20); for (i = 0; i < placement->num_placement; i++) { Loading @@ -94,7 +94,7 @@ static void ttm_bo_mem_space_debug(struct ttm_buffer_object *bo, &mem_type); if (ret) return; printk(KERN_ERR TTM_PFX " placement[%d]=0x%08X (%d)\n", pr_err(" placement[%d]=0x%08X (%d)\n", i, placement->placement[i], mem_type); ttm_mem_type_debug(bo->bdev, mem_type); } Loading Loading @@ -344,7 +344,7 @@ static int ttm_bo_add_ttm(struct ttm_buffer_object *bo, bool zero_alloc) ret = -ENOMEM; break; default: printk(KERN_ERR TTM_PFX "Illegal buffer object type\n"); pr_err("Illegal buffer object type\n"); ret = -EINVAL; break; } Loading Loading @@ -432,7 +432,7 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo, if (bo->evicted) { ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement); if (ret) printk(KERN_ERR TTM_PFX "Can not flush read caches\n"); pr_err("Can not flush read caches\n"); bo->evicted = false; } Loading Loading @@ -734,9 +734,7 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, if (unlikely(ret != 0)) { if (ret != -ERESTARTSYS) { printk(KERN_ERR TTM_PFX "Failed to expire sync object before " "buffer eviction.\n"); pr_err("Failed to expire sync object before buffer eviction\n"); } goto out; } Loading @@ -757,9 +755,8 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, no_wait_reserve, no_wait_gpu); if (ret) { if (ret != -ERESTARTSYS) { printk(KERN_ERR TTM_PFX "Failed to find memory space for " "buffer 0x%p eviction.\n", bo); pr_err("Failed to find memory space for buffer 0x%p eviction\n", bo); ttm_bo_mem_space_debug(bo, &placement); } goto out; Loading @@ -769,7 +766,7 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, no_wait_reserve, no_wait_gpu); if (ret) { if (ret != -ERESTARTSYS) printk(KERN_ERR TTM_PFX "Buffer eviction failed\n"); pr_err("Buffer eviction failed\n"); ttm_bo_mem_put(bo, &evict_mem); goto out; } Loading Loading @@ -1180,7 +1177,7 @@ int ttm_bo_init(struct ttm_bo_device *bdev, ret = ttm_mem_global_alloc(mem_glob, acc_size, false, false); if (ret) { printk(KERN_ERR TTM_PFX "Out of kernel memory.\n"); pr_err("Out of kernel memory\n"); if (destroy) (*destroy)(bo); else Loading @@ -1191,7 +1188,7 @@ int ttm_bo_init(struct ttm_bo_device *bdev, size += buffer_start & ~PAGE_MASK; num_pages = (size + PAGE_SIZE - 1) >> PAGE_SHIFT; if (num_pages == 0) { printk(KERN_ERR TTM_PFX "Illegal buffer object size.\n"); pr_err("Illegal buffer object size\n"); if (destroy) (*destroy)(bo); else Loading Loading @@ -1342,8 +1339,7 @@ static int ttm_bo_force_list_clean(struct ttm_bo_device *bdev, if (allow_errors) { return ret; } else { printk(KERN_ERR TTM_PFX "Cleanup eviction failed\n"); pr_err("Cleanup eviction failed\n"); } } spin_lock(&glob->lru_lock); Loading @@ -1358,14 +1354,14 @@ int ttm_bo_clean_mm(struct ttm_bo_device *bdev, unsigned mem_type) int ret = -EINVAL; if (mem_type >= TTM_NUM_MEM_TYPES) { printk(KERN_ERR TTM_PFX "Illegal memory type %d\n", mem_type); pr_err("Illegal memory type %d\n", mem_type); return ret; } man = &bdev->man[mem_type]; if (!man->has_type) { printk(KERN_ERR TTM_PFX "Trying to take down uninitialized " "memory manager type %u\n", mem_type); pr_err("Trying to take down uninitialized memory manager type %u\n", mem_type); return ret; } Loading @@ -1388,16 +1384,12 @@ int ttm_bo_evict_mm(struct ttm_bo_device *bdev, unsigned mem_type) struct ttm_mem_type_manager *man = &bdev->man[mem_type]; if (mem_type == 0 || mem_type >= TTM_NUM_MEM_TYPES) { printk(KERN_ERR TTM_PFX "Illegal memory manager memory type %u.\n", mem_type); pr_err("Illegal memory manager memory type %u\n", mem_type); return -EINVAL; } if (!man->has_type) { printk(KERN_ERR TTM_PFX "Memory type %u has not been initialized.\n", mem_type); pr_err("Memory type %u has not been initialized\n", mem_type); return 0; } Loading Loading @@ -1482,8 +1474,7 @@ int ttm_bo_global_init(struct drm_global_reference *ref) ttm_mem_init_shrink(&glob->shrink, ttm_bo_swapout); ret = ttm_mem_register_shrink(glob->mem_glob, &glob->shrink); if (unlikely(ret != 0)) { printk(KERN_ERR TTM_PFX "Could not register buffer object swapout.\n"); pr_err("Could not register buffer object swapout\n"); goto out_no_shrink; } Loading Loading @@ -1516,9 +1507,8 @@ int ttm_bo_device_release(struct ttm_bo_device *bdev) man->use_type = false; if ((i != TTM_PL_SYSTEM) && ttm_bo_clean_mm(bdev, i)) { ret = -EBUSY; printk(KERN_ERR TTM_PFX "DRM memory manager type %d " "is not clean.\n", i); pr_err("DRM memory manager type %d is not clean\n", i); } man->has_type = false; } Loading drivers/gpu/drm/ttm/ttm_bo_vm.c +3 −2 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com> */ #define pr_fmt(fmt) "[TTM] " fmt #include <ttm/ttm_module.h> #include <ttm/ttm_bo_driver.h> #include <ttm/ttm_placement.h> Loading Loading @@ -262,8 +264,7 @@ int ttm_bo_mmap(struct file *filp, struct vm_area_struct *vma, read_unlock(&bdev->vm_lock); if (unlikely(bo == NULL)) { printk(KERN_ERR TTM_PFX "Could not find buffer object to map.\n"); pr_err("Could not find buffer object to map\n"); return -EINVAL; } Loading drivers/gpu/drm/ttm/ttm_memory.c +6 −6 Original line number Diff line number Diff line Loading @@ -25,6 +25,8 @@ * **************************************************************************/ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_memory.h" #include "ttm/ttm_module.h" #include "ttm/ttm_page_alloc.h" Loading Loading @@ -74,8 +76,7 @@ static void ttm_mem_zone_kobj_release(struct kobject *kobj) struct ttm_mem_zone *zone = container_of(kobj, struct ttm_mem_zone, kobj); printk(KERN_INFO TTM_PFX "Zone %7s: Used memory at exit: %llu kiB.\n", pr_info("Zone %7s: Used memory at exit: %llu kiB\n", zone->name, (unsigned long long)zone->used_mem >> 10); kfree(zone); } Loading Loading @@ -390,8 +391,7 @@ int ttm_mem_global_init(struct ttm_mem_global *glob) #endif for (i = 0; i < glob->num_zones; ++i) { zone = glob->zones[i]; printk(KERN_INFO TTM_PFX "Zone %7s: Available graphics memory: %llu kiB.\n", pr_info("Zone %7s: Available graphics memory: %llu kiB\n", zone->name, (unsigned long long)zone->max_mem >> 10); } ttm_page_alloc_init(glob, glob->zone_kernel->max_mem/(2*PAGE_SIZE)); Loading drivers/gpu/drm/ttm/ttm_object.c +3 −2 Original line number Diff line number Diff line Loading @@ -49,6 +49,8 @@ * for fast lookup of ref objects given a base object. */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_object.h" #include "ttm/ttm_module.h" #include <linux/list.h> Loading Loading @@ -232,8 +234,7 @@ struct ttm_base_object *ttm_base_object_lookup(struct ttm_object_file *tfile, return NULL; if (tfile != base->tfile && !base->shareable) { printk(KERN_ERR TTM_PFX "Attempted access of non-shareable object.\n"); pr_err("Attempted access of non-shareable object\n"); ttm_base_object_unref(&base); return NULL; } Loading Loading
drivers/gpu/drm/ttm/ttm_agp_backend.c +3 −1 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ * Keith Packard. */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_module.h" #include "ttm/ttm_bo_driver.h" #include "ttm/ttm_page_alloc.h" Loading Loading @@ -74,7 +76,7 @@ static int ttm_agp_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) ret = agp_bind_memory(mem, node->start); if (ret) printk(KERN_ERR TTM_PFX "AGP Bind memory failed.\n"); pr_err("AGP Bind memory failed\n"); return ret; } Loading
drivers/gpu/drm/ttm/ttm_bo.c +31 −41 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com> */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_module.h" #include "ttm/ttm_bo_driver.h" #include "ttm/ttm_placement.h" Loading Loading @@ -68,15 +70,13 @@ static void ttm_mem_type_debug(struct ttm_bo_device *bdev, int mem_type) { struct ttm_mem_type_manager *man = &bdev->man[mem_type]; printk(KERN_ERR TTM_PFX " has_type: %d\n", man->has_type); printk(KERN_ERR TTM_PFX " use_type: %d\n", man->use_type); printk(KERN_ERR TTM_PFX " flags: 0x%08X\n", man->flags); printk(KERN_ERR TTM_PFX " gpu_offset: 0x%08lX\n", man->gpu_offset); printk(KERN_ERR TTM_PFX " size: %llu\n", man->size); printk(KERN_ERR TTM_PFX " available_caching: 0x%08X\n", man->available_caching); printk(KERN_ERR TTM_PFX " default_caching: 0x%08X\n", man->default_caching); pr_err(" has_type: %d\n", man->has_type); pr_err(" use_type: %d\n", man->use_type); pr_err(" flags: 0x%08X\n", man->flags); pr_err(" gpu_offset: 0x%08lX\n", man->gpu_offset); pr_err(" size: %llu\n", man->size); pr_err(" available_caching: 0x%08X\n", man->available_caching); pr_err(" default_caching: 0x%08X\n", man->default_caching); if (mem_type != TTM_PL_SYSTEM) (*man->func->debug)(man, TTM_PFX); } Loading @@ -86,7 +86,7 @@ static void ttm_bo_mem_space_debug(struct ttm_buffer_object *bo, { int i, ret, mem_type; printk(KERN_ERR TTM_PFX "No space for %p (%lu pages, %luK, %luM)\n", pr_err("No space for %p (%lu pages, %luK, %luM)\n", bo, bo->mem.num_pages, bo->mem.size >> 10, bo->mem.size >> 20); for (i = 0; i < placement->num_placement; i++) { Loading @@ -94,7 +94,7 @@ static void ttm_bo_mem_space_debug(struct ttm_buffer_object *bo, &mem_type); if (ret) return; printk(KERN_ERR TTM_PFX " placement[%d]=0x%08X (%d)\n", pr_err(" placement[%d]=0x%08X (%d)\n", i, placement->placement[i], mem_type); ttm_mem_type_debug(bo->bdev, mem_type); } Loading Loading @@ -344,7 +344,7 @@ static int ttm_bo_add_ttm(struct ttm_buffer_object *bo, bool zero_alloc) ret = -ENOMEM; break; default: printk(KERN_ERR TTM_PFX "Illegal buffer object type\n"); pr_err("Illegal buffer object type\n"); ret = -EINVAL; break; } Loading Loading @@ -432,7 +432,7 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo, if (bo->evicted) { ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement); if (ret) printk(KERN_ERR TTM_PFX "Can not flush read caches\n"); pr_err("Can not flush read caches\n"); bo->evicted = false; } Loading Loading @@ -734,9 +734,7 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, if (unlikely(ret != 0)) { if (ret != -ERESTARTSYS) { printk(KERN_ERR TTM_PFX "Failed to expire sync object before " "buffer eviction.\n"); pr_err("Failed to expire sync object before buffer eviction\n"); } goto out; } Loading @@ -757,9 +755,8 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, no_wait_reserve, no_wait_gpu); if (ret) { if (ret != -ERESTARTSYS) { printk(KERN_ERR TTM_PFX "Failed to find memory space for " "buffer 0x%p eviction.\n", bo); pr_err("Failed to find memory space for buffer 0x%p eviction\n", bo); ttm_bo_mem_space_debug(bo, &placement); } goto out; Loading @@ -769,7 +766,7 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo, bool interruptible, no_wait_reserve, no_wait_gpu); if (ret) { if (ret != -ERESTARTSYS) printk(KERN_ERR TTM_PFX "Buffer eviction failed\n"); pr_err("Buffer eviction failed\n"); ttm_bo_mem_put(bo, &evict_mem); goto out; } Loading Loading @@ -1180,7 +1177,7 @@ int ttm_bo_init(struct ttm_bo_device *bdev, ret = ttm_mem_global_alloc(mem_glob, acc_size, false, false); if (ret) { printk(KERN_ERR TTM_PFX "Out of kernel memory.\n"); pr_err("Out of kernel memory\n"); if (destroy) (*destroy)(bo); else Loading @@ -1191,7 +1188,7 @@ int ttm_bo_init(struct ttm_bo_device *bdev, size += buffer_start & ~PAGE_MASK; num_pages = (size + PAGE_SIZE - 1) >> PAGE_SHIFT; if (num_pages == 0) { printk(KERN_ERR TTM_PFX "Illegal buffer object size.\n"); pr_err("Illegal buffer object size\n"); if (destroy) (*destroy)(bo); else Loading Loading @@ -1342,8 +1339,7 @@ static int ttm_bo_force_list_clean(struct ttm_bo_device *bdev, if (allow_errors) { return ret; } else { printk(KERN_ERR TTM_PFX "Cleanup eviction failed\n"); pr_err("Cleanup eviction failed\n"); } } spin_lock(&glob->lru_lock); Loading @@ -1358,14 +1354,14 @@ int ttm_bo_clean_mm(struct ttm_bo_device *bdev, unsigned mem_type) int ret = -EINVAL; if (mem_type >= TTM_NUM_MEM_TYPES) { printk(KERN_ERR TTM_PFX "Illegal memory type %d\n", mem_type); pr_err("Illegal memory type %d\n", mem_type); return ret; } man = &bdev->man[mem_type]; if (!man->has_type) { printk(KERN_ERR TTM_PFX "Trying to take down uninitialized " "memory manager type %u\n", mem_type); pr_err("Trying to take down uninitialized memory manager type %u\n", mem_type); return ret; } Loading @@ -1388,16 +1384,12 @@ int ttm_bo_evict_mm(struct ttm_bo_device *bdev, unsigned mem_type) struct ttm_mem_type_manager *man = &bdev->man[mem_type]; if (mem_type == 0 || mem_type >= TTM_NUM_MEM_TYPES) { printk(KERN_ERR TTM_PFX "Illegal memory manager memory type %u.\n", mem_type); pr_err("Illegal memory manager memory type %u\n", mem_type); return -EINVAL; } if (!man->has_type) { printk(KERN_ERR TTM_PFX "Memory type %u has not been initialized.\n", mem_type); pr_err("Memory type %u has not been initialized\n", mem_type); return 0; } Loading Loading @@ -1482,8 +1474,7 @@ int ttm_bo_global_init(struct drm_global_reference *ref) ttm_mem_init_shrink(&glob->shrink, ttm_bo_swapout); ret = ttm_mem_register_shrink(glob->mem_glob, &glob->shrink); if (unlikely(ret != 0)) { printk(KERN_ERR TTM_PFX "Could not register buffer object swapout.\n"); pr_err("Could not register buffer object swapout\n"); goto out_no_shrink; } Loading Loading @@ -1516,9 +1507,8 @@ int ttm_bo_device_release(struct ttm_bo_device *bdev) man->use_type = false; if ((i != TTM_PL_SYSTEM) && ttm_bo_clean_mm(bdev, i)) { ret = -EBUSY; printk(KERN_ERR TTM_PFX "DRM memory manager type %d " "is not clean.\n", i); pr_err("DRM memory manager type %d is not clean\n", i); } man->has_type = false; } Loading
drivers/gpu/drm/ttm/ttm_bo_vm.c +3 −2 Original line number Diff line number Diff line Loading @@ -28,6 +28,8 @@ * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com> */ #define pr_fmt(fmt) "[TTM] " fmt #include <ttm/ttm_module.h> #include <ttm/ttm_bo_driver.h> #include <ttm/ttm_placement.h> Loading Loading @@ -262,8 +264,7 @@ int ttm_bo_mmap(struct file *filp, struct vm_area_struct *vma, read_unlock(&bdev->vm_lock); if (unlikely(bo == NULL)) { printk(KERN_ERR TTM_PFX "Could not find buffer object to map.\n"); pr_err("Could not find buffer object to map\n"); return -EINVAL; } Loading
drivers/gpu/drm/ttm/ttm_memory.c +6 −6 Original line number Diff line number Diff line Loading @@ -25,6 +25,8 @@ * **************************************************************************/ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_memory.h" #include "ttm/ttm_module.h" #include "ttm/ttm_page_alloc.h" Loading Loading @@ -74,8 +76,7 @@ static void ttm_mem_zone_kobj_release(struct kobject *kobj) struct ttm_mem_zone *zone = container_of(kobj, struct ttm_mem_zone, kobj); printk(KERN_INFO TTM_PFX "Zone %7s: Used memory at exit: %llu kiB.\n", pr_info("Zone %7s: Used memory at exit: %llu kiB\n", zone->name, (unsigned long long)zone->used_mem >> 10); kfree(zone); } Loading Loading @@ -390,8 +391,7 @@ int ttm_mem_global_init(struct ttm_mem_global *glob) #endif for (i = 0; i < glob->num_zones; ++i) { zone = glob->zones[i]; printk(KERN_INFO TTM_PFX "Zone %7s: Available graphics memory: %llu kiB.\n", pr_info("Zone %7s: Available graphics memory: %llu kiB\n", zone->name, (unsigned long long)zone->max_mem >> 10); } ttm_page_alloc_init(glob, glob->zone_kernel->max_mem/(2*PAGE_SIZE)); Loading
drivers/gpu/drm/ttm/ttm_object.c +3 −2 Original line number Diff line number Diff line Loading @@ -49,6 +49,8 @@ * for fast lookup of ref objects given a base object. */ #define pr_fmt(fmt) "[TTM] " fmt #include "ttm/ttm_object.h" #include "ttm/ttm_module.h" #include <linux/list.h> Loading Loading @@ -232,8 +234,7 @@ struct ttm_base_object *ttm_base_object_lookup(struct ttm_object_file *tfile, return NULL; if (tfile != base->tfile && !base->shareable) { printk(KERN_ERR TTM_PFX "Attempted access of non-shareable object.\n"); pr_err("Attempted access of non-shareable object\n"); ttm_base_object_unref(&base); return NULL; } Loading