Re: [PATCH] riscv: remove redundant kernel-space generic-y

From: Masahiro Yamada
Date: Wed Jan 09 2019 - 10:16:39 EST


On Thu, Jan 10, 2019 at 12:01 AM Andreas Schwab <schwab@xxxxxxx> wrote:
>
> On Jan 08 2019, Palmer Dabbelt <palmer@xxxxxxxxxx> wrote:
>
> > On Fri, 04 Jan 2019 07:03:20 PST (-0800), yamada.masahiro@xxxxxxxxxxxxx wrote:
> >> On Fri, Jan 4, 2019 at 11:16 AM Palmer Dabbelt <palmer@xxxxxxxxxx> wrote:
> >>>
> >>> On Sun, 16 Dec 2018 06:11:11 PST (-0800), yamada.masahiro@xxxxxxxxxxxxx wrote:
> >>> > This commit removes redundant generic-y defines in
> >>> > arch/riscv/include/asm/Kbuild.
> >>> >
> >>> > [1] It is redundant to define the same generic-y in both
> >>> > arch/$(ARCH)/include/asm/Kbuild and
> >>> > arch/$(ARCH)/include/uapi/asm/Kbuild.
> >>> >
> >>> > Remove the following generic-y:
> >>> >
> >>> > errno.h
> >>> > fcntl.h
> >>> > ioctl.h
> >>> > ioctls.h
> >>> > ipcbuf.h
> >>> > mman.h
> >>> > msgbuf.h
> >>> > param.h
> >>> > poll.h
> >>> > posix_types.h
> >>> > resource.h
> >>> > sembuf.h
> >>> > setup.h
> >>> > shmbuf.h
> >>> > signal.h
> >>> > socket.h
> >>> > sockios.h
> >>> > stat.h
> >>> > statfs.h
> >>> > swab.h
> >>> > termbits.h
> >>> > termios.h
> >>> > types.h
> >>> >
> >>> > [2] It is redundant to define generic-y when arch-specific
> >>> > implementation exists in arch/$(ARCH)/include/asm/*.h
> >>> >
> >>> > Remove the following generic-y:
> >>> >
> >>> > cacheflush.h
> >>> > dma-mapping.h
> >>> > module.h
> >>> >
> >>> > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> >>> > ---
> >>> >
> >>> > arch/riscv/include/asm/Kbuild | 26 --------------------------
> >>> > 1 file changed, 26 deletions(-)
> >>> >
> >>> > diff --git a/arch/riscv/include/asm/Kbuild b/arch/riscv/include/asm/Kbuild
> >>> > index 6a646d9..f7068f3 100644
> >>> > --- a/arch/riscv/include/asm/Kbuild
> >>> > +++ b/arch/riscv/include/asm/Kbuild
> >>> > @@ -1,5 +1,4 @@
> >>> > generic-y += bugs.h
> >>> > -generic-y += cacheflush.h
> >>> > generic-y += checksum.h
> >>> > generic-y += compat.h
> >>> > generic-y += cputime.h
> >>> > @@ -7,18 +6,12 @@ generic-y += device.h
> >>> > generic-y += div64.h
> >>> > generic-y += dma.h
> >>> > generic-y += dma-contiguous.h
> >>> > -generic-y += dma-mapping.h
> >>> > generic-y += emergency-restart.h
> >>> > -generic-y += errno.h
> >>> > generic-y += exec.h
> >>> > generic-y += fb.h
> >>> > -generic-y += fcntl.h
> >>> > generic-y += hardirq.h
> >>> > generic-y += hash.h
> >>> > generic-y += hw_irq.h
> >>> > -generic-y += ioctl.h
> >>> > -generic-y += ioctls.h
> >>> > -generic-y += ipcbuf.h
> >>> > generic-y += irq_regs.h
> >>> > generic-y += irq_work.h
> >>> > generic-y += kdebug.h
> >>> > @@ -27,34 +20,15 @@ generic-y += kvm_para.h
> >>> > generic-y += local.h
> >>> > generic-y += local64.h
> >>> > generic-y += mm-arch-hooks.h
> >>> > -generic-y += mman.h
> >>> > -generic-y += module.h
> >>> > -generic-y += msgbuf.h
> >>> > generic-y += mutex.h
> >>> > -generic-y += param.h
> >>> > generic-y += percpu.h
> >>> > -generic-y += poll.h
> >>> > -generic-y += posix_types.h
> >>> > generic-y += preempt.h
> >>> > -generic-y += resource.h
> >>> > generic-y += scatterlist.h
> >>> > generic-y += sections.h
> >>> > -generic-y += sembuf.h
> >>> > generic-y += serial.h
> >>> > -generic-y += setup.h
> >>> > -generic-y += shmbuf.h
> >>> > generic-y += shmparam.h
> >>> > -generic-y += signal.h
> >>> > -generic-y += socket.h
> >>> > -generic-y += sockios.h
> >>> > -generic-y += stat.h
> >>> > -generic-y += statfs.h
> >>> > -generic-y += swab.h
> >>> > -generic-y += termbits.h
> >>> > -generic-y += termios.h
> >>> > generic-y += topology.h
> >>> > generic-y += trace_clock.h
> >>> > -generic-y += types.h
> >>> > generic-y += unaligned.h
> >>> > generic-y += user.h
> >>> > generic-y += vga.h
> >>>
> >>> Thanks. These just sort of collected there because I hadn't trimmed them. Is
> >>> there a script that checks these?
> >>
> >>
> >> No script is available for now, but
> >> I'd like to turn on warnings to catch some cases:
> >> https://patchwork.kernel.org/patch/10746823/
> >>
> >>
> >> BTW, can I apply this to my tree
> >> along with other cleanups?
> >
> > Acked-by: Palmer Dabbelt <palmer@xxxxxxxxxx>
>
> arch/riscv/include/asm/dma-mapping.h no longer exists.
>
> In file included from ./include/linux/skbuff.h:34,
> from ./include/net/net_namespace.h:36,
> from ./include/linux/inet.h:46,
> from ./include/linux/sunrpc/msg_prot.h:204,
> from ./include/linux/sunrpc/auth.h:16,
> from ./include/linux/nfs_fs.h:31,
> from init/do_mounts.c:22:
> ./include/linux/dma-mapping.h:261:10: fatal error: asm/dma-mapping.h: No such file or directory
> #include <asm/dma-mapping.h>
> ^~~~~~~~~~~~~~~~~~~
> compilation terminated.
> make[1]: *** [scripts/Makefile.build:277: init/do_mounts.o] Error 1


Looks like you tested v1,
which I sent before c5cd037d1c8044fbd131c57822a67a1576eb16e9 was applied.


I picked up v2:
https://patchwork.kernel.org/patch/10746819/

Now, it is already in Linus tree.
8c4fa8b8d48326353afaf6934edd5f1cc49ee90b




--
Best Regards
Masahiro Yamada