lkml.org 
[lkml]   [2022]   [Sep]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH V3 0/7] riscv: Add GENERIC_ENTRY, irq stack support
    Date
    From: Guo Ren <guoren@linux.alibaba.com>

    The patches convert riscv to use the generic entry infrastructure from
    kernel/entry/*. Add independent irq stacks (IRQ_STACKS) for percpu to
    prevent kernel stack overflows. Add the HAVE_SOFTIRQ_ON_OWN_STACK
    feature for the IRQ_STACKS config. You can try it directly with [1].

    [1] https://github.com/guoren83/linux/tree/generic_entry_v3

    V3:
    - Fixup CONFIG_COMPAT=n compile error
    - Add THREAD_SIZE_ORDER config
    - Optimize elf_kexec.c warning fixup
    - Add static to irq_stack_ptr definition

    V2:
    Link: https://lore.kernel.org/linux-riscv/20220904072637.8619-1-guoren@kernel.org/
    - Fixup compile error by include "riscv: ptrace: Remove duplicate
    operation"
    - Fixup compile warning
    Reported-by: kernel test robot <lkp@intel.com>
    - Add test repo link in cover letter

    V1:
    Link: https://lore.kernel.org/linux-riscv/20220903163808.1954131-1-guoren@kernel.org/

    Guo Ren (7):
    riscv: elf_kexec: Fixup compile warning
    riscv: compat_syscall_table: Fixup compile warning
    riscv: ptrace: Remove duplicate operation
    riscv: convert to generic entry
    riscv: Support HAVE_IRQ_EXIT_ON_IRQ_STACK
    riscv: Support HAVE_SOFTIRQ_ON_OWN_STACK
    riscv: Add config of thread stack size

    arch/riscv/Kconfig | 19 ++
    arch/riscv/include/asm/csr.h | 1 -
    arch/riscv/include/asm/entry-common.h | 8 +
    arch/riscv/include/asm/irq.h | 3 +
    arch/riscv/include/asm/ptrace.h | 10 +-
    arch/riscv/include/asm/stacktrace.h | 5 +
    arch/riscv/include/asm/syscall.h | 6 +
    arch/riscv/include/asm/thread_info.h | 19 +-
    arch/riscv/include/asm/vmap_stack.h | 28 +++
    arch/riscv/kernel/Makefile | 1 +
    arch/riscv/kernel/elf_kexec.c | 2 +-
    arch/riscv/kernel/entry.S | 255 +++++---------------------
    arch/riscv/kernel/irq.c | 75 ++++++++
    arch/riscv/kernel/ptrace.c | 41 -----
    arch/riscv/kernel/signal.c | 21 +--
    arch/riscv/kernel/sys_riscv.c | 27 +++
    arch/riscv/kernel/traps.c | 11 ++
    arch/riscv/mm/fault.c | 12 +-
    18 files changed, 259 insertions(+), 285 deletions(-)
    create mode 100644 arch/riscv/include/asm/entry-common.h
    create mode 100644 arch/riscv/include/asm/vmap_stack.h

    --
    2.36.1

    \
     
     \ /
      Last update: 2022-09-06 05:55    [W:2.588 / U:0.096 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site