Posts

Post not yet marked as solved
0 Replies
915 Views
We have kernel extension - which works fine after setting the security level to allow 3rd party Kexts. However, we are unable to uninstall the Kext. Tried calling kumtil unload + removing the Kext from /Library/Extensions + reboot. Also tried clear-staging. But the only way to remove the kext from the aux. collection is to use the trigger-panic-medic from Recovery mode. Thanks. Devendra. ps: Note that if we install a newer version - the aux. kext collection gets rebuilt correctly.
Posted
by dparakh.
Last updated
.
Post not yet marked as solved
3 Replies
1.3k Views
Hi, I'm working on creating an xpc service, using the C APIs (gets launched from launchd via plist) and an application that wants to use this service. Generally it works fine, communication is proper and as expected. However, in case the service's plist has not been installed in /Library/LaunchDaemons, the client gets stuck! Neither the event handler (set with xpcconnectionseteventhandler) nor the reply block provided to xpcconnectionsendmessagewithreply get called. If I use xpcconnectionsendmessagewithreplysync() - it never returns! So how is a client to know that the service is not available in this case? My assumption was that in such a case the event handler would be called with XPCERRORCONNECTIONINVALID. Thanks in advance! Devendra.
Posted
by dparakh.
Last updated
.
Post not yet marked as solved
2 Replies
701 Views
I've noticed that breakpoints don't always work when debugging kernel code (kexts). Is there something special that needs to be done for them to work reliably? Also, sometimes the target hangs while debugging. The panic log says something like "mpkdpenter() timed-out during locked wait after NMI;" "expected 8 acks bug received 7 ..." boot-args does include watchdog=0 and pmuflags=1 This is on Big Sur. Thanks. Devendra.
Posted
by dparakh.
Last updated
.