[PATCH 0/9] vdso: Use only headers from the vdso/ namespace

Vincenzo Frascino
2024-09-03T15:14:54Z

The recent implementation of getrandom in the generic vdso library,
includes headers from outside of the vdso/ namespace.

The purpose of this patch series is to refactor the code to make sure
that the library uses only the allowed namespace.

The series has been rebased on [1] to simplify the testing.

[1] git://git.kernel.org/pub/scm/linux/kernel/git/crng/random.git master

Cc: Andy Lutomirski <luto@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason A. Donenfeld <Jason@zx2c4.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Naveen N Rao <naveen@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Theodore Ts'o <tytso@mit.edu>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>

Vincenzo Frascino (9):
x86: vdso: Introduce asm/vdso/mman.h
vdso: Introduce vdso/mman.h
x86: vdso: Introduce asm/vdso/page.h
vdso: Introduce vdso/page.h
vdso: Split linux/minmax.h
vdso: Split linux/array_size.h
x86: vdso: Modify asm/vdso/getrandom.h to include datapage
vdso: Modify vdso/getrandom.h to include the asm header
vdso: Modify getrandom to include the correct namespace

arch/x86/include/asm/vdso/getrandom.h | 2 ++
arch/x86/include/asm/vdso/mman.h | 15 +++++++++++
arch/x86/include/asm/vdso/page.h | 15 +++++++++++
include/linux/array_size.h | 8 +-----
include/linux/minmax.h | 28 +-------------------
include/vdso/array_size.h | 13 +++++++++
include/vdso/getrandom.h | 1 +
include/vdso/minmax.h | 38 +++++++++++++++++++++++++++
include/vdso/mman.h | 7 +++++
include/vdso/page.h | 7 +++++
lib/vdso/getrandom.c | 22 ++++++----------
11 files changed, 108 insertions(+), 48 deletions(-)
create mode 100644 arch/x86/include/asm/vdso/mman.h
create mode 100644 arch/x86/include/asm/vdso/page.h
create mode 100644 include/vdso/array_size.h
create mode 100644 include/vdso/minmax.h
create mode 100644 include/vdso/mman.h
create mode 100644 include/vdso/page.h

--
2.34.1