public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] help on using buildman
@ 2014-11-20 18:47 York Sun
  2014-11-20 19:13 ` Simon Glass
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 18:47 UTC (permalink / raw)
  To: u-boot

Simon,

Can you shed some light on my trouble? I am trying to use buildman for
regression tests. I got inconsistency and am trying to find out why. Take one
example MPC832XEMDS_HOST_66 in this case (I randomly pick a failed board)

On one computer

$ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
--force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
winegcc: gcc-4.5 failed
boards.cfg is up to date. Nothing to do.
Building 15 commits for 1 boards (1 thread, 4 jobs per thread)
01: ARM: atmel: add sama5d4 xplained ultra board support
02: qe: add u-qe support to arm board
03: qe: add qe support to ls1021aqds
04: qe: add qe support for ls1021a-twr board
05: arm: ls102xa: Fixed a register definition error
06: u_qe: add u_qe_upload_firmware for u_qe
07: powerpc: Move fsl_errata.h out of arch/powerpc
08: driver/usb/fsl: Make FSL USB driver common
09: drivers: usb: fsl: Define USB configs for LS102XA
10: ls1: config: Enable USB EHCI Host on LS1021AQDS
11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
12: arm: ls102xa: Remove bit reversing for SCFG registers
13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
   15    0    0 /15     MPC832XEMDS_HOST_66

No error.

On another computer

$ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
--force-reconfig MPC832XEMDS_HOST_66 -se
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Summary of 15 commits for 1 boards (1 thread, 24 jobs per thread)
01: ARM: atmel: add sama5d4 xplained ultra board support
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
02: qe: add u-qe support to arm board
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2
03: qe: add qe support to ls1021aqds
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
04: qe: add qe support for ls1021a-twr board
05: arm: ls102xa: Fixed a register definition error
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2
06: u_qe: add u_qe_upload_firmware for u_qe
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
07: powerpc: Move fsl_errata.h out of arch/powerpc
08: driver/usb/fsl: Make FSL USB driver common
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2
09: drivers: usb: fsl: Define USB configs for LS102XA
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
10: ls1: config: Enable USB EHCI Host on LS1021AQDS
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2
11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
12: arm: ls102xa: Remove bit reversing for SCFG registers
13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2
14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
   powerpc:    MPC832XEMDS_HOST_66
-make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
-make: *** [sub-make] Error 2

You can see one error comes on and off. How can I debug it? I don't use python
enough to diagnose the code. Is there a way to dump the make command to check?

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 18:47 [U-Boot] help on using buildman York Sun
@ 2014-11-20 19:13 ` Simon Glass
  2014-11-20 19:22   ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: Simon Glass @ 2014-11-20 19:13 UTC (permalink / raw)
  To: u-boot

Hi York,

On 20 November 2014 18:47, York Sun <yorksun@freescale.com> wrote:
> Simon,
>
> Can you shed some light on my trouble? I am trying to use buildman for
> regression tests. I got inconsistency and am trying to find out why. Take one
> example MPC832XEMDS_HOST_66 in this case (I randomly pick a failed board)
>
> On one computer
>
> $ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
> --force-reconfig MPC832XEMDS_HOST_66 -ve
> No section: 'make-flags'
> winegcc: gcc-4.5 failed
> boards.cfg is up to date. Nothing to do.
> Building 15 commits for 1 boards (1 thread, 4 jobs per thread)
> 01: ARM: atmel: add sama5d4 xplained ultra board support
> 02: qe: add u-qe support to arm board
> 03: qe: add qe support to ls1021aqds
> 04: qe: add qe support for ls1021a-twr board
> 05: arm: ls102xa: Fixed a register definition error
> 06: u_qe: add u_qe_upload_firmware for u_qe
> 07: powerpc: Move fsl_errata.h out of arch/powerpc
> 08: driver/usb/fsl: Make FSL USB driver common
> 09: drivers: usb: fsl: Define USB configs for LS102XA
> 10: ls1: config: Enable USB EHCI Host on LS1021AQDS
> 11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
> 12: arm: ls102xa: Remove bit reversing for SCFG registers
> 13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
> 14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
> 15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
>    15    0    0 /15     MPC832XEMDS_HOST_66
>
> No error.
>
> On another computer
>
> $ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
> --force-reconfig MPC832XEMDS_HOST_66 -se

-s means it won't actually build, just report a previous build. But I
suppose you did a previous build.

> No section: 'make-flags'
> boards.cfg is up to date. Nothing to do.
> Summary of 15 commits for 1 boards (1 thread, 24 jobs per thread)
> 01: ARM: atmel: add sama5d4 xplained ultra board support
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 02: qe: add u-qe support to arm board
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2
> 03: qe: add qe support to ls1021aqds
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 04: qe: add qe support for ls1021a-twr board
> 05: arm: ls102xa: Fixed a register definition error
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2
> 06: u_qe: add u_qe_upload_firmware for u_qe
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 07: powerpc: Move fsl_errata.h out of arch/powerpc
> 08: driver/usb/fsl: Make FSL USB driver common
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2
> 09: drivers: usb: fsl: Define USB configs for LS102XA
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 10: ls1: config: Enable USB EHCI Host on LS1021AQDS
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2
> 11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 12: arm: ls102xa: Remove bit reversing for SCFG registers
> 13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2
> 14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
> 15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
>    powerpc:    MPC832XEMDS_HOST_66
> -make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> -make: *** [sub-make] Error 2

It seems to have failed to configure things - there is no $ARCH perhaps?

>
> You can see one error comes on and off. How can I debug it? I don't use python
> enough to diagnose the code. Is there a way to dump the make command to check?
>
> York

Any change you are missing a toolchain or it is broken?

See ../working_upstream_qoriq/01*/MPC832XEMDS_HOST_66/toolchain for
possible clues.

You can only see the make output if you comment out this line in
builderthread.py:

                #args.append('-s')

Then it will be in a file called 'log'. It would be nice to have an
option for that...

Regards,
Simon

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 19:13 ` Simon Glass
@ 2014-11-20 19:22   ` York Sun
  2014-11-20 19:46     ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 19:22 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 11:13 AM, Simon Glass wrote:
