0

I'm trying to (kernel-)debug my Mac 10.14.5 VM running on VMWare Fusion (v11.0.2) on my Mac 10.13.6 host. I'm following documentation/blogs in [1], [2].

I am trying to generate an NMI (non-maskable interrupt) in my VM, so that it triggers the VM to wait for the remote debugger connection. But looks like I cannot trigger the NMI. Pressing the given key combination (Command-Option-Control-Shift-Escape) isn't working. Neither can I seem to simulate it via the below AppleScript:

-- 53 is escape
tell application "System Events" to key code 53 using {command down, option down, control down, shift down}

What has helped make a successful connection with the remote debugger is to manually generate a panic like so: (from [3])

sudo dtrace -w -n "BEGIN{ panic();}"

But this is not good enough for me -- the panic'd session is no longer recoverable, and my goal is to debug/understand regular functioning of the VM.

So my questions, finally:

  • How do I generate the NMI on my VM?
  • Alternatively, is there any other way to trigger a successful connection with the remote debugger such that I can debug regular functioning of the VM?

Thank you!

References:

  1. http://ddeville.me/2015/08/kernel-debugging-with-lldb-and-vmware-fusion
  2. https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/build/build.html#//apple_ref/doc/uid/TP30000905-CH221-BABDGEGF
  3. https://www.wikihow.com/Force-a-Kernel-Panic-on-a-Mac

You must log in to answer this question.

Browse other questions tagged .