On Wed, Dec 15, 2010 at 06:09:29PM +0200, Avi Kivity wrote:
> This patchset adds an API test framework.  Rather than driving kvm from qemu,
> we now have a way of calling the kvm API directly and observing the results.
> We can switch to guest mode and back at will and see any micro effects such
> as the result of executing particular instructions.
> 
> A first test is added, for commit edde99ce0 ("KVM: Write protect memory
> after slot swap").  This would be pretty hard to test for using the current
> qemu-driven tests, but detects 5 million failures in about two minutes on
> my machine.
> 
> As an experiment, the framework is coded in C++.
> 
> Avi Kivity (14):
>   Makefile: add support for C++
>   Improve autodepend includes
>     v2: new
>   Add exception class for kernel errors (errno)
>     v2: new
>   Add try_main() for running a program under an exception handler
>     v2: new
>   Introduce a C++ wrapper for the kvm APIs
>     v2: throw std::exception exceptions, not ints, for libc failures
>         better msr list management
>   Add support for calling a function in guest mode
>     v2: use tr1::function instead of boost::function
>   Add sample test using the api test harness
>   api: add support for KVM_SET_USER_MEMORY_REGION flags field
>     v2: new
>   api: support KVM_GET_DIRTY_LOG ioctl
>     v2: new
>   api: add memory map management
>     v2: new
>   Build tests with debug information
>     v2: new
>   api: Add support for creating an identity map with a hole
>     v2: new
>   Introduce libapi.a to avoid long Makefile recipes
>     v2: new
>   Add dirty log test
>     v2: new
> 
>  Makefile              |    8 +-
>  api/api-sample.cc     |   30 ++++++++
>  api/dirty-log.cc      |   78 ++++++++++++++++++++
>  api/exception.cc      |   33 ++++++++
>  api/exception.hh      |   19 +++++
>  api/identity.cc       |   95 ++++++++++++++++++++++++
>  api/identity.hh       |   43 +++++++++++
>  api/kvmxx.cc          |  194 
> +++++++++++++++++++++++++++++++++++++++++++++++++
>  api/kvmxx.hh          |   85 +++++++++++++++++++++
>  api/memmap.cc         |   76 +++++++++++++++++++
>  api/memmap.hh         |   43 +++++++++++
>  config-x86-common.mak |   15 ++++-
>  12 files changed, 715 insertions(+), 4 deletions(-)
>  create mode 100644 api/api-sample.cc
>  create mode 100644 api/dirty-log.cc
>  create mode 100644 api/exception.cc
>  create mode 100644 api/exception.hh
>  create mode 100644 api/identity.cc
>  create mode 100644 api/identity.hh
>  create mode 100644 api/kvmxx.cc
>  create mode 100644 api/kvmxx.hh
>  create mode 100644 api/memmap.cc
>  create mode 100644 api/memmap.hh

Applied, thanks.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to