/srv/irclogs.ubuntu.com/2014/08/05/#ubuntu-mir.txt

RAOFSo, now that I'm building clang, libstdc++6, *and* mir at the same time it's probably time to turn on the coffee machine.00:26
=== chihchun_afk is now known as chihchun
RAOFHm. We're not actually well set up for having platform plugins out of tree, are we :)03:45
RAOFThe MirPlatformType enum is particularly egregious.03:46
racarrYeah I was thinking about that today...restubbing03:47
racarrthe platform03:47
racarr(for qtmir acceptance stuff...whether or not that should be done that way is another thing)03:48
RAOFI think I'm about to introduce an honest-to-god stub platform.03:49
RAOFBut it's going to lie about being gbm.03:49
RAOFAnd, obviously, if we got an nvidia or AMD or Qualcomm or whatever platform there's that fun.03:49
racarrhonest to god stub platform?03:51
racarrin what senbse03:51
RAOFIn that it's got a client-platform-stub.so and a server-platform-stub.so that the regular platform loading machinery can deal with.03:52
* duflu wonders what happened to the header-only driver design. That was nice03:52
RAOFWe never had a header-only driver design, because that can't work?03:53
RAOFI mean, if the driver is only a header, then it needs to be built in at library-build time?03:53
dufluRAOF: I mean the only dependency pulled into driver code is a header. The driver provides the object code to fulfil the contract of the header03:54
RAOFWe still have that.03:54
RAOFI think. I've obviously not tried recently :)03:54
RAOFCertainly for the client platform that's true.03:54
dufluRAOF: OK, that sounds nice. It would mean linking to libmirplatform is completely optional and unnecessary if you can provide your own logic03:55
dufluHence, no one can question the licensing03:55
* duflu wants to write drivers for Mir, just to get a feel for what it's like03:56
RAOFYou can easily question the licensing - the driver is being loaded into a GPLv3 process and will be using symbols from that process.03:57
dufluRAOF: Not if it's *not* using symbols from that process. That's the point of a careful header design03:58
RAOFYeah, but that's basically impossible for C++.03:58
dufluRAOF: Not sure if C++ makes it impossible, but C would be nice03:58
RAOFImplementing the class requires symbols from the definition.03:58
RAOFHeh, yeah. That does make it easier.03:59
dufluRAOF: You're still thinking backwards. Drivers should (and can theoretically) use zero symbols from us03:59
dufluOf course, I want to write a driver to get a feel for how hard it is right now03:59
RAOFI'm pretty sure they can't use no symbols from us.04:00
RAOFCertainly the client platform library cannot use no symbols from us, because it needs the symbols for the ClientContext* we pass it.04:01
seb128hey there04:02
seb128what's the difference between XMir and rootless X support in Mir?04:02
dufluRAOF: I don't think declaring it impossible is helpful. Although I'll drop the topic for now because we're some way from that kind of license-independent architecture. Keep it for future-Mir04:02
RAOFseb128: Nothing.04:03
seb128looking at slides which have the first one for next cycle and the other one for the cycle after, are both solutions to allow running xapps/libreoffice/...?04:03
RAOFseb128: Rootless X support (in XMir) is for seamlessly running X11 apps in a Unity8 session.04:03
dufluseb128: XMir has a root window by default (always draws the whole screen), and so is not "rootless". Rootless lets you run X apps in someone else's shell04:03
seb128so XMir = can run e.g libreoffice in fullscreen04:04
seb128rootless = can run libreoffice as a window under Mir/unity8?04:04
RAOFseb128: Yes, ish.04:04
seb128thanks04:04
dufluseb128: The app can be a window either way. Rootless just means you don't have the X desktop in the way04:05
RAOFseb128: It's a little more like XMir (non-rootless) = X-under-a-system-compositor04:05
dufluBut who cares about X when the toolkits are native to Mir? (!) :)04:05
RAOFduflu: And rooted means that you need to be running a Window manager in there :)04:05
dufluUgh, yeah that sucks resources. Then again X will suck resources either way04:06
seb128lol04:06
seb128thanks guys04:06
seb128just reviewing slides04:06
seb128have to go back in the part of the office where internet keeps dropping now, I might drop offline04:06
dufluThey have a Faraday cage?04:08
=== chihchun is now known as chihchun_afk
=== chihchun_afk is now known as chihchun
RAOFAnd there we go. A proper stub platform passes the tests. Yay!05:00
RAOFWell, most of them.05:05
RAOFThose which aren't explicitly testing the android client platform apparently.05:05
dufluHah. The universe is determined to drive me insane today. Now the smoke alarm is beeping at me in case it wasn't working yet05:56
=== seb128_ is now known as seb128
=== tvoss is now known as tvoss|test
=== tvoss|test is now known as tvoss
RAOFAnd we (finally!) have a fully-passing test suite, bar the ABI checks.08:02
RAOFHUZZAH!08:02
dufluRAOF: W00t08:11
dufluRAOF: The scripts to help with the ABI checks should land soon08:12
alan_gcamako: is there a qtmir branch corresponding to Mir-0.6? (The corrections to the .pro files don't work with Mir-0.5 as its .pc files are broken)09:26
alan_gcamako: https://code.launchpad.net/~alan-griffiths/mir/revisit-package-config/+merge/229414/comments/55688109:42
* camako looks09:49
camakoalan_g, thanks for fixing! But the fixes should really go into the devel-mir-next branches (for both u-s-c and qtmir). At least one of the fixes (new_ipc_...) has already been fixed in that branch (so this would conflict). We have the devel-mir-next branches in the silo also, which makes it convenient for the release..09:57
camakohttp://bazaar.launchpad.net/~mir-team/qtmir/devel-mir-next/09:57
camakohttp://bazaar.launchpad.net/~mir-team/unity-system-compositor/devel-mir-next/09:58
alan_gcamako: OK. I'll redo the MPs09:58
camakoalan_g, thanks and sorry for the double work - I shoulda told you earlier...09:59
alan_gcamako: done10:08
camakoalan_g, great thanks10:08
camakoalan_g, have you tried building unity-mir?10:14
camakoand papi?10:15
alan_gcamako: on my list (I thought we'd s/platform-api/qtmir/10:15
alan_g)10:15
camakoalan_g, actually qtmir is supposed to replace unity-mir...10:16
alan_gSorry, thinko10:16
camakoalan_g, but unity-mir is in the silo as well for that new_ipc_.... fix10:17
camakoalan_g, please use the mir-next-devel branches for these as well10:18
camakohttp://bazaar.launchpad.net/~mir-team/platform-api/devel-mir-next/10:18
camakohttp://bazaar.launchpad.net/~mir-team/unity-mir/devel-mir-next/10:19
camakoalan_g, argh... have you seen the conflict on revisit-package-config?10:24
alan_gcamako: Another one?10:25
camakoalan_g, I think there was only one.. so you've seen it I guess..10:26
alan_gcamako: -c 181810:27
camakoalan_g, yep I just saw that... Ok good..10:27
=== chihchun is now known as chihchun_afk
alan_gcamako: unity-mir builds against lp:~alan-griffiths/mir/revisit-package-config10:32
camakoalan_g, is that the devel-mir-next branch?10:33
alan_gak10:33
camakogreat10:33
alan_gcamako: and platform-api/devel-mir-next/10:35
camakoalan_g, great10:35
anpokhm i am to slow10:52
alf_anpok: too slow for what?10:53
dandraderalf_, hey, if a mir client dies but the compositor sill has hold of one of its surfaces, will the whole ring buffer be kept alive or just that specific surface that the compositor has?11:04
dufludandrader: The queue is removed immediately. Any buffer held by the compositor stays (refcounted) and is freed when the compositor is finished with it11:07
alf_dandrader: duflu: hmm, on the contrary, I see that the queue stays alive until the compositor buffer is returned to it, but of course the mir surface itself is gone11:10
alf_dandrader: how does this affect you?11:10
dandraderalf_, I would just like to know. either behavior works for me. I was just wondering about the memory consumption during such a situation11:15
dandraderie, whole ring buffer in memory vs. just the single surface that comp has.11:16
dandrader'cause I'm changing unity8 to take a screenshot with half-resolution and release the surface in such situation. so I was wondering how much of an improvement to expect in memory consumption11:18
alf_dandrader: OK, so as I said, my understanding is that the queue stays alive. The idea was that the compositor only holds buffers for a small amount of time (just the time it needs to render with). If a surface is released while it is being rendered, the rendering will finish (and all buffers destroyed then). Do you need to keep surface buffers for more than a frame?11:23
dandraderalf_, currently if an app gets killed after being suspended (due to out of memory situations) it will remain in the spread and so unity8 (ie qtcomp) release the surface only once either the app "card" is manually closed by the user or it gets restarted11:24
dandraderalf_, not saying it's the right thing to do. is just what's happening atm11:25
dandraderworking on fixing that currently11:25
alf_dandrader: understood11:25
alan_ggreyback: any opinion? https://code.launchpad.net/~alan-griffiths/mir/command-line-handling/+merge/229255/comments/55693011:51
greybacklooking11:52
greybackalan_g: not a major preference, I just voted to keep the argc/v pattern11:58
=== tvoss is now known as tvoss|test
=== tvoss|test is now known as tvoss
alan_ggreyback: thanks12:00
=== alan_g is now known as alan_g|lunch
groot_hello guys12:39
groot_kdub: I'm still unable to boot :(. Maybe I'm looking at the wrong problem. So I thought of checking this from your perspective.12:40
groot_I made a clean install and took logs. Can you check it? Maybe you'll discover something I didn't see.12:41
=== alan_g|lunch is now known as alan_g
groot_here are the logs. If you need any other logs, let me know.12:46
groot_logcat: http://paste.ubuntu.com/7960829/12:46
groot_kernel: http://paste.ubuntu.com/7960833/12:46
groot_lightdm: http://paste.ubuntu.com/7960835/12:46
=== sil2100_ is now known as sil2100
kdubgroot_, a clean install won't help, something needs changing in hybris or the mir code12:48
kdubgroot_, did you try those hybris tests?12:48
kdubalthough, i guess if the backup is working, the gles/egl stuff is probably okay12:48
kdubW/libc    ( 2117): pthread_create sched_setscheduler call failed: Operation not permitted12:49
kduba somewhat suspicious line12:49
kdubbut really, remember we determined that we weren't getting the function hooks out of hwc? thats still the main problem12:49
groot_kdub, sorry, net problem :|. You're telling something about libc warning?13:01
kdubgroot_, its slightly suspicious, but I'd guess not the root cause13:02
kdubbut really, remember we determined that we weren't getting the function hooks out of hwc? thats still likely the main problem13:02
=== pete-woods is now known as pete-woods|lunch
groot_kdub, but we checked those using if condition, and the function was returning 0 as result. So, isn't this clear the hwcomposer.so of suspicion?13:04
kdubwell, we aren't getting the function hooks in mir still13:05
alf_greyback: dandrader: with dash-as-app I noticed that I can't launch apps any more (but I can scroll). Is this a known issue?13:05
dandraderalf_, you should be able to launch apps13:06
dandraderalf_, you mean cannot launch from the dash but can scroll in the dash and switch scopes?13:06
groot_kdub, I tried to use surfaceflinger by removing .display-mir and 30-no-surface-flinger file from ubuntu image. Then I got "no suitable eglconfig found" warning. Is this related also to mir.13:06
dandraderalf_, can you launch from the launcher?13:07
alf_dandrader: right, but I can launch from the launcher13:07
kdubgroot_, if you did that, then mir should not have been running, so that would be something funny with surfaceflinger? (i think that code path has bitrotted a bit, not sure of the sf output path anymore)13:07
greybackkdub: unity8 does not support running under SF any more13:08
groot_kdub, yes, only sf was running then. I meant, does mir use eglconfig too? Then maybe mir also can't find this config.13:09
kdubgroot_, mir does have to select a config, but we havent seen that problem13:10
kdubalso, since the fallback works, it does find a usable config13:10
groot_kdub, the fallback graphics just shows the ubuntu logo. Nothing else. It just loops between logo and welcome screen, I can't use anything. Only power button works.13:11
alf_dandrader: greyback: let me retry with latest image to ensure it's not a problem with my setup13:11
kdubgroot_, oh, so that sounds like a separate problem... you have the screen up and working13:12
dandraderalf_, yeah, it really should be working13:12
kdubgroot_, ubuntu has 2 programs running... "USC" drives the framebuffer, and unity8 is a client of usc13:12
kdubgroot_, and the problem seems to be that unity8 isn't coming up13:12
kdubgroot_, try with the fresh install in backup mode, you might have broken abi between mir and unity8 in the mir experiments13:13
groot_kdub, yes, I was so happy when I saw the welcome screen :). Hmm, I checked in /home/phablet, but there's no unity8.log there.13:13
dandraderalf_, are you compiling the branches yourself (for dash-as-app)?13:14
kdubgroot_, /home/phablet/.cache/upstart/unity8.log ?13:14
groot_kdub, yes. There's not even .cache folder.13:15
groot_kdub, so try without the hwcomposer.so? I did that and it just loops like I said. But threre was unity8.log file. Also, in logcat there was error like "EGL_BAD_MATCH". Would you like to see ?13:17
alf_dandrader: no, installing from landing-007 ppa13:17
kdubgroot_, may as well13:18
groot_kdub, here's the log. Logcat: http://paste.ubuntu.com/7961110/13:24
groot_kernel: http://paste.ubuntu.com/7961118/13:24
groot_unity8 only shows this http://paste.ubuntu.com/7961119/13:24
alf_dandrader: is there a recommended way to install from the ppa or is: add-apt-repository, apt-get update, apt-get dist-upgrade ok?13:28
dandraderalf_, sounds right13:31
dandraderalf_, having problems?13:31
alf_dandrader: no, I just noticed I will install some other updates too (language packs) with dist-upgrade13:33
dandraderalf_, it shouldn't be a problem now that qtcomp has landed. there won't be conflicting packages or anything13:33
dandraderalf_, so those recommendations from the old qtcomp silo no longer apply13:34
kdubgroot_, so the unity8 isn't connecting to the system compositor, why... I don't know13:36
kdubbut we know the system compositor is up and the spinner app has connected to it13:36
groot_kdub, hmm it even shows introduction page sometimes (like swipe to right, left). But then again goes back to logo :(13:41
alf_dandrader: ok, thanks... so everything seems to be working with r172 + ppa, so probably false alarm13:44
groot_kdub, it seems at first boot there's only welcome screen. If I boot second time, it goes to intro screen and more logs are available in unity8.log.13:45
dandraderalf_, phew...13:45
groot_Here it is http://paste.ubuntu.com/7961246/13:45
alf_dandrader: perhaps it was a temporarily glitch in r171, who knows... I'll keep my eyes open for it 8)13:46
kdubgroot_, not sure what could be the root cause, might make sense to file a bug13:47
dandraderalf_, fwiw there's a know bug (not sure if reported) that when you go back to the dash it's still showing the previous frame, so when you tap on it immediately after getting back to it you might hit an icon different from what you're seeing13:48
dandraderthen if you scroll it a bit to force redraws you get to see the current frames13:48
dandraderqtmir (qtcomp) flaw13:49
groot_kdub, but this only happens if I remove hwcomposer. Should I file a bug about this or about the issue when hwcomposer is present ?13:51
greybackdandrader: we need to figure that out. It could be USC bug more that qtmir13:52
kdubgroot_, may as well for both. i can comment on what I know on the hwcomposer one13:52
=== chihchun_afk is now known as chihchun
kdubthe other one I'm not so sure what your device might be doing differently13:52
groot_kdub, all right. BTW, our device use hwcomposer version 0.3 which is very old. Google removed support for it long ago, but we added it back in source. Will mir have a problem with this?13:55
kduboh yeah, a big problem :) mir supports the backup mode and hwc 1.0 and newer13:55
groot_kdub, damn it. I knew I should've told you about this before. So what happens now? We can't run UT?? :(13:57
kdubwell, you can run using the backup mode13:57
kdubthe problem up in unity8 seems to be something different13:58
groot_kdub, so there's no way to run UT with hwcomposer? I've to look for fix in backup mode ?14:01
kdubgroot_, by removing the hwcomposer.so, mir is forced to use the backup mode14:01
groot_kdub, looks like I've no other option. I'll try to boot with backup mode. Do you guys have any plans to add support for older version of hwcomposer in future ?14:05
kdubgroot_, no plans, although the version is nicely abstracted from the other versions that are supported14:06
groot_kdub, so adding support for any version wouldn't be difficult? I'll try with backup mode for now, if it boots then probably someone from our device section can help with integrating 0.3 support.14:10
kdubgroot_, lets just say "its not impossible"14:11
alf_Saviq: FYI, unity-dash still consuming a constant 5%-8% CPU when doing nothing (even when screen is off), probably something scope related, https://bugs.launchpad.net/unity8/+bug/133988314:12
ubot5Launchpad bug 1339883 in Unity 8 "unity8 on the phone has unreasonable CPU usage when system is idle with screen off" [High,New]14:12
Saviqalf_, will get suspended with dash-as-app soon ;)14:12
Saviqalf_, you can try with silo 7 :)14:12
groot_kdub, ok :). I'll probably be disturbing you with backup mode from now :P14:13
anpokgroot_: what kind of device is that?14:13
groot_anpok, Sony Xperia U14:13
groot_first series from sony14:13
alf_Saviq: I am using dash-as-app, dash still consuming CPU long after screen has been turned off...14:14
alf_Saviq: but we should make it not consume CPU regardless of suspending :)14:15
Saviqalf_, sure ;)14:19
Saviqalf_, do we have a bug for this?14:19
alf_Saviq: https://bugs.launchpad.net/unity8/+bug/1339883 is the bug I filed before dash-as-app, noted in the comment that it still applies for dash as app (of course the htop traces will not be exactly the same)14:20
ubot5Launchpad bug 1339883 in Unity 8 "unity8 on the phone has unreasonable CPU usage when system is idle with screen off" [High,New]14:21
Saviqalf_, thanks14:22
alf_Saviq: np, hopefully the battery will last a bit longer when we fix this :)14:23
=== pete-woods|lunch is now known as pete-woods
=== dandrader is now known as dandrader|lunch
=== dandrader|lunch is now known as dandrader
=== alan_g is now known as alan_g|EOD
qenghoHi all. I'm on 14.04 still, and trying mir in X for testing some client. It looks like keyboard events are delayed because of buffering or maybe some key-combo scheme. I press 'x' in a terminal, and it doesn't go to the client until I press the next key or some amount of time passes, about 0.75 second.  Typing 'asdf' sends 'asd' then... 'f'.18:26
qenghoThough, right now, I had to change the quoted 'asdf'. I hit arrow keys to move the cursor. I heard the GUI bell signal immediately, but the cursor still didn't move until the second elapsed.18:27
tvossqengho, hey there :)18:28
tvossqengho, trying to clarify on your setup: you are running X on Mir, or Mir on X? :)18:28
qenghoHah.  Er, mir on X, I think. ps  =>  /usr/bin/X -core :1 -seat seat0 -auth /var/run/lightdm/root/:1 -mir x-1 -mirSocket /tmp/mir_socket -nolisten tcp18:29
tvossqengho, ah, that's X running against, or as we call it: XMir. So I remember the event delay issue with XMir, but I remember that we fixed it. May I ask you for the specific version of Mir that you are running?18:30
qenghomir tools and libraries 0.1.8+14.04.20140411-0ubuntu118:31
qenghoxserver-xorg-xmir 2:1.15.1-0ubuntu218:31
qenghoI have not flipped to Utopic on this machine.18:32
tvossqengho, ah, thanks for the information. That might be the issue then. kgunn, could you take a look here ^?18:34
tvossqengho, I'm pretty sure the bug is fixed, but not necessarily available in trusty, yet18:34
tvossqengho, searching for the bug number18:40
tvossqengho, https://bugs.launchpad.net/mir/+bug/119945018:43
ubot5Launchpad bug 1199450 in mir (Ubuntu) "[xmir] Inputs slowing, last event of a stream of events greatly delayed" [Critical,Fix released]18:43
kgunnyeah, and i've even seen a delay show up in straight x every now and then18:45
qenghotvoss: it says Merged into lp:ubuntu/saucy/mir, so I would expect T to be fixed too, but it is not.18:52
tvossqengho, you are running on Intel?18:54
qenghoThe immediate Bell suggests it is that a final frame not rendered. I realize now that the delay is indeed fixed at the next cursor blink.18:55
qenghotvoss: Yes. Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 09)18:57
* qengho avoids the problem by opening a terminal and "while sleep 0.05; do date; done", to force buffer churn.19:04
qenghoIs environment variable "MIR_SERVER_NAME" the preferred way to have my client test whether to use its mir output?19:08
qenghoIs there an x2mir yet?  This is killing my multi-machine one-keyboard setup. ;(19:11
kdubif x2mir is the inverse of xmir, there are some emulators, but I don't know of a 'native x2mir'19:22
Saviqcamako, something went wrong with your qtmir devel-mir-next branch, the changelog entry moved below the currently released one21:22
Saviqcamako, FWIW there's no need for you to put the changelog entry there manually - just write stuff in the MP commit message and the train will convert that into a proper changelog entry21:22
Saviqkgunn, shall we drop unity-mir from silo 7? we should drop it from distro anyway?21:28
racarrGoing to land this unless anyone objects soon https://code.launchpad.net/~mir-team/mir/touchspot-visualizer/+merge/22890322:02
racarrso hopefully can land the renderables tomorrow or some such22:02
racarrI think daniel had abstained in the previous submission and kdub had approved22:02
kgunnSaviq: let's touch base on that tomorrow23:31
racarroO23:35
racarrthe sudo password on my emulator image23:36
racarris not phablet...23:36
racarrand adb shell to root + passwd phablet23:36
racarrgives a bad authentication token23:36
racarrI seem to be unable to get root on my own emulator image23:36
racarranyone know anything about the password23:36
racarrchanging?23:36

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!