diff options
author | Xianzhong <xianzhong.li@nxp.com> | 2020-10-22 13:28:24 +0800 |
---|---|---|
committer | Xianzhong <xianzhong.li@nxp.com> | 2020-10-22 14:39:22 +0800 |
commit | 0fef6d7f6778f72cde9da11b306e8a6a51edeba9 (patch) | |
tree | 244e549cd5c5fff1473867d3992a2e2d31fb6b51 /drivers/mxc | |
parent | 72209dedd12935aabc8bed1554020d34a0202b86 (diff) |
MGS-6012-5 [#imx-2337] fix 6.4.3.p1 build break for L5.10
6.4.3.p1 introduced more build break with mmap_sem usage,
define current->mm->mmap_sem/lock with a macro.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Diffstat (limited to 'drivers/mxc')
-rw-r--r-- | drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_user_memory.c | 12 | ||||
-rw-r--r-- | drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h | 6 |
2 files changed, 12 insertions, 6 deletions
diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_user_memory.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_user_memory.c index d7f47c772071..d66066d2c547 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_user_memory.c +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/allocator/default/gc_hal_kernel_allocator_user_memory.c @@ -438,9 +438,9 @@ _Import( } } - down_read(¤t->mm->mmap_sem); + down_read(¤t_mm_mmap_sem); vma = find_vma(current->mm, memory); - up_read(¤t->mm->mmap_sem); + up_read(¤t_mm_mmap_sem); if (!vma) { @@ -456,7 +456,7 @@ _Import( vm_flags = vma->vm_flags; vaddr = vma->vm_end; - down_read(¤t->mm->mmap_sem); + down_read(¤t_mm_mmap_sem); while (vaddr < memory + Size) { vma = find_vma(current->mm, vaddr); @@ -464,20 +464,20 @@ _Import( if (!vma) { /* No such memory. */ - up_read(¤t->mm->mmap_sem); + up_read(¤t_mm_mmap_sem); gcmkONERROR(gcvSTATUS_INVALID_ARGUMENT); } if ((vma->vm_flags & VM_PFNMAP) != (vm_flags & VM_PFNMAP)) { /* Can not support different map type: both PFN and PAGE detected. */ - up_read(¤t->mm->mmap_sem); + up_read(¤t_mm_mmap_sem); gcmkONERROR(gcvSTATUS_NOT_SUPPORTED); } vaddr = vma->vm_end; } - up_read(¤t->mm->mmap_sem); + up_read(¤t_mm_mmap_sem); } if (Physical != gcvINVALID_PHYSICAL_ADDRESS) diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h index b9edf7ae3472..d803cb242fe0 100644 --- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h +++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_linux.h @@ -165,6 +165,12 @@ #endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0) +#define current_mm_mmap_sem current->mm->mmap_lock +#else +#define current_mm_mmap_sem current->mm->mmap_sem +#endif + extern struct device *galcore_device; /******************************************************************************\ |