1366f6083SPeter Grehan /*- 251369649SPedro F. Giffuni * SPDX-License-Identifier: BSD-3-Clause 351369649SPedro F. Giffuni * 4366f6083SPeter Grehan * Copyright (c) 2011 NetApp, Inc. 5366f6083SPeter Grehan * All rights reserved. 6366f6083SPeter Grehan * 7366f6083SPeter Grehan * Redistribution and use in source and binary forms, with or without 8366f6083SPeter Grehan * modification, are permitted provided that the following conditions 9366f6083SPeter Grehan * are met: 10366f6083SPeter Grehan * 1. Redistributions of source code must retain the above copyright 11366f6083SPeter Grehan * notice, this list of conditions and the following disclaimer. 12366f6083SPeter Grehan * 2. Redistributions in binary form must reproduce the above copyright 13366f6083SPeter Grehan * notice, this list of conditions and the following disclaimer in the 14366f6083SPeter Grehan * documentation and/or other materials provided with the distribution. 15fbbd9655SWarner Losh * 3. Neither the name of the University nor the names of its contributors 16366f6083SPeter Grehan * may be used to endorse or promote products derived from this software 17366f6083SPeter Grehan * without specific prior written permission. 18366f6083SPeter Grehan * 19366f6083SPeter Grehan * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 20366f6083SPeter Grehan * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21366f6083SPeter Grehan * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22366f6083SPeter Grehan * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 23366f6083SPeter Grehan * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24366f6083SPeter Grehan * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25366f6083SPeter Grehan * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26366f6083SPeter Grehan * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27366f6083SPeter Grehan * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28366f6083SPeter Grehan * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29366f6083SPeter Grehan * SUCH DAMAGE. 30366f6083SPeter Grehan */ 31366f6083SPeter Grehan 32366f6083SPeter Grehan #ifndef _VMM_STAT_H_ 33366f6083SPeter Grehan #define _VMM_STAT_H_ 34366f6083SPeter Grehan 35*93e81baaSMark Johnston #include <dev/vmm/vmm_stat.h> 36366f6083SPeter Grehan 37*93e81baaSMark Johnston #include "vmm_util.h" 38cf1d80d8SPeter Grehan 3961592433SNeel Natu VMM_STAT_DECLARE(VCPU_MIGRATIONS); 4061592433SNeel Natu VMM_STAT_DECLARE(VMEXIT_COUNT); 4161592433SNeel Natu VMM_STAT_DECLARE(VMEXIT_EXTINT); 4261592433SNeel Natu VMM_STAT_DECLARE(VMEXIT_HLT); 43b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_CR_ACCESS); 44b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_RDMSR); 45b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_WRMSR); 46b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_MTRAP); 47b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_PAUSE); 48b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_INTR_WINDOW); 49b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_NMI_WINDOW); 50b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_INOUT); 51b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_CPUID); 52bf73979dSNeel Natu VMM_STAT_DECLARE(VMEXIT_NESTED_FAULT); 53bf73979dSNeel Natu VMM_STAT_DECLARE(VMEXIT_INST_EMUL); 54b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_UNKNOWN); 55b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_ASTPENDING); 56b5aaf7b2SNeel Natu VMM_STAT_DECLARE(VMEXIT_USERSPACE); 575b8a8cd1SNeel Natu VMM_STAT_DECLARE(VMEXIT_RENDEZVOUS); 58c308b23bSNeel Natu VMM_STAT_DECLARE(VMEXIT_EXCEPTION); 59248e6799SNeel Natu VMM_STAT_DECLARE(VMEXIT_REQIDLE); 60*93e81baaSMark Johnston 61*93e81baaSMark Johnston #define VMM_STAT_INTEL(type, desc) \ 62*93e81baaSMark Johnston VMM_STAT_DEFINE(type, 1, desc, vmm_is_intel) 63*93e81baaSMark Johnston #define VMM_STAT_AMD(type, desc) \ 64*93e81baaSMark Johnston VMM_STAT_DEFINE(type, 1, desc, vmm_is_svm) 65*93e81baaSMark Johnston 66366f6083SPeter Grehan #endif 67