Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Philippe Mathieu-Daudé
On 7/16/20 10:15 PM, Peter Maydell wrote:
> On Thu, 16 Jul 2020 at 20:52, Michael Roth  wrote:
>> But is it intermittent, environment-dependent? I'm trying to understand how 
>> to
>> replicate Peter's result since it seems like it would be straightforward
>> reproducer.
> 
> I blew away all my build trees and recreated them from
> scratch, and the issue went away. I'm suspicious that the
> complete lack of .d files was induced by a failed earlier
> pullreq attempt and left the build tree in a messed up state
> where it wouldn't notice that it needed to rebuild files.

If it happens again, can you try to revert aaa1b70a0b ("Makefile:
simplify MINIKCONF rules") on top of the tag you are testing, and
re-run the testing?




Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Peter Maydell
On Thu, 16 Jul 2020 at 20:52, Michael Roth  wrote:
> But is it intermittent, environment-dependent? I'm trying to understand how to
> replicate Peter's result since it seems like it would be straightforward
> reproducer.

I blew away all my build trees and recreated them from
scratch, and the issue went away. I'm suspicious that the
complete lack of .d files was induced by a failed earlier
pullreq attempt and left the build tree in a messed up state
where it wouldn't notice that it needed to rebuild files.

-- PMM



Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Philippe Mathieu-Daudé
On 7/16/20 9:52 PM, Michael Roth wrote:
> Quoting Philippe Mathieu-Daudé (2020-07-16 12:59:28)
>> On 7/16/20 7:55 PM, Michael Roth wrote:
>>> Quoting Peter Maydell (2020-07-16 05:53:17)
 The first merge I tried to process after bumping VERSION for rc0
 failed on test-qga like this:

 MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
 tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
 er.pl --test-name="test-qga"
 PASS 1 test-qga /qga/sync-delimited
 PASS 2 test-qga /qga/sync
 PASS 3 test-qga /qga/ping
 **
 ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
 assertion failed (version == QEMU_VERSION): ("5.0.9
 0" == "5.0.50")
 ERROR test-qga - Bail out!
 ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
 assertion failed (versio
 n == QEMU_VERSION): ("5.0.90" == "5.0.50")
 Aborted (core dumped)
 /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
 recipe for target 'check-unit' failed

 Looking at timestamps on files, tests/test-qga.o never got rebuilt,
 even though config-host.h has been updated (and so has the new
 QEMU_VERSION). Any idea what's gone wrong here?

 Also weird: this build tree has no .d files in it.
>>>
>>> I've been trying to reproduce with:
>>>
>>> make
>>> make check-unit
>>> *bump VERSION
>>> make check-unit
>>>
>>> but test-qga.o gets rebuilt as expected and the test passed.
>>>
>>> This is with ubuntu 18.04, x86, with out-of-tree build directory. Are you 
>>> aware
>>> of any other factors that might be needed to reproduce this?
>>
>> The problem is not for qga, it affects all QEMU objects.
> 
> But is it intermittent, environment-dependent? I'm trying to understand how to
> replicate Peter's result since it seems like it would be straightforward
> reproducer.

How to reproduce:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg723531.html

> 
>>
>>>

 thanks
 -- PMM
>>>
>>
> 




Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Michael Roth
Quoting Philippe Mathieu-Daudé (2020-07-16 12:59:28)
> On 7/16/20 7:55 PM, Michael Roth wrote:
> > Quoting Peter Maydell (2020-07-16 05:53:17)
> >> The first merge I tried to process after bumping VERSION for rc0
> >> failed on test-qga like this:
> >>
> >> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> >> tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
> >> er.pl --test-name="test-qga"
> >> PASS 1 test-qga /qga/sync-delimited
> >> PASS 2 test-qga /qga/sync
> >> PASS 3 test-qga /qga/ping
> >> **
> >> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> >> assertion failed (version == QEMU_VERSION): ("5.0.9
> >> 0" == "5.0.50")
> >> ERROR test-qga - Bail out!
> >> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> >> assertion failed (versio
> >> n == QEMU_VERSION): ("5.0.90" == "5.0.50")
> >> Aborted (core dumped)
> >> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
> >> recipe for target 'check-unit' failed
> >>
> >> Looking at timestamps on files, tests/test-qga.o never got rebuilt,
> >> even though config-host.h has been updated (and so has the new
> >> QEMU_VERSION). Any idea what's gone wrong here?
> >>
> >> Also weird: this build tree has no .d files in it.
> > 
> > I've been trying to reproduce with:
> > 
> > make
> > make check-unit
> > *bump VERSION
> > make check-unit
> > 
> > but test-qga.o gets rebuilt as expected and the test passed.
> > 
> > This is with ubuntu 18.04, x86, with out-of-tree build directory. Are you 
> > aware
> > of any other factors that might be needed to reproduce this?
> 
> The problem is not for qga, it affects all QEMU objects.

But is it intermittent, environment-dependent? I'm trying to understand how to
replicate Peter's result since it seems like it would be straightforward
reproducer.

> 
> > 
> >>
> >> thanks
> >> -- PMM
> > 
> 



Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Philippe Mathieu-Daudé
On 7/16/20 7:55 PM, Michael Roth wrote:
> Quoting Peter Maydell (2020-07-16 05:53:17)
>> The first merge I tried to process after bumping VERSION for rc0
>> failed on test-qga like this:
>>
>> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
>> tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
>> er.pl --test-name="test-qga"
>> PASS 1 test-qga /qga/sync-delimited
>> PASS 2 test-qga /qga/sync
>> PASS 3 test-qga /qga/ping
>> **
>> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
>> assertion failed (version == QEMU_VERSION): ("5.0.9
>> 0" == "5.0.50")
>> ERROR test-qga - Bail out!
>> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
>> assertion failed (versio
>> n == QEMU_VERSION): ("5.0.90" == "5.0.50")
>> Aborted (core dumped)
>> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
>> recipe for target 'check-unit' failed
>>
>> Looking at timestamps on files, tests/test-qga.o never got rebuilt,
>> even though config-host.h has been updated (and so has the new
>> QEMU_VERSION). Any idea what's gone wrong here?
>>
>> Also weird: this build tree has no .d files in it.
> 
> I've been trying to reproduce with:
> 
> make
> make check-unit
> *bump VERSION
> make check-unit
> 
> but test-qga.o gets rebuilt as expected and the test passed.
> 
> This is with ubuntu 18.04, x86, with out-of-tree build directory. Are you 
> aware
> of any other factors that might be needed to reproduce this?

The problem is not for qga, it affects all QEMU objects.

> 
>>
>> thanks
>> -- PMM
> 




Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Michael Roth
Quoting Peter Maydell (2020-07-16 05:53:17)
> The first merge I tried to process after bumping VERSION for rc0
> failed on test-qga like this:
> 
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
> er.pl --test-name="test-qga"
> PASS 1 test-qga /qga/sync-delimited
> PASS 2 test-qga /qga/sync
> PASS 3 test-qga /qga/ping
> **
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> assertion failed (version == QEMU_VERSION): ("5.0.9
> 0" == "5.0.50")
> ERROR test-qga - Bail out!
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> assertion failed (versio
> n == QEMU_VERSION): ("5.0.90" == "5.0.50")
> Aborted (core dumped)
> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
> recipe for target 'check-unit' failed
> 
> Looking at timestamps on files, tests/test-qga.o never got rebuilt,
> even though config-host.h has been updated (and so has the new
> QEMU_VERSION). Any idea what's gone wrong here?
> 
> Also weird: this build tree has no .d files in it.

I've been trying to reproduce with:

make
make check-unit
*bump VERSION
make check-unit

but test-qga.o gets rebuilt as expected and the test passed.

This is with ubuntu 18.04, x86, with out-of-tree build directory. Are you aware
of any other factors that might be needed to reproduce this?

> 
> thanks
> -- PMM



Re: qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Philippe Mathieu-Daudé
On 7/16/20 12:53 PM, Peter Maydell wrote:
> The first merge I tried to process after bumping VERSION for rc0
> failed on test-qga like this:
> 
> MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
> tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
> er.pl --test-name="test-qga"
> PASS 1 test-qga /qga/sync-delimited
> PASS 2 test-qga /qga/sync
> PASS 3 test-qga /qga/ping
> **
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> assertion failed (version == QEMU_VERSION): ("5.0.9
> 0" == "5.0.50")
> ERROR test-qga - Bail out!
> ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
> assertion failed (versio
> n == QEMU_VERSION): ("5.0.90" == "5.0.50")
> Aborted (core dumped)
> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
> recipe for target 'check-unit' failed
> 
> Looking at timestamps on files, tests/test-qga.o never got rebuilt,
> even though config-host.h has been updated (and so has the new
> QEMU_VERSION). Any idea what's gone wrong here?
> 
> Also weird: this build tree has no .d files in it.

Yes. We chatted about that yesterday on IRC, I ran this test:

- checkout master
- build after distclean
- checkout mytest
- change a function prototype in qdev-properties.c
  (simply because I had it opened in my editor)
- build

make: *** [rules.mak:69: hw/core/qdev-properties.o] Error 1

But the file is still here from the previous 'master' build:

$ ls -ln hw/core/qdev-properties.o
-rw-rw-r--. 1 1000 1000 140624 Jul 15 16:27 hw/core/qdev-properties.o

$ touch hw/core/qdev-properties.o

$ make -> link success... but prototype doesn't match...

> 
> thanks
> -- PMM
> 




qemu test-qga failure on mergebuild after VERSION file change: dependency issues??

2020-07-16 Thread Peter Maydell
The first merge I tried to process after bumping VERSION for rc0
failed on test-qga like this:

MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))}
tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driv
er.pl --test-name="test-qga"
PASS 1 test-qga /qga/sync-delimited
PASS 2 test-qga /qga/sync
PASS 3 test-qga /qga/ping
**
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
assertion failed (version == QEMU_VERSION): ("5.0.9
0" == "5.0.50")
ERROR test-qga - Bail out!
ERROR:/home/petmay01/linaro/qemu-for-merges/tests/test-qga.c:303:test_qga_info:
assertion failed (versio
n == QEMU_VERSION): ("5.0.90" == "5.0.50")
Aborted (core dumped)
/home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:659:
recipe for target 'check-unit' failed

Looking at timestamps on files, tests/test-qga.o never got rebuilt,
even though config-host.h has been updated (and so has the new
QEMU_VERSION). Any idea what's gone wrong here?

Also weird: this build tree has no .d files in it.

thanks
-- PMM