diff mbox series

[PATCH-for-5.0,1/7] tests/acceptance/machine_sparc_leon3: Disable HelenOS test

Message ID 20200331105048.27989-2-f4bug@amsat.org
State New
Headers show
Series hw/sparc/leon3: Few fixes and disable HelenOS test | expand

Commit Message

Philippe Mathieu-Daudé March 31, 2020, 10:50 a.m. UTC
This test was written/tested around beginning of 2019, but was
extracted from a bigger series and posted end of June 2019 [*].
Unfortunately I did not notice commit 162abf1a8 was merged by
then, which implements the AHB and APB plug and play devices.

HelenOS 0.6 is expecting the PnP registers to be not implemented
by QEMU, then forces the discovered AMBA devices (see [2]).

Before 162abf1a8, the console was displaying:

  HelenOS bootloader, release 0.6.0 (Elastic Horse)
  Built on 2014-12-21 20:17:42 for sparc32
  Copyright (c) 2001-2014 HelenOS project
   0x4000bf20|0x4000bf20: kernel image (496640/128466 bytes)
   0x4002b4f2|0x4002b4f2: ns image (154195/66444 bytes)
   0x4003b87e|0x4003b87e: loader image (153182/66437 bytes)
   0x4004bc03|0x4004bc03: init image (155339/66834 bytes)
   0x4005c115|0x4005c115: locsrv image (162063/70267 bytes)
   0x4006d390|0x4006d390: rd image (152678/65889 bytes)
   0x4007d4f1|0x4007d4f1: vfs image (168480/73394 bytes)
   0x4008f3a3|0x4008f3a3: logger image (158034/68368 bytes)
   0x4009feb3|0x4009feb3: ext4fs image (234510/100301 bytes)
   0x400b8680|0x400b8680: initrd image (8388608/1668901 bytes)
  ABMA devices:
  <1:00c> at 0x80000100 irq 3
  <1:00d> at 0x80000200
  <1:011> at 0x80000300 irq 8
  Memory size: 64 MB

As of this commit, it is now confused:

  ABMA devices:
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  <1:3000> at 0x00000000 irq 0
  ...

As this test is not working as expected, simply disable it (by
skipping it) for now.

[1] https://www.mail-archive.com/qemu-devel@nongnu.org/msg627094.html
[2] https://github.com/HelenOS/helenos/blob/0.6.0/boot/arch/sparc32/src/ambapp.c#L75

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 tests/acceptance/machine_sparc_leon3.py | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Richard Henderson March 31, 2020, 4:18 p.m. UTC | #1
On 3/31/20 3:50 AM, Philippe Mathieu-Daudé wrote:
> This test was written/tested around beginning of 2019, but was
> extracted from a bigger series and posted end of June 2019 [*].
> Unfortunately I did not notice commit 162abf1a8 was merged by
> then, which implements the AHB and APB plug and play devices.
> 
> HelenOS 0.6 is expecting the PnP registers to be not implemented
> by QEMU, then forces the discovered AMBA devices (see [2]).
> 
> Before 162abf1a8, the console was displaying:
> 
>   HelenOS bootloader, release 0.6.0 (Elastic Horse)
>   Built on 2014-12-21 20:17:42 for sparc32
>   Copyright (c) 2001-2014 HelenOS project
>    0x4000bf20|0x4000bf20: kernel image (496640/128466 bytes)
>    0x4002b4f2|0x4002b4f2: ns image (154195/66444 bytes)
>    0x4003b87e|0x4003b87e: loader image (153182/66437 bytes)
>    0x4004bc03|0x4004bc03: init image (155339/66834 bytes)
>    0x4005c115|0x4005c115: locsrv image (162063/70267 bytes)
>    0x4006d390|0x4006d390: rd image (152678/65889 bytes)
>    0x4007d4f1|0x4007d4f1: vfs image (168480/73394 bytes)
>    0x4008f3a3|0x4008f3a3: logger image (158034/68368 bytes)
>    0x4009feb3|0x4009feb3: ext4fs image (234510/100301 bytes)
>    0x400b8680|0x400b8680: initrd image (8388608/1668901 bytes)
>   ABMA devices:
>   <1:00c> at 0x80000100 irq 3
>   <1:00d> at 0x80000200
>   <1:011> at 0x80000300 irq 8
>   Memory size: 64 MB
> 
> As of this commit, it is now confused:
> 
>   ABMA devices:
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   <1:3000> at 0x00000000 irq 0
>   ...
> 
> As this test is not working as expected, simply disable it (by
> skipping it) for now.
> 
> [1] https://www.mail-archive.com/qemu-devel@nongnu.org/msg627094.html
> [2] https://github.com/HelenOS/helenos/blob/0.6.0/boot/arch/sparc32/src/ambapp.c#L75
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  tests/acceptance/machine_sparc_leon3.py | 4 ++++
>  1 file changed, 4 insertions(+)

Thanks!

Reviewed-by: Richard Henderson <richard.hendersion@linaro.org>
Tested-by: Richard Henderson <richard.hendersion@linaro.org>


r~
Philippe Mathieu-Daudé March 31, 2020, 8:07 p.m. UTC | #2
Cc'ing Avocado team