> Hi York,
> 
> On 20 November 2014 18:47, York Sun <yorksun@freescale.com> wrote:
>> Simon,
>>
>> Can you shed some light on my trouble? I am trying to use buildman for
>> regression tests. I got inconsistency and am trying to find out why. Take one
>> example MPC832XEMDS_HOST_66 in this case (I randomly pick a failed board)
>>
>> On one computer
>>
>> $ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
>> --force-reconfig MPC832XEMDS_HOST_66 -ve
>> No section: 'make-flags'
>> winegcc: gcc-4.5 failed
>> boards.cfg is up to date. Nothing to do.
>> Building 15 commits for 1 boards (1 thread, 4 jobs per thread)
>> 01: ARM: atmel: add sama5d4 xplained ultra board support
>> 02: qe: add u-qe support to arm board
>> 03: qe: add qe support to ls1021aqds
>> 04: qe: add qe support for ls1021a-twr board
>> 05: arm: ls102xa: Fixed a register definition error
>> 06: u_qe: add u_qe_upload_firmware for u_qe
>> 07: powerpc: Move fsl_errata.h out of arch/powerpc
>> 08: driver/usb/fsl: Make FSL USB driver common
>> 09: drivers: usb: fsl: Define USB configs for LS102XA
>> 10: ls1: config: Enable USB EHCI Host on LS1021AQDS
>> 11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
>> 12: arm: ls102xa: Remove bit reversing for SCFG registers
>> 13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
>> 14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
>> 15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
>>    15    0    0 /15     MPC832XEMDS_HOST_66
>>
>> No error.
>>
>> On another computer
>>
>> $ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
>> --force-reconfig MPC832XEMDS_HOST_66 -se
> 
> -s means it won't actually build, just report a previous build. But I
> suppose you did a previous build.

Right. I posted the command to show summary by mistake. Here is the one to build it.

$ ./tools/buildman/buildman -b working_upstream_qoriq --force-build
--force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Building 15 commits for 1 boards (1 thread, 24 jobs per thread)
Cloning repo for thread 0
01: ARM: atmel: add sama5d4 xplained ultra board support
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
02: qe: add u-qe support to arm board
03: qe: add qe support to ls1021aqds
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
04: qe: add qe support for ls1021a-twr board
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
05: arm: ls102xa: Fixed a register definition error
06: u_qe: add u_qe_upload_firmware for u_qe
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
07: powerpc: Move fsl_errata.h out of arch/powerpc
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
08: driver/usb/fsl: Make FSL USB driver common
09: drivers: usb: fsl: Define USB configs for LS102XA
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
10: ls1: config: Enable USB EHCI Host on LS1021AQDS
11: arm: ls102xa: Add snoop disable for slave port 0, 1 and 2
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
12: arm: ls102xa: Remove bit reversing for SCFG registers
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
13: ls102xa: ifc: nor: fix the write issue when bytes unaligned
14: arm: ls102xa: Add SystemID EEPROM support for LS1021ATWR board
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
15: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
    6    0    9 /15     MPC832XEMDS_HOST_66


> 
> It seems to have failed to configure things - there is no $ARCH perhaps?
> 

When I built for more targets, for example 'arm & freescale' powerpc aarch64, I
see this kind of errors, but not with all boards. The ARCH is not defined in
command line or environment when calling buildman. Beside, this error comes and
goes for the same board for different commit. It doesn't make much sense.

>>
>> You can see one error comes on and off. How can I debug it? I don't use python
>> enough to diagnose the code. Is there a way to dump the make command to check?
>>
>> York
> 
> Any change you are missing a toolchain or it is broken?
> 
> See ../working_upstream_qoriq/01*/MPC832XEMDS_HOST_66/toolchain for
> possible clues.
> 

The toolchain is OK. I use the same setup to build other targets. Not all have
this error. Using the same toolchain, I have no error calling MAKEALL.

> You can only see the make output if you comment out this line in
> builderthread.py:
> 
>                 #args.append('-s')
> 
> Then it will be in a file called 'log'. It would be nice to have an
> option for that...
> 

