All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Walmsley <paul.walmsley@sifive.com>
To: linux-riscv@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH v3 0/8] riscv: resolve most warnings from sparse
Date: Fri, 18 Oct 2019 01:08:33 -0700	[thread overview]
Message-ID: <20191018080841.26712-1-paul.walmsley@sifive.com> (raw)

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


WARNING: multiple messages have this Message-ID (diff)
From: Paul Walmsley <paul.walmsley@sifive.com>
To: linux-riscv@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH v3 0/8] riscv: resolve most warnings from sparse
Date: Fri, 18 Oct 2019 01:08:33 -0700	[thread overview]
Message-ID: <20191018080841.26712-1-paul.walmsley@sifive.com> (raw)

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


_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

             reply	other threads:[~2019-10-18  8:08 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-18  8:08 Paul Walmsley [this message]
2019-10-18  8:08 ` [PATCH v3 0/8] riscv: resolve most warnings from sparse Paul Walmsley
2019-10-18  8:08 ` [PATCH v3 1/8] riscv: add prototypes for assembly language functions from entry.S Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:49   ` Christoph Hellwig
2019-10-18 15:49     ` Christoph Hellwig
2019-10-24 23:59     ` Paul Walmsley
2019-10-24 23:59       ` Paul Walmsley
2019-10-18  8:08 ` [PATCH v3 2/8] riscv: add prototypes for assembly language functions from head.S Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18  8:08 ` [PATCH v3 3/8] riscv: init: merge split string literals in preprocessor directive Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:50   ` Christoph Hellwig
2019-10-18 15:50     ` Christoph Hellwig
2019-10-18  8:08 ` [PATCH v3 4/8] riscv: add missing prototypes Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:54   ` Christoph Hellwig
2019-10-18 15:54     ` Christoph Hellwig
2019-10-18  8:08 ` [PATCH v3 5/8] riscv: mark some code and data as file-static Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:55   ` Christoph Hellwig
2019-10-18 15:55     ` Christoph Hellwig
2019-10-23  5:46   ` Greentime Hu
2019-10-23  5:46     ` Greentime Hu
2019-10-23 22:32     ` Paul Walmsley
2019-10-23 22:32       ` Paul Walmsley
2019-10-18  8:08 ` [PATCH v3 6/8] riscv: add missing header file includes Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:55   ` Christoph Hellwig
2019-10-18 15:55     ` Christoph Hellwig
2019-10-18  8:08 ` [PATCH v3 7/8] riscv: fp: add missing __user pointer annotations Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:56   ` Christoph Hellwig
2019-10-18 15:56     ` Christoph Hellwig
2019-10-18  8:08 ` [PATCH v3 8/8] riscv: for C functions called only from assembly, mark with __visible Paul Walmsley
2019-10-18  8:08   ` Paul Walmsley
2019-10-18 15:56   ` Christoph Hellwig
2019-10-18 15:56     ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191018080841.26712-1-paul.walmsley@sifive.com \
    --to=paul.walmsley@sifive.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.