[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [PATCH 07/14] Nested Virtualization: trap



> 
> +int hvm_inject_exception(unsigned int trapnr, int errcode, unsigned
> long cr2) +{
> +    uint64_t exitcode;
> +    bool_t is_intercepted;
> +    struct vcpu *v = current;
> +    struct nestedhvm *hvm = &VCPU_NESTEDHVM(v);
> +
> +    if ( !nestedhvm_enabled(v->domain) ) {
> +        hvm_funcs.inject_exception(trapnr, errcode, cr2);
> +        return 0;
> +    }

If it is not nested, we go from here to vendor specific injection code.
If it is nested, I think we'd better to go to another vendor specific handler 
too.
We may have to resort to more vendor specific information within the process to 
handle possible different HW stuff. If above suggestion is reasonable, then I 
think we don't need this wrapper change because we can easily extend current 
vendor speifc inject_exception to support both nested case and non-nested case.

Thx, Eddie
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.