mbox series

[00/17] -Wmissing-prototype warning fixes

Message ID 20230810141947.1236730-1-arnd@kernel.org
Headers show
Series -Wmissing-prototype warning fixes | expand

Message

Arnd Bergmann Aug. 10, 2023, 2:19 p.m. UTC
From: Arnd Bergmann <arnd@arndb.de>

Most of the patches I sent so far for the -Wmissing-prototype warnings
have made it into linux-next now. There are a few that I'm resending
now as nobody has picked them up, and then a number of fixes that I
found while test-building across all architectures rather than just the
ones I usually test.

The first 15 patches in this series should be uncontroversial, so
I expect that either a subsystem maintainer or Andrew Morton can
apply these directly.

For the last two patches, these might still need some debate about how
to handle them. I added a Kconfig option to turn off most of the missing
prototype warnings in the architectures that nobody has fixed yet,
see patch 16 for those. The last patch does cause some known warnings
and likely unknown ones for architectures other than x86 and arm,
so applying it now will bring new problems, but not applying it also
means that new warnings creep in, so I think this is mainly a question
of what the best timing is for having this in linux-next.

Arnd Bergmann (17):
  [RESEND] jffs2: mark __jffs2_dbg_superblock_counts() static
  [RESEND] irq_work: consolidate arch_irq_work_raise prototypes
  [RESEND] ida: make 'ida_dump' static
  pci: sysfs: move declarations to linux/pci.h
  swim3: mark swim3_init() static
  macintosh/ams: mark ams_init() static
  scsi: qlogicpti: mark qlogicpti_info() static
  microblaze: mark flush_dcache_folio() inline
  parport: gsc: mark init function static
  zorro: include zorro.h in names.c
  scsi: gvp11: remove unused gvp11_setup() function
  time: make sysfs_get_uname() function visible in header
  stackleak: add declarations for global functions
  kprobes: unify kprobes_exceptions_nofify() prototypes
  arch: fix asm-offsets.c building with -Wmissing-prototypes
  [RFC] arch: turn -Wmissing-prototypes off conditionally
  [RFC] Makefile.extrawarn: turn on missing-prototypes again

 arch/alpha/Kbuild                        |  2 ++
 arch/alpha/include/asm/pci.h             |  3 ---
 arch/alpha/kernel/asm-offsets.c          |  2 +-
 arch/alpha/lib/Makefile                  |  1 +
 arch/arc/Kbuild                          |  2 ++
 arch/arc/include/asm/kprobes.h           |  3 ---
 arch/arm/include/asm/irq_work.h          |  2 --
 arch/arm/include/asm/kprobes.h           |  2 --
 arch/arm64/include/asm/irq_work.h        |  2 --
 arch/arm64/include/asm/kprobes.h         |  2 --
 arch/csky/Kbuild                         |  2 ++
 arch/csky/include/asm/irq_work.h         |  2 +-
 arch/hexagon/Kbuild                      |  2 ++
 arch/ia64/Kbuild                         |  2 ++
 arch/ia64/include/asm/kprobes.h          |  2 --
 arch/ia64/kernel/asm-offsets.c           |  2 +-
 arch/ia64/lib/Makefile                   |  1 +
 arch/loongarch/Kbuild                    |  2 ++
 arch/loongarch/kernel/asm-offsets.c      | 12 ++++++++++++
 arch/m68k/Kbuild                         |  2 ++
 arch/m68k/lib/Makefile                   |  1 +
 arch/microblaze/Kbuild                   |  2 ++
 arch/microblaze/include/asm/cacheflush.h |  2 +-
 arch/mips/Kbuild                         |  2 ++
 arch/mips/boot/compressed/Makefile       |  3 ++-
 arch/mips/include/asm/kprobes.h          |  2 --
 arch/nios2/Kbuild                        |  2 ++
 arch/nios2/lib/Makefile                  |  1 +
 arch/openrisc/Kbuild                     |  2 ++
 arch/parisc/Kbuild                       |  2 ++
 arch/parisc/lib/Makefile                 |  1 +
 arch/powerpc/include/asm/irq_work.h      |  1 -
 arch/powerpc/include/asm/kprobes.h       |  2 --
 arch/riscv/include/asm/irq_work.h        |  2 +-
 arch/s390/include/asm/irq_work.h         |  2 --
 arch/s390/include/asm/kprobes.h          |  2 --
 arch/sh/Kbuild                           |  2 ++
 arch/sh/boot/compressed/Makefile         |  1 +
 arch/sh/include/asm/kprobes.h            |  2 --
 arch/sparc/Kbuild                        |  2 ++
 arch/sparc/include/asm/kprobes.h         |  2 --
 arch/sparc/kernel/asm-offsets.c          | 13 ++-----------
 arch/sparc/lib/Makefile                  |  1 +
 arch/sparc/prom/Makefile                 |  1 +
 arch/x86/include/asm/irq_work.h          |  1 -
 arch/x86/include/asm/kprobes.h           |  2 --
 arch/xtensa/Kbuild                       |  2 ++
 arch/xtensa/boot/lib/Makefile            |  2 ++
 drivers/block/swim3.c                    |  2 +-
 drivers/macintosh/ams/ams-core.c         |  2 +-
 drivers/parport/parport_gsc.c            |  2 +-
 drivers/scsi/gvp11.c                     |  5 -----
 drivers/scsi/qlogicpti.c                 |  2 +-
 drivers/zorro/names.c                    |  1 +
 fs/jffs2/debug.c                         |  2 +-
 include/linux/irq_work.h                 |  3 +++
 include/linux/kprobes.h                  |  4 ++++
 include/linux/pci.h                      |  5 +++++
 include/linux/stackleak.h                |  6 ++++++
 init/Kconfig                             | 10 ++++++++++
 kernel/time/tick-internal.h              |  3 ++-
 lib/test_ida.c                           |  2 +-
 scripts/Makefile.extrawarn               |  5 +++--
 63 files changed, 101 insertions(+), 63 deletions(-)

