mbox series

[v3,0/4] riscv: entry: further clean up and VMAP_STACK fix

Message ID 20221003102921.3973-1-jszhang@kernel.org (mailing list archive)
Headers show
Series riscv: entry: further clean up and VMAP_STACK fix | expand

Message

Jisheng Zhang Oct. 3, 2022, 10:29 a.m. UTC
I planed to do similar generic entry transaction as Guo Ren did[1], and
I had some commits in local. Since Guo has sent out the series, I
dropped my version and just provide those in my local repo but missing
in Guo's series. However, this doesn't mean this series depends on
Guo's series, in fact except the first one, the remaining three patches
are independent on generic entry.

Since v2:
  - the patch of removing wrappers of trace_hardirqs_{on,off} is in
    Guo's v6 generic entry series[2], so remove it.
  - add a new patch to fix kernel info leakage.
  - collect Acked-by tag.
  - the GP saving and restoring macros range from x5 to x31 now per
    Guo's suggestion.

Since v1:
  - consolidate gp saving/restoring in mcount-dyn.S as well
  - avoid non-trival memory waste if NR_CPUs is large
  - collect Reviewed-by tag.

[1]https://lore.kernel.org/linux-riscv/20220918155246.1203293-1-guoren@kernel.org/T/#t
[2]https://lore.kernel.org/linux-riscv/20221002012451.2351127-1-guoren@kernel.org/T/#t

Jisheng Zhang (4):
  riscv: process: fix kernel info leakage
  riscv: consolidate ret_from_kernel_thread into ret_from_fork
  riscv: fix race when vmap stack overflow and remove shadow_stack
  riscv: entry: consolidate general regs saving/restoring

 arch/riscv/include/asm/asm-prototypes.h |   1 -
 arch/riscv/include/asm/asm.h            |  63 ++++++++++
 arch/riscv/include/asm/thread_info.h    |   3 -
 arch/riscv/kernel/asm-offsets.c         |   1 +
 arch/riscv/kernel/entry.S               | 151 +++---------------------
 arch/riscv/kernel/mcount-dyn.S          |  56 +--------
 arch/riscv/kernel/process.c             |   7 +-
 arch/riscv/kernel/traps.c               |  32 ++---
 8 files changed, 103 insertions(+), 211 deletions(-)