Let me try that.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 19:22   ` York Sun
@ 2014-11-20 19:46     ` York Sun
  2014-11-20 19:51       ` Simon Glass
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 19:46 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 11:22 AM, York Sun wrote:
> On 11/20/2014 11:13 AM, Simon Glass wrote:
>> You can only see the make output if you comment out this line in
>> builderthread.py:
>>
>>                 #args.append('-s')
>>
>> Then it will be in a file called 'log'. It would be nice to have an
>> option for that...
>>
> 
> Let me try that.
> 

I made the change to file tools/buildman/builderthread.py

-                args.append('-s')
+#                args.append('-s')

I run it again for one commit and with one board

$ ./tools/buildman/buildman -b working_upstream_qoriq --count=1 --keep-outputs
--force-build --force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Building 1 commit for 1 boards (1 thread, 24 jobs per thread)
Cloning repo for thread 0
01: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
    0    0    1 /1      MPC832XEMDS_HOST_66

$ ll
../working_upstream_qoriq/01_of_01_g3b33b926_arm--ls102xa--Select/MPC832XEMDS_HOST_66/
total 28
-rw-rw-r-- 1 jenkins jenkins 11588 Nov 20 13:28 autoconf.mk
-rw-rw-r-- 1 jenkins jenkins     1 Nov 20 13:28 done
-rw-rw-r-- 1 jenkins jenkins   168 Nov 20 13:28 err
-rw-rw-r-- 1 jenkins jenkins   939 Nov 20 13:28 log
-rw-rw-r-- 1 jenkins jenkins   276 Nov 20 13:28 toolchain

I don't see much useful information in file log

$ cat
../working_upstream_qoriq/01_of_01_g3b33b926_arm--ls102xa--Select/MPC832XEMDS_HOST_66/log

make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
  GEN     ./Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  GEN     include/autoconf.mk
  GEN     include/autoconf.mk.dep
make[1]: Leaving directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
  CHK     include/config/uboot.release
  CHK     include/generated/timestamp_autogenerated.h
  GEN     ./Makefile
  UPD     include/generated/timestamp_autogenerated.h
  UPD     include/config/uboot.release
make[1]: Leaving directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'

Nothing more than that. Where shall I look for ARCH?

If I build for board T4240QDS, it has error on most but not all. T4240QDS
T4240QDS_SRIO_PCIE_BOOT T4240QDS_SECURE_BOOT failed, but T4240QDS_NAND didn't.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 19:46     ` York Sun
@ 2014-11-20 19:51       ` Simon Glass
  2014-11-20 19:55         ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: Simon Glass @ 2014-11-20 19:51 UTC (permalink / raw)
  To: u-boot

Hi York,

On 20 November 2014 19:46, York Sun <yorksun@freescale.com> wrote:
> On 11/20/2014 11:22 AM, York Sun wrote:
>> On 11/20/2014 11:13 AM, Simon Glass wrote:
>>> You can only see the make output if you comment out this line in
>>> builderthread.py:
>>>
>>>                 #args.append('-s')
>>>
>>> Then it will be in a file called 'log'. It would be nice to have an
>>> option for that...
>>>
>>
>> Let me try that.
>>
>
> I made the change to file tools/buildman/builderthread.py
>
> -                args.append('-s')
> +#                args.append('-s')
>
> I run it again for one commit and with one board
>
> $ ./tools/buildman/buildman -b working_upstream_qoriq --count=1 --keep-outputs
> --force-build --force-reconfig MPC832XEMDS_HOST_66 -ve
> No section: 'make-flags'
> boards.cfg is up to date. Nothing to do.
> Building 1 commit for 1 boards (1 thread, 24 jobs per thread)
> Cloning repo for thread 0
> 01: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
>    powerpc: +   MPC832XEMDS_HOST_66
> +make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> +make: *** [sub-make] Error 2
>     0    0    1 /1      MPC832XEMDS_HOST_66
>
> $ ll
> ../working_upstream_qoriq/01_of_01_g3b33b926_arm--ls102xa--Select/MPC832XEMDS_HOST_66/
> total 28
> -rw-rw-r-- 1 jenkins jenkins 11588 Nov 20 13:28 autoconf.mk
> -rw-rw-r-- 1 jenkins jenkins     1 Nov 20 13:28 done
> -rw-rw-r-- 1 jenkins jenkins   168 Nov 20 13:28 err
> -rw-rw-r-- 1 jenkins jenkins   939 Nov 20 13:28 log
> -rw-rw-r-- 1 jenkins jenkins   276 Nov 20 13:28 toolchain
>
> I don't see much useful information in file log
>
> $ cat
> ../working_upstream_qoriq/01_of_01_g3b33b926_arm--ls102xa--Select/MPC832XEMDS_HOST_66/log
>
> make[1]: Entering directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
>   GEN     ./Makefile
> scripts/kconfig/conf --silentoldconfig Kconfig
>   CHK     include/config.h
>   UPD     include/config.h
>   GEN     include/autoconf.mk
>   GEN     include/autoconf.mk.dep
> make[1]: Leaving directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
> make[1]: Entering directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
>   CHK     include/config/uboot.release
>   CHK     include/generated/timestamp_autogenerated.h
>   GEN     ./Makefile
>   UPD     include/generated/timestamp_autogenerated.h
>   UPD     include/config/uboot.release
> make[1]: Leaving directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq/.bm-work/00/build'
>
> Nothing more than that. Where shall I look for ARCH?

That doesn't look like a full build to me. The 'err' file may have
more clues. You could try without '--force-build --force-reconfig'
perhaps.

>
> If I build for board T4240QDS, it has error on most but not all. T4240QDS
> T4240QDS_SRIO_PCIE_BOOT T4240QDS_SECURE_BOOT failed, but T4240QDS_NAND didn't.

It's a bit of a mystery. How about adding V=1 in your make flags in ~/.buildman:

[make-flags]
T4240QDS=V=1

Regards,
Simon

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 19:51       ` Simon Glass
@ 2014-11-20 19:55         ` York Sun
  2014-11-20 20:10           ` Simon Glass
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 19:55 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 11:51 AM, Simon Glass wrote:
>>
>> Nothing more than that. Where shall I look for ARCH?
> 
> That doesn't look like a full build to me. The 'err' file may have
> more clues. You could try without '--force-build --force-reconfig'
> perhaps.
> 

No, it failed. The err file has this

$ cat err
make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
make[1]: *** Waiting for unfinished jobs....
make: *** [sub-make] Error 2


>>
>> If I build for board T4240QDS, it has error on most but not all. T4240QDS
>> T4240QDS_SRIO_PCIE_BOOT T4240QDS_SECURE_BOOT failed, but T4240QDS_NAND didn't.
> 
> It's a bit of a mystery. How about adding V=1 in your make flags in ~/.buildman:
> 

I think the key is to configure it, not build it. With the failure case, it
doesn't build. I am thinking to find the equivalent to "make ARCH=power ...".
How to dump that?

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 19:55         ` York Sun
@ 2014-11-20 20:10           ` Simon Glass
  2014-11-20 20:18             ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: Simon Glass @ 2014-11-20 20:10 UTC (permalink / raw)
  To: u-boot

Hi York,

On 20 November 2014 19:55, York Sun <yorksun@freescale.com> wrote:
> On 11/20/2014 11:51 AM, Simon Glass wrote:
>>>
>>> Nothing more than that. Where shall I look for ARCH?
>>
>> That doesn't look like a full build to me. The 'err' file may have
>> more clues. You could try without '--force-build --force-reconfig'
>> perhaps.
>>
>
> No, it failed. The err file has this
>
> $ cat err
> make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
> `u-boot.lds'.  Stop.
> make[1]: *** Waiting for unfinished jobs....
> make: *** [sub-make] Error 2
>
>
>>>
>>> If I build for board T4240QDS, it has error on most but not all. T4240QDS
>>> T4240QDS_SRIO_PCIE_BOOT T4240QDS_SECURE_BOOT failed, but T4240QDS_NAND didn't.
>>
>> It's a bit of a mystery. How about adding V=1 in your make flags in ~/.buildman:
>>
>
> I think the key is to configure it, not build it. With the failure case, it
> doesn't build. I am thinking to find the equivalent to "make ARCH=power ...".
> How to dump that?

Add a 'print' line to make() in builder.py:

        cmd = [self.gnu_make] + list(args)
        print cmd
        result = command.RunPipe([cmd], capture=True, capture_stderr=True,
                cwd=cwd, raise_on_error=False, **kwargs)
        return result

Regards,
Simon

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 20:10           ` Simon Glass
@ 2014-11-20 20:18             ` York Sun
  2014-11-20 21:04               ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 20:18 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 12:10 PM, Simon Glass wrote:
> Hi York,
>>
>> I think the key is to configure it, not build it. With the failure case, it
>> doesn't build. I am thinking to find the equivalent to "make ARCH=power ...".
>> How to dump that?
> 
> Add a 'print' line to make() in builder.py:
> 
>         cmd = [self.gnu_make] + list(args)
>         print cmd
>         result = command.RunPipe([cmd], capture=True, capture_stderr=True,
>                 cwd=cwd, raise_on_error=False, **kwargs)
>         return result
> 

Thanks. Adding the "print cmd" makes the issue disappeared. Removing it, the
issue comes back. Add it back, it is gone again. I removed the working directory
each time before building it. See the commands below

$ !407
./tools/buildman/buildman -b working_upstream_qoriq --count=1 --keep-outputs
--force-build --force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Building 1 commit for 1 boards (1 thread, 24 jobs per thread)
Cloning repo for thread 0
    0    0    0 /1      (starting) ['make', 'mrproper', 'O=build', '-j', '24']
['make', 'O=build', '-j', '24', 'MPC832XEMDS_HOST_66_defconfig']
['make', 'O=build', '-j', '24']
01: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
    1    0    0 /1      MPC832XEMDS_HOST_66
-bash-3.2$ git diff
diff --git a/tools/buildman/builder.py b/tools/buildman/builder.py
index 8155c16..0411959 100644
--- a/tools/buildman/builder.py
+++ b/tools/buildman/builder.py
@@ -324,6 +324,7 @@ class Builder:
             kwargs: Arguments to pass to command.RunPipe()
         """
         cmd = [self.gnu_make] + list(args)
+       print cmd
         result = command.RunPipe([cmd], capture=True, capture_stderr=True,
                 cwd=cwd, raise_on_error=False, **kwargs)
         return result
diff --git a/tools/buildman/builderthread.py b/tools/buildman/builderthread.py
index a9cf68a..d9526e6 100644
--- a/tools/buildman/builderthread.py
+++ b/tools/buildman/builderthread.py
@@ -197,7 +197,7 @@ class BuilderThread(threading.Thread):
                         src_dir = os.getcwd()
                     else:
                         args.append('O=build')
-                args.append('-s')
+#                args.append('-s')
                 if self.builder.num_jobs is not None:
                     args.extend(['-j', str(self.builder.num_jobs)])
                 config_args = ['%s_defconfig' % brd.target]
-bash-3.2$ git checkout tools/buildman/builder.py
-bash-3.2$ rm -rf ../working_upstream_qoriq/
-bash-3.2$ ./tools/buildman/buildman -b working_upstream_qoriq --count=1
--keep-outputs --force-build --force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Building 1 commit for 1 boards (1 thread, 24 jobs per thread)
Cloning repo for thread 0
01: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
   powerpc: +   MPC832XEMDS_HOST_66
+make[1]: *** No rule to make target `../arch//cpu/u-boot.lds', needed by
`u-boot.lds'.  Stop.
+make: *** [sub-make] Error 2
    0    0    1 /1      MPC832XEMDS_HOST_66
-bash-3.2$ vi tools/buildman/builder.py
-bash-3.2$ rm -rf ../working_upstream_qoriq/-bash-3.2$ ./tools/buildman/buildman
-b working_upstream_qoriq --count=1 --keep-outputs --force-build
--force-reconfig MPC832XEMDS_HOST_66 -ve
No section: 'make-flags'
boards.cfg is up to date. Nothing to do.
Building 1 commit for 1 boards (1 thread, 24 jobs per thread)
Cloning repo for thread 0
    0    0    0 /1      (starting) ['make', 'mrproper', 'O=build', '-j', '24']
['make', 'O=build', '-j', '24', 'MPC832XEMDS_HOST_66_defconfig']
['make', 'O=build', '-j', '24']
01: arm: ls102xa: Select ge2_clk125 for eTSEC clock muxing
    1    0    0 /1      MPC832XEMDS_HOST_66
-bash-3.2$

I don't see ARCH defined anywhere.

York

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 20:18             ` York Sun
@ 2014-11-20 21:04               ` York Sun
  2014-11-20 21:33                 ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 21:04 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 12:18 PM, York Sun wrote:
> 
> I don't see ARCH defined anywhere.
> 

Simon,

I think ARCH is defined in Kconfig as SYS_ARCH. Is it possible buildman runs
out-of-order?

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 21:04               ` York Sun
@ 2014-11-20 21:33                 ` York Sun
  2014-11-20 21:34                   ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 21:33 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 01:04 PM, York Sun wrote:
> On 11/20/2014 12:18 PM, York Sun wrote:
>>
>> I don't see ARCH defined anywhere.
>>
> 
> Simon,
> 
> I think ARCH is defined in Kconfig as SYS_ARCH. Is it possible buildman runs
> out-of-order?
> 

There is something. When the server is under heavy load, this error doesn't
show. When the server is mostly idling, the error comes. Any suggestion to debug it?

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 21:33                 ` York Sun
@ 2014-11-20 21:34                   ` York Sun
  2014-11-20 21:46                     ` Simon Glass
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 21:34 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 01:33 PM, York Sun wrote:
> On 11/20/2014 01:04 PM, York Sun wrote:
>> On 11/20/2014 12:18 PM, York Sun wrote:
>>>
>>> I don't see ARCH defined anywhere.
>>>
>>
>> Simon,
>>
>> I think ARCH is defined in Kconfig as SYS_ARCH. Is it possible buildman runs
>> out-of-order?
>>
> 
> There is something. When the server is under heavy load, this error doesn't
> show. When the server is mostly idling, the error comes. Any suggestion to debug it?

Scratch that. It is not consistent.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 21:34                   ` York Sun
@ 2014-11-20 21:46                     ` Simon Glass
  2014-11-20 22:25                       ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: Simon Glass @ 2014-11-20 21:46 UTC (permalink / raw)
  To: u-boot

Hi York,

On 20 November 2014 21:34, York Sun <yorksun@freescale.com> wrote:
> On 11/20/2014 01:33 PM, York Sun wrote:
>> On 11/20/2014 01:04 PM, York Sun wrote:
>>> On 11/20/2014 12:18 PM, York Sun wrote:
>>>>
>>>> I don't see ARCH defined anywhere.
>>>>
>>>
>>> Simon,
>>>
>>> I think ARCH is defined in Kconfig as SYS_ARCH. Is it possible buildman runs
>>> out-of-order?
>>>
>>
>> There is something. When the server is under heavy load, this error doesn't
>> show. When the server is mostly idling, the error comes. Any suggestion to debug it?
>
> Scratch that. It is not consistent.

It's a mystery to me. I haven't seen this problem in much usage and
can only suggest digging in to figure it out.

Regards,
Simon

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 21:46                     ` Simon Glass
@ 2014-11-20 22:25                       ` York Sun
  2014-11-20 23:35                         ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 22:25 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 01:46 PM, Simon Glass wrote:
> Hi York,
> 
> On 20 November 2014 21:34, York Sun <yorksun@freescale.com> wrote:
>> On 11/20/2014 01:33 PM, York Sun wrote:
>>> On 11/20/2014 01:04 PM, York Sun wrote:
>>>> On 11/20/2014 12:18 PM, York Sun wrote:
>>>>>
>>>>> I don't see ARCH defined anywhere.
>>>>>
>>>>
>>>> Simon,
>>>>
>>>> I think ARCH is defined in Kconfig as SYS_ARCH. Is it possible buildman runs
>>>> out-of-order?
>>>>
>>>
>>> There is something. When the server is under heavy load, this error doesn't
>>> show. When the server is mostly idling, the error comes. Any suggestion to debug it?
>>
>> Scratch that. It is not consistent.
> 
> It's a mystery to me. I haven't seen this problem in much usage and
> can only suggest digging in to figure it out.
> 

Found something but not the root cause yet. For the failure run, it runs in
Makefile, passed include/config/uboot.release, but not anything under
"prepare3:". For the success run, it continues to run.


-bash-3.2$ more log
make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-
pull/working_upstream_qoriq/.bm-work/00/build'
  GEN     ./Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  GEN     include/autoconf.mk
  GEN     include/autoconf.mk.dep
make[1]: Leaving directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-p
ull/working_upstream_qoriq/.bm-work/00/build'
make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-
pull/working_upstream_qoriq/.bm-work/00/build'
echo "York debug here"
York debug here
  CHK     include/config/uboot.release
  CHK     include/generated/timestamp_autogenerated.h
  GEN     ./Makefile
  UPD     include/generated/timestamp_autogenerated.h
  UPD     include/config/uboot.release
echo "Done uboot.release"
Done uboot.release

(note, for the success run, the log would have "Using .. as source for U-Boot" here)

make[1]: Leaving directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-p
ull/working_upstream_qoriq/.bm-work/00/build'

Not sure if this is still buildman related, but only visible when running with
buildman.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 22:25                       ` York Sun
@ 2014-11-20 23:35                         ` York Sun
  2014-11-21  4:14                           ` Simon Glass
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-20 23:35 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 02:25 PM, York Sun wrote:
> Not sure if this is still buildman related, but only visible when running with
> buildman.

Simon,

It seems related to out-of-tree building.

For the failure case, the dependency "include/config/uboot.release" completes
but not continue to run. It seems to be related to out of tree building. When I
use buildman, it use out-of-tree building by default. I can reproduce the issue
by using make directly with O=<path>. I don't understand how out-of-tree
building would inconsistently fail.


-bash-3.2$
CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all
make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
  CLEAN   tools
  CLEAN   tools/lib tools/common
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
  CLEAN   u-boot.lds
  CLEAN   include/config include/generated
  CLEAN   .config include/autoconf.mk include/autoconf.mk.dep include/config.h
  HOSTCC  scripts/basic/fixdep
  GEN     ./Makefile
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:
In function ?get_symbol_str?:
/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:551:
warning: ?jump? may be used uninitialized in this function
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
  GEN     ./Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  GEN     include/autoconf.mk
  GEN     include/autoconf.mk.dep
  CHK     include/config/uboot.release
  GEN     ./Makefile
  CHK     include/generated/timestamp_autogenerated.h
make[2]: *** No rule to make target
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/arch//cpu/u-boot.lds',
needed by `u-boot.lds'.  Stop.
make[2]: *** Waiting for unfinished jobs....
  UPD     include/generated/timestamp_autogenerated.h
  UPD     include/config/uboot.release
make[1]: *** [__build_one_by_one] Error 2
make[1]: Leaving directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
make: *** [sub-make] Error 2



For the passed case, the log is

-bash-3.2$
CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all
make[1]: Entering directory
`/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
  CLEAN   include/config include/generated
  CLEAN   .config include/autoconf.mk include/autoconf.mk.dep include/config.h
  HOSTCC  scripts/basic/fixdep
  GEN     ./Makefile
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:
In function ?get_symbol_str?:
/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:551:
warning: ?jump? may be used uninitialized in this function
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
  GEN     ./Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  GEN     include/autoconf.mk
  GEN     include/autoconf.mk.dep
  CHK     include/config/uboot.release
  CHK     include/generated/timestamp_autogenerated.h
  GEN     ./Makefile
  UPD     include/generated/timestamp_autogenerated.h
  UPD     include/config/uboot.release
  Using
/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace as
source for U-Boot
  CHK     include/generated/version_autogenerated.h
  UPD     include/generated/version_autogenerated.h
  CC      lib/asm-offsets.s
  GEN     include/generated/generic-asm-offsets.h
  LDS     u-boot.lds
  HOSTCC  tools/envcrc.o
  WRAP    tools/lib/crc32.c
  WRAP    tools/common/env_embedded.c
  WRAP    tools/lib/sha1.c
  HOSTCC  tools/gen_eth_addr
  HOSTCC  tools/img2srec
  HOSTCC  tools/mkenvimage.o
  HOSTCC  tools/os_support.o
(and keep going)

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-20 23:35                         ` York Sun
@ 2014-11-21  4:14                           ` Simon Glass
  2014-11-21  4:42                             ` Masahiro Yamada
  2014-11-21 17:22                             ` York Sun
  0 siblings, 2 replies; 22+ messages in thread
From: Simon Glass @ 2014-11-21  4:14 UTC (permalink / raw)
  To: u-boot

+Masahiro who may have some ideas

Hi York,

On 21 November 2014 00:35, York Sun <yorksun@freescale.com> wrote:
> On 11/20/2014 02:25 PM, York Sun wrote:
>> Not sure if this is still buildman related, but only visible when running with
>> buildman.
>
> Simon,
>
> It seems related to out-of-tree building.
>
> For the failure case, the dependency "include/config/uboot.release" completes
> but not continue to run. It seems to be related to out of tree building. When I
> use buildman, it use out-of-tree building by default. I can reproduce the issue
> by using make directly with O=<path>. I don't understand how out-of-tree
> building would inconsistently fail.
>
>
> -bash-3.2$
> CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
> make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all
> make[1]: Entering directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
>   CLEAN   tools
>   CLEAN   tools/lib tools/common
>   CLEAN   scripts/basic
>   CLEAN   scripts/kconfig
>   CLEAN   u-boot.lds
>   CLEAN   include/config include/generated
>   CLEAN   .config include/autoconf.mk include/autoconf.mk.dep include/config.h
>   HOSTCC  scripts/basic/fixdep
>   GEN     ./Makefile
>   HOSTCC  scripts/kconfig/conf.o
>   SHIPPED scripts/kconfig/zconf.tab.c
>   SHIPPED scripts/kconfig/zconf.lex.c
>   SHIPPED scripts/kconfig/zconf.hash.c
>   HOSTCC  scripts/kconfig/zconf.tab.o
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:
> In function ?get_symbol_str?:
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:551:
> warning: ?jump? may be used uninitialized in this function
>   HOSTLD  scripts/kconfig/conf
> #
> # configuration written to .config
> #
>   GEN     ./Makefile
> scripts/kconfig/conf --silentoldconfig Kconfig
>   CHK     include/config.h
>   UPD     include/config.h
>   GEN     include/autoconf.mk
>   GEN     include/autoconf.mk.dep
>   CHK     include/config/uboot.release
>   GEN     ./Makefile
>   CHK     include/generated/timestamp_autogenerated.h
> make[2]: *** No rule to make target
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/arch//cpu/u-boot.lds',
> needed by `u-boot.lds'.  Stop.
> make[2]: *** Waiting for unfinished jobs....
>   UPD     include/generated/timestamp_autogenerated.h
>   UPD     include/config/uboot.release
> make[1]: *** [__build_one_by_one] Error 2
> make[1]: Leaving directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
> make: *** [sub-make] Error 2
>
>
>
> For the passed case, the log is
>
> -bash-3.2$
> CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
> make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all
> make[1]: Entering directory
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/working_upstream_qoriq'
>   CLEAN   scripts/basic
>   CLEAN   scripts/kconfig
>   CLEAN   include/config include/generated
>   CLEAN   .config include/autoconf.mk include/autoconf.mk.dep include/config.h
>   HOSTCC  scripts/basic/fixdep
>   GEN     ./Makefile
>   HOSTCC  scripts/kconfig/conf.o
>   SHIPPED scripts/kconfig/zconf.tab.c
>   SHIPPED scripts/kconfig/zconf.lex.c
>   SHIPPED scripts/kconfig/zconf.hash.c
>   HOSTCC  scripts/kconfig/zconf.tab.o
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:
> In function ?get_symbol_str?:
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:551:
> warning: ?jump? may be used uninitialized in this function
>   HOSTLD  scripts/kconfig/conf
> #
> # configuration written to .config
> #
>   GEN     ./Makefile
> scripts/kconfig/conf --silentoldconfig Kconfig
>   CHK     include/config.h
>   UPD     include/config.h
>   GEN     include/autoconf.mk
>   GEN     include/autoconf.mk.dep
>   CHK     include/config/uboot.release
>   CHK     include/generated/timestamp_autogenerated.h
>   GEN     ./Makefile
>   UPD     include/generated/timestamp_autogenerated.h
>   UPD     include/config/uboot.release
>   Using
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace as
> source for U-Boot
>   CHK     include/generated/version_autogenerated.h
>   UPD     include/generated/version_autogenerated.h
>   CC      lib/asm-offsets.s
>   GEN     include/generated/generic-asm-offsets.h
>   LDS     u-boot.lds
>   HOSTCC  tools/envcrc.o
>   WRAP    tools/lib/crc32.c
>   WRAP    tools/common/env_embedded.c
>   WRAP    tools/lib/sha1.c
>   HOSTCC  tools/gen_eth_addr
>   HOSTCC  tools/img2srec
>   HOSTCC  tools/mkenvimage.o
>   HOSTCC  tools/os_support.o
> (and keep going)

This may be unrelated to buildman, but to check you can use the -i
flag to enable an in-tree build.