On 3/31/20 6:18 PM, Richard Henderson wrote:
> On 3/31/20 3:50 AM, Philippe Mathieu-Daudé wrote:
>> This test was written/tested around beginning of 2019, but was
>> extracted from a bigger series and posted end of June 2019 [*].
>> Unfortunately I did not notice commit 162abf1a8 was merged by
>> then, which implements the AHB and APB plug and play devices.
>>
>> HelenOS 0.6 is expecting the PnP registers to be not implemented
>> by QEMU, then forces the discovered AMBA devices (see [2]).
>>
>> Before 162abf1a8, the console was displaying:
>>
>>    HelenOS bootloader, release 0.6.0 (Elastic Horse)
>>    Built on 2014-12-21 20:17:42 for sparc32
>>    Copyright (c) 2001-2014 HelenOS project
>>     0x4000bf20|0x4000bf20: kernel image (496640/128466 bytes)
>>     0x4002b4f2|0x4002b4f2: ns image (154195/66444 bytes)
>>     0x4003b87e|0x4003b87e: loader image (153182/66437 bytes)
>>     0x4004bc03|0x4004bc03: init image (155339/66834 bytes)
>>     0x4005c115|0x4005c115: locsrv image (162063/70267 bytes)
>>     0x4006d390|0x4006d390: rd image (152678/65889 bytes)
>>     0x4007d4f1|0x4007d4f1: vfs image (168480/73394 bytes)
>>     0x4008f3a3|0x4008f3a3: logger image (158034/68368 bytes)
>>     0x4009feb3|0x4009feb3: ext4fs image (234510/100301 bytes)
>>     0x400b8680|0x400b8680: initrd image (8388608/1668901 bytes)
>>    ABMA devices:
>>    <1:00c> at 0x80000100 irq 3
>>    <1:00d> at 0x80000200
>>    <1:011> at 0x80000300 irq 8
>>    Memory size: 64 MB
>>
>> As of this commit, it is now confused:
>>
>>    ABMA devices:
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    <1:3000> at 0x00000000 irq 0
>>    ...
>>
>> As this test is not working as expected, simply disable it (by
>> skipping it) for now.
>>
>> [1] https://www.mail-archive.com/qemu-devel@nongnu.org/msg627094.html
>> [2] https://github.com/HelenOS/helenos/blob/0.6.0/boot/arch/sparc32/src/ambapp.c#L75
>>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>>   tests/acceptance/machine_sparc_leon3.py | 4 ++++
>>   1 file changed, 4 insertions(+)
> 
> Thanks!
> 
> Reviewed-by: Richard Henderson <richard.hendersion@linaro.org>
> Tested-by: Richard Henderson <richard.hendersion@linaro.org>

Thanks!

First job failed by timeout, 2nd succeeded:
https://travis-ci.org/github/philmd/qemu/jobs/669265466

However "Ran for 46 min 48 sec"

 From the log:

Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
Fetching asset from 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
Fetching asset from 
tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd
...
  (13/82) 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio: 
  SKIP: untrusted code
  (24/82) 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic: 
  SKIP: storage limited
...
  (25/82) 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9: 
  SKIP: storage limited
...
  (63/82) 
tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd: 
  SKIP: Running on Travis-CI

Is it possible that we are now fetching assets for tests we are not 
running? In particular the one marked @skip because the downloading time 
was too long on Travis?

RESULTS    : PASS 65 | ERROR 0 | FAIL 0 | SKIP 14 | WARN 0 | INTERRUPT 0 
| CANCEL 3
JOB TIME   : 1480.72 s

Does this "JOB TIME" sums the 'Fetching asset' part?

Thanks,

Phil.
Willian Rampazzo April 1, 2020, 5:43 p.m. UTC | #3
On Tue, Mar 31, 2020 at 5:07 PM Philippe Mathieu-Daudé
<philmd@redhat.com> wrote:
<snip>
>
> First job failed by timeout, 2nd succeeded:
> https://travis-ci.org/github/philmd/qemu/jobs/669265466
>
> However "Ran for 46 min 48 sec"
>
>  From the log:
>
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
> Fetching asset from
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
> Fetching asset from
> tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd
> ...
>   (13/82)
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio:
>   SKIP: untrusted code
>   (24/82)
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic:
>   SKIP: storage limited
> ...
>   (25/82)
> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9:
>   SKIP: storage limited
> ...
>   (63/82)
> tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd:
>   SKIP: Running on Travis-CI
>
> Is it possible that we are now fetching assets for tests we are not
> running? In particular the one marked @skip because the downloading time
> was too long on Travis?

Yes, your assumption is correct, this execution of Avocado downloaded
assets for tests that were skipped. Let me try to explain how the
asset feature works today on Avocado.

Avocado has two basic ways to work with assets:

1. Parse limited use cases of `fetch_asset` call in the test file and
execute them. This operation can happen in two different scenarios.
First, when using the command line `avocado assets fetch <test_file>`.
In this case, it is a standalone execution of each fetch call and the
test is not executed at all. Second, by running the test. The, enabled
by default, plugin FetchAssetJob will do the same operation of parsing
the test file and executing occurrences of `fetch_asset` call before
the tests start to run. Again, the fetch time is not computed in the
job time.

2. Execute the `fetch_asset` call from each test during the test
execution. In this case, the FetchAssetJob plugin should be disabled.
The fetch time is added to the job time as the asset download occurs
during the test execution.

The acceptance tests which make use of `fetch_asset` are all using the
first method with FetchAssetJob plugin enabled. As Avocado is parsing
the test file before it starts to run the tests, it is not aware of
possible skips that may occur during a test execution due to possible
dynamic dependency.

This is not the desired behavior, as you mentioned, Avocado is
downloading an asset that will not be used because its test will be
skipped. To minimize the damage on the download side, the Travis job
is holding the avocado cache. It means the download should happen just
once. This does not minimize the damage to space usage.

