qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/4] i440fx-test: check firmware visibility
@ 2013-11-28 18:09 Laszlo Ersek
  2013-11-28 18:09 ` [Qemu-devel] [PATCH v2 1/4] i440fx-test: qtest_start() should be paired with qtest_end() Laszlo Ersek
                   ` (4 more replies)
  0 siblings, 5 replies; 18+ messages in thread
From: Laszlo Ersek @ 2013-11-28 18:09 UTC (permalink / raw)
  To: qemu-devel

v1 blurb:

> Marcel's commit
>
>   commit a53ae8e934cd54686875b5bcfc2f434244ee55d6
>   Author: Marcel Apfelbaum <marcel.a@redhat.com>
>   Date:   Mon Sep 16 11:21:16 2013 +0300
>
>       hw/pci: partially handle pci master abort
>
> has exposed a conflict (an unintended, unordered overlap) between the
> memory ranges "pci-hole" and "system.flash". When the boot firmware is
> passed with -pflash, the "pci-hole" region hides it, and the guest
> cannot execute the firmware.
>
> The test cases added by this series should help avoid regressions in
> this area.
>
> On top of v1.7.0-rc0, the "/i440fx/firmware/bios" test passes even
> without fixing the memory region conflict (consistently with the fact
> that we never noticed the conflict in practice due to using -bios
> exclusively).
>
> The "/i440fx/firmware/pflash" test catches the problem, unless one of
> the discussed fixes are applied (ie. shrinking "pci-hole", or
> explicitly ordering it under "system.flash"):
>
>   $ tests/i440fx-test --verbose
>   [...]
>   GTest: run: /i440fx/firmware/bios
>   (MSG: qemu cmdline: -S -display none -bios /tmp/fw_blob_MA3Y5W)
>   GTest: result: OK
>   GTest: run: /i440fx/firmware/pflash
>   (MSG: qemu cmdline: -S -display none -pflash /tmp/fw_blob_ELLU5W)
>   **
>   ERROR:tests/i440fx-test.c:368:test_i440fx_firmware: assertion failed
>   (buf[i] == (char unsigned)i): (0x000000ff == 0x00000000)
>   Aborted

The test passes with v1.7.0.

Changes in v2:
- Rebased ("-display none" is the default now).

- I looked into memory management prudence in qtest, and I can see that
  we don't care about leaking small objects at all. (See for example
  qpci_device_foreach(), which calls qpci_device_find() in a loop, and
  leaks the retval every time.)

Laszlo Ersek (4):
  i440fx-test: qtest_start() should be paired with qtest_end()
  i440fx-test: give each GTest case its own qtest
  i440fx-test: generate temporary firmware blob
  i440fx-test: verify firmware under 4G and 1M, both -bios and -pflash

 tests/i440fx-test.c | 169 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 152 insertions(+), 17 deletions(-)

-- 
1.8.3.1

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

end of thread, other threads:[~2013-12-02  9:28 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-28 18:09 [Qemu-devel] [PATCH v2 0/4] i440fx-test: check firmware visibility Laszlo Ersek
2013-11-28 18:09 ` [Qemu-devel] [PATCH v2 1/4] i440fx-test: qtest_start() should be paired with qtest_end() Laszlo Ersek
2013-11-29 13:23   ` Markus Armbruster
2013-11-28 18:09 ` [Qemu-devel] [PATCH v2 2/4] i440fx-test: give each GTest case its own qtest Laszlo Ersek
2013-11-29 14:53   ` Eduardo Habkost
2013-11-29 15:35     ` Laszlo Ersek
2013-11-28 18:09 ` [Qemu-devel] [PATCH v2 3/4] i440fx-test: generate temporary firmware blob Laszlo Ersek
2013-11-29 13:57   ` Markus Armbruster
2013-11-29 15:07     ` Laszlo Ersek
2013-11-29 16:26       ` Paolo Bonzini
2013-12-02  9:28       ` Markus Armbruster
2013-11-28 18:09 ` [Qemu-devel] [PATCH v2 4/4] i440fx-test: verify firmware under 4G and 1M, both -bios and -pflash Laszlo Ersek
2013-11-29 14:09   ` Markus Armbruster
2013-11-29 15:30     ` Laszlo Ersek
2013-11-29 16:29       ` Paolo Bonzini
2013-11-28 18:18 ` [Qemu-devel] [PATCH v2 0/4] i440fx-test: check firmware visibility Laszlo Ersek
2013-11-29 17:12   ` Andreas Färber
2013-11-29 17:18     ` Laszlo Ersek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).