Comments

Palmer Dabbelt Aug. 16, 2023, 2:38 p.m. UTC | #1
On Thu, 10 Aug 2023 07:19:18 PDT (-0700), arnd@kernel.org wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> Most of the patches I sent so far for the -Wmissing-prototype warnings
> have made it into linux-next now. There are a few that I'm resending
> now as nobody has picked them up, and then a number of fixes that I
> found while test-building across all architectures rather than just the
> ones I usually test.
>
> The first 15 patches in this series should be uncontroversial, so
> I expect that either a subsystem maintainer or Andrew Morton can
> apply these directly.
>
> For the last two patches, these might still need some debate about how
> to handle them. I added a Kconfig option to turn off most of the missing
> prototype warnings in the architectures that nobody has fixed yet,
> see patch 16 for those. The last patch does cause some known warnings
> and likely unknown ones for architectures other than x86 and arm,
> so applying it now will bring new problems, but not applying it also
> means that new warnings creep in, so I think this is mainly a question
> of what the best timing is for having this in linux-next.
>
> Arnd Bergmann (17):
>   [RESEND] jffs2: mark __jffs2_dbg_superblock_counts() static
>   [RESEND] irq_work: consolidate arch_irq_work_raise prototypes
>   [RESEND] ida: make 'ida_dump' static
>   pci: sysfs: move declarations to linux/pci.h
>   swim3: mark swim3_init() static
>   macintosh/ams: mark ams_init() static
>   scsi: qlogicpti: mark qlogicpti_info() static
>   microblaze: mark flush_dcache_folio() inline
>   parport: gsc: mark init function static
>   zorro: include zorro.h in names.c
>   scsi: gvp11: remove unused gvp11_setup() function
>   time: make sysfs_get_uname() function visible in header
>   stackleak: add declarations for global functions
>   kprobes: unify kprobes_exceptions_nofify() prototypes
>   arch: fix asm-offsets.c building with -Wmissing-prototypes
>   [RFC] arch: turn -Wmissing-prototypes off conditionally
>   [RFC] Makefile.extrawarn: turn on missing-prototypes again
>
>  arch/alpha/Kbuild                        |  2 ++
>  arch/alpha/include/asm/pci.h             |  3 ---
>  arch/alpha/kernel/asm-offsets.c          |  2 +-
>  arch/alpha/lib/Makefile                  |  1 +
>  arch/arc/Kbuild                          |  2 ++
>  arch/arc/include/asm/kprobes.h           |  3 ---
>  arch/arm/include/asm/irq_work.h          |  2 --
>  arch/arm/include/asm/kprobes.h           |  2 --
>  arch/arm64/include/asm/irq_work.h        |  2 --
>  arch/arm64/include/asm/kprobes.h         |  2 --
>  arch/csky/Kbuild                         |  2 ++
>  arch/csky/include/asm/irq_work.h         |  2 +-
>  arch/hexagon/Kbuild                      |  2 ++
>  arch/ia64/Kbuild                         |  2 ++
>  arch/ia64/include/asm/kprobes.h          |  2 --
>  arch/ia64/kernel/asm-offsets.c           |  2 +-
>  arch/ia64/lib/Makefile                   |  1 +
>  arch/loongarch/Kbuild                    |  2 ++
>  arch/loongarch/kernel/asm-offsets.c      | 12 ++++++++++++
>  arch/m68k/Kbuild                         |  2 ++
>  arch/m68k/lib/Makefile                   |  1 +
>  arch/microblaze/Kbuild                   |  2 ++
>  arch/microblaze/include/asm/cacheflush.h |  2 +-
>  arch/mips/Kbuild                         |  2 ++
>  arch/mips/boot/compressed/Makefile       |  3 ++-
>  arch/mips/include/asm/kprobes.h          |  2 --
>  arch/nios2/Kbuild                        |  2 ++
>  arch/nios2/lib/Makefile                  |  1 +
>  arch/openrisc/Kbuild                     |  2 ++
>  arch/parisc/Kbuild                       |  2 ++
>  arch/parisc/lib/Makefile                 |  1 +
>  arch/powerpc/include/asm/irq_work.h      |  1 -
>  arch/powerpc/include/asm/kprobes.h       |  2 --
>  arch/riscv/include/asm/irq_work.h        |  2 +-
>  arch/s390/include/asm/irq_work.h         |  2 --
>  arch/s390/include/asm/kprobes.h          |  2 --
>  arch/sh/Kbuild                           |  2 ++
>  arch/sh/boot/compressed/Makefile         |  1 +
>  arch/sh/include/asm/kprobes.h            |  2 --
>  arch/sparc/Kbuild                        |  2 ++
>  arch/sparc/include/asm/kprobes.h         |  2 --
>  arch/sparc/kernel/asm-offsets.c          | 13 ++-----------
>  arch/sparc/lib/Makefile                  |  1 +
>  arch/sparc/prom/Makefile                 |  1 +
>  arch/x86/include/asm/irq_work.h          |  1 -
>  arch/x86/include/asm/kprobes.h           |  2 --
>  arch/xtensa/Kbuild                       |  2 ++
>  arch/xtensa/boot/lib/Makefile            |  2 ++
>  drivers/block/swim3.c                    |  2 +-
>  drivers/macintosh/ams/ams-core.c         |  2 +-
>  drivers/parport/parport_gsc.c            |  2 +-
>  drivers/scsi/gvp11.c                     |  5 -----
>  drivers/scsi/qlogicpti.c                 |  2 +-
>  drivers/zorro/names.c                    |  1 +
>  fs/jffs2/debug.c                         |  2 +-
>  include/linux/irq_work.h                 |  3 +++
>  include/linux/kprobes.h                  |  4 ++++
>  include/linux/pci.h                      |  5 +++++
>  include/linux/stackleak.h                |  6 ++++++
>  init/Kconfig                             | 10 ++++++++++
>  kernel/time/tick-internal.h              |  3 ++-
>  lib/test_ida.c                           |  2 +-
>  scripts/Makefile.extrawarn               |  5 +++--
>  63 files changed, 101 insertions(+), 63 deletions(-)

