yaml rule to stop suspending when using gps
Helge Hafting
helge.hafting at hist.no
Fri Feb 27 11:13:44 CET 2009
Klaus Kurzmann wrote:
>> org.shr.ophonekitd.Usage /org/shr/ophonekitd/Usage
>> org.shr.ophonekitd.Usage.RequestResource Display
> which requests the resource until you release it. That way you can wrap
> for example tangogps between a call to request display and a call to
> release display...
This is currently very fragile.
Because it didn't work at all, I upgraded SHR last night.
Today, the backlight stayed on, I could see my map all the way to work.
I then quit tangogps and expected the backlight to time out.
It did not! So no I have a phone with the backlight stuck on,
a very power hungry condition.
Hm - on closer inspection I see that ophonekitd has crashed.
Its resources are not released unconditionally when the process ends?
I didn't notice the crash at first, because the phone works so well
without. I can send and receive SMS and call out. (the new message
doesn't show, but the sound is there and I can read it in the messages
app.) The only thing missing is that there is no way to answer the
phone when it rings.
I restarted ophonekitd and tried to release the resource again.
ophonekitd ended without error message, and mdbus complained:
/org/shr/ophonekitd/Usage: ReleaseResource failed:
org.freedesktop.DBus.Error.NoReply
I hope this isn't too hard to fix. I plan on using scripts requesting
the CPU for all data-gathering apps (tangogps, cellhunter) so the phone
don't suspend while they are in use.
And I also plan on requesting the display for mokomaze and tangogps.
Because these should be on for a long time without touch input.
Actually, I have two tangogps icons - one that keeps the backlight on
for car navigation, and one that merely reqeust the cpu for data
gathering without external power.
I assume ophonekitd uses reference counting, so multiple apps can
request the display/cpu at the same time? And release one after another,
with suspend happening only after the last user has quit?
Is there a way to check what resources are held and by who? Sort of like
a "ls" command for resources? Is it possible to forcibly release the
display so the phone can work normally again - except for the obvious
reboot way?
Helge Hafting
More information about the community
mailing list