ept.h revision 256281
1145485Swpaul/*- 2145485Swpaul * Copyright (c) 2011 NetApp, Inc. 3145485Swpaul * All rights reserved. 4145485Swpaul * 5145485Swpaul * Redistribution and use in source and binary forms, with or without 6145485Swpaul * modification, are permitted provided that the following conditions 7145485Swpaul * are met: 8145485Swpaul * 1. Redistributions of source code must retain the above copyright 9145485Swpaul * notice, this list of conditions and the following disclaimer. 10145485Swpaul * 2. Redistributions in binary form must reproduce the above copyright 11145485Swpaul * notice, this list of conditions and the following disclaimer in the 12145485Swpaul * documentation and/or other materials provided with the distribution. 13145485Swpaul * 14145485Swpaul * THIS SOFTWARE IS PROVIDED BY NETAPP, INC ``AS IS'' AND 15145485Swpaul * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16145485Swpaul * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17145485Swpaul * ARE DISCLAIMED. IN NO EVENT SHALL NETAPP, INC OR CONTRIBUTORS BE LIABLE 18145485Swpaul * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19145485Swpaul * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20145485Swpaul * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21145485Swpaul * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22145485Swpaul * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23145485Swpaul * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24145485Swpaul * SUCH DAMAGE. 25145485Swpaul * 26145485Swpaul * $FreeBSD: stable/10/sys/amd64/vmm/intel/ept.h 256072 2013-10-05 21:22:35Z neel $ 27145485Swpaul */ 28145485Swpaul 29145485Swpaul#ifndef _EPT_H_ 30145485Swpaul#define _EPT_H_ 31145485Swpaul 32145485Swpaulstruct vmx; 33145485Swpaul 34145485Swpaulint ept_init(void); 35145485Swpaulvoid ept_invalidate_mappings(u_long eptp); 36145485Swpaulstruct vmspace *ept_vmspace_alloc(vm_offset_t min, vm_offset_t max); 37145485Swpaulvoid ept_vmspace_free(struct vmspace *vmspace); 38145485Swpauluint64_t eptp(uint64_t pml4); 39145485Swpaul#endif 40145485Swpaul