On Wed, Jul 17, 2013 at 02:08:54PM +0800, Arthur Chunqi Li wrote: > Hi Gleb and Paolo, > As your suggestion, I add general interface for adding test suite in > this version. It is similar to the achievement of x86/vmx.c, and I > also move tests for vmenter (vmlaunch and vmresume test) to an > independent test suite. > The general interface looks fine, can be extended if needed, but you ignored my comment about refactoring vmx_run() to make vmexit return just after vmresume. Do it, you will see how clearer the code and the logic will be. 99% of code we are dealing with as a programmers is linear, we are much better following liner logic. > Arthur > > On Wed, Jul 17, 2013 at 2:05 PM, Arthur Chunqi Li <yzt356@xxxxxxxxx> wrote: > > These two patches are focued on providing a basic version of VMX nested > > test suite. This commit provides the architecture of nested VMX similiar > > to x86/svm.c. > > > > When new test suite added, just write functions included in "struct vmx_test" > > and register it in array "vmx_tests". GPR in guest can be read from vmx_test. > > guest_regs. VM exit times can be read from vmx_test.exits. > > > > setjmp/longjmp is designed to avoid exiting VMX in call-back form. > > > > Arthur Chunqi Li (2): > > kvm-unit-tests : Add setjmp/longjmp to libcflat > > kvm-unit-tests : The first version of VMX nested test case > > > > config-x86-common.mak | 2 + > > config-x86_64.mak | 3 + > > lib/setjmp.h | 11 + > > lib/x86/msr.h | 5 + > > lib/x86/setjmp64.S | 27 ++ > > x86/cstart64.S | 4 + > > x86/unittests.cfg | 6 + > > x86/vmx.c | 676 +++++++++++++++++++++++++++++++++++++++++++++++++ > > x86/vmx.h | 419 ++++++++++++++++++++++++++++++ > > 9 files changed, 1153 insertions(+) > > create mode 100644 lib/setjmp.h > > create mode 100644 lib/x86/setjmp64.S > > create mode 100644 x86/vmx.c > > create mode 100644 x86/vmx.h > > > > -- > > 1.7.9.5 > > > > > > -- > Arthur Chunqi Li > Department of Computer Science > School of EECS > Peking University > Beijing, China -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html