[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191024225838.27743-1-paul.walmsley@sifive.com>
Date:   Thu, 24 Oct 2019 15:58:32 -0700
From:   Paul Walmsley <paul.walmsley@...ive.com>
To:     linux-riscv@...ts.infradead.org
Cc:     linux-kernel@...r.kernel.org, hch@....dev, greentime.hu@...ive.com,
        luc.vanoostenryck@...il.com
Subject: [PATCH v4 0/8] riscv: resolve most warnings from sparse
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 fourth version drops some patches that were in the previous
versions, and restructures some of what was left.  Much of this was
based on feedback from Christoph Hellwig <hch@....de>, Luc Van
Oostenryck <luc.vanoostenryck@...il.com>, and Greentime Hu
<greentime.hu@...ive.com>.
Applies on the current riscv fixes branch, which itself is based on
v5.4-rc5.  Tested on RV32 QEMU, RV64 QEMU, and the SiFive HiFive
Unleashed board.
- Paul
Paul Walmsley (6):
  riscv: add prototypes for assembly language functions from head.S
  riscv: init: merge split string literals in preprocessor directive
  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
6662533	2136168	 312608	9111309	 8b070d	vmlinux.rv64.orig
6662537	2136160	 312608	9111305	 8b0709	vmlinux.rv64.patched
6443041	1792976	 255184	8491201	 8190c1	vmlinux.rv32.orig
6443021	1792968	 255184	8491173	 8190a5	vmlinux.rv32.patched
 arch/riscv/include/asm/irq.h        |  3 +++
 arch/riscv/include/asm/switch_to.h  |  1 +
 arch/riscv/kernel/cpufeature.c      |  1 +
 arch/riscv/kernel/head.h            | 21 +++++++++++++++++++++
 arch/riscv/kernel/irq.c             |  2 +-
 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          |  8 ++++----
 arch/riscv/kernel/smp.c             |  2 ++
 arch/riscv/kernel/smpboot.c         |  5 ++++-
 arch/riscv/kernel/syscall_table.c   |  1 +
 arch/riscv/kernel/time.c            |  1 +
 arch/riscv/kernel/traps.c           |  5 +++--
 arch/riscv/kernel/vdso.c            |  3 ++-
 arch/riscv/mm/context.c             |  1 +
 arch/riscv/mm/fault.c               |  2 ++
 arch/riscv/mm/init.c                |  5 +++--
 arch/riscv/mm/sifive_l2_cache.c     |  2 +-
 21 files changed, 59 insertions(+), 14 deletions(-)
 create mode 100644 arch/riscv/kernel/head.h
-- 
2.24.0.rc0
Powered by blists - more mailing lists
 
