Messages in this thread | | | From | Paul Walmsley <> | Subject | [PATCH v3 0/8] riscv: resolve most warnings from sparse | Date | Fri, 18 Oct 2019 01:08:33 -0700 |
| |
Resolve most warnings from the 'sparse' static analysis tool for the arch/riscv codebase. This makes life easier for us as maintainers, and makes it easier for developers to use static analysis tools on their own changes.
This third version drops the patch that adds one of the __riscv_cmodel* preprocessor definitions, and uses __visible for C functions called only by assembly code - both based on some guidance from Luc Van Oostenryck.
This patch series incorporates some changes based on feedback from Christoph Hellwig <hch@lst.de> and Luc Van Oostenryck <luc.vanoostenryck@gmail.com>.
Applies on the current riscv fixes branch that is based on v5.4-rc3.
- Paul
Paul Walmsley (8): riscv: add prototypes for assembly language functions from entry.S riscv: add prototypes for assembly language functions from head.S riscv: init: merge split string literals in preprocessor directive riscv: add missing prototypes riscv: mark some code and data as file-static riscv: add missing header file includes riscv: fp: add missing __user pointer annotations riscv: for C functions called only from assembly, mark with __visible
Kernel object size difference: text data bss dec hex filename 6664246 2136664 312608 9113518 8b0fae vmlinux.rv64.orig 6664178 2136632 312608 9113418 8b0f4a vmlinux.rv64.patched 6444536 1797560 255184 8497280 81a880 vmlinux.rv32.orig 6444492 1797536 255184 8497212 81a83c vmlinux.rv32.patched
arch/riscv/include/asm/irq.h | 6 ++++++ arch/riscv/include/asm/pgtable.h | 2 ++ arch/riscv/include/asm/processor.h | 4 ++++ arch/riscv/include/asm/ptrace.h | 2 ++ arch/riscv/include/asm/smp.h | 2 ++ arch/riscv/include/asm/switch_to.h | 1 + arch/riscv/kernel/cpufeature.c | 1 + arch/riscv/kernel/entry.h | 29 +++++++++++++++++++++++++++++ arch/riscv/kernel/head.h | 21 +++++++++++++++++++++ arch/riscv/kernel/module-sections.c | 1 + arch/riscv/kernel/process.c | 2 ++ arch/riscv/kernel/ptrace.c | 4 ++-- arch/riscv/kernel/reset.c | 1 + arch/riscv/kernel/setup.c | 2 ++ arch/riscv/kernel/signal.c | 6 ++++-- arch/riscv/kernel/smp.c | 2 ++ arch/riscv/kernel/smpboot.c | 3 +++ arch/riscv/kernel/stacktrace.c | 6 ++++-- arch/riscv/kernel/syscall_table.c | 1 + arch/riscv/kernel/time.c | 1 + arch/riscv/kernel/traps.c | 2 ++ arch/riscv/kernel/vdso.c | 3 ++- arch/riscv/mm/context.c | 1 + arch/riscv/mm/fault.c | 2 ++ arch/riscv/mm/init.c | 17 ++++++++++------- arch/riscv/mm/sifive_l2_cache.c | 2 +- 26 files changed, 109 insertions(+), 15 deletions(-) create mode 100644 arch/riscv/kernel/entry.h create mode 100644 arch/riscv/kernel/head.h
-- 2.23.0
| |