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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

Changes:
--------
v2:
  - Added common PAGE_SIZE and PAGE_MASK definitions.
  - Added opencoded macros where not defined.
  - Dropped VDSO_PAGE_* redefinitions.

Cc: Andy Lutomirski <luto@xxxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: Jason A. Donenfeld <Jason@xxxxxxxxx>
Cc: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Cc: Nicholas Piggin <npiggin@xxxxxxxxx>
Cc: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
Cc: Naveen N Rao <naveen@xxxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxxxx>
Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
Cc: H. Peter Anvin <hpa@xxxxxxxxx>
Cc: Theodore Ts'o <tytso@xxxxxxx>
Cc: Arnd Bergmann <arnd@xxxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
Cc: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx>

Vincenzo Frascino (8):
  x86: vdso: Introduce asm/vdso/mman.h
  arm64: vdso: Introduce asm/vdso/mman.h
  vdso: Introduce vdso/mman.h
  vdso: Introduce vdso/page.h
  x86: vdso: Modify asm/vdso/getrandom.h to include datapage
  vdso: Modify vdso/getrandom.h to include the asm header
  vdso: Introduce uapi/vdso/random.h
  vdso: Modify getrandom to include the correct namespace.

 arch/alpha/include/asm/page.h         |  6 +----
 arch/arc/include/uapi/asm/page.h      |  7 +++--
 arch/arm/include/asm/page.h           |  5 +---
 arch/arm64/include/asm/page-def.h     |  5 +---
 arch/arm64/include/asm/vdso/mman.h    | 15 +++++++++++
 arch/csky/include/asm/page.h          |  8 ++----
 arch/hexagon/include/asm/page.h       |  4 +--
 arch/loongarch/include/asm/page.h     |  7 +----
 arch/m68k/include/asm/page.h          |  6 ++---
 arch/microblaze/include/asm/page.h    |  5 +---
 arch/mips/include/asm/page.h          |  7 +----
 arch/nios2/include/asm/page.h         |  7 +----
 arch/openrisc/include/asm/page.h      | 11 +-------
 arch/parisc/include/asm/page.h        |  4 +--
 arch/powerpc/include/asm/page.h       | 10 +------
 arch/riscv/include/asm/page.h         |  4 +--
 arch/s390/include/asm/page.h          |  4 +--
 arch/sh/include/asm/page.h            |  6 ++---
 arch/sparc/include/asm/page_32.h      |  4 +--
 arch/sparc/include/asm/page_64.h      |  4 +--
 arch/um/include/asm/page.h            |  5 +---
 arch/x86/include/asm/page_types.h     |  5 +---
 arch/x86/include/asm/vdso/getrandom.h |  2 ++
 arch/x86/include/asm/vdso/mman.h      | 15 +++++++++++
 arch/xtensa/include/asm/page.h        |  8 +-----
 include/uapi/linux/random.h           | 26 +-----------------
 include/uapi/vdso/random.h            | 38 +++++++++++++++++++++++++++
 include/vdso/datapage.h               |  2 ++
 include/vdso/getrandom.h              |  1 +
 include/vdso/mman.h                   |  7 +++++
 include/vdso/page.h                   | 18 +++++++++++++
 lib/vdso/getrandom.c                  | 22 ++++++++--------
 32 files changed, 137 insertions(+), 141 deletions(-)
 create mode 100644 arch/arm64/include/asm/vdso/mman.h
 create mode 100644 arch/x86/include/asm/vdso/mman.h
 create mode 100644 include/uapi/vdso/random.h
 create mode 100644 include/vdso/mman.h
 create mode 100644 include/vdso/page.h

-- 
2.34.1





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux