From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: jsnow@redhat.com, armbru@redhat.com, stefanha@redhat.com, mst@redhat.com
Subject: [Qemu-devel] [PATCH v3 00/32] AHCI test suite framework v3
Date: Wed, 13 Aug 2014 17:56:07 -0400 [thread overview]
Message-ID: <1407966975-3723-1-git-send-email-jsnow@redhat.com> (raw)
This submission does not re-send patches 1-24, which are identical
to the v2 submission and have already been pulled onto
stefanha's block staging branch.
This patch series introduces a number of small fixes and tweaks to
help support an AHCI test suite that in the future I hope to expand
to a fuller regression suite to help guide the development of the
AHCI device support under, in particular, the Q35 machine type in QEMU.
Paolo Bonzini has contributed a number of cleanup and refactoring patches
that support changes to the PIO setup FIS packet construction code, which
is necessary for testing ths specification adherence of the IDENTIFY command,
which issues its data exclusively via PIO mechanisms.
The ahci-test code being checked in represents a minimum of functionality
needed in order to issue and receive commands from the AHCI HBA under the
libqos / qtest environment.
In V3, there is one assertion for incorrect behavior that is expected to
be fixed in a future patch set, where the Descriptor Processed interrupt
is not set or posted within the identify test.
V3:
- All tests complete successfully.
- Fixed the PCI capabilities ordering for AHCI.
- Corrected the boot-time values of the PxTFD and PxSIG registers
- Corrected PxTFD register being updated prior to PxCMD.FRE being set
V2:
"ide-test: add test for werror=stop"
- changed filename variable name
- altered the QMP event polling to avoid sleep
- debug_path file cleanup on exit.
"ide: stop PIO transfer on errors"
- Modified logic to be unconditional.
"ahci: construct PIO Setup FIS for PIO commands"
- Added in dma_memory_map success checks and error pathways.
"libqtest: Correct small memory leak."
- Corrected raw usage of free()
"ahci: Adding basic functionality qtest."
- Removed HBA type.
- Corrected cleanup order.
- Corrected raw usage of free()
- Removed needless conditional around g_free()
- Altered ahci_boot to return by value instead of parameter.
"ahci: Add test_pci_spec to ahci-test."
- Removed all ifdef logic in favor of runtime tuning. (--pedantic)
- Removed all warnings, all infractions are now hard assertions.
- Replaced g_assert with g_assert_cmphex in many cases
"ahci: add test_pci_enable to ahci-test."
- Removed MSI codepaths, as it was incomplete and unused.
"ahci: Add test_hba_spec to ahci-test."
- Removed unneeded macros
- Added in an optional bar_size return parameter to qpci_iomap
"ahci: Add test_identify case to ahci-test."
- Corrected raw usage of free()
For convenience; https://github.com/jnsnow/qemu/tree/ahci-test-v3
John Snow (15):
q35: Enable the ioapic device to be seen by qtest.
qtest: Adding qtest_memset and qmemset.
libqos: Correct memory leak
libqtest: Correct small memory leak.
libqos: Fixes a small memory leak.
libqos: allow qpci_iomap to return BAR mapping size
qtest/ide: Fix small memory leak
ahci: Adding basic functionality qtest.
ahci: MSI capability should be at 0x80, not 0x50.
ahci: Add test_pci_spec to ahci-test.
ahci: add test_pci_enable to ahci-test.
ahci: properly shadow the TFD register
ahci: Add test_hba_spec to ahci-test.
ahci: Add test_hba_enable to ahci-test.
ahci: Add test_identify case to ahci-test.
Paolo Bonzini (17):
blkdebug: report errors on flush too
libqtest: add QTEST_LOG for debugging qtest testcases
ide-test: add test for werror=stop
ide: stash aiocb for flushes
ide: simplify reset callbacks
ide: simplify set_inactive callbacks
ide: simplify async_cmd_done callbacks
ide: simplify start_transfer callbacks
ide: wrap start_dma callback
ide: remove wrong setting of BM_STATUS_INT
ide: fold add_status callback into set_inactive
ide: move BM_STATUS bits to pci.[ch]
ide: move retry constants out of BM_STATUS_* namespace
ahci: remove duplicate PORT_IRQ_* constants
ide: stop PIO transfer on errors
ide: make all commands go through cmd_done
ahci: construct PIO Setup FIS for PIO commands
block/blkdebug.c | 20 +
hw/i386/pc_q35.c | 2 +-
hw/ide/ahci.c | 155 +++--
hw/ide/ahci.h | 21 -
hw/ide/atapi.c | 11 +-
hw/ide/core.c | 94 ++-
hw/ide/ich.c | 5 +-
hw/ide/internal.h | 38 +-
hw/ide/macio.c | 9 -
hw/ide/pci.c | 45 +-
hw/ide/pci.h | 7 +
tests/Makefile | 2 +
tests/ahci-test.c | 1554 +++++++++++++++++++++++++++++++++++++++++++++
tests/ide-test.c | 85 ++-
tests/libqos/malloc-pc.c | 3 +
tests/libqos/pci-pc.c | 12 +-
tests/libqos/pci-pc.h | 1 +
tests/libqos/pci.c | 10 +-
tests/libqos/pci.h | 4 +-
tests/libqtest.c | 20 +-
tests/libqtest.h | 24 +
tests/usb-hcd-ehci-test.c | 2 +-
22 files changed, 1922 insertions(+), 202 deletions(-)
create mode 100644 tests/ahci-test.c
--
1.9.3
next reply other threads:[~2014-08-13 21:56 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-13 21:56 John Snow [this message]
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 25/32] ahci: Adding basic functionality qtest John Snow
2014-08-14 15:34 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 26/32] ahci: MSI capability should be at 0x80, not 0x50 John Snow
2014-08-14 7:15 ` Michael S. Tsirkin
2014-08-14 7:19 ` Michael S. Tsirkin
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 27/32] ahci: Add test_pci_spec to ahci-test John Snow
2014-08-14 7:18 ` Michael S. Tsirkin
2014-08-14 16:03 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 28/32] ahci: add test_pci_enable " John Snow
2014-08-14 16:05 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 29/32] ahci: properly shadow the TFD register John Snow
2014-08-14 16:09 ` Stefan Hajnoczi
2014-08-14 16:13 ` John Snow
2014-08-14 17:09 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 30/32] ahci: Add test_hba_spec to ahci-test John Snow
2014-08-14 16:25 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 31/32] ahci: Add test_hba_enable " John Snow
2014-08-14 16:46 ` Stefan Hajnoczi
2014-08-13 21:56 ` [Qemu-devel] [PATCH v3 32/32] ahci: Add test_identify case " John Snow
2014-08-14 16:52 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1407966975-3723-1-git-send-email-jsnow@redhat.com \
--to=jsnow@redhat.com \
--cc=armbru@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).