How to debug deadlocks in KEXT?
How to debug deadlocks in KEXT?
- Subject: How to debug deadlocks in KEXT?
- From: Anatol Pomozov <email@hidden>
- Date: Thu, 26 May 2011 12:54:33 -0700
Hi,
I am working on my own own KEXT that implements virtual file system
API. And I have a deadlock that I would like to understand and fix it.
I googled about kext debugging and basically the only document about
it is "Debugging a Kernel Extension with GDB"
http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptDebugger/debug_tutorial.html
I went through the steps and on this step
(gdb) kdp-reattach targetmachine
gdb fails with following message:
kdp_reply_wait: error from kdp_receive: receive timeout exceeded
kdp_transaction (remote_connect): transaction timed out
kdp_transaction (remote_connect): re-sending transaction
I guess this is because my kext (that runs on a target machine) is not
really in the debug mode. My kext was loaded fine, and the article
assumes that the kext has a kernel panic (that stops kernel for the
debugging).
So my question is: How to debug a kernel extension when it does not
produce a kernel panic. What I want is to setup breakpoints in some
functions and see variables/parameters. Are there any additional
advises about debugging deadlocks?
Another question that is related to the article: how to debug KEXT on
a single machine? Is it possible to debug deadlocks locally?
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden