vdso.c (002c6ca75289a4ac4f6738213dd2d258704886e4) | vdso.c (8032bf1233a74627ce69b803608e650f3f35971c) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (c) 2022 Helge Deller <deller@gmx.de> 4 * 5 * based on arch/s390/kernel/vdso.c which is 6 * Copyright IBM Corp. 2008 7 * Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com) 8 */ --- 61 unchanged lines hidden (view full) --- 70#endif 71 { 72 vdso_text_len = &vdso32_end - &vdso32_start; 73 vdso_mapping = &vdso32_mapping; 74 } 75 76 map_base = mm->mmap_base; 77 if (current->flags & PF_RANDOMIZE) | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright (c) 2022 Helge Deller <deller@gmx.de> 4 * 5 * based on arch/s390/kernel/vdso.c which is 6 * Copyright IBM Corp. 2008 7 * Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com) 8 */ --- 61 unchanged lines hidden (view full) --- 70#endif 71 { 72 vdso_text_len = &vdso32_end - &vdso32_start; 73 vdso_mapping = &vdso32_mapping; 74 } 75 76 map_base = mm->mmap_base; 77 if (current->flags & PF_RANDOMIZE) |
78 map_base -= prandom_u32_max(0x20) * PAGE_SIZE; | 78 map_base -= get_random_u32_below(0x20) * PAGE_SIZE; |
79 80 vdso_text_start = get_unmapped_area(NULL, map_base, vdso_text_len, 0, 0); 81 82 /* VM_MAYWRITE for COW so gdb can set breakpoints */ 83 vma = _install_special_mapping(mm, vdso_text_start, vdso_text_len, 84 VM_READ|VM_EXEC| 85 VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC, 86 vdso_mapping); --- 36 unchanged lines hidden --- | 79 80 vdso_text_start = get_unmapped_area(NULL, map_base, vdso_text_len, 0, 0); 81 82 /* VM_MAYWRITE for COW so gdb can set breakpoints */ 83 vma = _install_special_mapping(mm, vdso_text_start, vdso_text_len, 84 VM_READ|VM_EXEC| 85 VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC, 86 vdso_mapping); --- 36 unchanged lines hidden --- |