Skip to content

Commit

Permalink
change some printing msgs
Browse files Browse the repository at this point in the history
Signed-off-by: cocafe <cocafehj@gmail.com>
  • Loading branch information
cocafe committed Oct 27, 2020
1 parent bf82215 commit 4e7f1fa
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions msr-watchdog/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,26 +37,26 @@ int msr_gen_reg_deamon(msr_regs *regs)
DWORD eax;
DWORD edx;
DWORD_PTR thread_mask = 0;
msr_reg *reg = &regs->gen_regs[i];

if (!regs->gen_regs[i].watch)
if (!reg->watch)
continue;

thread_mask = 1ULL << regs->gen_regs[i].proc;
thread_mask = 1ULL << reg->proc;

if (!RdmsrTx(regs->gen_regs[i].reg, &eax, &edx, thread_mask)) {
if (!RdmsrTx(reg->reg, &eax, &edx, thread_mask)) {
printf_s("%s(): RdmsrTx() failure\n", __func__);
return -EIO;
}

printf_s("%s(): RdmsrTx(): CPU%2u reg: %#010x edx: %#010x eax: %#010x\n",
__func__, regs->gen_regs[i].proc, regs->gen_regs[i].reg, edx, eax);
__func__, reg->proc, reg->reg, edx, eax);

if (eax != regs->gen_regs[i].eax || edx != regs->gen_regs[i].edx) {
if (eax != reg->eax || edx != reg->edx) {
printf_s("%s(): Register value differs, invoke WrmsrTx()\n", __func__);
if (!WrmsrTx(regs->gen_regs[i].reg,
regs->gen_regs[i].eax,
regs->gen_regs[i].edx,
thread_mask)) {
printf_s("%s(): WrmsrTx(): CPU%2u reg: 0x%08x edx: 0x%08x eax: 0x%08x\n",
__func__, reg->proc, reg->reg, reg->edx, reg->eax);
if (!WrmsrTx(reg->reg, reg->eax, reg->edx, thread_mask)) {
int ret_msgbox = MessageBox(NULL, L"WinRing0 driver failed to write register, continue?",
lpProgramName, MB_ICONWARNING | MB_YESNO);
if (ret_msgbox == IDNO)
Expand Down Expand Up @@ -92,11 +92,13 @@ int msr_mailbox_deamon(msr_regs *regs)
return -EIO;
}

printf_s("%s(): RdmsrTx(): cpu: %d reg: %#010x edx: %#010x eax: %#010x\n",
printf_s("%s(): RdmsrTx(): CPU%2u reg: %#010x edx: %#010x eax: %#010x\n",
__func__, mb->cpu, mb->reg, edx, eax);

if (mb->eax_ret != eax || mb->edx_ret != edx) {
printf_s("%s(): Register value differs, call WrmsrTx()\n", __func__);
printf_s("%s(): WrmsrTx(): CPU%2u reg: 0x%08x edx: 0x%08x eax: 0x%08x\n",
__func__, mb->cpu, mb->reg, mb->edx_set, mb->eax_set);
if (!WrmsrTx(mb->reg, mb->eax_set, mb->edx_set, thread_mask)) {
printf_s("%s(): WrmsrTx() failure\n", __func__);

Expand Down

0 comments on commit 4e7f1fa

Please sign in to comment.