One possible workaround here is to temporarily disable the
FetchAssetJob plugin, now that the needed assets are on Travis Avocado
cache. The downside is that when an asset is not available in the
cache, it will be downloaded during the test execution and the
download time will be added to the job time. I don't know if it is
possible to manually remove an asset from Travis Avocado cache. If so,
this can be done for the tests that should be skipped because of space
usage.

We have been trying to make the Asset feature as flexible as possible
to accommodate the use cases we have been identifying. Thanks for
reporting this!

>
> RESULTS    : PASS 65 | ERROR 0 | FAIL 0 | SKIP 14 | WARN 0 | INTERRUPT 0
> | CANCEL 3
> JOB TIME   : 1480.72 s
>
> Does this "JOB TIME" sums the 'Fetching asset' part?

Answered in the comments above.

>
> Thanks,
>
> Phil.
>

Willian
Philippe Mathieu-Daudé April 1, 2020, 8:21 p.m. UTC | #4
On 4/1/20 7:43 PM, Willian Rampazzo wrote:
> On Tue, Mar 31, 2020 at 5:07 PM Philippe Mathieu-Daudé
> <philmd@redhat.com> wrote:
> <snip>
>>
>> First job failed by timeout, 2nd succeeded:
>> https://travis-ci.org/github/philmd/qemu/jobs/669265466
>>
>> However "Ran for 46 min 48 sec"
>>
>>   From the log:
>>
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_initrd
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_sd
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
>> Fetching asset from
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9
>> Fetching asset from
>> tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd
>> ...
>>    (13/82)
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_mips64el_malta_5KEc_cpio:
>>    SKIP: untrusted code
>>    (24/82)
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_bionic:
>>    SKIP: storage limited
>> ...
>>    (25/82)
>> tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_orangepi_uboot_netbsd9:
>>    SKIP: storage limited
>> ...
>>    (63/82)
>> tests/acceptance/ppc_prep_40p.py:IbmPrep40pMachine.test_openbios_and_netbsd:
>>    SKIP: Running on Travis-CI
>>
>> Is it possible that we are now fetching assets for tests we are not
>> running? In particular the one marked @skip because the downloading time
>> was too long on Travis?
> 
> Yes, your assumption is correct, this execution of Avocado downloaded
> assets for tests that were skipped. Let me try to explain how the
> asset feature works today on Avocado.
> 
> Avocado has two basic ways to work with assets:
> 
> 1. Parse limited use cases of `fetch_asset` call in the test file and
> execute them. This operation can happen in two different scenarios.
> First, when using the command line `avocado assets fetch <test_file>`.

Odd, with avocado-framework==76.0 I get:

https://travis-ci.org/github/philmd/qemu/jobs/669851870#L4908

Traceback (most recent call last):
   File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
     "__main__", mod_spec)
   File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
     exec(code, run_globals)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6zsite-packages/avocado/__main__.py", 
line 11, in <module>
     sys.exit(main.run())
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/core/app.py", 
line 91, in run
     return method(self.parser.config)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py", 
line 291, in run
     success, fail = fetch_assets(test_file)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py", 
line 200, in fetch_assets
     handler = FetchAssetHandler(test_file, klass, method)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py", 
line 65, in __init__
     self.visit(self.tree)
   File "/usr/lib/python3.6/ast.py", line 253, in visit
     return visitor(node)
   File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
     self.visit(item)
   File "/usr/lib/python3.6/ast.py", line 253, in visit
     return visitor(node)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py", 
line 139, in visit_ClassDef
     self.generic_visit(node)
   File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
     self.visit(item)
   File "/usr/lib/python3.6/ast.py", line 253, in visit
     return visitor(node)
   File 
"/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py", 
line 171, in visit_Assign
     self.asgmts[cur_klass][cur_method][name] = node.value.s
KeyError: 'launch_and_wait'
/home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for 
target 'fetch-acceptance-assets' failed

This launch_and_wait comes from:

tests/acceptance/boot_linux.py:88:    def launch_and_wait(self):

> In this case, it is a standalone execution of each fetch call and the
> test is not executed at all. Second, by running the test. The, enabled
> by default, plugin FetchAssetJob will do the same operation of parsing
> the test file and executing occurrences of `fetch_asset` call before
> the tests start to run. Again, the fetch time is not computed in the
> job time.
> 
> 2. Execute the `fetch_asset` call from each test during the test
> execution. In this case, the FetchAssetJob plugin should be disabled.
> The fetch time is added to the job time as the asset download occurs
> during the test execution.
> 
> The acceptance tests which make use of `fetch_asset` are all using the
> first method with FetchAssetJob plugin enabled. As Avocado is parsing
> the test file before it starts to run the tests, it is not aware of
> possible skips that may occur during a test execution due to possible
> dynamic dependency.
> 
> This is not the desired behavior, as you mentioned, Avocado is
> downloading an asset that will not be used because its test will be
> skipped. To minimize the damage on the download side, the Travis job
> is holding the avocado cache. It means the download should happen just
> once. This does not minimize the damage to space usage.
> 
> One possible workaround here is to temporarily disable the
> FetchAssetJob plugin, now that the needed assets are on Travis Avocado
> cache. The downside is that when an asset is not available in the
> cache, it will be downloaded during the test execution and the
> download time will be added to the job time. I don't know if it is
> possible to manually remove an asset from Travis Avocado cache. If so,
> this can be done for the tests that should be skipped because of space
> usage.
> 
> We have been trying to make the Asset feature as flexible as possible
> to accommodate the use cases we have been identifying. Thanks for
> reporting this!
> 
>>
>> RESULTS    : PASS 65 | ERROR 0 | FAIL 0 | SKIP 14 | WARN 0 | INTERRUPT 0
>> | CANCEL 3
>> JOB TIME   : 1480.72 s
>>
>> Does this "JOB TIME" sums the 'Fetching asset' part?
> 
> Answered in the comments above.

Thanks for the big clear explanation :)

Phil.
Willian Rampazzo April 1, 2020, 8:30 p.m. UTC | #5
On Wed, Apr 1, 2020 at 5:21 PM Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
 <snip>
> Odd, with avocado-framework==76.0 I get:
>
> https://travis-ci.org/github/philmd/qemu/jobs/669851870#L4908
>
> Traceback (most recent call last):
>    File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
>      "__main__", mod_spec)
>    File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
>      exec(code, run_globals)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6zsite-packages/avocado/__main__.py",
> line 11, in <module>
>      sys.exit(main.run())
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/core/app.py",
> line 91, in run
>      return method(self.parser.config)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
> line 291, in run
>      success, fail = fetch_assets(test_file)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
> line 200, in fetch_assets
>      handler = FetchAssetHandler(test_file, klass, method)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
> line 65, in __init__
>      self.visit(self.tree)
>    File "/usr/lib/python3.6/ast.py", line 253, in visit
>      return visitor(node)
>    File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
>      self.visit(item)
>    File "/usr/lib/python3.6/ast.py", line 253, in visit
>      return visitor(node)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
> line 139, in visit_ClassDef
>      self.generic_visit(node)
>    File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
>      self.visit(item)
>    File "/usr/lib/python3.6/ast.py", line 253, in visit
>      return visitor(node)
>    File
> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
> line 171, in visit_Assign
>      self.asgmts[cur_klass][cur_method][name] = node.value.s
> KeyError: 'launch_and_wait'
> /home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for
> target 'fetch-acceptance-assets' failed
>
> This launch_and_wait comes from:
>
> tests/acceptance/boot_linux.py:88:    def launch_and_wait(self):

Sorry about that. This is a known bug, see
https://github.com/avocado-framework/avocado/issues/3661. It is fixed
upstream and will be available in the next release of Avocado.

Willian
Philippe Mathieu-Daudé April 1, 2020, 10:01 p.m. UTC | #6
On 4/1/20 10:30 PM, Willian Rampazzo wrote:
> On Wed, Apr 1, 2020 at 5:21 PM Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>   <snip>
>> Odd, with avocado-framework==76.0 I get:
>>
>> https://travis-ci.org/github/philmd/qemu/jobs/669851870#L4908
>>
>> Traceback (most recent call last):
>>     File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
>>       "__main__", mod_spec)
>>     File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
>>       exec(code, run_globals)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6zsite-packages/avocado/__main__.py",
>> line 11, in <module>
>>       sys.exit(main.run())
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/core/app.py",
>> line 91, in run
>>       return method(self.parser.config)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
>> line 291, in run
>>       success, fail = fetch_assets(test_file)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
>> line 200, in fetch_assets
>>       handler = FetchAssetHandler(test_file, klass, method)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
>> line 65, in __init__
>>       self.visit(self.tree)
>>     File "/usr/lib/python3.6/ast.py", line 253, in visit
>>       return visitor(node)
>>     File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
>>       self.visit(item)
>>     File "/usr/lib/python3.6/ast.py", line 253, in visit
>>       return visitor(node)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
>> line 139, in visit_ClassDef
>>       self.generic_visit(node)
>>     File "/usr/lib/python3.6/ast.py", line 261, in generic_visit
>>       self.visit(item)
>>     File "/usr/lib/python3.6/ast.py", line 253, in visit
>>       return visitor(node)
>>     File
>> "/home/travis/build/philmd/qemu/build/tests/venv/lib/python3.6/site-packages/avocado/plugins/assets.py",
>> line 171, in visit_Assign
>>       self.asgmts[cur_klass][cur_method][name] = node.value.s
>> KeyError: 'launch_and_wait'
>> /home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for
>> target 'fetch-acceptance-assets' failed
>>
>> This launch_and_wait comes from:
>>
>> tests/acceptance/boot_linux.py:88:    def launch_and_wait(self):
> 
> Sorry about that. This is a known bug, see
> https://github.com/avocado-framework/avocado/issues/3661. It is fixed
> upstream and will be available in the next release of Avocado.

Thanks for the quick reply :)

I'm now using this kludge to include your bugfix:

-- >8 --
diff --git a/tests/requirements.txt b/tests/requirements.txt
index f9c84b4ba1..d625b32dbb 100644
--- a/tests/requirements.txt
+++ b/tests/requirements.txt
@@ -1,5 +1,5 @@
  # Add Python module requirements, one per line, to be installed
  # in the tests/venv Python virtual environment. For more info,
  # refer to: https://pip.pypa.io/en/stable/user_guide/#id1
-avocado-framework==76.0
+-e 
git+https://github.com/avocado-framework/avocado.git@f9b4dc7c58a6424eb8d0ed6781a1d76ae3a5ab06#egg=avocado-framework
  pycdlib==1.9.0
---

But I'm getting another error:

https://travis-ci.org/github/philmd/qemu/builds/669898682#L1702

