From mboxrd@z Thu Jan 1 00:00:00 1970 From: Firoz Khan Subject: Re: [PATCH v2 3/3] microblaze: uapi header and system call table file generation Date: Thu, 4 Oct 2018 16:05:29 +0530 Message-ID: References: <1538397784-4214-1-git-send-email-firoz.khan@linaro.org> <1538397784-4214-4-git-send-email-firoz.khan@linaro.org> <0741f810-58c9-dcf3-8c1c-93860c08e428@xilinx.com> <440fc4a0-cd4e-c8fc-9278-928cf5b7cd92@xilinx.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: In-Reply-To: <440fc4a0-cd4e-c8fc-9278-928cf5b7cd92@xilinx.com> Sender: linux-kernel-owner@vger.kernel.org To: Michal Simek Cc: Michal Simek , Greg Kroah-Hartman , Philippe Ombredanne , Thomas Gleixner , Kate Stewart , y2038 Mailman List , Linux Kernel Mailing List , Linux-Arch , Arnd Bergmann , Deepa Dinamani , Marcin Juszkiewicz List-Id: linux-arch.vger.kernel.org Hi Michal, On Wed, 3 Oct 2018 at 16:56, Michal Simek wrote: > > On 3.10.2018 07:08, Firoz Khan wrote: > > Hi Michal, > > > > On Tue, 2 Oct 2018 at 19:37, Michal Simek wrote: > >> > >> On 1.10.2018 14:43, Firoz Khan wrote: > >>> System call table generation script must be run to generate > >>> unistd_32.h and syscall_table.h files. This patch will have > >>> changes which will invokes the script. > >>> > >>> This patch will generate unistd_32.h and syscall_table.h > >>> files by the syscall table generation script invoked by > >>> arch/microblaze/Makefile and the generated files against the > >>> removed files will be identical. > >>> > >>> The generated uapi header file will be included in > >>> uapi/asm/unistd.h and generated system call table support > >>> file will be included by kernel/syscall_table.S file. > >>> > >>> Signed-off-by: Firoz Khan > >>> --- > >>> arch/microblaze/Makefile | 3 + > >>> arch/microblaze/include/asm/Kbuild | 1 + > >>> arch/microblaze/include/uapi/asm/Kbuild | 1 + > >>> arch/microblaze/include/uapi/asm/unistd.h | 411 +----------------------------- > >>> arch/microblaze/kernel/syscall_table.S | 406 +---------------------------- > >>> 5 files changed, 10 insertions(+), 812 deletions(-) > >>> > >>> diff --git a/arch/microblaze/Makefile b/arch/microblaze/Makefile > >>> index 4f3ab57..cda5e03 100644 > >>> --- a/arch/microblaze/Makefile > >>> +++ b/arch/microblaze/Makefile > >>> @@ -81,6 +81,9 @@ all: linux.bin > >>> archclean: > >>> $(Q)$(MAKE) $(clean)=$(boot) > >>> > >>> +archheaders: > >>> + $(Q)$(MAKE) $(build)=arch/microblaze/kernel/syscalls all > >>> + > >>> linux.bin linux.bin.gz linux.bin.ub: vmlinux > >>> $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ > >>> > >>> diff --git a/arch/microblaze/include/asm/Kbuild b/arch/microblaze/include/asm/Kbuild > >>> index 569ba9e..d64f5e7 100644 > >>> --- a/arch/microblaze/include/asm/Kbuild > >>> +++ b/arch/microblaze/include/asm/Kbuild > >>> @@ -31,3 +31,4 @@ generic-y += trace_clock.h > >>> generic-y += vga.h > >>> generic-y += word-at-a-time.h > >>> generic-y += xor.h > >>> +generic-y += syscall_table.h > >>> \ No newline at end of file > >> > >> Still the problem with "No newline at end of file" > >> > >>> diff --git a/arch/microblaze/include/uapi/asm/Kbuild b/arch/microblaze/include/uapi/asm/Kbuild > >>> index 2c6a6bf..3a40659 100644 > >>> --- a/arch/microblaze/include/uapi/asm/Kbuild > >>> +++ b/arch/microblaze/include/uapi/asm/Kbuild > >>> @@ -28,3 +28,4 @@ generic-y += termbits.h > >>> generic-y += termios.h > >>> generic-y += types.h > >>> generic-y += ucontext.h > >>> +generic-y += unistd_32.h > >>> \ No newline at end of file > >> > >> and here too. > > > > Thanks for your comment. checkpatch script didn't warn this one:( > > Hopefully, I can fix this one in the next version. > > > > I would appreciate if you can perform the boot test on the actual > > platform and share the result with me. > > I see one issue there. > Run > make mrproper > make ARCH=microblaze headers_install INSTALL_HDR_PATH=/tmp/1/ > > And then > > make mrproper > make archheaders V=1 > make ARCH=microblaze headers_install INSTALL_HDR_PATH=/tmp/2/ > > And compare output. > What I see is that in the first part asm/unistd_32.h pointing to > asm-generic/unistd_32.h > > But when archheaders is run before there is expected content. > > That means there is incorrect/missing dependency in Makefiles. > > > Time to time I am able to see compilation warnings > but I didn't find exact steps to replicate this but it also looks like > on missing dependency somewhere. > > [linux](next)$ make mmu_defconfig > # > # configuration written to .config > # > [linux](next)$ make -j8 simpleImage.system > WRAP arch/microblaze/include/generated/asm/barrier.h > WRAP arch/microblaze/include/generated/asm/bitops.h > WRAP arch/microblaze/include/generated/asm/bug.h > WRAP arch/microblaze/include/generated/asm/bugs.h > WRAP arch/microblaze/include/generated/asm/device.h > WRAP arch/microblaze/include/generated/asm/compat.h > WRAP arch/microblaze/include/generated/asm/div64.h > WRAP arch/microblaze/include/generated/asm/dma-mapping.h > WRAP arch/microblaze/include/generated/asm/emergency-restart.h > WRAP arch/microblaze/include/generated/asm/exec.h > WRAP arch/microblaze/include/generated/asm/extable.h > WRAP arch/microblaze/include/generated/asm/fb.h > WRAP arch/microblaze/include/generated/asm/hardirq.h > WRAP arch/microblaze/include/generated/asm/irq_regs.h > WRAP arch/microblaze/include/generated/asm/kdebug.h > WRAP arch/microblaze/include/generated/asm/kmap_types.h > WRAP arch/microblaze/include/generated/asm/irq_work.h > WRAP arch/microblaze/include/generated/asm/kprobes.h > WRAP arch/microblaze/include/generated/asm/linkage.h > WRAP arch/microblaze/include/generated/asm/local.h > WRAP arch/microblaze/include/generated/asm/local64.h > WRAP arch/microblaze/include/generated/asm/mcs_spinlock.h > WRAP arch/microblaze/include/generated/asm/mm-arch-hooks.h > WRAP arch/microblaze/include/generated/asm/parport.h > WRAP arch/microblaze/include/generated/asm/percpu.h > WRAP arch/microblaze/include/generated/asm/preempt.h > WRAP arch/microblaze/include/generated/asm/topology.h > WRAP arch/microblaze/include/generated/asm/syscalls.h > WRAP arch/microblaze/include/generated/asm/trace_clock.h > WRAP arch/microblaze/include/generated/asm/vga.h > WRAP arch/microblaze/include/generated/asm/serial.h > WRAP arch/microblaze/include/generated/asm/word-at-a-time.h > WRAP arch/microblaze/include/generated/asm/xor.h > HOSTCC scripts/bin2c > HOSTCC scripts/kallsyms > HOSTCC scripts/dtc/dtc.o > HOSTCC scripts/mod/mk_elfconfig > HOSTCC scripts/sortextable > CC scripts/mod/empty.o > HOSTCC scripts/dtc/flattree.o > UPD include/config/kernel.release > HOSTCC scripts/dtc/fstree.o > HOSTCC scripts/dtc/data.o > HOSTCC scripts/dtc/livetree.o > CC scripts/mod/devicetable-offsets.s > HOSTCC scripts/dtc/treesource.o > HOSTCC scripts/dtc/srcpos.o > MKELF scripts/mod/elfconfig.h > UPD scripts/mod/devicetable-offsets.h > HOSTCC scripts/dtc/checks.o > HOSTCC scripts/dtc/util.o > HOSTCC scripts/mod/sumversion.o > LEX scripts/dtc/dtc-lexer.lex.c > YACC scripts/dtc/dtc-parser.tab.h > YACC scripts/dtc/dtc-parser.tab.c > UPD include/generated/utsrelease.h > HOSTCC scripts/dtc/dtc-lexer.lex.o > CC kernel/bounds.s > UPD include/generated/timeconst.h > HOSTCC scripts/dtc/dtc-parser.tab.o > HOSTCC scripts/mod/file2alias.o > HOSTCC scripts/mod/modpost.o > UPD include/generated/bounds.h > CC arch/microblaze/kernel/asm-offsets.s > In file included from ./arch/microblaze/include/uapi/asm/unistd.h:14:0, > from ./arch/microblaze/include/asm/unistd.h:12, > from ./include/uapi/linux/unistd.h:8, > from ./arch/microblaze/include/asm/seccomp.h:5, > from ./include/linux/seccomp.h:14, > from ./include/linux/sched.h:21, > from arch/microblaze/kernel/asm-offsets.c:13: > ./arch/microblaze/include/generated/uapi/asm/unistd_32.h:1:35: fatal > error: asm-generic/unistd_32.h: No such file or directory > #include > ^ > compilation terminated. > make[1]: *** [arch/microblaze/kernel/asm-offsets.s] Error 1 > make: *** [prepare0] Error 2 > make: *** Waiting for unfinished jobs.... > HOSTLD scripts/dtc/dtc > HOSTLD scripts/mod/modpost > > > > When build is fine system is booting fine (v4.19-rc6 + your patches). Thanks for your support. I'll work on the same which shared above. I'll update you asap with the fix. - Firoz > > Thanks, > Michal > > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yw1-f66.google.com ([209.85.161.66]:39845 "EHLO mail-yw1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727131AbeJDR2V (ORCPT ); Thu, 4 Oct 2018 13:28:21 -0400 Received: by mail-yw1-f66.google.com with SMTP id v1-v6so3549104ywv.6 for ; Thu, 04 Oct 2018 03:35:41 -0700 (PDT) MIME-Version: 1.0 References: <1538397784-4214-1-git-send-email-firoz.khan@linaro.org> <1538397784-4214-4-git-send-email-firoz.khan@linaro.org> <0741f810-58c9-dcf3-8c1c-93860c08e428@xilinx.com> <440fc4a0-cd4e-c8fc-9278-928cf5b7cd92@xilinx.com> In-Reply-To: <440fc4a0-cd4e-c8fc-9278-928cf5b7cd92@xilinx.com> From: Firoz Khan Date: Thu, 4 Oct 2018 16:05:29 +0530 Message-ID: Subject: Re: [PATCH v2 3/3] microblaze: uapi header and system call table file generation Content-Type: text/plain; charset="UTF-8" Sender: linux-arch-owner@vger.kernel.org List-ID: To: Michal Simek Cc: Michal Simek , Greg Kroah-Hartman , Philippe Ombredanne , Thomas Gleixner , Kate Stewart , y2038 Mailman List , Linux Kernel Mailing List , Linux-Arch , Arnd Bergmann , Deepa Dinamani , Marcin Juszkiewicz Message-ID: <20181004103529.WGKgLtlms5V8F5lVcGCDvINjEYswZaLlx5n-oiAaXOw@z> Hi Michal, On Wed, 3 Oct 2018 at 16:56, Michal Simek wrote: > > On 3.10.2018 07:08, Firoz Khan wrote: > > Hi Michal, > > > > On Tue, 2 Oct 2018 at 19:37, Michal Simek wrote: > >> > >> On 1.10.2018 14:43, Firoz Khan wrote: > >>> System call table generation script must be run to generate > >>> unistd_32.h and syscall_table.h files. This patch will have > >>> changes which will invokes the script. > >>> > >>> This patch will generate unistd_32.h and syscall_table.h > >>> files by the syscall table generation script invoked by > >>> arch/microblaze/Makefile and the generated files against the > >>> removed files will be identical. > >>> > >>> The generated uapi header file will be included in > >>> uapi/asm/unistd.h and generated system call table support > >>> file will be included by kernel/syscall_table.S file. > >>> > >>> Signed-off-by: Firoz Khan > >>> --- > >>> arch/microblaze/Makefile | 3 + > >>> arch/microblaze/include/asm/Kbuild | 1 + > >>> arch/microblaze/include/uapi/asm/Kbuild | 1 + > >>> arch/microblaze/include/uapi/asm/unistd.h | 411 +----------------------------- > >>> arch/microblaze/kernel/syscall_table.S | 406 +---------------------------- > >>> 5 files changed, 10 insertions(+), 812 deletions(-) > >>> > >>> diff --git a/arch/microblaze/Makefile b/arch/microblaze/Makefile > >>> index 4f3ab57..cda5e03 100644 > >>> --- a/arch/microblaze/Makefile > >>> +++ b/arch/microblaze/Makefile > >>> @@ -81,6 +81,9 @@ all: linux.bin > >>> archclean: > >>> $(Q)$(MAKE) $(clean)=$(boot) > >>> > >>> +archheaders: > >>> + $(Q)$(MAKE) $(build)=arch/microblaze/kernel/syscalls all > >>> + > >>> linux.bin linux.bin.gz linux.bin.ub: vmlinux > >>> $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ > >>> > >>> diff --git a/arch/microblaze/include/asm/Kbuild b/arch/microblaze/include/asm/Kbuild > >>> index 569ba9e..d64f5e7 100644 > >>> --- a/arch/microblaze/include/asm/Kbuild > >>> +++ b/arch/microblaze/include/asm/Kbuild > >>> @@ -31,3 +31,4 @@ generic-y += trace_clock.h > >>> generic-y += vga.h > >>> generic-y += word-at-a-time.h > >>> generic-y += xor.h > >>> +generic-y += syscall_table.h > >>> \ No newline at end of file > >> > >> Still the problem with "No newline at end of file" > >> > >>> diff --git a/arch/microblaze/include/uapi/asm/Kbuild b/arch/microblaze/include/uapi/asm/Kbuild > >>> index 2c6a6bf..3a40659 100644 > >>> --- a/arch/microblaze/include/uapi/asm/Kbuild > >>> +++ b/arch/microblaze/include/uapi/asm/Kbuild > >>> @@ -28,3 +28,4 @@ generic-y += termbits.h > >>> generic-y += termios.h > >>> generic-y += types.h > >>> generic-y += ucontext.h > >>> +generic-y += unistd_32.h > >>> \ No newline at end of file > >> > >> and here too. > > > > Thanks for your comment. checkpatch script didn't warn this one:( > > Hopefully, I can fix this one in the next version. > > > > I would appreciate if you can perform the boot test on the actual > > platform and share the result with me. > > I see one issue there. > Run > make mrproper > make ARCH=microblaze headers_install INSTALL_HDR_PATH=/tmp/1/ > > And then > > make mrproper > make archheaders V=1 > make ARCH=microblaze headers_install INSTALL_HDR_PATH=/tmp/2/ > > And compare output. > What I see is that in the first part asm/unistd_32.h pointing to > asm-generic/unistd_32.h > > But when archheaders is run before there is expected content. > > That means there is incorrect/missing dependency in Makefiles. > > > Time to time I am able to see compilation warnings > but I didn't find exact steps to replicate this but it also looks like > on missing dependency somewhere. > > [linux](next)$ make mmu_defconfig > # > # configuration written to .config > # > [linux](next)$ make -j8 simpleImage.system > WRAP arch/microblaze/include/generated/asm/barrier.h > WRAP arch/microblaze/include/generated/asm/bitops.h > WRAP arch/microblaze/include/generated/asm/bug.h > WRAP arch/microblaze/include/generated/asm/bugs.h > WRAP arch/microblaze/include/generated/asm/device.h > WRAP arch/microblaze/include/generated/asm/compat.h > WRAP arch/microblaze/include/generated/asm/div64.h > WRAP arch/microblaze/include/generated/asm/dma-mapping.h > WRAP arch/microblaze/include/generated/asm/emergency-restart.h > WRAP arch/microblaze/include/generated/asm/exec.h > WRAP arch/microblaze/include/generated/asm/extable.h > WRAP arch/microblaze/include/generated/asm/fb.h > WRAP arch/microblaze/include/generated/asm/hardirq.h > WRAP arch/microblaze/include/generated/asm/irq_regs.h > WRAP arch/microblaze/include/generated/asm/kdebug.h > WRAP arch/microblaze/include/generated/asm/kmap_types.h > WRAP arch/microblaze/include/generated/asm/irq_work.h > WRAP arch/microblaze/include/generated/asm/kprobes.h > WRAP arch/microblaze/include/generated/asm/linkage.h > WRAP arch/microblaze/include/generated/asm/local.h > WRAP arch/microblaze/include/generated/asm/local64.h > WRAP arch/microblaze/include/generated/asm/mcs_spinlock.h > WRAP arch/microblaze/include/generated/asm/mm-arch-hooks.h > WRAP arch/microblaze/include/generated/asm/parport.h > WRAP arch/microblaze/include/generated/asm/percpu.h > WRAP arch/microblaze/include/generated/asm/preempt.h > WRAP arch/microblaze/include/generated/asm/topology.h > WRAP arch/microblaze/include/generated/asm/syscalls.h > WRAP arch/microblaze/include/generated/asm/trace_clock.h > WRAP arch/microblaze/include/generated/asm/vga.h > WRAP arch/microblaze/include/generated/asm/serial.h > WRAP arch/microblaze/include/generated/asm/word-at-a-time.h > WRAP arch/microblaze/include/generated/asm/xor.h > HOSTCC scripts/bin2c > HOSTCC scripts/kallsyms > HOSTCC scripts/dtc/dtc.o > HOSTCC scripts/mod/mk_elfconfig > HOSTCC scripts/sortextable > CC scripts/mod/empty.o > HOSTCC scripts/dtc/flattree.o > UPD include/config/kernel.release > HOSTCC scripts/dtc/fstree.o > HOSTCC scripts/dtc/data.o > HOSTCC scripts/dtc/livetree.o > CC scripts/mod/devicetable-offsets.s > HOSTCC scripts/dtc/treesource.o > HOSTCC scripts/dtc/srcpos.o > MKELF scripts/mod/elfconfig.h > UPD scripts/mod/devicetable-offsets.h > HOSTCC scripts/dtc/checks.o > HOSTCC scripts/dtc/util.o > HOSTCC scripts/mod/sumversion.o > LEX scripts/dtc/dtc-lexer.lex.c > YACC scripts/dtc/dtc-parser.tab.h > YACC scripts/dtc/dtc-parser.tab.c > UPD include/generated/utsrelease.h > HOSTCC scripts/dtc/dtc-lexer.lex.o > CC kernel/bounds.s > UPD include/generated/timeconst.h > HOSTCC scripts/dtc/dtc-parser.tab.o > HOSTCC scripts/mod/file2alias.o > HOSTCC scripts/mod/modpost.o > UPD include/generated/bounds.h > CC arch/microblaze/kernel/asm-offsets.s > In file included from ./arch/microblaze/include/uapi/asm/unistd.h:14:0, > from ./arch/microblaze/include/asm/unistd.h:12, > from ./include/uapi/linux/unistd.h:8, > from ./arch/microblaze/include/asm/seccomp.h:5, > from ./include/linux/seccomp.h:14, > from ./include/linux/sched.h:21, > from arch/microblaze/kernel/asm-offsets.c:13: > ./arch/microblaze/include/generated/uapi/asm/unistd_32.h:1:35: fatal > error: asm-generic/unistd_32.h: No such file or directory > #include > ^ > compilation terminated. > make[1]: *** [arch/microblaze/kernel/asm-offsets.s] Error 1 > make: *** [prepare0] Error 2 > make: *** Waiting for unfinished jobs.... > HOSTLD scripts/dtc/dtc > HOSTLD scripts/mod/modpost > > > > When build is fine system is booting fine (v4.19-rc6 + your patches). Thanks for your support. I'll work on the same which shared above. I'll update you asap with the fix. - Firoz > > Thanks, > Michal > >