drm/amdgpu: add flag to delay VM updates
Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
		
					parent
					
						
							
								2b48d323b2
							
						
					
				
			
			
				commit
				
					
						fc220f6580
					
				
			
		
					 2 changed files with 6 additions and 3 deletions
				
			
		| 
						 | 
				
			
			@ -525,8 +525,8 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data,
 | 
			
		|||
		return -EINVAL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	invalid_flags = ~(AMDGPU_VM_PAGE_READABLE | AMDGPU_VM_PAGE_WRITEABLE |
 | 
			
		||||
			AMDGPU_VM_PAGE_EXECUTABLE);
 | 
			
		||||
	invalid_flags = ~(AMDGPU_VM_DELAY_UPDATE | AMDGPU_VM_PAGE_READABLE |
 | 
			
		||||
			AMDGPU_VM_PAGE_WRITEABLE | AMDGPU_VM_PAGE_EXECUTABLE);
 | 
			
		||||
	if ((args->flags & invalid_flags)) {
 | 
			
		||||
		dev_err(&dev->pdev->dev, "invalid flags 0x%08X vs 0x%08X\n",
 | 
			
		||||
			args->flags, invalid_flags);
 | 
			
		||||
| 
						 | 
				
			
			@ -579,7 +579,7 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data,
 | 
			
		|||
		break;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (!r)
 | 
			
		||||
	if (!r && !(args->flags & AMDGPU_VM_DELAY_UPDATE))
 | 
			
		||||
		amdgpu_gem_va_update_vm(adev, bo_va);
 | 
			
		||||
 | 
			
		||||
	drm_gem_object_unreference_unlocked(gobj);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -313,6 +313,9 @@ struct drm_amdgpu_gem_op {
 | 
			
		|||
#define AMDGPU_VA_OP_MAP			1
 | 
			
		||||
#define AMDGPU_VA_OP_UNMAP			2
 | 
			
		||||
 | 
			
		||||
/* Delay the page table update till the next CS */
 | 
			
		||||
#define AMDGPU_VM_DELAY_UPDATE		(1 << 0)
 | 
			
		||||
 | 
			
		||||
/* Mapping flags */
 | 
			
		||||
/* readable mapping */
 | 
			
		||||
#define AMDGPU_VM_PAGE_READABLE		(1 << 1)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue