Closed Bug 904544 Opened 8 years ago Closed 8 years ago

hold wakelock to make sure input devices event can be handle before suspend


(Core Graveyard :: Widget: Gonk, defect)

Gonk (Firefox OS)
Not set


(blocking-b2g:hd+, firefox26 unaffected, firefox27 unaffected, b2g18 wontfix, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 wontfix, b2g-v1.1hd fixed, b2g-v1.2 unaffected)

blocking-b2g hd+
Tracking Status
firefox26 --- unaffected
firefox27 --- unaffected
b2g18 --- wontfix
b2g18-v1.0.0 --- wontfix
b2g18-v1.0.1 --- wontfix
b2g-v1.1hd --- fixed
b2g-v1.2 --- unaffected


(Reporter: viralwang, Assigned: viralwang)




(1 file, 1 obsolete file)

There's one case that we may not handle the input event in time:

when we keep pressing power key continually, we can not make sure what status the device is.
When device is in suspend process and power key event comes after "Freezing user space processes", InputReader will not have chance to handle the power key immediately.
The power key can only process when device exit suspend, it could be long time after power key actually pressed.

The solution here is to sync the latest EventHub.cpp to add wakelock when event reported, it will make sure the InputReader can get event before suspend.
Attachment #789510 - Flags: review?(mwu)
See Also: → 898707
Does bug 908797 do what you need? There's a EVIOCSSUSPENDBLOCK in there. If so, please dup to that bug.
Component: General → Widget: Gonk
Product: Boot2Gecko → Core
Though, if we need this for helix, I can review this as a 1.1hd only patch, since bug 908797 is too much to backport for helix.
blocking-b2g: --- → hd?
Michael, can you help to review this patch? We'll likely need it for helix.

Do you feel it'll be required for leo as well or can we do without this on leo? 
My understanding was that it's not a device specific bug.
Flags: needinfo?(mwu)
I'll review it as a 1.1hd only patch. This is a subset of the work being done for bug 908797.

I don't know if leo will need it.
Flags: needinfo?(mwu)
Comment on attachment 789510 [details] [diff] [review]
add wakelock in EventHub.cpp to make sure the input events can process before suspend

r=me *only* for 1.1hd. Do not land on master/1.2.
Attachment #789510 - Flags: review?(mwu) → review+
modify the comment of patch for landing, hd only.
Attachment #789510 - Attachment is obsolete: true
Please land on hd only since master will use bug 908797 for tracking.
Whiteboard: [checkin-needed]
Just use the bug keyword :)
Whiteboard: [checkin-needed]
And I can't read, sorry. Note that this can't land on v1.1hd until it has hd+ blocking status anyway, so please hold off on requesting checkin until then.

Backed out.
hd+ for device specific bug/patch.
blocking-b2g: hd? → hd+
Keywords: checkin-needed
Target Milestone: --- → mozilla18
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.