From: Stefan Hajnoczi <stefanha@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: Stefan Hajnoczi <stefanha@gmail.com>,
mst@redhat.com, qemu-devel@nongnu.org, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PATCH 26/28] ahci: Add test_hba_spec to ahci-test.
Date: Mon, 4 Aug 2014 10:51:38 +0100 [thread overview]
Message-ID: <20140804095138.GA5784@stefanha-thinkpad.redhat.com> (raw)
In-Reply-To: <53DC227D.60205@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 2878 bytes --]
On Fri, Aug 01, 2014 at 07:27:57PM -0400, John Snow wrote:
>
> On 07/31/2014 10:01 AM, Stefan Hajnoczi wrote:
> >On Mon, Jul 07, 2014 at 02:18:07PM -0400, John Snow wrote:
> >>+/*** IO macros for the AHCI memory registers. ***/
> >>+#define void_incr(vptr, OFST) ((void *)((char *)(vptr) + (OFST)))
> >I'm pretty sure QEMU takes advantage of GCC's void pointer arithmetic
> >extension:
> >https://gcc.gnu.org/onlinedocs/gcc-4.9.1/gcc/Pointer-Arith.html#Pointer-Arith
> >
> >In other words, vptr + OFST works and you don't need a macro.
> >
> >>+#define ahci_set(regno, mask) ahci_wreg((regno), ahci_rreg(regno) | (mask))
> >>+#define ahci_clr(regno, mask) ahci_wreg((regno), ahci_rreg(regno) & ~(mask))
> >Unused. Please move to the patch that actually uses them.
> >
> >>+#define px_set(port, reg, mask) px_wreg((port), (reg), \
> >>+ px_rreg((port), (reg)) | (mask));
> >>+#define px_clr(port, reg, mask) px_wreg((port), (reg), \
> >>+ px_rreg((port), (reg)) & ~(mask));
> >Unused. Please move to the patch that actually uses them.
> >
> >>+ /* We need to know the size of the region,
> >>+ * but qpci_iomap doesn't save it. Recalculate it. */
> >It seems like many tests will want to check the BAR size. Please add an
> >argument to qpci_iomap() so the caller gets the size.
> >
> >>+ if (bitset(cap, AHCI_CAP_SAM)) {
> >>+ g_test_message("Supports AHCI-Only Mode: GHC_AE is Read-Only.");
> >>+ assert_bit_set(reg, AHCI_GHC_AE);
> >>+ } else {
> >>+ g_test_message("Supports AHCI/Legacy mix.");
> >>+ assert_bit_clear(reg, AHCI_GHC_AE);
> >>+ }
> >Let's just assert what QEMU implements.
> >
> >>+ /* 12 -- 23: Reserved */
> >>+ g_test_message("Verifying HBA reserved area is empty.");
> >Debugging message that can be removed?
> >
> >More elsewhere in this patch.
>
> one last question -- is there a reasonable way to have assertions that allow
> the test to shamble forward, still fail at the end, and still run subsequent
> test cases?
> A lot of the warnings I threw in here are actually errors, but it'd still be
> useful to see the rest of the test run to completion as best as it can.
>
> You can call g_test_set_nonfatal_assertions(), but it actually appears as if
> (on my machine at least) that this is a nop, which is not super helpful.
>
> It'd be nice if the checked in version of the test showed you the myriad
> failings, instead of just one at a time until you hack in/out certain
> assertions manually if you are interested in other areas.
I'm not aware of a glib API to do that. You can tell gtester which test
cases to invoke if you need to skip or only run certain cases. That
might be useful during development.
Stefan
[-- Attachment #2: Type: application/pgp-signature, Size: 473 bytes --]
next prev parent reply other threads:[~2014-08-04 9:51 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-07 18:17 [Qemu-devel] [PATCH 00/28] ahci refactoring to support ahci-test suite John Snow
2014-07-07 18:17 ` [Qemu-devel] [PATCH 01/28] blkdebug: report errors on flush too John Snow
2014-07-17 13:28 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 02/28] libqtest: add QTEST_LOG for debugging qtest testcases John Snow
2014-07-17 13:32 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 03/28] ide-test: add test for werror=stop John Snow
2014-07-31 10:58 ` Stefan Hajnoczi
2014-07-31 22:06 ` John Snow
2014-08-01 7:13 ` Markus Armbruster
2014-07-07 18:17 ` [Qemu-devel] [PATCH 04/28] ide: stash aiocb for flushes John Snow
2014-07-31 11:53 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 05/28] ide: simplify reset callbacks John Snow
2014-07-31 11:54 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 06/28] ide: simplify set_inactive callbacks John Snow
2014-07-31 11:54 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 07/28] ide: simplify async_cmd_done callbacks John Snow
2014-07-31 11:54 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 08/28] ide: simplify start_transfer callbacks John Snow
2014-07-31 11:55 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 09/28] ide: wrap start_dma callback John Snow
2014-07-31 11:55 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 10/28] ide: remove wrong setting of BM_STATUS_INT John Snow
2014-07-31 11:56 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 11/28] ide: fold add_status callback into set_inactive John Snow
2014-07-31 11:57 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 12/28] ide: move BM_STATUS bits to pci.[ch] John Snow
2014-07-31 11:57 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 13/28] ide: move retry constants out of BM_STATUS_* namespace John Snow
2014-07-31 12:06 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 14/28] ahci: remove duplicate PORT_IRQ_* constants John Snow
2014-07-31 12:12 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 15/28] ide: stop PIO transfer on errors John Snow
2014-07-31 12:23 ` Stefan Hajnoczi
2014-07-31 23:32 ` John Snow
2014-08-01 7:15 ` Paolo Bonzini
2014-07-07 18:17 ` [Qemu-devel] [PATCH 16/28] ide: make all commands go through cmd_done John Snow
2014-07-31 12:25 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 17/28] ahci: construct PIO Setup FIS for PIO commands John Snow
2014-07-31 12:32 ` Stefan Hajnoczi
2014-07-07 18:17 ` [Qemu-devel] [PATCH 18/28] q35: Enable the ioapic device to be seen by qtest John Snow
2014-07-31 12:33 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 19/28] qtest: Adding qtest_memset and qmemset John Snow
2014-07-31 12:37 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 20/28] libqos: Correct memory leak John Snow
2014-07-31 12:38 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 21/28] libqtest: Correct small " John Snow
2014-07-31 12:39 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 22/28] libqos: Fixes a " John Snow
2014-07-31 12:40 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 23/28] ahci: Adding basic functionality qtest John Snow
2014-07-31 12:54 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 24/28] ahci: Add test_pci_spec to ahci-test John Snow
2014-07-31 13:19 ` Stefan Hajnoczi
2014-07-31 17:42 ` John Snow
2014-08-01 11:14 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 25/28] ahci: add test_pci_enable " John Snow
2014-07-31 13:36 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 26/28] ahci: Add test_hba_spec " John Snow
2014-07-31 14:01 ` Stefan Hajnoczi
2014-07-31 20:03 ` John Snow
2014-08-01 23:27 ` John Snow
2014-08-04 9:51 ` Stefan Hajnoczi [this message]
2014-07-07 18:18 ` [Qemu-devel] [PATCH 27/28] ahci: Add test_hba_enable " John Snow
2014-07-31 15:24 ` Stefan Hajnoczi
2014-07-07 18:18 ` [Qemu-devel] [PATCH 28/28] ahci: Add test_identify case " John Snow
2014-07-31 15:28 ` 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=20140804095138.GA5784@stefanha-thinkpad.redhat.com \
--to=stefanha@redhat.com \
--cc=jsnow@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.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).