Regards,
Simon

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  4:14                           ` Simon Glass
@ 2014-11-21  4:42                             ` Masahiro Yamada
  2014-11-21  4:53                               ` Masahiro Yamada
  2014-11-21  4:55                               ` York Sun
  2014-11-21 17:22                             ` York Sun
  1 sibling, 2 replies; 22+ messages in thread
From: Masahiro Yamada @ 2014-11-21  4:42 UTC (permalink / raw)
  To: u-boot

Hi York, Simon,




On Fri, 21 Nov 2014 05:14:02 +0100
Simon Glass <sjg@chromium.org> wrote:

> +Masahiro who may have some ideas
> 
> Hi York,
> 
> On 21 November 2014 00:35, York Sun <yorksun@freescale.com> wrote:
> > On 11/20/2014 02:25 PM, York Sun wrote:
> >> Not sure if this is still buildman related, but only visible when running with
> >> buildman.
> >
> > Simon,
> >
> > It seems related to out-of-tree building.
> >
> > For the failure case, the dependency "include/config/uboot.release" completes
> > but not continue to run. It seems to be related to out of tree building. When I
> > use buildman, it use out-of-tree building by default. I can reproduce the issue
> > by using make directly with O=<path>. I don't understand how out-of-tree
> > building would inconsistently fail.
> >
> >
> > -bash-3.2$
> > CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
> > make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all


Please do not run "mrproper" with "*_defconfig" and "all".


Doing "_defconfig" and "all" at one time is supported,
but you must "clean" or "mrproper" separately.
This is the upstream limitation.  Linux Kernel does not support it either.


Without -j* option,  "make mrproper  *_defconfig  all" works, of course,
because they are run one by one in the given order.

With -j* option, it would not work because
the build system removes some files while it compiles other objects.

I guess this is the root cause of the inconsistent fails you have seen.



Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  4:42                             ` Masahiro Yamada
@ 2014-11-21  4:53                               ` Masahiro Yamada
  2014-11-21  4:55                               ` York Sun
  1 sibling, 0 replies; 22+ messages in thread
From: Masahiro Yamada @ 2014-11-21  4:53 UTC (permalink / raw)
  To: u-boot

Hi York, Simon,




On Fri, 21 Nov 2014 13:42:05 +0900
Masahiro Yamada <yamada.m@jp.panasonic.com> wrote:

> > Hi York,
> > 
> > On 21 November 2014 00:35, York Sun <yorksun@freescale.com> wrote:
> > > On 11/20/2014 02:25 PM, York Sun wrote:
> > >> Not sure if this is still buildman related, but only visible when running with
> > >> buildman.
> > >
> > > Simon,
> > >
> > > It seems related to out-of-tree building.
> > >
> > > For the failure case, the dependency "include/config/uboot.release" completes
> > > but not continue to run. It seems to be related to out of tree building. When I
> > > use buildman, it use out-of-tree building by default. I can reproduce the issue
> > > by using make directly with O=<path>. I don't understand how out-of-tree
> > > building would inconsistently fail.
> > >
> > >
> > > -bash-3.2$
> > > CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
> > > make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all
> 
> 
> Please do not run "mrproper" with "*_defconfig" and "all".
> 
> 
> Doing "_defconfig" and "all" at one time is supported,
> but you must "clean" or "mrproper" separately.
> This is the upstream limitation.  Linux Kernel does not support it either.
> 
> 
> Without -j* option,  "make mrproper  *_defconfig  all" works, of course,
> because they are run one by one in the given order.
> 
> With -j* option, it would not work because
> the build system removes some files while it compiles other objects.
> 
> I guess this is the root cause of the inconsistent fails you have seen.



Sorry, this was my misunderstanding.


"make mrproper *_defconfig all" works.  Then, it is still a mystery...


Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  4:42                             ` Masahiro Yamada
  2014-11-21  4:53                               ` Masahiro Yamada
@ 2014-11-21  4:55                               ` York Sun
  2014-11-21  6:00                                 ` Masahiro Yamada
  1 sibling, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-21  4:55 UTC (permalink / raw)
  To: u-boot

Thanks for the hint. I should point out buildman does the three steps separately, and only apply -j to the last step. But I still see the failure.

York

________________________________
From: Masahiro Yamada
Sent: Thu, 20/11/2014 20:42
To: Sun York-R58495 <yorksun@freescale.com>; Simon Glass <sjg@chromium.org>
CC: u-boot at lists.denx.de; Wolfgang Denk <wd@denx.de>
Subject: Re: [U-Boot] help on using buildman


Hi York, Simon,




On Fri, 21 Nov 2014 05:14:02 +0100
Simon Glass <sjg@chromium.org> wrote:

> +Masahiro who may have some ideas
>
> Hi York,
>
> On 21 November 2014 00:35, York Sun <yorksun@freescale.com> wrote:
> > On 11/20/2014 02:25 PM, York Sun wrote:
> >> Not sure if this is still buildman related, but only visible when running with
> >> buildman.
> >
> > Simon,
> >
> > It seems related to out-of-tree building.
> >
> > For the failure case, the dependency "include/config/uboot.release" completes
> > but not continue to run. It seems to be related to out of tree building. When I
> > use buildman, it use out-of-tree building by default. I can reproduce the issue
> > by using make directly with O=<path>. I don't understand how out-of-tree
> > building would inconsistently fail.
> >
> >
> > -bash-3.2$
> > CROSS_COMPILE=/opt/fsl-networking/QorIQ-SDK-V1.4/sysroots/x86_64-fsl_networking_sdk-linux/usr/bin/ppce500mc-fsl_networking-linux/powerpc-fsl_networking-linux-
> > make -j24 O=../working_upstream_qoriq/ mrproper MPC832XEMDS_HOST_66_defconfig all


Please do not run "mrproper" with "*_defconfig" and "all".


Doing "_defconfig" and "all" at one time is supported,
but you must "clean" or "mrproper" separately.
This is the upstream limitation.  Linux Kernel does not support it either.


Without -j* option,  "make mrproper  *_defconfig  all" works, of course,
because they are run one by one in the given order.

With -j* option, it would not work because
the build system removes some files while it compiles other objects.

