diff options
Diffstat (limited to 'drivers/gpu/nvgpu/common/as.c')
-rw-r--r-- | drivers/gpu/nvgpu/common/as.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/gpu/nvgpu/common/as.c b/drivers/gpu/nvgpu/common/as.c index 481fb807..99d18195 100644 --- a/drivers/gpu/nvgpu/common/as.c +++ b/drivers/gpu/nvgpu/common/as.c | |||
@@ -43,7 +43,6 @@ static int gk20a_vm_alloc_share(struct gk20a_as_share *as_share, | |||
43 | struct mm_gk20a *mm = &g->mm; | 43 | struct mm_gk20a *mm = &g->mm; |
44 | struct vm_gk20a *vm; | 44 | struct vm_gk20a *vm; |
45 | char name[32]; | 45 | char name[32]; |
46 | int err; | ||
47 | const bool userspace_managed = | 46 | const bool userspace_managed = |
48 | (flags & NVGPU_GPU_IOCTL_ALLOC_AS_FLAGS_USERSPACE_MANAGED) != 0; | 47 | (flags & NVGPU_GPU_IOCTL_ALLOC_AS_FLAGS_USERSPACE_MANAGED) != 0; |
49 | 48 | ||
@@ -60,7 +59,13 @@ static int gk20a_vm_alloc_share(struct gk20a_as_share *as_share, | |||
60 | return -EINVAL; | 59 | return -EINVAL; |
61 | } | 60 | } |
62 | 61 | ||
63 | vm = nvgpu_kzalloc(g, sizeof(*vm)); | 62 | snprintf(name, sizeof(name), "as_%d", as_share->id); |
63 | |||
64 | vm = nvgpu_vm_init(g, big_page_size, | ||
65 | big_page_size << 10, | ||
66 | mm->channel.kernel_size, | ||
67 | mm->channel.user_size + mm->channel.kernel_size, | ||
68 | !mm->disable_bigpage, userspace_managed, name); | ||
64 | if (!vm) | 69 | if (!vm) |
65 | return -ENOMEM; | 70 | return -ENOMEM; |
66 | 71 | ||
@@ -68,15 +73,7 @@ static int gk20a_vm_alloc_share(struct gk20a_as_share *as_share, | |||
68 | vm->as_share = as_share; | 73 | vm->as_share = as_share; |
69 | vm->enable_ctag = true; | 74 | vm->enable_ctag = true; |
70 | 75 | ||
71 | snprintf(name, sizeof(name), "as_%d", as_share->id); | 76 | return 0; |
72 | |||
73 | err = nvgpu_init_vm(mm, vm, big_page_size, | ||
74 | big_page_size << 10, | ||
75 | mm->channel.kernel_size, | ||
76 | mm->channel.user_size + mm->channel.kernel_size, | ||
77 | !mm->disable_bigpage, userspace_managed, name); | ||
78 | |||
79 | return err; | ||
80 | } | 77 | } |
81 | 78 | ||
82 | int gk20a_as_alloc_share(struct gk20a *g, | 79 | int gk20a_as_alloc_share(struct gk20a *g, |