View Full Version : Disabling the "emergency overtemp" kernel extension
Dreamingness
02-28-2006, 06:08 PM
I hope this is the right place to post this, if not please let me know what would be more appropriate.
My 17" powerbook G4 is getting that infamous "power management detected emergency overtemp signal. Going to sleep." which I have weakly concluded is a malfunctioning temp sensor in the trackpad.
I need to back this laptop up to my network but I can't...the machine goes to sleep within 15-30 minutes of me trying.
So this brings me to my question: Which kernel extension do I have to prevent from loading in order to temporarily stop this signal from putting my laptop to sleep?
A related question is "where is the documentation for each kernel extension"? I'm not used to not having source code. ;)
Thanks in advance for any assistance provided.
hayne
02-28-2006, 09:25 PM
I don't know which kext handles that.
There is in general no documentation on the kernel extensions.
Some of the kernel extensions have their source available:
http://www.opensource.apple.com/darwinsource/10.4.5.ppc/
You might want to try using one of the special cooling stands made for powerbooks - or just an icepack wrapped in something waterproof.
morphis
02-28-2006, 11:13 PM
Why not start the powerbook in firewire target mode and back it up using another machine?
Dreamingness
03-01-2006, 04:20 AM
I don't know which kext handles that.
There is in general no documentation on the kernel extensions.
Argh! Thanks for the link, I guess I can just unload seemingly relevant ones one at a time. Painful.
You might want to try using one of the special cooling stands made for powerbooks - or just an icepack wrapped in something waterproof.
It's not really a temperature problem, since readings like -163 F are physically impossible without special equipment. I suppose I could use a bic lighter to generate the 253 F reading. ;)
Why not start the powerbook in firewire target mode and back it up using another machine?
Hmm. You mean I can make my powerbook's disk a simple firewire target? I did not know that. Two problems I can see with this are:
1) How do I know the sensor wont cause a panic in that mode?
2) I would need something (e.g. another mac, which I don't have) that reads HFS+ properly. I have plenty of FreeBSD machines here, but I don't think it can yet read HFS+. (Please correct me if I am wrong here.)
Thanks for the replies.
hayne
03-01-2006, 07:38 AM
Hmm. You mean I can make my powerbook's disk a simple firewire target?
Yes - see: http://docs.info.apple.com/article.html?artnum=58583
How do I know the sensor wont cause a panic in that mode?
It seems unlikely that that would happen as I don't think the regular OS is running at all - but anyway you can just try it.
I would need something (e.g. another mac, which I don't have) that reads HFS+ properly. I have plenty of FreeBSD machines here, but I don't think it can yet read HFS+.
I think you will need another Mac. Maybe a friend's or a computer store's?
morphis
03-01-2006, 08:12 AM
There is a HFS kernel module for some flavours of linux I have seen but to date I have not tried it out.
And there is MacDrive for windows.
BTW if you have not already found out how to get into target mode, Hold down the "T" key right after turn on your powerbook once successful you will see the firewire logo on the screen.
target mode is firmware level basically it turns the IO controller into firewire bridge.
Also you could also boot into single user mode "Command + S" mount the internal drive "mount -uw /" and then mount another drive or network mount and backup.
If you like terminal or you have someone who is atleast savy with unix/linux that would be your best option.
But if your still looking to disable the kernel extension, My best guess would be "AppleCPUThermo.kext" or "AppleHWSensor.kext" or "AppleThermal.kext"
There are no docs for any of these kernel extensions, as I guess apple does not want people or developers tinkering with them.
But doing this kind of stuff I think is the worst option as it could cause more problems.
Dreamingness
03-02-2006, 05:30 AM
Also you could also boot into single user mode "Command + S" mount the internal drive "mount -uw /" and then mount another drive or network mount and backup.
If you like terminal or you have someone who is atleast savy with unix/linux that would be your best option.
Very sound UNIX advice. This would be the Best Way(tm) normally, which I can verify as I am very savvy with UNIX (especially FreeBSD). However, I have no way of knowing whether single user would load hardware kernel extensions in MacOS Unix. :) In regular FreeBSD you can disable things that aren't working before the kernel loads.
For the record (for others in my situation) the two extensions I disabled were ApplePMU.kext and AppleUSBTrackpad.kext. I did this command line style by:
cd /System/Library/Extensions
mkdir /exttmp
mv AppleUSBTopCase.kext/Contents/Plugins/AppleUSBTrackpad.kext /exttmp
mv ApplePMU.kext /exttmp
touch /System/Library/Extensions
reboot
None of this is for the timid. DO NOT do this unless you are a) UNIX savvy and b) are unafraid to mess with your operating system.
But doing this kind of stuff I think is the worst option as it could cause more problems.
Perhaps, but now I have a backup. :)
hayne
03-02-2006, 07:45 AM
I might be better to unload the kext's by using the utility 'kextunload' (see 'man kextunload')
You can see which kext's are currently loaded (and their dependencies) with 'kextstat'
swisswuff
07-25-2006, 06:17 AM
Check these links for a better fix that removes just the kext-file related to the Trackpad Sensor:
Apple Discussion Forum (http://discussions.apple.com/thread.jspa?messageID=2783857#2783857)
http://people.aero.und.edu/~spoonk/powerbook.html
vBulletin® v3.8.4, Copyright ©2000-2010, Jelsoft Enterprises Ltd.