logcat is full with W/SurfaceFlinger( 1402): ANDROID_WAIT_FOR_FB_WAKE failed (Bad file number)

Bug #906210 reported by Patrik Ryd
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
IglooCommunity
Fix Released
Wishlist
Unassigned
Linaro Android
Fix Released
Medium
Tixy (Jon Medhurst)

Bug Description

Description:
------------
If the snowball is not used for a while the logcat log will be filled with W/SurfaceFlinger( 1402): ANDROID_WAIT_FOR_FB_WAKE failed (Bad file number).

Reproducible:
------------
Yes, 2/2

Impact:
------
Device will probably not "sleep2 as intended.

Steps:
------
1. Boot to UI
2. start a logcat
3. wait

Hardware:
---------
Snowball V11

Software:
---------
https://android-build.linaro.org/builds/~linaro-android/staging-snowball-11.12-release/#build=4

Logs:
------
log attached

Revision history for this message
Patrik Ryd (patrik-ryd) wrote :
Revision history for this message
Mathieu Poirier (mathieu.poirier-deactivatedaccount) wrote :

I have fixed this problem a couple of weeks ago on the landing-snowball kernel - CONFIG_WAKELOCK needs to be flipped on.

Anmar Oueja (anmar)
no longer affects: linaro-landing-team-ste
Revision history for this message
Abhishek Paliwal (abhishek-paliwal) wrote :
Changed in linaro-android:
importance: Undecided → Medium
Anmar Oueja (anmar)
Changed in igloocommunity:
importance: Undecided → Wishlist
status: New → Confirmed
Revision history for this message
Abhishek Paliwal (abhishek-paliwal) wrote :
Revision history for this message
Bernhard Rosenkraenzer (berolinux) wrote :

The fix is to make sure CONFIG_WAKELOCK and CONFIG_EARLYSUSPEND and CONFIG_FB_EARLYSUSPEND are enabled in the kernel.

Revision history for this message
Mathieu Poirier (mathieu.poirier-deactivatedaccount) wrote :

This is a regression on our part - I fixed that before in prio kernels. I will address it.

Changed in linaro-android:
assignee: nobody → Mathieu Poirier (mathieu.poirier)
Changed in igloocommunity:
assignee: nobody → Mathieu Poirier (mathieu.poirier)
Revision history for this message
Tixy (Jon Medhurst) (tixy) wrote :

The latest code doesn't have CONFIG_FB_EARLYSUSPEND and acording to jstultz "earlysuspend is gone in the current android-3.3 tree".

This bug also occurs on vexpress if using code based on linaro-android-3.3 branch of git://git.linaro.org/people/jstultz/android.git , which I believe is what Snowball is using too.

Changed in linaro-landing-team-arm:
assignee: nobody → Tixy (Jon Medhurst) (tixy)
importance: Undecided → High
status: New → In Progress
Revision history for this message
Tixy (Jon Medhurst) (tixy) wrote :

Earlysuspend is gone from the Android 3.3 kernel but surfaceflinger still expects it to exist. Apparently this is know about upstream and fixed, but this hasn't been pushed out into 4.0.x

We don't know what the upstream fix is, but for now we should just remove the code in DisplayHardwareBase::DisplayEventThread::threadLoop() as it is just a very noisy noop.

Revision history for this message
Sunil Kamath (sunil-kamath) wrote :

We observed this issue in 12.03 release.
This we faced while testing compass sensor app and coudn't continue with testing the same.

GPS app is also giving such issue lately.

We are not able to perform GPS command line tests because of these traces.

Also after booting board, please try to take logcat traces you will find above traces. Which is little problematic for other issue debugging.

We also see that Surface flinger takes longer time to update buffer if we change to Landscape.
We can see different color patterns for 1-2 seconds on display.
It can also be because of the traces.

Trace observed is:

01-01 21:07:57.108 W/SurfaceFlinger( 1544): ANDROID_WAIT_FOR_FB_SLEEP failed (Bad file number)
01-01 21:07:57.108 W/SurfaceFlinger( 1544): ANDROID_WAIT_FOR_FB_SLEEP failed (Bad file number)
01-01 21:07:57.108 W/SurfaceFlinger( 1544): ANDROID_WAIT_FOR_FB_WAKE failed (Bad file number)
01-01 21:07:57.108 W/SurfaceFlinger( 1544): ANDROID_WAIT_FOR_FB_WAKE failed (Bad file number)

Revision history for this message
Tixy (Jon Medhurst) (tixy) wrote :

Noisey warnings are disabled by: http://review.android.git.linaro.org/#change,1745

Changed in linaro-android:
status: New → Fix Committed
assignee: Mathieu Poirier (mathieu.poirier) → Tixy (Jon Medhurst) (tixy)
Changed in linaro-landing-team-arm:
milestone: none → 2012.04
status: In Progress → Fix Committed
Changed in igloocommunity:
status: Confirmed → Fix Committed
Changed in igloocommunity:
milestone: none → 2012.04
Revision history for this message
Sunil Kamath (sunil-kamath) wrote :

This is really good news.
Its really good idea to end earlysuspend silently in case of kernel above 3.3.
Continuous traces were causing problem for issue debugging with logcat.
Lets ensure to include this for 12.04 release and test the same.
Also will check if other issues which has relation to this will have any improvement after release.

Changed in igloocommunity:
status: Fix Committed → Fix Released
Revision history for this message
Tixy (Jon Medhurst) (tixy) wrote :

Fix was to silence the warning was released in the 12.04 release, and the 12.07 release contained a better fix which was the kernel patch "PM: earlysuspend: Hack Compatability shim layer for earlysuspend sysfs files."
http://git.linaro.org/gitweb?p=people/jstultz/android.git;a=commit;h=58c5eeb7c93b5b7b47e98b7575b9862abc7e1414

Changed in linaro-android:
status: Fix Committed → Fix Released
Changed in linaro-landing-team-arm:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.