GIMAllHv.cpp revision bc5cd42756b3f98351040bbfccc08dd9bacd103a
236b2935f217749893b7034e59da3e3568928acevboxsync * GIM - Guest Interface Manager, Microsoft Hyper-V, All Contexts.
236b2935f217749893b7034e59da3e3568928acevboxsync * Copyright (C) 2014 Oracle Corporation
236b2935f217749893b7034e59da3e3568928acevboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
236b2935f217749893b7034e59da3e3568928acevboxsync * available from http://www.virtualbox.org. This file is free software;
236b2935f217749893b7034e59da3e3568928acevboxsync * you can redistribute it and/or modify it under the terms of the GNU
236b2935f217749893b7034e59da3e3568928acevboxsync * General Public License (GPL) as published by the Free Software
236b2935f217749893b7034e59da3e3568928acevboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
236b2935f217749893b7034e59da3e3568928acevboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
236b2935f217749893b7034e59da3e3568928acevboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
236b2935f217749893b7034e59da3e3568928acevboxsync/*******************************************************************************
236b2935f217749893b7034e59da3e3568928acevboxsync* Header Files *
236b2935f217749893b7034e59da3e3568928acevboxsync*******************************************************************************/
236b2935f217749893b7034e59da3e3568928acevboxsyncDECLEXPORT(int) GIMHvHypercall(PVMCPU pVCpu, PCPUMCTX pCtx)
5067a9619d7131c54d4ebb371d9dac91abdd34f6vboxsyncDECLEXPORT(int) GIMHvReadMsr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t *puValue)
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync /* Hyper-V reports the time in 100ns units. */
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync uint64_t u64TscHz = TMCpuTicksPerSecond(pVCpu->CTX_SUFF(pVM));
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync uint64_t u64Tsc100Ns = u64TscHz / UINT64_C(10000000); /* 100 ns */
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync LogRel(("GIMHvReadMsr: Unknown/invalid RdMsr %#RX32 -> #GP(0)\n", idMsr));
5067a9619d7131c54d4ebb371d9dac91abdd34f6vboxsyncDECLEXPORT(int) GIMHvWriteMsr(PVMCPU pVCpu, uint32_t idMsr, PCCPUMMSRRANGE pRange, uint64_t uValue, uint64_t uRawValue)