On Thu, 2017-03-16 at 10:37 +0100, Arnd Bergmann wrote:
n Thu, Mar 16, 2017 at 9:21 AM, kernelci.org bot bot@kernelci.org wrote: stable build: 37 builds: 10 failed, 27 passed, 1408 errors, 210 warnings (v3.16.42) Full Build Summary: https://kernelci.org/build/stable/kernel/v3.16.42/ Tree: stable Branch: local/linux-3.16.y Git Describe: v3.16.42 Git Commit: 65be6fa1da9eb665ae50b2d52bc450e64cbc4ec0 Git URL: http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git Built: 4 unique architectures
Hi Ben,
I'm taking a look at this, since we now have an almost clean build on the later versions, but still a noticeable number of problems on this 3.16.
Warnings: mm/page_alloc.c:5328:34: warning: array subscript is below array bounds [-Warray-bounds] fs/namespace.c:2787:6: warning: 'kernel_dev' may be used uninitialized in this function [-Wmaybe-uninitialized] fs/namespace.c:2787:6: warning: 'kernel_type' may be used uninitialized in this function [-Wmaybe-uninitialized]
Harmless warning, fixed by
b8850d1fa8e2 ("fs: namespace: suppress 'may be used uninitialized' warnings")
I've added this to the queue.
at91sam9g45_defconfig (arm) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings: drivers/iio/industrialio-core.c:408:23: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'long int' [-Wformat=]
AFAICT, this is fixed by 8f57e4d930d4 ("include/linux/kernel.h: change abs() macro so it uses consistent return type") which is also in 4.4.y-stable
Changing the type of abs() seems like a somewhat risky change. I'd be happier to extract just the iio type fix.
include/linux/blkdev.h:623:26: warning: switch condition has boolean value [-Wswitch-bool]
10fbd36e362a ("blk: rq_data_dir() should not return a boolean")
Added.
defconfig (arm64) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings: ipc/sem.c:377:6: warning: '___p1' may be used uninitialized in this function [-Wmaybe-uninitialized] ipc/sem.c:377:6: warning: '___p1' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/arm64/include/asm/pgtable.h:40:28: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
I don't immediately see what's causing these, will get back to those once the more common warnings are addressed.
gpr_defconfig (mips) — FAIL, 112 errors, 6 warnings, 0 section mismatches
Errors: arch/mips/kernel/r4k_fpu.S:68: Error: opcode not supported on this processor: mips3 (mips3) `sdc1 $f0,272+0($4)' arch/mips/kernel/r4k_fpu.S:69: Error: opcode not supported on this processor: mips3 (mips3) `sdc1 $f2,272+16($4)'
One problem seems to cause all the kernelci build failures, I had to bisect it to be sure and came out at:
842dfc11ea9a ("MIPS: Fix build with binutils 2.24.51+")
I had to apply these first:
f7a46fa7bb00 "MIPS: save/restore MSACSR register on context switch" b83406735a4a "MIPS: preserve scalar FP CSR when switching vector context" 33c771ba5c5d "MIPS: save/disable MSA in lose_fpu" c9017757c532 "MIPS: init upper 64b of vector registers when MSA is first used"
which I *think* are all worthwhile fixes too.
Warnings: mm/page_alloc.c:5328:34: warning: array subscript is below array bounds [-Warray-bounds]
I don't remember how we fixed this in later kernels, but this code has changed a lot over time.
drivers/atm/iphase.c:1176:12: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
trivial: cbb41b91e68a ("atm: iphase: fix misleading indention")
Added.
crypto/wp512.c:987:1: warning: the frame size of 1112 bytes is larger than 1024 bytes [-Wframe-larger-than=]
7d6e91050267 ("crypto: improve gcc optimization flags for serpent and wp512")
currently in stable-rc for 4.4 and 4.9
Added.
drivers/mtd/mtd_blkdevs.c:100:2: warning: switch condition has boolean value [-Wswitch-bool]
cc7fce802290 ("mtd: blkdevs: fix switch-bool compilation warning")
That looks redundant with 10fbd36e362a "blk: rq_data_dir() should not return a boolean".
mackerel_defconfig (arm) — PASS, 0 errors, 4 warnings, 0 section mismatches
Warnings: fs/nfs/nfs4proc.c:3005:10: warning: switch condition has boolean value [-Wswitch-bool]
c7757074839f ("fs/nfs: fix new compiler warning about boolean in switch")
Added.
multi_v7_defconfig+CONFIG_EFI=y+CONFIG_ARM_LPAE=y (arm) — PASS, 0 errors, 7 warnings, 0 section mismatches
Warnings: drivers/mmc/host/sunxi-mmc.c:297:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
d34712d2e3db ("mmc: sunxi: avoid invalid pointer calculation")
Added.
drivers/net/wireless/brcm80211/brcmfmac/fwsignal.c:1450:8: warning: 'skb' may be used uninitialized in this function [-Wmaybe-uninitialized]
22f44150aad7 ("brcmfmac: avoid gcc-5.1 warning")
This doesn't look like a reliable fix.
drivers/tty/serial/samsung.c:1234:6: warning: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'resource_size_t {aka long long unsigned int}' [-Wformat=]
1ff5b64dccbf ("serial: samsung: Use %pa to print 'resource_size_t' type")
Added.
rt305x_defconfig (mips) — FAIL, 224 errors, 4 warnings, 0 section mismatches
Warnings: arch/mips/ralink/prom.c:64:2: warning: 'argc' is used uninitialized in this function [-Wuninitialized] arch/mips/ralink/prom.c:64:2: warning: 'argv' is used uninitialized in this function [-Wuninitialized]
886f9c69fc68 ("MIPS: ralink: Remove unused rt*_wdt_reset functions")
No, that's for a different issue that doesn't appear to exist in 3.16. I think you mean:
9c48568b3692 "MIPS: ralink: Cosmetic change to prom_init()."
I've added that.
(also in stable-rc/linux-4.4.y)
sb1250_swarm_defconfig (mips) — FAIL, 256 errors, 10 warnings, 0 section mismatches arch/mips/include/asm/compat.h:208:24: warning: 'handler' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/compat.h:208:24: warning: 'rtdev' may be used uninitialized in this function [-Wmaybe-uninitialized] block/compat_ioctl.c:201:18: warning: 'udata' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/uaccess.h:452:2: warning: 'n' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/uaccess.h:452:2: warning: 'length' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/compat.h:208:24: warning: 'palp' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/uaccess.h:452:2: warning: 'size' may be used uninitialized in this function [-Wmaybe-uninitialized] arch/mips/include/asm/compat.h:208:24: warning: 'fp' may be used uninitialized in this function [-Wmaybe-uninitialized]
Not sure what happens here. Possibly this is one configuration that disables -Wmaybe-uninitialized in later kernels, though I can't see why.
This appears to be a real bug, fixed by:
640465bda58c "MIPS: Zero variable read by get_user / __get_user in case of an error."
I've added that.
tb0226_defconfig (mips) — FAIL, 96 errors, 4 warnings, 0 section mismatches drivers/scsi/scsi_tgt_if.c:289:36: warning: passing argument 1 of 'virt_to_phys' makes pointer from integer without a cast [-Wint-conversion]
The driver was removed in 3.17.
workpad_defconfig (mips) — FAIL, 96 errors, 4 warnings, 0 section mismatches Warnings: drivers/net/ethernet/amd/nmclan_cs.c:624:3: warning: 'pcmcia_request_exclusive_irq' is deprecated [-Wdeprecated-declarations]
The warning was addressed by 5f5316fcd08e ("am2150: Update nmclan_cs.c to use update PCMCIA API")
though that patch seems wrong. I think I sent a better one at the time. Probably nobody cares, but I would not backport this one.
Agreed.
x86_64_defconfig (x86) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings: drivers/hid/hid-input.c:1122:67: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
09a5c34e8d6b ("HID: hid-input: Add parentheses to quell gcc warning")
Added.
arch/x86/include/asm/pgtable_64.h:184:26: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
I don't see this one yet.
That warning doesn't make any sense to me...
Ben.