Perform the task on halted core.
48{
49 switch (TargetTask)
50 {
52 {
53
54
55
57 break;
58 }
59
61 {
62
63
64
66
67 break;
68 }
70 {
71
72
73
75
76 break;
77 }
79 {
80
81
82
84
85 break;
86 }
88 {
89
90
91
93
94 break;
95 }
97 {
98
99
100
102
103 break;
104 }
106 {
107
108
109
111
112 break;
113 }
115 {
116
117
118
120
121 break;
122 }
124 {
125
126
127
129
130 break;
131 }
133 {
134
135
136
138
139 break;
140 }
142 {
143
144
145
147
148 break;
149 }
151 {
152
153
154
156
157 break;
158 }
160 {
161
162
163
165
166 break;
167 }
169 {
170
171
172
174
175 break;
176 }
178 {
179
180
181
183
184 break;
185 }
187 {
188
189
190
192
193 break;
194 }
196 {
197
198
199
201
202 break;
203 }
205 {
206
207
208
210
211 break;
212 }
214 {
215
216
217
219
220 break;
221 }
223 {
224
225
226
228
229 break;
230 }
232 {
233
234
235
237
238 break;
239 }
241 {
242
243
244
246
247 break;
248 }
250 {
251
252
253
255
256 break;
257 }
259 {
260
261
262
264
265 break;
266 }
268 {
269
270
271
273
274 break;
275 }
277 {
278
279
280
282
283 break;
284 }
286 {
287
288
289
291
292 break;
293 }
295 {
296
297
298
300
301 break;
302 }
303 default:
304 LogWarning(
"Warning, unknown broadcast on halted core received");
305 break;
306 }
307}
NTSTATUS DirectVmcallResetExceptionBitmapOnlyOnClearingExceptionEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for resetting exception bitmap on VMCS
Definition DirectVmcall.c:407
NTSTATUS DirectVmcallEnableMovToCrExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling mov to CR exiting
Definition DirectVmcall.c:217
NTSTATUS DirectVmcallDisableRdtscExitingForClearingTscEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for clearing rdtsc exiting bit ONLY in the case of disabling the events for !...
Definition DirectVmcall.c:446
NTSTATUS DirectVmcallInvalidateSingleContext(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for invalidating EPT (A Single Context)
Definition DirectVmcall.c:293
NTSTATUS DirectVmcallUnsetExceptionBitmap(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for unsetting exception bitmap on VMCS
Definition DirectVmcall.c:312
NTSTATUS DirectVmcallResetMsrBitmapWrite(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for resetting MSR Bitmap Write
Definition DirectVmcall.c:388
NTSTATUS DirectVmcallInvalidateEptAllContexts(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for invalidating EPT (All Contexts)
Definition DirectVmcall.c:274
NTSTATUS DirectVmcallChangeMsrBitmapWrite(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for changing MSR Bitmap (Write)
Definition DirectVmcall.c:84
NTSTATUS DirectVmcallChangeMsrBitmapRead(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for changing MSR Bitmap (Read)
Definition DirectVmcall.c:65
NTSTATUS DirectVmcallSetDisableExternalInterruptExitingOnlyOnClearingInterruptEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for disabling external interrupt exiting only to clear !interrupt commands
Definition DirectVmcall.c:350
NTSTATUS DirectVmcallSetExceptionBitmap(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for setting exception bitmap
Definition DirectVmcall.c:179
NTSTATUS DirectVmcallEnableRdtscpExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling rdtsc/rdtscp exiting
Definition DirectVmcall.c:141
NTSTATUS DirectVmcallUnhookSinglePage(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for restoring a single EPT entry and invalidating EPT cache
Definition DirectVmcall.c:331
NTSTATUS DirectVmcallEnableEferSyscall(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling syscall hook using EFER SCE bit
Definition DirectVmcall.c:236
NTSTATUS DirectVmcallDisableMov2DrExitingForClearingDrEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for clearing mov 2 hw dr exiting bit ONLY in the case of disabling the events for !...
Definition DirectVmcall.c:504
NTSTATUS DirectVmcallResetIoBitmap(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for resetting I/O Bitmaps (A & B)
Definition DirectVmcall.c:426
NTSTATUS DirectVmcallTest(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for test direct VMCALL
Definition DirectVmcall.c:25
NTSTATUS DirectVmcallResetMsrBitmapRead(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for resetting MSR Bitmap Read
Definition DirectVmcall.c:369
NTSTATUS DirectVmcallEnableRdpmcExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling rdpmc exiting
Definition DirectVmcall.c:122
NTSTATUS DirectVmcallEnableMov2DebugRegsExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling mov to debug registers exiting
Definition DirectVmcall.c:160
NTSTATUS DirectVmcallDisableMov2CrExitingForClearingCrEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for clearing mov 2 cr exiting bit ONLY in the case of disabling the events for !...
Definition DirectVmcall.c:524
NTSTATUS DirectVmcallChangeIoBitmap(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for changing IO Bitmap
Definition DirectVmcall.c:103
NTSTATUS DirectVmcallDisableEferSyscallEvents(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for disabling syscall hook using EFER SCE bit
Definition DirectVmcall.c:484
NTSTATUS DirectVmcallDisableRdpmcExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for disabling rdpmc exiting in primary cpu-based controls
Definition DirectVmcall.c:465
NTSTATUS DirectVmcallEnableExternalInterruptExiting(UINT32 CoreId, DIRECT_VMCALL_PARAMETERS *DirectVmcallOptions)
routines for enabling external interrupt exiting
Definition DirectVmcall.c:198
VOID HaltedCoreTaskTest(PROCESSOR_DEBUGGING_STATE *DbgState, PVOID Context)
Perform the test task on halted core.
Definition HaltedCore.c:24
#define DEBUGGER_HALTED_CORE_TASK_SET_EXCEPTION_BITMAP
Halted core task for setting exception bitmap.
Definition HaltedCore.h:82
#define DEBUGGER_HALTED_CORE_TASK_SET_RDTSC_EXITING
Halted core task for enabling rdtsc/rdtscp exiting.
Definition HaltedCore.h:70
#define DEBUGGER_HALTED_CORE_TASK_UNSET_RDPMC_EXITING
Halted core task for disabling rdpmc exiting in primary cpu-based controls.
Definition HaltedCore.h:167
#define DEBUGGER_HALTED_CORE_TASK_SET_PROCESS_INTERCEPTION
Halted core task for setting process interception.
Definition HaltedCore.h:34
#define DEBUGGER_HALTED_CORE_TASK_RESET_IO_BITMAP
Halted core task for resetting I/O Bitmaps (A & B)
Definition HaltedCore.h:154
#define DEBUGGER_HALTED_CORE_TASK_ENABLE_EXTERNAL_INTERRUPT_EXITING
Halted core task for enabling external interrupt exiting.
Definition HaltedCore.h:88
#define DEBUGGER_HALTED_CORE_TASK_DISABLE_RDTSC_EXITING_ONLY_FOR_TSC_EVENTS
Halted core task for clearing rdtsc exiting bit ONLY in the case of disabling the events for !...
Definition HaltedCore.h:161
#define DEBUGGER_HALTED_CORE_TASK_DISABLE_MOV_TO_CR_EXITING_ONLY_FOR_CR_EVENTS
Halted core task for clearing mov 2 cr exiting bit ONLY in the case of disabling the events for !...
Definition HaltedCore.h:187
#define DEBUGGER_HALTED_CORE_TASK_ENABLE_MOV_TO_DEBUG_REGS_EXITING
Halted core task for enabling mov to debug registers exiting.
Definition HaltedCore.h:76
#define DEBUGGER_HALTED_CORE_TASK_UNHOOK_SINGLE_PAGE
Halted core task for restoring a single EPT entry and invalidating EPT cache.
Definition HaltedCore.h:124
#define DEBUGGER_HALTED_CORE_TASK_SET_RDPMC_EXITING
Halted core task for enabling rdpmc exiting.
Definition HaltedCore.h:64
#define DEBUGGER_HALTED_CORE_TASK_RUN_VMCALL
Halted core task for running VMCALLs.
Definition HaltedCore.h:28
#define DEBUGGER_HALTED_CORE_TASK_DISABLE_MOV_TO_HW_DR_EXITING_ONLY_FOR_DR_EVENTS
Halted core task for clearing mov 2 hw dr exiting bit ONLY in the case of disabling the events for !...
Definition HaltedCore.h:180
#define DEBUGGER_HALTED_CORE_TASK_RESET_EXCEPTION_BITMAP_ONLY_ON_CLEARING_EXCEPTION_EVENTS
Halted core task for resetting exception bitmap on VMCS.
Definition HaltedCore.h:148
#define DEBUGGER_HALTED_CORE_TASK_RESET_MSR_BITMAP_READ
Halted core task for resetting MSR Bitmap Read.
Definition HaltedCore.h:136
#define DEBUGGER_HALTED_CORE_TASK_INVEPT_ALL_CONTEXTS
Halted core task for invalidating EPT (All Contexts)
Definition HaltedCore.h:106
#define DEBUGGER_HALTED_CORE_TASK_DISABLE_EXTERNAL_INTERRUPT_EXITING_ONLY_TO_CLEAR_INTERRUPT_COMMANDS
Halted core task for disabling external interrupt exiting only to clear !interrupt commands.
Definition HaltedCore.h:130
#define DEBUGGER_HALTED_CORE_TASK_TEST
Halted core task for testing purpose.
Definition HaltedCore.h:22
#define DEBUGGER_HALTED_CORE_TASK_CHANGE_IO_BITMAP
Halted core task for changing I/O Bitmaps (A & B)
Definition HaltedCore.h:58
#define DEBUGGER_HALTED_CORE_TASK_INVEPT_SINGLE_CONTEXT
Halted core task for invalidating EPT (A Single Context)
Definition HaltedCore.h:112
#define DEBUGGER_HALTED_CORE_TASK_SET_THREAD_INTERCEPTION
Halted core task for setting thread interception.
Definition HaltedCore.h:40
#define DEBUGGER_HALTED_CORE_TASK_ENABLE_SYSCALL_HOOK_EFER
Halted core task for enabling syscall hook using EFER SCE bit.
Definition HaltedCore.h:100
#define DEBUGGER_HALTED_CORE_TASK_ENABLE_MOV_TO_CONTROL_REGS_EXITING
Halted core task for enabling mov to CR exiting.
Definition HaltedCore.h:94
#define DEBUGGER_HALTED_CORE_TASK_UNSET_EXCEPTION_BITMAP
Halted core task for unsetting exception bitmap on VMCS.
Definition HaltedCore.h:118
#define DEBUGGER_HALTED_CORE_TASK_DISABLE_SYSCALL_HOOK_EFER
Halted core task for disabling syscall hook using EFER SCE bit.
Definition HaltedCore.h:173
#define DEBUGGER_HALTED_CORE_TASK_CHANGE_MSR_BITMAP_WRITE
Halted core task for changing MSR Bitmap Write.
Definition HaltedCore.h:52
#define DEBUGGER_HALTED_CORE_TASK_CHANGE_MSR_BITMAP_READ
Halted core task for changing MSR Bitmap Read.
Definition HaltedCore.h:46
#define DEBUGGER_HALTED_CORE_TASK_RESET_MSR_BITMAP_WRITE
Halted core task for resetting MSR Bitmap Write.
Definition HaltedCore.h:142
VOID ProcessEnableOrDisableThreadChangeMonitor(PROCESSOR_DEBUGGING_STATE *DbgState, BOOLEAN Enable, BOOLEAN IsSwitchByClockIntrrupt)
Enable or disable the process change monitoring detection on the running core.
Definition Process.c:220
VOID ThreadEnableOrDisableThreadChangeMonitor(PROCESSOR_DEBUGGING_STATE *DbgState, BOOLEAN Enable, BOOLEAN IsSwitchByClockIntrrupt)
Enable or disable the thread change monitoring detection on the running core.
Definition Thread.c:597
Used for sending direct VMCALLs on the VMX root-mode.
Definition DataTypes.h:294