Acked-by: Palmer Dabbelt <palmer@rivosinc.com> # RISC-V
Martin K. Petersen Aug. 25, 2023, 1:12 a.m. UTC | #2
On Thu, 10 Aug 2023 16:19:18 +0200, Arnd Bergmann wrote:

> Most of the patches I sent so far for the -Wmissing-prototype warnings
> have made it into linux-next now. There are a few that I'm resending
> now as nobody has picked them up, and then a number of fixes that I
> found while test-building across all architectures rather than just the
> ones I usually test.
> 
> The first 15 patches in this series should be uncontroversial, so
> I expect that either a subsystem maintainer or Andrew Morton can
> apply these directly.
> 
> [...]

Applied to 6.6/scsi-queue, thanks!

[07/17] scsi: qlogicpti: mark qlogicpti_info() static
        https://git.kernel.org/mkp/scsi/c/71cc486335c4
[11/17] scsi: gvp11: remove unused gvp11_setup() function
        https://git.kernel.org/mkp/scsi/c/bfaa4a0ce1bb
Michael Schmitz Aug. 25, 2023, 1:30 a.m. UTC | #3
Hi Martin, Arnd,

On 25/08/23 13:12, Martin K. Petersen wrote:
> On Thu, 10 Aug 2023 16:19:18 +0200, Arnd Bergmann wrote:
>
>> Most of the patches I sent so far for the -Wmissing-prototype warnings
>> have made it into linux-next now. There are a few that I'm resending
>> now as nobody has picked them up, and then a number of fixes that I
>> found while test-building across all architectures rather than just the
>> ones I usually test.
>>
>> The first 15 patches in this series should be uncontroversial, so
>> I expect that either a subsystem maintainer or Andrew Morton can
>> apply these directly.
>>
>> [...]
> Applied to 6.6/scsi-queue, thanks!
>
> [07/17] scsi: qlogicpti: mark qlogicpti_info() static
>          https://git.kernel.org/mkp/scsi/c/71cc486335c4
> [11/17] scsi: gvp11: remove unused gvp11_setup() function
>          https://git.kernel.org/mkp/scsi/c/bfaa4a0ce1bb

