qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Hajnoczi <stefanha@gmail.com>
To: John Snow <jsnow@redhat.com>
Cc: kwolf@redhat.com, marc.mari.barcelo@gmail.com, armbru@redhat.com,
	qemu-devel@nongnu.org, mreitz@redhat.com, stefanha@redhat.com,
	pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PATCH v2 00/15] ahci-test preliminary refactoring
Date: Thu, 12 Feb 2015 15:51:37 +0000	[thread overview]
Message-ID: <20150212155137.GC4054@stefanha-thinkpad.redhat.com> (raw)
In-Reply-To: <1421698563-6977-1-git-send-email-jsnow@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 3630 bytes --]

On Mon, Jan 19, 2015 at 03:15:48PM -0500, John Snow wrote:
> This series aims to do two main things:
> 
> (1) Eliminate global state out of the ahci-test file so that
>     the tests are more functional. This will allow me to write
>     migration tests more easily. These tests are already written
>     and will be submitted upstream after these refactor series.
> 
> (2) With global state removed from ahci-test, factor out functions
>     that would be useful to manipulate ahci devices into libqos/ahci.o,
>     to allow other testwriters to capitalize on the functional
>     refactoring.
> 
> So, as an overview, we do a few things:
> 
>  - Clean up the malloc interface to have a clear pc-specific interface
>    that uses an architecture independent core.
> 
>  - Add some new structures to help keep track of AHCI and libqos state.
> 
>  - Rewrite existing AHCI helpers and routines to use the new structures
>    and helper routines.
> 
>  - Excise any commonly valuable code to libqos/ahci.h and libqos/ahci.c.
> 
> This series therefore introduces no new functionality itself, but I was
> trying to keep the series small and reviewable. The real necessity here
> in jumbling malloc and ahci functions around is to create a functional
> interface that can be bundled into a single structure to help facilitate
> migration testing inside of qtests, for which I intend to export to all
> of qtests to be re-used for other tests.
> 
> From this point forward, the churn to my AHCI refactor series should be
> significantly reduced and more pleasant to read.
> 
> Thanks,
> John.
> 
> V2:
>  - #6  Made QGuestAllocator object opaque, in a new patch.
>    - Created page_size setter method.
>  - #7  Renamed "QOSOperations" to "QOSOps" and added Paolo's R-b.
>  - #12 Dropped GCC attributes from static inline helpers (ahci.h)
>  - #15 Adjusted assertion to not compare void ptr to int 0
>  - #15 Share ahci.o with libqos-obj-pc-y instead of only ahci-test
>    * ahci.o is pc-only for now.
> 
> John Snow (15):
>   libqos: Split apart pc_alloc_init
>   qtest/ahci: Create ahci.h
>   libqos: create libqos.c
>   libqos: add qtest_vboot
>   libqos: add alloc_init_flags
>   libqos: Update QGuestAllocator to be opaque
>   libqos: add pc specific interface
>   qtest/ahci: Store hba_base in AHCIQState
>   qtest/ahci: finalize AHCIQState consolidation
>   qtest/ahci: remove pcibus global
>   qtest/ahci: remove guest_malloc global
>   libqos/ahci: Functional register helpers
>   qtest/ahci: remove getter/setter macros
>   qtest/ahci: Bookmark FB and CLB pointers
>   libqos/ahci: create libqos/ahci.c
> 
>  tests/Makefile           |   5 +-
>  tests/ahci-test.c        | 894 ++++++++---------------------------------------
>  tests/libqos/ahci.c      | 269 ++++++++++++++
>  tests/libqos/ahci.h      | 435 +++++++++++++++++++++++
>  tests/libqos/libqos-pc.c |  24 ++
>  tests/libqos/libqos-pc.h |   9 +
>  tests/libqos/libqos.c    |  63 ++++
>  tests/libqos/libqos.h    |  33 ++
>  tests/libqos/malloc-pc.c |  20 +-
>  tests/libqos/malloc.c    |  86 ++++-
>  tests/libqos/malloc.h    |  25 +-
>  11 files changed, 1068 insertions(+), 795 deletions(-)
>  create mode 100644 tests/libqos/ahci.c
>  create mode 100644 tests/libqos/ahci.h
>  create mode 100644 tests/libqos/libqos-pc.c
>  create mode 100644 tests/libqos/libqos-pc.h
>  create mode 100644 tests/libqos/libqos.c
>  create mode 100644 tests/libqos/libqos.h
> 
> -- 
> 1.9.3
> 
> 

Thanks, applied to my block tree:
https://github.com/stefanha/qemu/commits/block

Stefan

[-- Attachment #2: Type: application/pgp-signature, Size: 473 bytes --]

      parent reply	other threads:[~2015-02-12 15:51 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-19 20:15 [Qemu-devel] [PATCH v2 00/15] ahci-test preliminary refactoring John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 01/15] libqos: Split apart pc_alloc_init John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 02/15] qtest/ahci: Create ahci.h John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 03/15] libqos: create libqos.c John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 04/15] libqos: add qtest_vboot John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 05/15] libqos: add alloc_init_flags John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 06/15] libqos: Update QGuestAllocator to be opaque John Snow
2015-01-27 21:22   ` Marc Marí
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 07/15] libqos: add pc specific interface John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 08/15] qtest/ahci: Store hba_base in AHCIQState John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 09/15] qtest/ahci: finalize AHCIQState consolidation John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 10/15] qtest/ahci: remove pcibus global John Snow
2015-01-19 20:15 ` [Qemu-devel] [PATCH v2 11/15] qtest/ahci: remove guest_malloc global John Snow
2015-01-19 20:16 ` [Qemu-devel] [PATCH v2 12/15] libqos/ahci: Functional register helpers John Snow
2015-01-28 10:26   ` Paolo Bonzini
2015-01-19 20:16 ` [Qemu-devel] [PATCH v2 13/15] qtest/ahci: remove getter/setter macros John Snow
2015-01-19 20:16 ` [Qemu-devel] [PATCH v2 14/15] qtest/ahci: Bookmark FB and CLB pointers John Snow
2015-01-19 20:16 ` [Qemu-devel] [PATCH v2 15/15] libqos/ahci: create libqos/ahci.c John Snow
2015-01-28 10:26   ` Paolo Bonzini
2015-01-27 21:05 ` [Qemu-devel] [PATCH v2 00/15] ahci-test preliminary refactoring John Snow
2015-02-12 15:51 ` Stefan Hajnoczi [this message]

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=20150212155137.GC4054@stefanha-thinkpad.redhat.com \
    --to=stefanha@gmail.com \
    --cc=armbru@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=marc.mari.barcelo@gmail.com \
    --cc=mreitz@redhat.com \
    --cc=pbonzini@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).