...
avocado.test: Asset not in cache, fetching it.
avocado.test: Fetching 
ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG -> 
/home/travis/avocado/data/cache/by_location/9234e55550fdde347e2a4604c133fa2c8d9e9291/P12H0456.IMG.dp3lw27q
avocado.test: FileNotFoundError: [Errno 2] No such file or directory: 
'/home/travis/avocado/data/cache/by_location/9234e55550fdde347e2a4604c133fa2c8d9e9291/P12H0456.IMG.dp3lw27q'
Failed to fetch P12H0456.IMG.
/home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for 
target 'fetch-acceptance-assets' failed
make: *** [fetch-acceptance-assets] Error 4

I don't understand because all the other directories are created, I'm 
not sure what is missing here, any idea?

(test branch is https://github.com/philmd/qemu/commits/travis_fetch_avocado)

Thanks,

Phil.
Philippe Mathieu-Daudé April 2, 2020, 11:08 a.m. UTC | #7
On 4/2/20 12:01 AM, Philippe Mathieu-Daudé wrote:
> 
> I'm now using this kludge to include your bugfix:
> 
> -- >8 --
> diff --git a/tests/requirements.txt b/tests/requirements.txt
> index f9c84b4ba1..d625b32dbb 100644
> --- a/tests/requirements.txt
> +++ b/tests/requirements.txt
> @@ -1,5 +1,5 @@
>   # Add Python module requirements, one per line, to be installed
>   # in the tests/venv Python virtual environment. For more info,
>   # refer to: https://pip.pypa.io/en/stable/user_guide/#id1
> -avocado-framework==76.0
> +-e 
> git+https://github.com/avocado-framework/avocado.git@f9b4dc7c58a6424eb8d0ed6781a1d76ae3a5ab06#egg=avocado-framework 
> 
>   pycdlib==1.9.0
> ---
> 
> But I'm getting another error:
> 
> https://travis-ci.org/github/philmd/qemu/builds/669898682#L1702
> 
> ...
> avocado.test: Asset not in cache, fetching it.
> avocado.test: Fetching 
> ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG -> 
> /home/travis/avocado/data/cache/by_location/9234e55550fdde347e2a4604c133fa2c8d9e9291/P12H0456.IMG.dp3lw27q 
> 
> avocado.test: FileNotFoundError: [Errno 2] No such file or directory: 
> '/home/travis/avocado/data/cache/by_location/9234e55550fdde347e2a4604c133fa2c8d9e9291/P12H0456.IMG.dp3lw27q' 
> 
> Failed to fetch P12H0456.IMG.
> /home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for 
> target 'fetch-acceptance-assets' failed
> make: *** [fetch-acceptance-assets] Error 4
> 
> I don't understand because all the other directories are created, I'm 
> not sure what is missing here, any idea?
> 
> (test branch is 
> https://github.com/philmd/qemu/commits/travis_fetch_avocado)

This issue persists, OTOH the good news is caching is working:

https://travis-ci.org/github/philmd/qemu/builds/670078763#L1626
Willian Rampazzo April 2, 2020, 1:25 p.m. UTC | #8
On Thu, Apr 2, 2020 at 8:08 AM Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>
> This issue persists, OTOH the good news is caching is working:
>
> https://travis-ci.org/github/philmd/qemu/builds/670078763#L1626
>

Philippe, do you have a way to clean up the Travis cache and try it
again? Last week, when I was investigating the previous problem you
reported, I had the same issue as you are having now. The problem just
disappeared without any action. I could not reproduce the problem now
on an empty cache using the same command you used. I suspect the
previous bug left some inconsistencies in the cache.

[wrampazz@wrampazz qemu.philippe]$ avocado --config ../avocado.conf
assets fetch tests/acceptance/*.py
Fetching assets from tests/acceptance/boot_linux_console.py.
  File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/x86_64/os/images/pxeboot/vmlinuz
fetched or already on cache.
  File http://snapshot.debian.org/archive/debian/20130217T032700Z/pool/main/l/linux-2.6/linux-image-2.6.32-5-4kc-malta_2.6.32-48_mips.deb
fetched or already on cache.
  File http://snapshot.debian.org/archive/debian/20130217T032700Z/pool/main/l/linux-2.6/linux-image-2.6.32-5-5kc-malta_2.6.32-48_mipsel.deb
fetched or already on cache.
  File http://snapshot.debian.org/archive/debian/20160601T041800Z/pool/main/l/linux/linux-image-4.5.0-2-4kc-malta_4.5.5-1_mips.deb
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/8584a59ed9e5eb5ee7ca91f6d74bbb06619205b8/rootfs/mips/rootfs.cpio.gz
fetched or already on cache.
  File https://github.com/philmd/qemu-testing-blob/raw/9ad2df38/mips/malta/mips64el/vmlinux-3.19.3.mtoman.20150408
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/8584a59e/rootfs/mipsel64/rootfs.mipsel64r1.cpio.gz
fetched or already on cache.
  File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/aarch64/os/images/pxeboot/vmlinuz
fetched or already on cache.
  File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/armhfp/os/images/pxeboot/vmlinuz
fetched or already on cache.
  File https://raw.githubusercontent.com/Subbaraya-Sundeep/qemu-test-binaries/fa030bd77a014a0b8e360d3b7011df89283a2f0b/u-boot
fetched or already on cache.
  File https://raw.githubusercontent.com/Subbaraya-Sundeep/qemu-test-binaries/fa030bd77a014a0b8e360d3b7011df89283a2f0b/spi.bin
fetched or already on cache.
  File http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20190215-1_armhf.deb
fetched or already on cache.
  File https://snapshot.debian.org/archive/debian/20190928T224601Z/pool/main/l/linux/linux-image-4.19.0-6-armmp_4.19.67-2+deb10u1_armhf.deb
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.cpio.gz
fetched or already on cache.
  File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.cpio.gz
fetched or already on cache.
  File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.ext2.gz
fetched or already on cache.
  File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
fetched or already on cache.
  File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
fetched or already on cache.
  File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv7a.cpio.gz
fetched or already on cache.
  File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
fetched or already on cache.
  File http://storage.kernelci.org/images/rootfs/buildroot/kci-2019.02/armel/base/rootfs.ext2.xz
fetched or already on cache.
  File https://dl.armbian.com/orangepipc/archive/Armbian_19.11.3_Orangepipc_bionic_current_5.3.9.7z
fetched or already on cache.
  File http://snapshot.debian.org/archive/debian/20200108T145233Z/pool/main/u/u-boot/u-boot-sunxi_2020.01%2Bdfsg-1_armhf.deb
fetched or already on cache.
  File https://cdn.netbsd.org/pub/NetBSD/NetBSD-9.0/evbarm-earmv7hf/binary/gzimg/armv7.img.gz
fetched or already on cache.
  File https://archives.fedoraproject.org/pub/archive/fedora-secondary/releases/29/Everything/s390x/os/images/kernel.img
fetched or already on cache.
  File http://archive.debian.org/debian/dists/lenny/main/installer-alpha/current/images/cdrom/vmlinuz
fetched or already on cache.
  File https://archives.fedoraproject.org/pub/archive/fedora-secondary/releases/29/Everything/ppc64le/os/ppc/ppc64/vmlinuz
fetched or already on cache.
  File https://snapshot.debian.org/archive/debian-ports/20191021T083923Z/pool-m68k/main/l/linux/kernel-image-5.3.0-1-m68k-di_5.3.7-1_m68k.udeb
fetched or already on cache.
Fetching assets from tests/acceptance/boot_linux.py.
Fetching assets from tests/acceptance/cpu_queries.py.
Fetching assets from tests/acceptance/empty_cpu_model.py.
Fetching assets from tests/acceptance/linux_initrd.py.
  File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/18/Fedora/x86_64/os/images/pxeboot/vmlinuz
fetched or already on cache.
  File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/28/Everything/x86_64/os/images/pxeboot/vmlinuz
fetched or already on cache.
Fetching assets from tests/acceptance/linux_ssh_mips_malta.py.
Fetching assets from tests/acceptance/machine_arm_integratorcp.py.
  File https://github.com/zayac/qemu-arm/raw/master/arm-test/kernel/zImage.integrator
fetched or already on cache.
  File https://github.com/zayac/qemu-arm/raw/master/arm-test/kernel/arm_root.img
fetched or already on cache.
  File https://github.com/torvalds/linux/raw/v2.6.12/drivers/video/logo/logo_linux_vga16.ppm
fetched or already on cache.
Fetching assets from tests/acceptance/machine_arm_n8x0.py.
  File http://stskeeps.subnetmask.net/meego-n8x0/meego-arm-n8x0-1.0.80.20100712.1431-vmlinuz-2.6.35~rc4-129.1-n8x0
fetched or already on cache.
Fetching assets from tests/acceptance/machine_m68k_nextcube.py.
  File http://www.nextcomputers.org/NeXTfiles/Software/ROM_Files/68040_Non-Turbo_Chipset/Rev_2.5_v66.BIN
fetched or already on cache.
Fetching assets from tests/acceptance/machine_mips_malta.py.
  File https://github.com/philmd/qemu-testing-blob/raw/a5966ca4b5/mips/malta/mips64el/vmlinux-4.7.0-rc1.I6400.gz
fetched or already on cache.
  File https://github.com/torvalds/linux/raw/v2.6.12/drivers/video/logo/logo_linux_vga16.ppm
fetched or already on cache.
Fetching assets from tests/acceptance/machine_sparc_leon3.py.
  File http://www.helenos.org/releases/HelenOS-0.6.0-sparc32-leon3.bin
fetched or already on cache.
Fetching assets from tests/acceptance/migration.py.
Fetching assets from tests/acceptance/pc_cpu_hotplug_props.py.
Fetching assets from tests/acceptance/ppc_prep_40p.py.
  File ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG
fetched or already on cache.
  File https://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-4.0/prep/installation/floppy/generic_com0.fs
fetched or already on cache.
  File https://ftp.netbsd.org/pub/NetBSD/iso/7.1.2/NetBSD-7.1.2-prep.iso
fetched or already on cache.
Fetching assets from tests/acceptance/version.py.
Fetching assets from tests/acceptance/virtio_check_params.py.
Fetching assets from tests/acceptance/virtio_version.py.
Fetching assets from tests/acceptance/vnc.py.
Fetching assets from tests/acceptance/x86_cpu_model_versions.py.
[wrampazz@wrampazz qemu.philippe]$
Philippe Mathieu-Daudé April 2, 2020, 3:18 p.m. UTC | #9
On 4/2/20 3:25 PM, Willian Rampazzo wrote:
> On Thu, Apr 2, 2020 at 8:08 AM Philippe Mathieu-Daudé <philmd@redhat.com> wrote:
>>
>> This issue persists, OTOH the good news is caching is working:
>>
>> https://travis-ci.org/github/philmd/qemu/builds/670078763#L1626
>>
> 
> Philippe, do you have a way to clean up the Travis cache and try it
> again? Last week, when I was investigating the previous problem you
> reported, I had the same issue as you are having now. The problem just
> disappeared without any action. I could not reproduce the problem now
> on an empty cache using the same command you used. I suspect the
> previous bug left some inconsistencies in the cache.

I dropped the cache but it still failed, then I used travis_retry which 
succeeded:

https://travis-ci.org/github/philmd/qemu/jobs/670166259#L1711

avocado.test: Fetching 
https://ftp.netbsd.org/pub/NetBSD/iso/7.1.2/NetBSD-7.1.2-prep.iso -> 
/home/travis/avocado/data/cache/by_location/5fb821f368ac26c2d9eb044aef3eb70f5a956e92/NetBSD-7.1.2-prep.iso.hfxinpfu
Failed to fetch P12H0456.IMG.
/home/travis/build/philmd/qemu/tests/Makefile.include:910: recipe for 
target 'fetch-acceptance-assets' failed
make: *** [fetch-acceptance-assets] Error 4

The command "make fetch-acceptance-assets DEBUG=1" failed. Retrying, 2 of 3.

   AVOCADO tests/acceptance
avocado.test: Asset not in cache, fetching it.
avocado.test: Fetching 
ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG -> 
/home/travis/avocado/data/cache/by_location/9234e55550fdde347e2a4604c133fa2c8d9e9291/P12H0456.IMG.4_uenut0
The command "${TEST_CMD}" exited with 0.

FYI as of v5.0.0-rc1 Avocado cache takes 1985.15MB.

> 
> [wrampazz@wrampazz qemu.philippe]$ avocado --config ../avocado.conf
> assets fetch tests/acceptance/*.py
> Fetching assets from tests/acceptance/boot_linux_console.py.
>    File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/x86_64/os/images/pxeboot/vmlinuz
> fetched or already on cache.
>    File http://snapshot.debian.org/archive/debian/20130217T032700Z/pool/main/l/linux-2.6/linux-image-2.6.32-5-4kc-malta_2.6.32-48_mips.deb
> fetched or already on cache.
>    File http://snapshot.debian.org/archive/debian/20130217T032700Z/pool/main/l/linux-2.6/linux-image-2.6.32-5-5kc-malta_2.6.32-48_mipsel.deb
> fetched or already on cache.
>    File http://snapshot.debian.org/archive/debian/20160601T041800Z/pool/main/l/linux/linux-image-4.5.0-2-4kc-malta_4.5.5-1_mips.deb
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/8584a59ed9e5eb5ee7ca91f6d74bbb06619205b8/rootfs/mips/rootfs.cpio.gz
> fetched or already on cache.
>    File https://github.com/philmd/qemu-testing-blob/raw/9ad2df38/mips/malta/mips64el/vmlinux-3.19.3.mtoman.20150408
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/8584a59e/rootfs/mipsel64/rootfs.mipsel64r1.cpio.gz
> fetched or already on cache.
>    File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/aarch64/os/images/pxeboot/vmlinuz
> fetched or already on cache.
>    File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/Everything/armhfp/os/images/pxeboot/vmlinuz
> fetched or already on cache.
>    File https://raw.githubusercontent.com/Subbaraya-Sundeep/qemu-test-binaries/fa030bd77a014a0b8e360d3b7011df89283a2f0b/u-boot
> fetched or already on cache.
>    File https://raw.githubusercontent.com/Subbaraya-Sundeep/qemu-test-binaries/fa030bd77a014a0b8e360d3b7011df89283a2f0b/spi.bin
> fetched or already on cache.
>    File http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/raspberrypi-kernel_1.20190215-1_armhf.deb
> fetched or already on cache.
>    File https://snapshot.debian.org/archive/debian/20190928T224601Z/pool/main/l/linux/linux-image-4.19.0-6-armmp_4.19.67-2+deb10u1_armhf.deb
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.cpio.gz
> fetched or already on cache.
>    File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.cpio.gz
> fetched or already on cache.
>    File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv5.ext2.gz
> fetched or already on cache.
>    File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
> fetched or already on cache.
>    File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
> fetched or already on cache.
>    File https://github.com/groeck/linux-build-test/raw/2eb0a73b5d5a28df3170c546ddaaa9757e1e0848/rootfs/arm/rootfs-armv7a.cpio.gz
> fetched or already on cache.
>    File https://apt.armbian.com/pool/main/l/linux-4.20.7-sunxi/linux-image-dev-sunxi_5.75_armhf.deb
> fetched or already on cache.
>    File http://storage.kernelci.org/images/rootfs/buildroot/kci-2019.02/armel/base/rootfs.ext2.xz
> fetched or already on cache.
>    File https://dl.armbian.com/orangepipc/archive/Armbian_19.11.3_Orangepipc_bionic_current_5.3.9.7z
> fetched or already on cache.
>    File http://snapshot.debian.org/archive/debian/20200108T145233Z/pool/main/u/u-boot/u-boot-sunxi_2020.01%2Bdfsg-1_armhf.deb
> fetched or already on cache.
>    File https://cdn.netbsd.org/pub/NetBSD/NetBSD-9.0/evbarm-earmv7hf/binary/gzimg/armv7.img.gz
> fetched or already on cache.
>    File https://archives.fedoraproject.org/pub/archive/fedora-secondary/releases/29/Everything/s390x/os/images/kernel.img
> fetched or already on cache.
>    File http://archive.debian.org/debian/dists/lenny/main/installer-alpha/current/images/cdrom/vmlinuz
> fetched or already on cache.
>    File https://archives.fedoraproject.org/pub/archive/fedora-secondary/releases/29/Everything/ppc64le/os/ppc/ppc64/vmlinuz
> fetched or already on cache.
>    File https://snapshot.debian.org/archive/debian-ports/20191021T083923Z/pool-m68k/main/l/linux/kernel-image-5.3.0-1-m68k-di_5.3.7-1_m68k.udeb
> fetched or already on cache.
> Fetching assets from tests/acceptance/boot_linux.py.
> Fetching assets from tests/acceptance/cpu_queries.py.
> Fetching assets from tests/acceptance/empty_cpu_model.py.
> Fetching assets from tests/acceptance/linux_initrd.py.
>    File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/18/Fedora/x86_64/os/images/pxeboot/vmlinuz
> fetched or already on cache.
>    File https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/28/Everything/x86_64/os/images/pxeboot/vmlinuz
> fetched or already on cache.
> Fetching assets from tests/acceptance/linux_ssh_mips_malta.py.
> Fetching assets from tests/acceptance/machine_arm_integratorcp.py.
>    File https://github.com/zayac/qemu-arm/raw/master/arm-test/kernel/zImage.integrator
> fetched or already on cache.
>    File https://github.com/zayac/qemu-arm/raw/master/arm-test/kernel/arm_root.img
> fetched or already on cache.
>    File https://github.com/torvalds/linux/raw/v2.6.12/drivers/video/logo/logo_linux_vga16.ppm
> fetched or already on cache.
> Fetching assets from tests/acceptance/machine_arm_n8x0.py.
>    File http://stskeeps.subnetmask.net/meego-n8x0/meego-arm-n8x0-1.0.80.20100712.1431-vmlinuz-2.6.35~rc4-129.1-n8x0
> fetched or already on cache.
> Fetching assets from tests/acceptance/machine_m68k_nextcube.py.
>    File http://www.nextcomputers.org/NeXTfiles/Software/ROM_Files/68040_Non-Turbo_Chipset/Rev_2.5_v66.BIN
> fetched or already on cache.
> Fetching assets from tests/acceptance/machine_mips_malta.py.
>    File https://github.com/philmd/qemu-testing-blob/raw/a5966ca4b5/mips/malta/mips64el/vmlinux-4.7.0-rc1.I6400.gz
> fetched or already on cache.
>    File https://github.com/torvalds/linux/raw/v2.6.12/drivers/video/logo/logo_linux_vga16.ppm
> fetched or already on cache.
> Fetching assets from tests/acceptance/machine_sparc_leon3.py.
>    File http://www.helenos.org/releases/HelenOS-0.6.0-sparc32-leon3.bin
> fetched or already on cache.
> Fetching assets from tests/acceptance/migration.py.
> Fetching assets from tests/acceptance/pc_cpu_hotplug_props.py.
> Fetching assets from tests/acceptance/ppc_prep_40p.py.
>    File ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG
> fetched or already on cache.
>    File https://ftp.netbsd.org/pub/NetBSD/NetBSD-archive/NetBSD-4.0/prep/installation/floppy/generic_com0.fs
> fetched or already on cache.
>    File https://ftp.netbsd.org/pub/NetBSD/iso/7.1.2/NetBSD-7.1.2-prep.iso
> fetched or already on cache.
> Fetching assets from tests/acceptance/version.py.
> Fetching assets from tests/acceptance/virtio_check_params.py.
> Fetching assets from tests/acceptance/virtio_version.py.
> Fetching assets from tests/acceptance/vnc.py.
> Fetching assets from tests/acceptance/x86_cpu_model_versions.py.
> [wrampazz@wrampazz qemu.philippe]$
>
Philippe Mathieu-Daudé April 2, 2020, 9:39 p.m. UTC | #10
Hi Richard,

On 3/31/20 6:18 PM, Richard Henderson wrote:
> On 3/31/20 3:50 AM, Philippe Mathieu-Daudé wrote:
>> This test was written/tested around beginning of 2019, but was
>> extracted from a bigger series and posted end of June 2019 [*].
>> Unfortunately I did not notice commit 162abf1a8 was merged by
>> then, which implements the AHB and APB plug and play devices.
>>
[...]
> 
> Thanks!
> 
> Reviewed-by: Richard Henderson <richard.hendersion@linaro.org>
> Tested-by: Richard Henderson <richard.hendersion@linaro.org>

While queuing this I noticed a change in your email.

Since you replied to Alex patch later [*] with your usual email:
Richard Henderson <richard.henderson@linaro.org>
I think it was a typo, so I fixed it.

[*] https://www.mail-archive.com/qemu-devel@nongnu.org/msg694068.html

Regards,

Phil.
diff mbox series

Patch

diff --git a/tests/acceptance/machine_sparc_leon3.py b/tests/acceptance/machine_sparc_leon3.py
index f77e210ccb..2405cd7a0d 100644
--- a/tests/acceptance/machine_sparc_leon3.py
+++ b/tests/acceptance/machine_sparc_leon3.py
@@ -7,12 +7,16 @@ 
 
 from avocado_qemu import Test
 from avocado_qemu import wait_for_console_pattern
+from avocado import skip
 
 
 class Leon3Machine(Test):
 
     timeout = 60
 
+    @skip("Test currently broken")
+    # A Window Underflow exception occurs before booting the kernel,
+    # and QEMU exit calling cpu_abort(), which makes this test to fail.
     def test_leon3_helenos_uimage(self):
         """
         :avocado: tags=arch:sparc