X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=bios%2Fvmxassist%2Fvmx_assist.h;h=4ef17febffe555ff0b6a87efd1d4c6f88ad2c675;hp=f987b0fbc2f1c36c9173be714eb45218abe53531;hb=61597ea2c5ccace036d8a65e429e32b8f8a7ed4a;hpb=f3eb8bbb7c58c98b03797f2188e6c1d2a7610c15 diff --git a/bios/vmxassist/vmx_assist.h b/bios/vmxassist/vmx_assist.h index f987b0f..4ef17fe 100644 --- a/bios/vmxassist/vmx_assist.h +++ b/bios/vmxassist/vmx_assist.h @@ -1,6 +1,24 @@ /* * vmx_assist.h: Context definitions for the VMXASSIST world switch. * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + * * Leendert van Doorn, leendert@watson.ibm.com * Copyright (c) 2005, International Business Machines Corporation. */ @@ -17,6 +35,10 @@ #ifndef __ASSEMBLY__ +#define NR_EXCEPTION_HANDLER 32 +#define NR_INTERRUPT_HANDLERS 16 +#define NR_TRAPS (NR_EXCEPTION_HANDLER+NR_INTERRUPT_HANDLERS) + union vmcs_arbytes { struct arbyte_fields { unsigned int seg_type : 4, @@ -80,6 +102,8 @@ struct vmx_assist_context { uint32_t ldtr_limit; uint32_t ldtr_base; union vmcs_arbytes ldtr_arbytes; + + unsigned char rm_irqbase[2]; }; typedef struct vmx_assist_context vmx_assist_context_t;