Messages in this thread | | | From | Guenter Roeck <> | Subject | Re: [PATCH v1 1/1] delay: Replace kernel.h with the necessary inclusions | Date | Thu, 28 Oct 2021 10:06:10 -0700 |
| |
On 10/28/21 9:50 AM, Andy Shevchenko wrote: > On Thu, Oct 28, 2021 at 09:28:10AM -0700, Guenter Roeck wrote: >> On Thu, Oct 28, 2021 at 06:58:13PM +0300, Andy Shevchenko wrote: >>> On Thu, Oct 28, 2021 at 08:30:55AM -0700, Guenter Roeck wrote: >>>> On Wed, Oct 27, 2021 at 06:03:24PM +0300, Andy Shevchenko wrote: >>>>> When kernel.h is used in the headers it adds a lot into dependency hell, >>>>> especially when there are circular dependencies are involved. >>>>> >>>>> Replace kernel.h inclusion with the list of what is really being used. >>>>> >>>>> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> >>>> >>>> In next-20211028: >>>> >>>> Building riscv32:defconfig ... failed >>>> -------------- >>>> Error log: >>>> arch/riscv/lib/delay.c: In function '__delay': >>>> arch/riscv/lib/delay.c:77:17: error: implicit declaration of function 'cpu_relax' >>>> >>>> Building riscv:defconfig ... failed >>>> -------------- >>>> Error log: >>>> arch/riscv/lib/delay.c: In function '__delay': >>>> arch/riscv/lib/delay.c:77:17: error: implicit declaration of function 'cpu_relax' >>>> >>>> Building s390:defconfig ... failed >>>> -------------- >>>> Error log: >>>> <stdin>:1559:2: warning: #warning syscall futex_waitv not implemented [-Wcpp] >>>> In file included from arch/s390/pci/pci_insn.c:12: >>>> arch/s390/include/asm/facility.h: In function '__stfle': >>>> arch/s390/include/asm/facility.h:98:22: error: implicit declaration of function 'min_t' >>>> >>>> bisect to this patch. Probably more, but it is difficult to find out >>>> since -next is too badly broken and has build failures all over the place. >>> >>> Thanks for the report! > > I'll send the fix for above soon. Hope it will reduce amount of failures. > >>> I have run it on x86_64 with `kcbench -m ...` and no failures. >>> >>> Can you share all build errors you found so far? I believe none of them related >>> to x86* code. >>> >>> Above just revealed the problematic places in the first place. Why the >>> programmers rely on delay.h to include full bloated header pile?! (Yeah, this >>> is rhetorical, so please share the errors, I'll try to address them) >> >> The ones listed above are the ones I was able to identify. As I said, there >> are so many compile and runtime failures in linux-next that it is difficult >> to track down individual failures. > > Yeah, for example, I looked into this: https://kerneltests.org/builders/next-mips-next/builds/698/steps/buildcommand/logs/stdio > > I can't see how my patch is related to this... >
The missing errno.h in that log is due to missing dependencies in the fanotify patch - it causes build failures whenever a toolchain without C library support is used to build the kernel. I already reported this.
The unused variable error bisects to 'irq: mips: simplify do_domain_IRQ()'. I'll send a report as response to that patch in a minute.
It all adds up ... there seem to be a lot of last minute changes in -next.
Guenter
>> Just to give you an idea (this is for >> next-20211028): >> >> Build results: >> total: 153 pass: 115 fail: 38 >> Failed builds: >> alpha:allmodconfig >> arm:allmodconfig >> arm:omap2plus_defconfig >> arm:davinci_all_defconfig >> arm64:defconfig >> arm64:allmodconfig >> csky:allmodconfig >> h8300:allnoconfig >> h8300:tinyconfig >> h8300:edosk2674_defconfig >> h8300:h8300h-sim_defconfig >> h8300:h8s-sim_defconfig >> m68k:allmodconfig >> mips:defconfig >> mips:allmodconfig >> mips:allnoconfig >> mips:tinyconfig >> mips:bcm47xx_defconfig >> mips:bcm63xx_defconfig >> mips:ath79_defconfig >> mips:ar7_defconfig >> mips:e55_defconfig >> mips:cavium_octeon_defconfig >> mips:malta_defconfig >> mips:rt305x_defconfig >> nds32:allmodconfig >> parisc:allmodconfig >> parisc:generic-32bit_defconfig >> parisc64:generic-64bit_defconfig >> powerpc:allmodconfig >> riscv32:defconfig >> riscv32:allmodconfig >> riscv:defconfig >> riscv:allmodconfig >> s390:defconfig >> s390:allmodconfig >> sparc64:allmodconfig >> xtensa:allmodconfig >> Qemu test results: >> total: 480 pass: 315 fail: 165 >> Failed tests: >> <too many to list them all> >> >> Build and boot logs are as always at https://kerneltests.org/builders >> in the 'next' column in case you want to do some digging yourself. >
| |