diff options
author | Alex Waterman <alexw@nvidia.com> | 2017-08-17 13:54:19 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-08-17 18:49:41 -0400 |
commit | 7a4b9487b663a5dbc69ada49d8382c899682129d (patch) | |
tree | 7b1e229afa4ba2b0225f9b23a7f0daa03ad9d612 /drivers/gpu | |
parent | 98186ec2c2127c2af65a34f9e697e04f518a79ab (diff) |
gpu: nvgpu: Fix potential map failing for vGPU
Ensure that the mapping size passed to the vGPU mapping code
is page aligned. The vGPU mapping code returns -EINVAL otherwise.
Change-Id: I87a90085882fa0ff538b181a55240468392c4135
Signed-off-by: Alex Waterman <alexw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1540423
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/vm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/vm.c b/drivers/gpu/nvgpu/common/linux/vm.c index dec05209..3d1219b6 100644 --- a/drivers/gpu/nvgpu/common/linux/vm.c +++ b/drivers/gpu/nvgpu/common/linux/vm.c | |||
@@ -266,6 +266,7 @@ u64 nvgpu_vm_map(struct vm_gk20a *vm, | |||
266 | bfr.pgsz_idx = __get_pte_size(vm, map_offset, | 266 | bfr.pgsz_idx = __get_pte_size(vm, map_offset, |
267 | min_t(u64, bfr.size, bfr.align)); | 267 | min_t(u64, bfr.size, bfr.align)); |
268 | mapping_size = mapping_size ? mapping_size : bfr.size; | 268 | mapping_size = mapping_size ? mapping_size : bfr.size; |
269 | mapping_size = ALIGN(mapping_size, SZ_4K); | ||
269 | 270 | ||
270 | /* Check if we should use a fixed offset for mapping this buffer */ | 271 | /* Check if we should use a fixed offset for mapping this buffer */ |
271 | if (flags & NVGPU_AS_MAP_BUFFER_FLAGS_FIXED_OFFSET) { | 272 | if (flags & NVGPU_AS_MAP_BUFFER_FLAGS_FIXED_OFFSET) { |