Automated DT boot report for various ARM defconfigs.
Boot test simply checks if kernel can boot to initramfs with busybox
and run some basic commands (e.g. 'cat /proc/cpuinfo').
Tree/Branch: arm-soc/for-next
Git describe: fixes-for-linus-2-gdcf788d
Commit: dcf788d5a5 ARM: multi_v7_defconfig: enable ARM_ATAG_DTB_COMPAT
Failed boot tests (console logs at the end)
===========================================
imx6dl-wandboard,wand-solo: FAIL: arm-imx_v6_v7_defconfig
omap3-beagle: FAIL: arm-omap2plus_defconfig
Full Report
===========
arm-imx_v6_v7_defconfig
-----------------------
imx6dl-wandboard,wand-dual PASS: 0 min 16.4 sec
imx6dl-wandboard,wand-solo FAIL: 0 min 11.5 sec
imx6q-wandboard PASS: 0 min 15.1 sec
arm-omap2plus_defconfig
-----------------------
omap3-beagle-xm PASS: 0 min 48.5 sec
am335x-bone PASS: 0 min 26.8 sec
omap3-tobi,3530overo PASS: 0 min 42.7 sec
omap4-panda PASS: 1 min 12.5 sec
omap4-panda-es PASS: 1 min 18.9 sec
omap3-tobi,3730storm PASS: 0 min 42.5 sec
omap3-beagle FAIL: 0 min 18.9 sec
arm-multi_v7_defconfig
----------------------
omap4-panda-es PASS: 1 min 9.6 sec
omap3-beagle-xm PASS: 0 min 52.5 sec
am335x-bone PASS: 0 min 38.7 sec
sun4i-a10-cubieboard PASS: 0 min 14.5 sec
imx6dl-wandboard,wand-solo PASS: 0 min 16.5 sec
omap3-tobi,3530overo PASS: 0 min 44.4 sec
omap4-panda PASS: 0 min 58.7 sec
imx6q-wandboard PASS: 0 min 15.6 sec
omap3-tobi,3730storm PASS: 0 min 43.7 sec
imx6dl-wandboard,wand-dual PASS: 0 min 16.6 sec
omap3-beagle PASS: 0 min 48.4 sec
arm-exynos_defconfig
--------------------
exynos5250-arndale PASS: 0 min 31.2 sec
arm-sama5_defconfig
-------------------
sama5d35ek PASS: 0 min 19.5 sec
Console logs for failures
=========================
arm-imx_v6_v7_defconfig
-----------------------
imx6dl-wandboard,wand-solo: FAIL: last 24 lines of boot log:
------------------------------------------------------------
[<80301c94>] (platform_drv_probe+0x0/0x24) from [<8030095c>] (driver_probe_device+0x10c/0x224)
[<80300850>] (driver_probe_device+0x0/0x224) from [<80300b08>] (__driver_attach+0x94/0x98)
r7:00000000 r6:9f904044 r5:808175f8 r4:9f904010
[<80300a74>] (__driver_attach+0x0/0x98) from [<802feda0>] (bus_for_each_dev+0x5c/0x90)
r6:80300a74 r5:808175f8 r4:00000000 r3:9f83b55c
[<802fed44>] (bus_for_each_dev+0x0/0x90) from [<80300450>] (driver_attach+0x20/0x28)
r6:80805548 r5:9f126300 r4:808175f8
[<80300430>] (driver_attach+0x0/0x28) from [<802fff90>] (bus_add_driver+0xdc/0x264)
[<802ffeb4>] (bus_add_driver+0x0/0x264) from [<803011cc>] (driver_register+0x80/0xfc)
r8:807ba0b8 r7:8078c46c r6:80825980 r5:00000006 r4:808175f8
[<8030114c>] (driver_register+0x0/0xfc) from [<80301ed0>] (__platform_driver_register+0x50/0x64)
r5:00000006 r4:807da588
[<80301e80>] (__platform_driver_register+0x0/0x64) from [<807ba0d0>] (sdhci_esdhc_imx_driver_init+0x18/0x20)
[<807ba0b8>] (sdhci_esdhc_imx_driver_init+0x0/0x20) from [<80008898>] (do_one_initcall+0xf4/0x154)
[<800087a4>] (do_one_initcall+0x0/0x154) from [<8078cc10>] (kernel_init_freeable+0x104/0x1d0)
[<8078cb0c>] (kernel_init_freeable+0x0/0x1d0) from [<805b6c8c>] (kernel_init+0x10/0xec)
[<805b6c7c>] (kernel_init+0x0/0xec) from [<8000e978>] (ret_from_fork+0x14/0x3c)
r4:00000000 r3:ffffffff
Code: e89da800 e1a0c00d e92dd818 e24cb004 (e5903000)
---[ end trace b9e9ad8678bd78b3 ]---
Kernel panic - n~$off
# PYBOOT: Exception: kernel: ERROR: failed to boot: Kernel panic
# PYBOOT: Time: 11.47 seconds.
# PYBOOT: Result: FAIL
arm-omap2plus_defconfig
-----------------------
omap3-beagle: FAIL: last 24 lines of boot log:
----------------------------------------------
OMAP3 beagleboard.org # if test -n ${initenv}; then run initenv; fi
if test -n ${initenv}; then run initenv; fi
OMAP3 beagleboard.org # if test -n ${preboot}; then run preboot; fi
if test -n ${preboot}; then run preboot; fi
(Re)start USB...
USB0: USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
scanning usb for ethernet devices...
Warning: asx0 using MAC address from net device
1 Ethernet Device(s) found
OMAP3 beagleboard.org #setenv autoload no; setenv autoboot no
setenv autoload no; setenv autoboot no
OMAP3 beagleboard.org # dhcp
dhcp
ERROR: Need valid 'usbnet_devaddr' to be set
at ether.c:2369/usb_eth_init()
Waiting for Ethernet connection... done.
BOOTP broadcast 1
BOOTP broadcast 2
~$off
# PYBOOT: Exception: u-boot: ERROR: timed-out getting DHCP address.
# PYBOOT: Time: 18.85 seconds.
# PYBOOT: Result: FAIL
Here are the build results from automated periodic testing.
The tree being built was mainline, found at:
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git (master branch)
Topmost commit:
272b98c Linux 3.12-rc1
Runtime: 39m 21s
Passed: 114
Failed: 3
Warnings: 16
Section mismatches: 0
-------------------------------------------------------------------------------
Failed defconfigs:
cm_x300_defconfig
pxa3xx_defconfig
raumfeld_defconfig
-------------------------------------------------------------------------------
Errors:
cm_x300_defconfig:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function 'pxa3xx_nand_get_variant' [-Werror=implicit-function-declaration]
pxa3xx_defconfig:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function 'pxa3xx_nand_get_variant' [-Werror=implicit-function-declaration]
raumfeld_defconfig:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function 'pxa3xx_nand_get_variant' [-Werror=implicit-function-declaration]
Warnings:
1 arch/arm/mach-omap2/gpmc.c:1495:4: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'resource_size_t' [-Wformat=]
1 drivers/dma/imx-dma.c:579:3: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:579:3: warning: format '%x' expects argument of type 'unsigned int', but argument 7 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:593:4: warning: format '%x' expects argument of type 'unsigned int', but argument 9 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:603:4: warning: format '%x' expects argument of type 'unsigned int', but argument 9 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:930:2: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:930:2: warning: format '%x' expects argument of type 'unsigned int', but argument 7 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:960:2: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-dma.c:960:2: warning: format '%x' expects argument of type 'unsigned int', but argument 7 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-sdma.c:1092:3: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/imx-sdma.c:1166:3: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format '%x' expects argument of type 'unsigned int', but argument 5 has type 'dma_addr_t' [-Wformat=]
1 drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t' [-Wformat=]
1 drivers/gpu/host1x/hw/cdma_hw.c:57:3: warning: format '%x' expects argument of type 'unsigned int', but argument 5 has type 'dma_addr_t' [-Wformat=]
1 drivers/gpu/host1x/hw/debug_hw.c:175:10: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'dma_addr_t' [-Wformat=]
1 drivers/tty/serial/imx.c:1542:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
Section mismatches:
Automated build results for all ARM defconfigs. Summarizes all build
errors, warnings and section mismatches followed by a per-defconfig
summary.
Tree/Branch: arm-soc/for-next
Git describe: fixes-for-linus-2-gdcf788d
Commit: dcf788d5a5 ARM: multi_v7_defconfig: enable ARM_ATAG_DTB_COMPAT
Build Time: 138 min 31 sec
Passed: 126 / 129 ( 97.67 %)
Failed: 3 / 129 ( 2.33 %)
Errors: 1
Warnings: 22
Section Mismatches: 0
Failed defconfigs:
arm-pxa3xx_defconfig
arm-raumfeld_defconfig
arm-cm_x300_defconfig
Errors:
arm-pxa3xx_defconfig
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
arm-raumfeld_defconfig
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
arm-cm_x300_defconfig
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
-------------------------------------------------------------------------------
defconfigs with issues (other than build errors):
arm-spitz_defconfig: 1 warnings 0 mismatches
arm-mini2440_defconfig: 1 warnings 0 mismatches
arm-ebsa110_defconfig: 1 warnings 0 mismatches
arm-multi_v7_defconfig+lpae.config: 20 warnings 0 mismatches
arm-iop13xx_defconfig: 1 warnings 0 mismatches
arm-corgi_defconfig: 1 warnings 0 mismatches
arm-iop32x_defconfig: 1 warnings 0 mismatches
-------------------------------------------------------------------------------
Errors summary: 1
3 drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
Warnings Summary: 22
5 crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
1 drivers/tty/serial/imx.c:1542:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
1 drivers/gpu/host1x/hw/debug_hw.c:175:10: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘dma_addr_t’ [-Wformat]
1 drivers/gpu/host1x/hw/cdma_hw.c:57:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/ste_dma40.c:3593:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘resource_size_t’ [-Wformat]
1 drivers/dma/ste_dma40.c:3582:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘resource_size_t’ [-Wformat]
1 drivers/dma/ste_dma40.c:3582:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
1 drivers/dma/ste_dma40.c:3228:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
1 drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-sdma.c:995:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-sdma.c:1069:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:962:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:962:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:932:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:932:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:603:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 9 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:593:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 9 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:579:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
1 drivers/dma/imx-dma.c:579:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
1 arch/arm/mach-omap2/gpmc.c:1495:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
1 arch/arm/mach-ebsa110/core.c:225:2: warning: large integer implicitly truncated to unsigned type [-Woverflow]
===============================================================================
Detailed per-defconfig build reports below:
-------------------------------------------------------------------------------
arm-spitz_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
-------------------------------------------------------------------------------
arm-mini2440_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
-------------------------------------------------------------------------------
arm-ebsa110_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
arch/arm/mach-ebsa110/core.c:225:2: warning: large integer implicitly truncated to unsigned type [-Woverflow]
-------------------------------------------------------------------------------
arm-multi_v7_defconfig+lpae.config : PASS, 0 errors, 20 warnings, 0 section mismatches
Warnings:
arch/arm/mach-omap2/gpmc.c:1495:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-sdma.c:995:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-sdma.c:1069:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:579:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:579:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:593:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 9 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:603:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 9 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:932:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:932:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:962:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 6 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/imx-dma.c:962:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 7 has type ‘dma_addr_t’ [-Wformat]
drivers/gpu/host1x/hw/cdma_hw.c:57:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘dma_addr_t’ [-Wformat]
drivers/gpu/host1x/hw/debug_hw.c:175:10: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘dma_addr_t’ [-Wformat]
drivers/dma/ste_dma40.c:3228:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
drivers/dma/ste_dma40.c:3582:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ [-Wformat]
drivers/dma/ste_dma40.c:3582:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘resource_size_t’ [-Wformat]
drivers/dma/ste_dma40.c:3593:5: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 5 has type ‘resource_size_t’ [-Wformat]
drivers/tty/serial/imx.c:1542:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
-------------------------------------------------------------------------------
arm-pxa3xx_defconfig : FAIL, 1 errors, 0 warnings, 0 section mismatches
Errors:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
-------------------------------------------------------------------------------
arm-iop13xx_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
-------------------------------------------------------------------------------
arm-corgi_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
-------------------------------------------------------------------------------
arm-raumfeld_defconfig : FAIL, 1 errors, 0 warnings, 0 section mismatches
Errors:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
-------------------------------------------------------------------------------
arm-cm_x300_defconfig : FAIL, 1 errors, 0 warnings, 0 section mismatches
Errors:
drivers/mtd/nand/pxa3xx_nand.c:1325:2: error: implicit declaration of function ‘pxa3xx_nand_get_variant’ [-Werror=implicit-function-declaration]
-------------------------------------------------------------------------------
arm-iop32x_defconfig : PASS, 0 errors, 1 warnings, 0 section mismatches
Warnings:
crypto/wp512.c:987:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
-------------------------------------------------------------------------------
Passed with no errors, warnings or mismatches:
arm-realview-smp_defconfig
arm-at91rm9200_defconfig
arm-pcm027_defconfig
arm-rmk-omap3430-ldp.config
arm-bcm2835_defconfig
arm-ixp4xx_defconfig
arm-dove_defconfig
arm-nuc950_defconfig
arm-at91sam9261_9g10_defconfig
arm-omap2plus_defconfig
arm-bockw_defconfig
arm-hackkit_defconfig
arm-cns3420vb_defconfig
arm-u300_defconfig
arm-bcm_defconfig
arm-exynos_defconfig
arm-zeus_defconfig
arm-rmk-sa11x0-neponset.config
arm-davinci_all_defconfig
arm-badge4_defconfig
arm-exynos_defconfig+lpae.config
arm-nuc960_defconfig
arm-shark_defconfig
arm-allnoconfig
arm-em_x270_defconfig
arm-armadillo800eva_defconfig
arm-trizeps4_defconfig
arm-acs5k_defconfig
arm-rmk-realview.config
arm-at91sam9260_9g20_defconfig
arm-lpc32xx_defconfig
arm-rmk-omap4430-ldp-allnoconfig.config
arm-rmk-versatile.config
arm-vexpress_defconfig
arm-ape6evm_defconfig
arm-netx_defconfig
arm-socfpga_defconfig
arm-orion5x_defconfig
arm-cm_x2xx_defconfig
arm-da8xx_omapl_defconfig
arm-omap2plus_defconfig+pm.config
arm-at91x40_defconfig
arm-cerfcube_defconfig
arm-versatile_defconfig
arm-am200epdkit_defconfig
arm-rmk-omap3430-ldp-allnoconfig.config
arm-simpad_defconfig
arm-pxa910_defconfig
arm-acs5k_tiny_defconfig
arm-xcep_defconfig
arm-s5pv210_defconfig
arm-at91_dt_defconfig
arm-palmz72_defconfig
arm-ezx_defconfig
arm-imote2_defconfig
arm-netwinder_defconfig
arm-iop33x_defconfig
arm-rmk-pxa.config
arm-assabet_defconfig
arm-magician_defconfig
arm-mainstone_defconfig
arm-s5pc100_defconfig
arm-lager_defconfig
arm-spear3xx_defconfig
arm-shannon_defconfig
arm-at91sam9g45_defconfig
arm-prima2_defconfig
arm-jornada720_defconfig
arm-s3c2410_defconfig
arm-pxa255-idp_defconfig
arm-h3600_defconfig
arm-colibri_pxa270_defconfig
arm-nhk8815_defconfig
arm-viper_defconfig
arm-colibri_pxa300_defconfig
arm-pleb_defconfig
arm-mmp2_defconfig
arm-spear6xx_defconfig
arm-eseries_pxa_defconfig
arm-ks8695_defconfig
arm-imx_v4_v5_defconfig
arm-integrator_defconfig
arm-footbridge_defconfig
arm-pxa168_defconfig
arm-multi_v7_defconfig
arm-s5p64x0_defconfig
arm-rpc_defconfig
arm-mxs_defconfig
arm-nuc910_defconfig
arm-omap1_defconfig
arm-kzm9d_defconfig
arm-rmk-vexpress-ct9x4.config
arm-ep93xx_defconfig
arm-keystone_defconfig
arm-at91sam9rl_defconfig
arm-lubbock_defconfig
arm-s3c6400_defconfig
arm-imx_v6_v7_defconfig
arm-at91sam9263_defconfig
arm-mackerel_defconfig
arm-clps711x_defconfig
arm-collie_defconfig
arm-tegra_defconfig
arm-lart_defconfig
arm-marzen_defconfig
arm-kzm9g_defconfig
arm-tct_hammer_defconfig
arm-mv78xx0_defconfig
arm-realview_defconfig
arm-msm_defconfig
arm-u8500_defconfig
arm-h5000_defconfig
arm-kirkwood_defconfig
arm-mvebu_defconfig
arm-lpd270_defconfig
arm-rmk-omap4430-ldp.config
arm-sama5_defconfig
arm-neponset_defconfig
arm-spear13xx_defconfig
Here's a list of features that I think would be useful for the
arm-soc(?) auto-builder/tester systems. This is a big pie-in-the-sky
wish-list so I'm well aware that I'm asking someone to implement
something useful and complex for me for free, and hence I may well not
get want I want:-) Still, there are some fun ideas below, I hope!
* Per-build/test email distribution list.
If there is a change to e.g. the tegra_defconfig build status (first
broken build, first successful build, etc.), I'd like to be emailed
about this specifically, likely in a separate email. That way, I can
filter these actionable messages separately from the general list
content, so that I generally don't need to read most of the list
messages, unless I'm notified of a specific problem.
This could be implemented by adding me to To:/Cc: on the existing
messages in addition to sending them to the list, rather than sending a
separate notification. However, this still means that I need to read
through the whole email to find the specific issue that I'm interested in.
* Web-based UI, with history and filtering.
Email is very useful for notification of changes. However, if I want to
quickly check the current status, or research historic build status, I
find a web UI much easier. Some public examples that I use:
http://nvt.pwsan.com/experimental/linux-next/testlogs/http://kisskb.ellerman.id.au/kisskb/matrix/http://kisskb.ellerman.id.au/kisskb/config/338/
I'd love the ability to restrict the history so I can see just one
architecture, compiler, defconfig, branch, board, test-case, or somewhat
arbitrary combinations thereof. Perhaps throw HW configuration into the
mix too (e.g. single-CPU vs. SMP vs. a specific core count, different
RAM-size bands, presence of certain HW such as SPI flash, etc.)
* Archival of full build/test logs
Perhaps not so much for build problems, but it can be useful to have an
entire console log for test failures. Preferably, these would all be
linked from the web UI filtered history view.
* More test-cases
Boot test catches a lot of issues, but I'd love to run tests such as the
following:
+ Reboot
+ Shutdown
+ System suspend/resume
+ CPU hotplug
+ check that cpuidle is activating
+ force cpufreq to min/max to check it works, or similar
+ dd from SD or eMMC, perhaps check for performance changes
+ Play audio, and at least check that it takes the right amount of time;
doesn't hang or cause kernel oops. Perhaps also loop it back and
validate that capture roughly approximates playback sound (e.g. FFT a
sine wave or similar?)
+ Test I2C transactions (likely tested by playing audio on many systems,
but some explicit i2cget's wouldn't hurt.
+ USB, e.g. lsusb, ping over a USB NIC, dd from USB mass storage?
+ hexdump an SPI flash, validate against expected content. Perhaps do a
write test too on a specific flash region?
+ Verify HDMI signal is generated. Perhaps use xrandr/... to test
changing video modes
+ Test WiFi, Bluetooth connectivity
+ Test PCIe devices are detected, and work
+ crypto driver tests
+ kexec
I run all of those manually sometimes. Some more often than others. Not
often enough though in many cases! It'd be awesome if they ran
automatically e.g. nightly, or on every commit.
I would love each test to be a standalone script file that developers
could just check out from git and run themselves to reproduce problems,
without having to set up their build/target systems identically to the
auto-build/test systems. Hopefully they would report status in a
standard way to ease integration into the test framework.
Some ability to run a stress-test (manually, automatically but less
often?) to weed out problems that happen with low frequency.
* Automated bisect
If a build or test fails, bisect to find the problematic commit,
automatically, and email people about the result.
* "Virtual" submissions
Send the system a git URL, and have it run the same set of builds/tests
as it would if those commits appeared in a branch it usually tested
automatically. Very useful for testing something across a range of HW
before sending it or applying it, so problems can be caught early rather
than once something is in linux-next.
A command-line or email-based interface to do this, for ease-of-use,
perhaps in addition to a web form, which would probably lower the
barrier to usage for some people.
There may be some security issues here re: letting arbitrary people
compile/run kernel code on the test systems. Implementing ACLs would
probably be annoying. Perhaps branches would have to be pushed to some
git server, which would implement the ACLs? Say, trust all kernel.org repos?
* Packaged project
The ability to install the system locally, e.g.:
+ My own system can run tests that the main system might not be so
interested in. This way, I get to use the same test infra-structure for
everything, to avoid duplicating it.
+ My system could run extreme levels of stress testing.
+ My system could be more open in who I accept "virtual" submissions
from for Tegra HW (e.g anyone @nvidia.com or using specific internal git
servers/branches perhaps).
+ My system can use boards that aren't available to the main system, or
that the main system isn't interested in. This will give me more
coverage. For example, I could test every single Tegra board to enable
extreme paranoia, rather than a representative sample in the main system.
* Apply similar testing to U-Boot, other relevant bootloader, or other
useful projects!
* The human and computer resources to back this up
Implementing much of the above is a lot of work to code, and support.
It'll require quite a bit of HW to run on.
(Note that this not a comment on the current arm-soc builder or other
public systems I linked to above, but some internal system...)
Here are the build results from automated periodic testing:
Topmost commit:
ebe5c08 SCSI: Allow MPT Fusion SAS 3.0 driver to be built into the kernel
Runtime: 37m 5s
Passed: 121
Failed: 0
Warnings: 12
Section mismatches: 0
-------------------------------------------------------------------------------
Failed defconfigs:
-------------------------------------------------------------------------------
Errors:
Warnings:
1 arch/arm/mach-pxa/em-x270.c:480:18: warning: ignoring return value of 'regulator_enable', declared with attribute warn_unused_result [-Wunused-result]
1 arch/arm/mach-pxa/em-x270.c:484:18: warning: ignoring return value of 'regulator_enable', declared with attribute warn_unused_result [-Wunused-result]
1 arch/arm/mach-pxa/em-x270.c:603:19: warning: ignoring return value of 'regulator_enable', declared with attribute warn_unused_result [-Wunused-result]
1 buildall.arm.u300_defconfig.log.passed:include/config/auto.conf:257:warning: override: ARCH_MULTIPLATFORM changes choice state
1 drivers/clocksource/bcm_kona_timer.c:210:199: warning: comparison of distinct pointer types lacks a cast [enabled by default]
1 drivers/gpio/gpio-omap.c:1485:13: warning: 'omap_gpio_init_context' defined but not used [-Wunused-function]
1 drivers/spi/spi-pl022.c:2226:9: warning: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'resource_size_t' [-Wformat=]
1 drivers/video/backlight/max8925_bl.c:177:3: warning: statement with no effect [-Wunused-value]
4 arch/arm/mm/init.c:603:2: warning: passing argument 1 of 'free_reserved_area' makes integer from pointer without a cast [enabled by default]
4 arch/arm/mm/init.c:603:2: warning: passing argument 2 of 'free_reserved_area' makes integer from pointer without a cast [enabled by default]
4 arch/arm/mm/init.c:731:2: warning: passing argument 1 of 'free_reserved_area' makes integer from pointer without a cast [enabled by default]
4 arch/arm/mm/init.c:731:2: warning: passing argument 2 of 'free_reserved_area' makes integer from pointer without a cast [enabled by default]
Section mismatches: