vdso.c (002c6ca75289a4ac4f6738213dd2d258704886e4) vdso.c (8032bf1233a74627ce69b803608e650f3f35971c)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Author: Huacai Chen <chenhuacai@loongson.cn>
4 * Copyright (C) 2020-2022 Loongson Technology Corporation Limited
5 */
6
7#include <linux/binfmts.h>
8#include <linux/elf.h>

--- 64 unchanged lines hidden (view full) ---

73}
74subsys_initcall(init_vdso);
75
76static unsigned long vdso_base(void)
77{
78 unsigned long base = STACK_TOP;
79
80 if (current->flags & PF_RANDOMIZE) {
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Author: Huacai Chen <chenhuacai@loongson.cn>
4 * Copyright (C) 2020-2022 Loongson Technology Corporation Limited
5 */
6
7#include <linux/binfmts.h>
8#include <linux/elf.h>

--- 64 unchanged lines hidden (view full) ---

73}
74subsys_initcall(init_vdso);
75
76static unsigned long vdso_base(void)
77{
78 unsigned long base = STACK_TOP;
79
80 if (current->flags & PF_RANDOMIZE) {
81 base += prandom_u32_max(VDSO_RANDOMIZE_SIZE);
81 base += get_random_u32_below(VDSO_RANDOMIZE_SIZE);
82 base = PAGE_ALIGN(base);
83 }
84
85 return base;
86}
87
88int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
89{

--- 54 unchanged lines hidden ---
82 base = PAGE_ALIGN(base);
83 }
84
85 return base;
86}
87
88int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
89{

--- 54 unchanged lines hidden ---