I somehow missed that one ...

The gvp11_setup() function was probably a relic from the times before 
module parameters.

Since gvp11_xfer_mask appears to be required for some Amiga systems to 
set the DMA mask, I'd best send a patch to add such a module parameter ...

Do you know any details around the use of DMA masks for Amiga WD33C93 
drivers, Geert?

Cheers,

     Michael


>
Geert Uytterhoeven Aug. 25, 2023, 7:39 a.m. UTC | #4
Hi Michael,

On Fri, Aug 25, 2023 at 3:31 AM Michael Schmitz <schmitzmic@gmail.com> wrote:
> On 25/08/23 13:12, Martin K. Petersen wrote:
> > [11/17] scsi: gvp11: remove unused gvp11_setup() function
> >          https://git.kernel.org/mkp/scsi/c/bfaa4a0ce1bb
>
> I somehow missed that one ...
>
> The gvp11_setup() function was probably a relic from the times before
> module parameters.
>
> Since gvp11_xfer_mask appears to be required for some Amiga systems to
> set the DMA mask, I'd best send a patch to add such a module parameter ...
>
> Do you know any details around the use of DMA masks for Amiga WD33C93
> drivers, Geert?

Doh, it's been a while, and I never had an affected system.
Probably it's needed on A2000 with an accelerator card and GVP II SCSI,
to prevent DMA to RAM banks that do not support fast DMA cycles.

Gr{oetje,eeting}s,

                        Geert
Michael Schmitz Aug. 25, 2023, 10:44 p.m. UTC | #5
Hi Geert,

Am 25.08.23 um 19:39 schrieb Geert Uytterhoeven:
> Hi Michael,
>
> On Fri, Aug 25, 2023 at 3:31 AM Michael Schmitz <schmitzmic@gmail.com> wrote:
>> On 25/08/23 13:12, Martin K. Petersen wrote:
>>> [11/17] scsi: gvp11: remove unused gvp11_setup() function
>>>          https://git.kernel.org/mkp/scsi/c/bfaa4a0ce1bb
>> I somehow missed that one ...
>>
>> The gvp11_setup() function was probably a relic from the times before
>> module parameters.
>>
>> Since gvp11_xfer_mask appears to be required for some Amiga systems to
>> set the DMA mask, I'd best send a patch to add such a module parameter ...
>>
>> Do you know any details around the use of DMA masks for Amiga WD33C93
>> drivers, Geert?
> Doh, it's been a while, and I never had an affected system.
> Probably it's needed on A2000 with an accelerator card and GVP II SCSI,
> to prevent DMA to RAM banks that do not support fast DMA cycles.

Thanks, that's good enough for me.

Linux 2.0 had this comment:

|/* * DMA transfer mask for GVP Series II SCSI controller. * Some
versions can only DMA into the 24 bit address space * (0->16M). Others
can DMA into the full 32 bit address * space. The default is to only
allow DMA into the 24 bit * address space. The "gvp11=0xFFFFFFFE" setup
parameter can * be supplied to force an alternate (32 bit) mask. */ |

|We now handle that (since 2.6.35) through masks defined in
gvp11_zorro_tbl[] (though I note these don't account for unaligned
addresses such as implied by the example in the comment. Are unaligned
DMA buffers still possible today?). Would that cover the 'A2000 with
accelerator' case?
|

||

I'm happy to send a patch if an override to the device default DMA mask
is still necessary.

(Incidentally - did you ever publish the m68k full history tree anywhere
in git?)

Cheers,

    Michael


>
> Gr{oetje,eeting}s,
>
>                         Geert
>
Geert Uytterhoeven Aug. 28, 2023, 6:42 a.m. UTC | #6
On Sat, Aug 26, 2023 at 12:44 AM Michael Schmitz <schmitzmic@gmail.com> wrote:
> (Incidentally - did you ever publish the m68k full history tree anywhere
> in git?)

You mean the gitified version of the Linux/m68k CVS tree Ralf created
for me because my machine wasn't powerful enough?
No, and I should look into doing that...

Gr{oetje,eeting}s,

                        Geert
Michael Schmitz Aug. 28, 2023, 8:07 a.m. UTC | #7
Hi Geert,

Am 28.08.2023 um 18:42 schrieb Geert Uytterhoeven:
> On Sat, Aug 26, 2023 at 12:44 AM Michael Schmitz <schmitzmic@gmail.com> wrote:
>> (Incidentally - did you ever publish the m68k full history tree anywhere
>> in git?)
>
> You mean the gitified version of the Linux/m68k CVS tree Ralf created
> for me because my machine wasn't powerful enough?

The very same ...

> No, and I should look into doing that...

No pressure!

Cheers,

	Michael

>
> Gr{oetje,eeting}s,
>
>                         Geert
>