I guess this is the root cause of the inconsistent fails you have seen.



Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  4:55                               ` York Sun
@ 2014-11-21  6:00                                 ` Masahiro Yamada
       [not found]                                   ` <E5C75E70-6F62-4E5C-9861-1D903D9BBFC9@freescale.com>
  0 siblings, 1 reply; 22+ messages in thread
From: Masahiro Yamada @ 2014-11-21  6:00 UTC (permalink / raw)
  To: u-boot

Hi York,


I have not been able to reproduce this issue on my box,
but the cause surely resides on Kbuild itself.
It is not related to buildman at all.


> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:
> In function ?et_symbol_str?
> /local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/scripts/kconfig/menu.c:551:
> warning: ?ump?may be used uninitialized in this function
>   HOSTLD  scripts/kconfig/conf
> #
> # configuration written to .config
> #
>   GEN     ./Makefile
> scripts/kconfig/conf --silentoldconfig Kconfig
>   CHK     include/config.h
>   UPD     include/config.h
>   GEN     include/autoconf.mk
>   GEN     include/autoconf.mk.dep
>   CHK     include/config/uboot.release
>   GEN     ./Makefile
>   CHK     include/generated/timestamp_autogenerated.h
> make[2]: *** No rule to make target
> `/local/jenkins/jobs/york-scm-test-upstream-before-requesting-pull/workspace/arch//cpu/u-boot.lds',
> needed by `u-boot.lds'.  Stop.


According to this fail log,  "ARCH" has not been defined yet when LDSCRIPT is evaluated.


# If there is no specified link script, we look in a number of places for it
ifndef LDSCRIPT
	ifeq ($(wildcard $(LDSCRIPT)),)
		LDSCRIPT := $(srctree)/board/$(BOARDDIR)/u-boot.lds
	endif
	ifeq ($(wildcard $(LDSCRIPT)),)
		LDSCRIPT := $(srctree)/$(CPUDIR)/u-boot.lds
	endif
	ifeq ($(wildcard $(LDSCRIPT)),)
		LDSCRIPT := $(srctree)/arch/$(ARCH)/cpu/u-boot.lds
	endif
endif



I am not sure the real cause but it looks like the following code does not
work on *some* situation.


autoconf_is_current := $(if $(wildcard $(KCONFIG_CONFIG)),$(shell find . \
		-path ./include/config/auto.conf -newer $(KCONFIG_CONFIG)))
ifneq ($(autoconf_is_current),)
include $(srctree)/config.mk
endif



Now I have realized that it is the problem I am responsible to fix,
but it might not be easy enough to change LDSCRIPT stuff.

So, my question is, how much time can you give me to fix it?
Can you bare with it one month or so?




Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
       [not found]                                   ` <E5C75E70-6F62-4E5C-9861-1D903D9BBFC9@freescale.com>
@ 2014-11-21  6:47                                     ` York Sun
  2014-11-21 17:14                                       ` York Sun
  0 siblings, 1 reply; 22+ messages in thread
From: York Sun @ 2014-11-21  6:47 UTC (permalink / raw)
  To: u-boot

Masahiro,

Sorry for repeatly sending this email. My previous reply was rejected by the mailing list due to some weird base64 encoding.

I tend to agree with you since I could reproduce it using make.
I want to share some of my debug. There is a label in Makefile, prepare3. When it runs correctly, the code under that label runs after the dependency "include/config/uboot.release". I can inject some echo to see the progress. However, for the failed run (no change of code or command, just repeatedly run), nothing runs after the dependency "
include/config/uboot.release". The host is Ubuntu 12.04 x86_64. I am not sure if the inconsistency is cause by Kbuild.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  6:47                                     ` York Sun
@ 2014-11-21 17:14                                       ` York Sun
  0 siblings, 0 replies; 22+ messages in thread
From: York Sun @ 2014-11-21 17:14 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 10:47 PM, York Sun wrote:
> Masahiro,
> 
> Sorry for repeatly sending this email. My previous reply was rejected by the mailing list due to some weird base64 encoding.
> 
> I tend to agree with you since I could reproduce it using make.
> I want to share some of my debug. There is a label in Makefile, prepare3. When it runs correctly, the code under that label runs after the dependency "include/config/uboot.release". I can inject some echo to see the progress. However, for the failed run (no change of code or command, just repeatedly run), nothing runs after the dependency "
> include/config/uboot.release". The host is Ubuntu 12.04 x86_64. I am not sure if the inconsistency is cause by Kbuild.
> 

Sorry, I was mistaken about the host OS. It is CentOS 5.11, if that makes any
difference.

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [U-Boot] help on using buildman
  2014-11-21  4:14                           ` Simon Glass
  2014-11-21  4:42                             ` Masahiro Yamada
@ 2014-11-21 17:22                             ` York Sun
  1 sibling, 0 replies; 22+ messages in thread
From: York Sun @ 2014-11-21 17:22 UTC (permalink / raw)
  To: u-boot

On 11/20/2014 08:14 PM, Simon Glass wrote:
>> (and keep going)
> 
> This may be unrelated to buildman, but to check you can use the -i
> flag to enable an in-tree build.
> 

Thanks for the tip, but it didn't help. I repeatedly run 10 times. 3 out of 10
failed. FWIW, MAKEALL fails the same way. Is there anything funny about CentOS 5.11?

York

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2014-11-21 17:22 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-20 18:47 [U-Boot] help on using buildman York Sun
2014-11-20 19:13 ` Simon Glass
2014-11-20 19:22   ` York Sun
2014-11-20 19:46     ` York Sun
2014-11-20 19:51       ` Simon Glass
2014-11-20 19:55         ` York Sun
2014-11-20 20:10           ` Simon Glass
2014-11-20 20:18             ` York Sun
2014-11-20 21:04               ` York Sun
2014-11-20 21:33                 ` York Sun
2014-11-20 21:34                   ` York Sun
2014-11-20 21:46                     ` Simon Glass
2014-11-20 22:25                       ` York Sun
2014-11-20 23:35                         ` York Sun
2014-11-21  4:14                           ` Simon Glass
2014-11-21  4:42                             ` Masahiro Yamada
2014-11-21  4:53                               ` Masahiro Yamada
2014-11-21  4:55                               ` York Sun
2014-11-21  6:00                                 ` Masahiro Yamada
     [not found]                                   ` <E5C75E70-6F62-4E5C-9861-1D903D9BBFC9@freescale.com>
2014-11-21  6:47                                     ` York Sun
2014-11-21 17:14                                       ` York Sun
2014-11-21 17:22                             ` York Sun

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox