[PATCH 0/8] riscv: resolve most warnings from sparse

From: Paul Walmsley
Date: Thu Oct 17 2019 - 20:49:48 EST


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 patch series incorporates some changes based on feedback from
Christoph Hellwig <hch@xxxxxx>.

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: ensure RISC-V C model definitions are passed to static
analyzers
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

Kernel object size difference:
text data bss dec hex filename
6664206 2136568 312608 9113382 8b0f26 vmlinux.orig
6664186 2136552 312608 9113346 8b0f02 vmlinux.patched

arch/riscv/Makefile | 2 ++
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 | 4 ++++
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/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, 111 insertions(+), 13 deletions(-)
create mode 100644 arch/riscv/kernel/entry.h
create mode 100644 arch/riscv/kernel/head.h

--
2.23.0