| 
			     | 
			
| (53 intermediate revisions by 2 users not shown) | 
| Line 1: | 
Line 1: | 
| − | '''This is very much WIP'''  | + | '''This is WIP'''  | 
|   |  |   |  | 
| − | == Summary ==  | + | == Status ==  | 
| − | Currently, launching any OpenGL app (tested with flickr-qml, qmlcalc and duicontrolpanel) from within lipstick kills Xorg while applauncherd is boosting it for Qt+GLES.
  | + |  | 
|   |  |   |  | 
| − | == Progress ==  | + | {| border="1" cellpadding="1"  | 
|   | + | |-  | 
|   | + | ! Device Profile !! Boots !! Display !! Touchscreen !! Wireless !! Mobile Data !! BT !!H/W Accel. GFX !! Sensors !! GPS !! Audio  | 
|   | + | |-  | 
|   | + | ! Pandaboard  | 
|   | + | | style="background-color:green" | Yes  | 
|   | + | | style="background-color:green" | Yes, HDMI->DVI oob  | 
|   | + | | style="background-color:grey" | testers welcome (check [http://pandaboard.org/content/pandaboard-lvds-lcd-touchscreen this] for options)  | 
|   | + | | style="background-color:red" | crash in Settings->Connections->Wifi  | 
|   | + | | style="background-color:grey" | testers welcome (Huawei Exxx USB UMTS, like E220, are known to work well with Linux dev boards)  | 
|   | + | | style="background-color:red" | [https://bugs.nemomobile.org/show_bug.cgi?id=174 NEMO#174]  | 
|   | + | | style="background-color:green" | Yes  | 
|   | + | | style="background-color:lightgreen"| evtest-capture lists accelerometer. That's all for now :)  | 
|   | + | | style="background-color:grey"   | any USB GPS will do. testers welcome  | 
|   | + | | style="background-color:grey" | testers welcome  | 
|   |  |   |  | 
| − | * 10/1/2013 (sledge) Tried upgrading kernel 3.4.0 to 3.4.23 - same effect, slightly different output (more clues on applauncherd booster failure) - see below
  | + | |-  | 
| − | * 10/1/2013 (sledge) Any attempts to put any other version of pvr-omap4 result in no graphics, "drmopen failed" - because any other pvr-omap4 does not have sgx omapdrm_pvr.ko getting built
  | + | ! Pandaboard ES  | 
| − | * 10/1/2013 (sledge) Downgrading Xorg to 16bpp got rid of "Unsupported pixel format" errors (cleaned up below), but main crash still persist
  | + | | style="background-color:green" | Yes  | 
| − | * 10/1/2013 (sledge) "strace -p `pgrep Xorg`" slows down Xorg performance and crash does not happen...
  | + | | style="background-color:green" | Yes, HDMI->DVI oob  | 
| − | * 10/1/2013 (sledge) segfault in mcompositor happens at XFilterEvent:91:LockDisplay(ev->xany.display); -- this is just the symptom not the cause (as the Xorg display's dead already at that point)
  | + | | style="background-color:grey" | testers welcome (check [http://pandaboard.org/content/pandaboard-lvds-lcd-touchscreen this] for options)  | 
| − | * 11/1/2013 (sledge) Xorg dies because of thousands of loops of:
  | + | | style="background-color:red" | crash in Settings->Connections->Wifi [hangs UI]  | 
| − |  (gdb) c
  | + | | style="background-color:grey" | testers welcome (Huawei Exxx USB UMTS, like E220, are known to work well with Linux dev boards)  | 
| − |  Continuing.
  | + | | style="background-color:red" | [https://bugs.nemomobile.org/show_bug.cgi?id=174 NEMO#174]  | 
| − |  (launch flickr-qml)
  | + | | style="background-color:green" | Yes  | 
| − |  [   71.588989] flickr-qml (220): /proc/220/oom_adj is deprecated, please use /proc/220/oom_score_adj instead.
  | + | | style="background-color:red"| Nothing relevant under evtest-capture. sensord log shows many errors  | 
| − |  
  | + | | style="background-color:grey"   | any USB GPS will do. testers welcome  | 
| − |  Program received signal SIGPIPE, Broken pipe.
  | + | | style="background-color:grey" | testers welcome  | 
| − |  0xb6bcf074 in writev () from /lib/libc.so.6
  | + | |}  | 
| − | (gdb) bt
  | + |  | 
| − |  #0  0xb6bcf074 in writev () from /lib/libc.so.6
  | + |  | 
| − |  #1  0x0018daf4 in ?? ()
  | + |  | 
| − |  #2  0x00186eb8 in ?? ()
  | + |  | 
| − |  #3  0x001873dc in WriteToClient ()
  | + |  | 
| − |  #4  0x00040d74 in WriteEventsToClient ()
  | + |  | 
| − |  #5  0x0015882c in ?? ()
  | + |  | 
| − |  #6  0x00157564 in DRI2SwapComplete ()
  | + |  | 
| − |  #7  0xb6994ba0 in OMAPDRI2SwapDispatch (pDraw=0x3399b0, cmd=0x310ca0)
  | + |  | 
| − |      at omap_dri2.c:479
  | + |  | 
| − |  #8  0xb69948b4 in OMAPDRI2SwapComplete (cmd=0x310ca0) at omap_dri2.c:515
  | + |  | 
| − |  #9  0xb6994bb4 in OMAPDRI2SwapDispatch (pDraw=0x3399b0, cmd=0x310ca0)
  | + |  | 
| − |      at omap_dri2.c:486
  | + |  | 
| − |  #10 0xb69948b4 in OMAPDRI2SwapComplete (cmd=0x310ca0) at omap_dri2.c:515
  | + |  | 
| − |  (last 2 calls repeat 'forever')
  | + |  | 
| − | * 11/1/2013 (sledge) TODO: investigate whether xorg driver needs to be recompiled against kernel and omap_pvr.so stuff
  | + |  | 
|   |  |   |  | 
| − | == Description ==  | + | == Install ==  | 
|   |  |   |  | 
| − | Full Nemo install (heavy! voicecall, dsme, mce, contactsd, trackerd, ...) in most boots ends up in out of memory errors: Xorg rapidly increasing in memory usage, reaching 800MB in ~5seconds, and everything dies.
  | + | * Download [[Community_Workspace/Omap4/Pandaboard/nemo-armv7hl-pandaboard-rnd.ks|nemo-armv7hl-pandaboard-rnd.ks]]  | 
|   | + | * build image with:  | 
|   | + |  mic cr raw nemo-armv7hl-pandaboard-rnd.ks --outdir=tmp/ \  | 
|   | + |    --tokenmap=MER_RELEASE:latest,NEMO_RELEASE:latest,FLAVOUR:devel --arch=armv7hl --pkgmgr=zypp  | 
|   | + | * SD card flashing:  | 
|   | + |  dd if=tmp/nemo-armv7hl-pandaboard-rnd-mmcblk0p.raw of=/dev/sdX bs=4096  | 
|   |  |   |  | 
| − | To reproduce just the isolated problem (100% reproducible):
  | + | === minimal-lipstick ===  | 
| − | * mic create this: [[Community Workspace/Omap4/Pandaboard/mer-minimum-lipstick-pandaboard-armv7hl.ks|mer-minimum-lipstick-pandaboard-armv7hl.ks]]  | + | Also good to have a fallback system: the minimal Nemo installation:  | 
| − | ** It will load minimum lipstick, which works fine and accelerated and smooth! (Don't be offput by black/transparent lockscreen).  | + | * disabled meegotouch-systemui  | 
| − | ** It's kernel: linux-ti-omap4-3.4.0; pvr-omap4-1.9.0.5.1.1  | + | * stripped out many packages & apps  | 
| − | * Try to launch flickr-qml from lipstick, and this will happen:
  | + | * no contactsd etc  | 
|   | + | Only to be used for performance/stability tests, because otherwise it breaks the integrity of Nemo Mobile.  | 
|   |  |   |  | 
| − | dmesg:
  | + |   mic create [[Community Workspace/Omap4/Pandaboard/mer-minimal-lipstick-pandaboard-armv7hl.ks|mer-minimal-lipstick-pandaboard-armv7hl.ks]]  | 
| − |   [   46.489166] flickr-qml (248): /proc/248/oom_adj is deprecated, please use /proc/248/oom_score_adj instead.  | + |  | 
| − | journalctl:
  | + |  | 
| − |  Jan 09 13:20:48 localhost lipstick[200]: PVR:(Warning): PVRSRVOpenDCDevice: Warning - 138 returned [80, /bridged_pvr_dc_glue.c]
  | + |  | 
| − |  ...
  | + |  | 
| − |  Jan 09 13:20:48 localhost lipstick[200]: X Error: BadDamage (invalid Damage parameter) 149
  | + |  | 
| − |  Jan 09 13:20:48 localhost lipstick[200]: Extension:    141 (Uknown extension)
  | + |  | 
| − |  Jan 09 13:20:48 localhost lipstick[200]: Minor opcode: 2 (Unknown request)
  | + |  | 
| − |  Jan 09 13:20:48 localhost lipstick[200]: Resource id:  0x24
  | + |  | 
| − |  ...
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: X Error: BadWindow (invalid Window parameter) 3
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Major opcode: 20 (X_GetProperty)
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Resource id:  0x0
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: MDeclarativeStatusBar "The name com.meego.core.MStatusBar was not provided by any .service files"
  | + |  | 
| − |  Jan 09 13:20:49 localhost mcompositor[199]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: WindowInfo::WindowInfo(Qt::HANDLE) Created WindowInfo for  6291514
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: hijackWindow() context created for QDeclarativeView(0x6c520) 1
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Found SGX/MBX driver, enabling FullClearOnEveryFrame
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Found v1.4 driver, enabling brokenTexSubImage
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Found non-Nokia v1.4 driver, enabling brokenFBOReadBack
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: QGLWindowSurface: Using plain widget as window surface QGLWindowSurface(0x3fd048)
  | + |  | 
| − |  Jan 09 13:20:49 localhost lipstick[200]: Found EGL_KHR_image_pixmap & GL_OES_EGL_image extensions (preferred method)!
  | + |  | 
| − |  Jan 09 13:20:50 localhost lipstick[200]: X Error: BadPixmap (invalid Pixmap parameter) 4
  | + |  | 
| − |  Jan 09 13:20:50 localhost lipstick[200]: Major opcode: 54 (X_FreePixmap)
  | + |  | 
| − |  Jan 09 13:20:50 localhost lipstick[200]: Resource id:  0x400014
  | + |  | 
| − |  !! Xorg dies here, nothing in Xorg.log !!
  | + |  | 
| − |  Jan 09 13:20:52 localhost applauncherd[203]: mdeclarativecache_pre_initialized_qapplication-266: cannot connect to X server :0
  | + |  | 
|   |  |   |  | 
| − | Here's how duicontrolpanel dies (if installed, and launched same way as flickr-qml), journalctl:
  | + | == History ==  | 
| − |  Jan 09 13:11:06 localhost lipstick[204]: PVR:(Warning): PVRSRVOpenDCDevice: Warning - 138 returned [80, /bridged_pvr_dc_glue.c]
  | + |  | 
| − |  Jan 09 13:11:07 localhost lipstick[204]: WindowInfo::WindowInfo(Qt::HANDLE) Created WindowInfo for  14680066
  | + |  | 
| − |  Jan 09 13:11:07 localhost lipstick[204]: PVR:(Error): SGXQueueTransfer: all paths failed [9694, /sgxtransfer_queue.c]
  | + |  | 
| − |  Jan 09 13:11:07 localhost lipstick[204]: PVR:(Warning): HWTQTextureUpload: Failed to load texture image (error=3). Falling back to SW [531, /texdata.c]
  | + |  | 
| − |  (last two lines repeated another 5 times)
  | + |  | 
|   |  |   |  | 
| − | dmesg:
  | + | [[Workspace/Omap4/Pandaboard/History|...of how it all went]]  | 
| − |  [   46.489166] flickr-qml (248): /proc/248/oom_adj is deprecated, please use /proc/248/oom_score_adj instead.
  | + |  | 
| − |  (`top` did not show any memory leaks ^)
  | + |  | 
| − |  Xorg.log clean
  | + |  | 
|   |  |   |  | 
| − | <hr>
  | + | == Screenshots ==  | 
|   |  |   |  | 
| − | With linux-ti-omap4-3.4.23 (same pvr-omap4-1.9.0.5.1.1), flickr-qml dies and kills Xorg this way (clues on applauncherd booster bit):
  | + | [[File:pandaboard-lipstick-settings-2013-01-16.png|400px]]  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  lipstick[214]: hijackWindow() context created for QDeclarativeView(0x46cf8) 1
  | + |  | 
| − |  lipstick[214]: WindowInfo::WindowInfo(Qt::HANDLE) Created WindowInfo for  10485818
  | + |  | 
| − |  lipstick[214]: Found SGX/MBX driver, enabling FullClearOnEveryFrame
  | + |  | 
| − |  lipstick[214]: Found v1.4 driver, enabling brokenTexSubImage
  | + |  | 
| − |  lipstick[214]: Found non-Nokia v1.4 driver, enabling brokenFBOReadBack
  | + |  | 
| − |  lipstick[214]: QGLWindowSurface: Using plain widget as window surface QGLWindowSurface(0x567db0)
  | + |  | 
| − |  lipstick[214]: X Error: BadWindow (invalid Window parameter) 3
  | + |  | 
| − |  lipstick[214]: Major opcode: 20 (X_GetProperty)
  | + |  | 
| − |  lipstick[214]: Resource id:  0x0
  | + |  | 
| − |  applauncherd[218]: Using the meego graphics system
  | + |  | 
| − |  applauncherd[218]: Adding Master Pointer: Virtual core pointer ( 2 )
  | + |  | 
| − |  applauncherd[218]: Skipping non-Touch device: Virtual core XTEST pointer ( 4 )
  | + |  | 
| − |  applauncherd[218]: Skipping non-Touch device: Microsoft Microsoft Basic Optical Mouse ( 6 )
  | + |  | 
| − |  lipstick[214]: Found EGL_KHR_image_pixmap & GL_OES_EGL_image extensions (preferred method)!
  | + |  | 
| − |  '''lipstick[214]: virtual WindowInfo::~WindowInfo() Destroyed windwo for  10485818'''
  | + |  | 
| − |  '''applauncherd[218]: Boosted process (pid=228) was terminated due to signal 11'''
  | + |  | 
| − |  invoker[263]: error: Can't send signal 11 to application [228]: No such process
  | + |  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  mcompositor[215]: PVR:(Error): ReleaseImageFromTexture: Unsupported pixel format [207, /eglimage.c]
  | + |  | 
| − |  systemd[180]: mcompositor.service: main process exited, code=killed, status=11
  | + |  | 
Only to be used for performance/stability tests, because otherwise it breaks the integrity of Nemo Mobile.