diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index 46b9ea4e6103..1200c5ba37da 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |||
@@ -48,17 +48,24 @@ int amdgpu_gem_object_create(struct amdgpu_device *adev, unsigned long size, | |||
48 | struct drm_gem_object **obj) | 48 | struct drm_gem_object **obj) |
49 | { | 49 | { |
50 | struct amdgpu_bo *bo; | 50 | struct amdgpu_bo *bo; |
51 | struct amdgpu_bo_param bp; | ||
51 | int r; | 52 | int r; |
52 | 53 | ||
54 | memset(&bp, 0, sizeof(bp)); | ||
53 | *obj = NULL; | 55 | *obj = NULL; |
54 | /* At least align on page size */ | 56 | /* At least align on page size */ |
55 | if (alignment < PAGE_SIZE) { | 57 | if (alignment < PAGE_SIZE) { |
56 | alignment = PAGE_SIZE; | 58 | alignment = PAGE_SIZE; |
57 | } | 59 | } |
58 | 60 | ||
61 | bp.size = size; | ||
62 | bp.byte_align = alignment; | ||
63 | bp.type = type; | ||
64 | bp.resv = resv; | ||
59 | retry: | 65 | retry: |
60 | r = amdgpu_bo_create(adev, size, alignment, initial_domain, | 66 | bp.flags = flags; |
61 | flags, type, resv, &bo); | 67 | bp.domain = initial_domain; |
68 | r = amdgpu_bo_create(adev, &bp, &bo); | ||
62 | if (r) { | 69 | if (r) { |
63 | if (r != -ERESTARTSYS) { | 70 | if (r != -ERESTARTSYS) { |
64 | if (flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED) { | 71 | if (flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED) { |