blob: af43f6ed2ae951f1a32e638d8486a20af5d956eb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
;; @file
; GVM - The Global VM Data.
;
;
; Copyright (C) 2006-2022 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; The contents of this file may alternatively be used under the terms
; of the Common Development and Distribution License Version 1.0
; (CDDL), a copy of it is provided in the "COPYING.CDDL" file included
; in the VirtualBox distribution, in which case the provisions of the
; CDDL are applicable instead of those of the GPL.
;
; You may elect to license modified versions of this file under the
; terms and conditions of either the GPL or the CDDL or both.
;
; SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
;
%ifndef ___VBox_vmm_gvm_mac
%define ___VBox_vmm_gvm_mac
%include "VBox/vmm/vm.mac"
struc GVMCPU
.s resb VMCPU_size
.idCpu resd 1
alignb 8
.hEMT RTR0PTR_RES 1
.pGVM RTR0PTR_RES 1
.pVMR0 RTR0PTR_RES 1
.pVCpuR3 RTR3PTR_RES 1
alignb 64
.idHostCpu resd 1
.iHostCpuSet resd 1
alignb 64
.gvmm resb 256
alignb 64
.hmr0 resb 1024
%ifdef VBOX_WITH_NEM_R0
.nemr0 resb 64
%endif
alignb 64
.vmmr0 resb 896
alignb 64
.pgmr0 resb 64
alignb 16384
endstruc
struc GVM
.s resb VM_size
.u32Magic resd 1
.hSelf resd 1
alignb 8
.pSelf RTR0PTR_RES 1
.pVMR3 RTR3PTR_RES 1
.pSession RTR0PTR_RES 1
.cCpus resd 1
alignb 64
.gvmm resb 4352
alignb 64
.gmm resb 1024
alignb 64
.hmr0 resb 256
%ifdef VBOX_WITH_NEM_R0
alignb 64
.nemr0 resb 256
%endif
alignb 64
.rawpci resb 64
alignb 64
.pdmr0 resb 3008
alignb 64
.pgmr0 resb 1920
alignb 64
.iomr0 resb 512
alignb 64
.apicr0 resb 64
alignb 64
.dbgfr0 resb 1024
alignb 64
.tmr0 resb 128
times ((($ + VMM_MAX_CPU_COUNT * RTR0PTR_CB + 16383) & ~16383) - ($ + VMM_MAX_CPU_COUNT * RTR0PTR_CB)) resb 1
.apCpusR0 RTR0PTR_RES VMM_MAX_CPU_COUNT
alignb 16384
.aCpus resb GVMCPU_size
endstruc
%define GVM_MAGIC 0x19330825
%endif
|