diff --git a/CHANGELOG.md b/CHANGELOG.md index aca65dc2..286d0ae6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ New release of the HyperDbg Debugger. - Fix the terminating process issue of the '!syscall/!sysret' commands on 11 generation (Rocket Lake/Tiger Lake) and newer Intel processors ([link](https://github.com/HyperDbg/HyperDbg/issues/392)) - Reenable the support for the '.start' command in the Debugger mode ([link](https://docs.hyperdbg.org/commands/meta-commands/.start)) - The '!mode' event command is now compatible with different EPT hook commands (e.g., !epthook, !epthook2, !monitor, .start, and .restart) ([link](https://docs.hyperdbg.org/commands/extension-commands/mode)) +- The '!mode' command doesn't need allocating extra EPTPs ([link](https://docs.hyperdbg.org/commands/extension-commands/mode)) ## [0.14.1.0] - 2025-07-27 New release of the HyperDbg Debugger. diff --git a/hyperdbg/hyperkd/code/debugger/commands/DebuggerCommands.c b/hyperdbg/hyperkd/code/debugger/commands/DebuggerCommands.c index a5ae9e66..1421b4ee 100644 --- a/hyperdbg/hyperkd/code/debugger/commands/DebuggerCommands.c +++ b/hyperdbg/hyperkd/code/debugger/commands/DebuggerCommands.c @@ -1455,7 +1455,7 @@ DebuggerCommandPreactivateFunctionality(PDEBUGGER_PREACTIVATE_COMMAND Preactivat case DEBUGGER_PREACTIVATE_COMMAND_TYPE_MODE: // - // Request for allocating the mode mechanism + // Request for enabling the mode mechanism // ConfigureInitializeExecTrapOnAllProcessors(); diff --git a/hyperdbg/hyperkd/code/debugger/events/ApplyEvents.c b/hyperdbg/hyperkd/code/debugger/events/ApplyEvents.c index 3e8056ea..bba365a6 100644 --- a/hyperdbg/hyperkd/code/debugger/events/ApplyEvents.c +++ b/hyperdbg/hyperkd/code/debugger/events/ApplyEvents.c @@ -1205,15 +1205,6 @@ ApplyEventTrapModeChangeEvent(PDEBUGGER_EVENT Event, // or not and if it's activated then we can just add the current process // to the watchlist, otherwise the user needs to preactivate this event // - - // - // Technically, it's possible to initiate this mechanism at this point - // but it involves preallocating huge buffers so we prefer not to allocate - // these amount of buffers by default in HyperDbg as the users might not - // really use this mechanism and it would be a waste of system resources - // so, if the user needs to use this mechanism, it can use the 'preactivate' - // command to first activate this mechanism and then use it - // if (VmFuncQueryModeExecTrap()) { // diff --git a/hyperdbg/libhyperdbg/code/debugger/core/debugger.cpp b/hyperdbg/libhyperdbg/code/debugger/core/debugger.cpp index 41069c53..379c705f 100644 --- a/hyperdbg/libhyperdbg/code/debugger/core/debugger.cpp +++ b/hyperdbg/libhyperdbg/code/debugger/core/debugger.cpp @@ -496,7 +496,7 @@ ShowErrorMessage(UINT32 Error) break; case DEBUGGER_ERROR_THE_MODE_EXEC_TRAP_IS_NOT_INITIALIZED: - ShowMessages("err, the '!mode' event command cannot be directly initialized in the Debugger Mode. " + ShowMessages("err, for performance reasons, the '!mode' event command cannot be directly initialized in the Debugger Mode. " "You can use the 'preactivate mode' command to preactivate this mechanism after that, " "you can use the '!mode' event (%x)\n", Error);