/srv/irclogs.ubuntu.com/2015/06/25/#ubuntu-mir.txt

RAOFracarr: If you're still in, I've responded to your ANR review.01:09
alan_galf_: anpok should I MP mir_*_event_input_event(), mir_*_event_get_base_event() or ...? @https://code.launchpad.net/~alan-griffiths/mir/event-timestamps/+merge/262879/comments/65887409:41
duflualan_g: IIRC the more modern format has no "get"09:43
dufluAlthough we have plenty of gets09:43
dufluOh, I think the event casting functions do have gets09:44
dufluJust field accessors don't use get09:44
alan_gduflu: I'm trying to find out what the team thinks is consistent. (My preference is to avoid this dilemma but review comment...)09:46
duflualan_g: We are inconsistent right now, using both. But I think my new event functions are still the newest ones, and they dropped the "get"09:46
dufluBut not for the casting functions09:46
alf_duflu: Unfortunately we are not as consistent as that, all accessors and casting functions for MirEvent and MirInputEvent use 'get', accessors for MirKeyboardEvent, MirPointerEvent etc do not use 'get'09:47
duflualf_: Correct. The clean-up isn't really complete09:47
anpokand input_configuration_event too uses _get_09:47
dufluI didn't want to break too many APIs. It was a large effort already09:47
anpokhm and time instead of timestamp09:47
anpokso we haveni used timestamp yet in that part of the api.. i am happy with sticking to 'time', even when it is less clear than timestamp.09:48
seb128does anyone has hints on how to start an unity8/mir session without using lightdm?09:50
alan_gduflu: mir_keyboard_event_timestamp(kev) or mir_input_event_get_time(mir_keyboard_event_get_base_event(kev));09:50
seb128or to get debug input from Mir server when it fails to start?09:50
seb128still having http://paste.ubuntu.com/11763124/ and trying to figure out how to get info09:50
seb128"ERROR: QMirServer - Mir failed to start"09:50
dufluseb128: I saw that error last time I tried it too. Safe to say it's a Unity8/QtMir error, not part of Mir09:52
alf_alan_g: duflu: Although I don't like it much (it doesn't read well), as things stand, the most consistent option would be mir_keyboard_event_input_event() or _base_event()09:52
seb128duflu, what did you try? unity8 on wily? on snappy? ... ;-)09:52
dufluAgreed. I would prefer to keep on the path of removing "get" but there are a lot to remove yet09:53
dufluseb128: On wily desktop09:53
seb128duflu, oh, so wily issue?09:53
seb128duflu, thanks09:53
seb128need to try that later on09:53
seb128I'm trying on snappy images and I assumed the issue had to do with that09:53
dufluseb128: Any error in Mir and you'll see a detailed multi-line exception thrown09:54
seb128k09:54
dufluThat error is outside of Mir09:54
dufluAlthough possibly related to Mir, obviously09:54
seb128I see, going to try to downgrade qtubuntu and other things after lunch then09:54
alf_duflu: There is an error when loading input_stub Undefined symbol: _ZN3mir6events10make_eventEll17MirKeyboardActi09:54
seb128duflu, thanks for the hint ;-)09:54
seb128I tried to move that .so away but it doesn't make the session start09:54
duflualf_: Sorry to hear. I haven't touched it for a couple of releases and need to EOD in a minute. Not sure how to help09:55
seb128that's bug #145868909:56
ubot5bug 1458689 in mir (Ubuntu) "[vivid-overlay] input-stub.so fails to load on i386" [Undecided,Confirmed] https://launchpad.net/bugs/145868909:56
seb128which is fix commited it seems09:56
seb128k, need to go for lunch, bbiab09:56
alf_duflu: I just wanted to draw your attention to it, because you said you had seen the same error09:56
duflualf_: Seb is right --> bug 145868909:56
dufluWhich we claimed fixed09:57
anpokand sits in 0.14.009:57
alan_galf_: that sounds like conflicting versions of libmircommon809:57
dufluUmm, 5 is the latest (!?)09:58
alan_gs/libmircommon/libmirclient/09:58
anpokah yes the error was that input-stub did not link libmirclient and hence this is an old mir-test-tools package?09:59
anpokthat did not get updated..09:59
alan_gseb128: try deleting  input-stub.so10:00
alan_gI don't think U8 needs it (but I don't think it causes the real error either)10:01
duflualan_g: Unfortunately I expect that's fatal (like in bug 1439078)10:02
ubot5bug 1439078 in Mir "[regression] Demo servers crash on start-up if MIR_ENABLE_TESTS=OFF - std::exception::what: bin/../lib/server-modules/input-stub.so: cannot open shared object file: No such file or directory" [Medium,Triaged] https://launchpad.net/bugs/143907810:02
anpokthat message should be generated by the graphics module prober10:03
anpokthe one in the log10:03
anpokbecause input-platfor-lib is only set for tests..10:03
anpok*platform10:03
* duflu slides out of sight10:03
anpok(through the wrapper)10:03
alf_seb128: Could you please pastebin the output of "dpkg-query -l '*mir*'"10:04
alan_ganpok: you're saying lp:1439078 is another "feature" of wrapper?10:07
alan_galf_: anpok so the least bad option is "mir_keyboard_event_input_event()"?10:10
alf_alan_g: I see three naming options across the event API: 1. everything uses get 2. nothing uses get 3. Only up/down casting functions use get (or perhaps mir_keyboard_event_as_input_event())?10:14
alf_alan_g: We messed up naming consistency, this is not the right time to fix it as a whole... so choose anything you like, probably less intrusive is mir_keyboard_event_input_event()10:16
alf_alan_g: (although as I mentioned it doesn't read very well)10:17
alan_gFWIW My original proposal avoids this pain.10:18
anpokalan_g: or my abuse of it .. yes!10:18
alf_alan_g: but introduces new pains :)10:18
anpokalan_g: i could avoid it with two wrappers - one for tests and one for demo clients/servers (or disable MIR_ENABLE_TESTS=OFF) .. but actually all of that will become inrelevant as soon as I cleanup the platform loading for input10:20
anpokwhich we should do right after mir on x10:21
alan_ganpok: agreed10:21
anpokor maybe not .. because it might then always pick the x version.. hmm10:21
alan_gNot if it is done right. ;)10:22
anpokoh need to run.. I am offline now..10:22
anpokneed to pick my daugther..10:23
alan_galf_: writing a few trivial functions once isn't a big pain.10:23
alf_alan_g: the pain is that we are duplicating functionality in our API10:24
alan_galf_: I'd happily deprecate mir_input_event_get_time() - I don't think the timestamp is useful without deciding the event type.10:30
alf_alan_g: We have an implicit hierarchy of input events (implicit because C cannot express this very well), e.g., MirKeyboardEvent is-a MirInputEvent. I understand the convenience of being able to access properties of the base type through direct accessors of the derived, but at the same time it feels less elegant and more wasteful to do so.10:36
alf_alan_g: Plus if we choose to have the direct accessors, we might as well remove the base type.10:38
alan_gI'd happily deprecate MirInputEvent too and not try for commonality.10:38
mcphailCan anyone point me to a good introductory document detailing the interactions between upstart, dbus, unity8, mir and qtmir on the phone? I'm keen to know how an app is launched, gets a surface for display and has its lifecycle controlled. Thanks10:40
alf_alan_g: I would be more amenable to a complete MirInputEvent removal/deprecation vs having direct accessors for base type properties, but I think this warrants a wider discussion10:40
alf_mcphail: Unfortunately I am not aware of a comprehensive document, perhaps someone from the unity8 team has more info10:45
alf_mzanetti: ^^ ?10:45
mcphailthanks alf_ - I find this very confusing10:46
=== mibofra is now known as Guest75330
seb128alf_, http://paste.ubuntu.com/11772977/12:00
alf_seb128: thanks, everything looks in order12:24
=== Guest75330 is now known as mibofra
ollimzanetti, seb128 says u8 doesn't work on willy - are you guys aware?13:46
ollidandrader, ^13:48
dandraderolli, mzanetti is on holidays today and tomorrow13:49
seb128I'm seeing the same issue than I was describing yesterday on my test laptop, it worked on vivid, I added the wily source and did an apt-get install unity8 (which upgraded unity8/mir/qtmir/some other things and now unity8 session doesn't work anymore)13:49
seb128duflu mentioned a similar issue earlier13:49
dandraderolli, no, I'm not aware of that13:49
seb128 "ERROR: QMirServer - Mir failed to start"13:50
seb128<duflu> seb128: I saw that error last time I tried it too. Safe to say it's a Unity8/QtMir error, not part of Mir13:50
seb128<duflu> seb128: On wily desktop13:50
seb128dandrader, ^13:50
seb128any idea how to debug?13:50
ollidandrader, ah, didn't realize13:50
dandraderolli, it's just that he never logs off irc, so you never can tell if he's really there :)13:51
ollidandrader, would be good if you could give seb128 a hand for a bit or help find the right person who could help unblock seb13:51
ogra_yeah, else he might port unity7 to the phone instead :)13:51
dandraderseb128, I'm still on vivid+overlay-ppa13:51
dandraderseb128, but let me think....13:52
ogra_seb128, i assume you are on an x86 arch with that ... did you by accident get some -gles packages installed ?13:52
seb128dandrader, do you have any debugging hint/any way to get a log from qmirserver?13:52
seb128out of "failed to start"13:52
ogra_(thats solely for x86 the emulator i think)13:53
seb128ogra_, it is amd64 a&n13:53
ogra_-the13:53
seb128ogra_, it is amd64 and no13:53
ogra_ok13:53
seb128 I also had that system working before I updated those packages13:54
dandraderseb128, well, qtmir doesn't do much. it just tries to run its mir::Server instance and if it doesn't work it spills out this error13:54
seb128which include basically new qt/qtmir/mir/unity8/uitk13:54
seb128dandrader, can I try to start mir::Server by hand in some way to see what's going on?13:55
seb128or do we have a debug log that may include details on the error?13:55
dandraderseb128, you might turn on some mir logging to see what's going on inside mir...13:56
seb128how?13:56
dandraderseb128, through setting some environment variables. It's been a while since I last did it. Mir guys should know the exact var names13:57
seb128Mir guys ^ ;-)13:58
dandrader:)13:58
dandraderseb128, thing is, you can't find the env var names just by grepping mir code as they are generated procedurally. the way to get them, if I recall correctly, is running a mir binary with --help or something13:59
dandraderseb128, like one of those sample mir clients or servers14:00
dandraderalan_g, ^14:01
alan_gdandrader: seb128 http://unity.ubuntu.com/mir/component_reports.html14:02
dandraderseb128, if you check qtmir code you will see it doesn't do much tweaking. it just runs a mir::Server and let's the magic happen14:02
seb128well, the magic doesn't happen on wily :p14:03
dandraderseb128, it doesn't even know whether it's running as a nested server (under unity-system-compositor) or standalone14:03
dandraderalan_g, thanks14:04
seb128alan_g, dandrader, so any idea which of those variables would be useful with that error? and where to set it?14:06
alan_gseb128: I doubt that any will help your problem14:07
dandrader:(14:07
seb128in fact that system seems to have a different issue14:08
seb128http://paste.ubuntu.com/11773504/14:08
seb128std::exception::what: Failed to find platform for current system14:08
dandraderseb128, oh, that's a good lead14:09
seb128the u-s-c log is http://paste.ubuntu.com/11773552/14:18
seb128in case that's useful14:18
seb128bah, usc was outdated on that box, upgrading14:20
seb128hum, now it does the same as unity814:22
seb128"std::exception::what: Failed to find platform for current system"14:22
seb128dandrader, alan_g, ^ any idea how to debug that?14:22
alan_gseb128: you on a mesa or android stack?14:22
seb128mesa14:22
seb128it's an amd64 desktop14:22
dandraderseb128, that's mir stuff. sorry, can't help with that. out of my turf14:22
alan_gseb128: install mir-graphics-drivers-desktop14:24
alan_gI'm not sure of the full story but that's missing from the seed14:25
seb128is that a new package?14:25
alan_gMir used to pull in both sets of drivers, but that's bad as it install X on the phone14:26
AlbertAseb128: try apt-get install mir-graphics-drivers-desktop14:26
seb128alan_g, that worked!14:26
alan_gSo we're in a partly fixed state now14:26
seb128AlbertA, ^14:26
seb128alan_g, AlbertA, dandrader, thanks ;-)14:27
alan_gseb128: we should figure out how it could be made easier14:28
seb128alan_g, mir should probably pull the android drivers on armhf and the desktop ones on i386/amd6414:28
seb128though I know it's not a right approximation14:28
seb128we might do standard desktop on armhf or android on i38614:28
alan_gseb128: RAOF "owns" this issue14:29
seb128good to know14:29
ogra_seb128, we do the latter in the emulator14:30
ogra_(and yeah, snappy will hopefully bring desktop to armhf)14:31
seb128ogra_, do we have any way to have a Depends: something (android) | somethingelse (desktop)?14:31
ogra_not really, no14:31
ogra_livecd-rootfs hacks ...14:32
AlbertAseb128: right, it's just than Debian depends is not rich enough to describe "platforms"14:32
seb128shrug, so that was the issue on my test laptop14:32
AlbertAwe do have in the seeds for desktop-next and ubuntu-touch14:32
seb128the snappy image has mir-graphics-drivers-desktop though14:32
seb128so here it's something else :-/14:33
ogra_this will become super tricky WRT convergence :/14:33
ogra_(where we need both seeds but device specific backend selection)14:34
seb128alan_g, AlbertA, is Mir supposed to work on stock ubuntu wily under virt-manager with spice/qxl enabled?14:35
seb128(like described on http://unity.ubuntu.com/mir/setup_kvm_for_mir.html)14:35
alan_gseb128: I think anpok had that working on V+O so I'd expect it to work on wily14:36
seb128is the build a new kernel still needed with the newer version is ubuntu?14:36
alan_ganpok: ^?14:37
anpokhm14:38
anpokseb128: yes14:38
anpoki use that for testing usually14:39
seb128anpok, does one need to build a new kernel?14:39
anpokseb128: the stock vivid and wily kernel is fine..14:39
seb128k14:39
alan_gseb128: try the latest docs: http://bazaar.launchpad.net/~mir-team/mir/development-branch/view/head:/doc/setup_kvm_for_mir.md14:39
seb128alan_g, anpok, thanks14:40
seb128bah14:42
seb128back to "ERROR: QMirServer - Mir failed to start"14:43
seb128is there any way to start that QMirServer by hand to know why it fails to start?14:43
seb128alan_g, anpok, "With that we have enough support for EGL and GLESv2 to run Mir."14:47
seb128does it mean that we need to use gles rather than gl under the vm? so different set of driverS?14:47
anpokno the GL support of llvmpipe is good enough for unity814:47
seb128k, I've mir_demo_server working in the vm14:50
seb128so it's just unity8 failing on that v14:50
seb128"ERROR: QMirServer - Mir failed to start"14:50
seb128which I'm clueless on debugging :/14:51
seb128need help there...14:51
seb128dandrader, I can't run unity8 as an app under a mir demo server, right?14:52
seb128unity8 is a mir compositor/server by itself?14:52
alan_gseb128: unity8 normally runs under a mir compositor (USC)14:53
seb128alan_g, can I start that manually?14:54
seb128not sure what magic is lightdm doing14:54
dandraderseb128, I don't know. but that would be similar to unity8 running under unity-system-compositor, which is what we have on the phones. so maybe you can?14:54
alan_gseb128: you'd have to ask one of the U8 guys14:55
seb128alan_g, that's what I'm trying, it seems only dandrader is around from u8 ;-)14:55
dandraderseb128, start what, unity-system-compositor?14:56
dandraderseb128, if I'm not mistaken there's a "unity8-mir lightdm session" package you can install on your desktop. do you have it?14:58
dandraderseb128, which will show unity8-mir as a login option on the regular lightdm14:58
seb128dandrader, right, login into unity8 session gives me a14:58
seb128 "ERROR: QMirServer - Mir failed to start"14:58
seb128in .cache/upstart/unity8.log14:59
seb128which I'm trying to debug14:59
seb128so I'm trying to start things by hand in case there is some more info on stdout14:59
seb128doing "sudo unity-system-compositor" gives me a "Bad file descriptor" error :-/14:59
anpokalan_g: that error seb128 sees indicates that the main_loop never 'runs'15:00
seb128the u-s-c.log from lightdm indicates "pause"15:00
seb128which I guess it means it never gets frames from unity815:01
AlbertAseb128: try initctl list-env | grep MIR15:01
AlbertAset those env variables and start unity8 manually15:01
seb128AlbertA, that assume a working session to run the command?15:02
AlbertAseb128: oh..maybe...:)15:03
AlbertAseb128: so usc is running?15:03
AlbertAthe vars are usually:15:03
AlbertAMIR_SERVER_NAME=session-015:03
seb128no it's not atm, but I can have it up by trying to log into unity8, which fails15:04
AlbertAUNITY_MIR_SOCKET=/run/mir_socket15:04
AlbertAMIR_SERVER_PROMPT_FILE=<some fd>15:04
AlbertAMIR_SOCKET=/run/user/< id >/mir_socket15:05
seb128AlbertA, I tried http://paste.ubuntu.com/11773756/ which alan_g shared yesterday from an old irc discussion15:05
seb128but I get a "Exiting Mir! Reason: Nested Mir and Host Mir cannot use the same socket file to accept connections!"15:06
AlbertAseb128: ok so you have a mir_demo_server running ?15:07
AlbertAwhich uses /tmp/mir_socket15:07
AlbertAyou shouldn't need sudo permissions for unity815:08
seb128same error as an user15:08
AlbertAset UNITY_MIR_SOCKET15:08
AlbertAthat should point to the root compositor15:09
alan_g"Nested Mir and Host Mir cannot use the same socket file to accept connections!" indicates that --host and --file are the same (It could be defaulted)15:09
AlbertAand MIR_SOCKET should be something different than the socket used by the root compositor15:09
seb128how do I start the root compositor?15:11
seb128 doing "sudo unity-system-compositor" gives me a "Bad file descriptor" error15:11
AlbertAseb128: so unity-system-compositor is not currently running?15:11
seb128no15:12
josharensonseb128: I'm a bit late to this party, but the 2 things that made it work for me were changing my lightdm.conf to use type=unity and enabling the hadware cursor in unity system compositor15:12
josharensonseb128: lightdm should be starting u-s-c15:12
seb128josharenson, when on the greeter? or on session login?15:13
* josharenson gets out spare laptop w/ unity815:14
josharensonseb128: it looks like its running before starting the unity8 session15:15
seb128josharenson, let me reboot that machine, I tried to log in unity8 which fails, several time15:15
seb128and started mir servers by hand15:15
seb128so maybe something made the usc instance go away15:16
josharensonseb128: I can send you the exact steps that worked for me (was fairly straight forward), but as a disclaimer, my machine is maybe a month or more out of date15:16
seb128josharenson, step for what? starting unity8 by hand?15:17
seb128ok, so booting doesn't give me a system compositor15:18
AlbertAseb128: for starting things manually.... you could try something like this: http://pastebin.ubuntu.com/11773818/15:18
seb128oh, sorry, it does15:18
josharensonseb128: installing/starting unity8-desktop-session-mir15:18
seb128AlbertA, thanks, trying15:18
seb128AlbertA, I get a "Failed to connect to server socket: No such file or directory"15:25
seb128Nested Mir Platform Connection Error15:25
seb128josharenson, yeah, installing/getting unity8 to work is usually fine, I'm trying to figure why mir fails to start on that snappy personal debugging image though, so it's more "how to figure out what it doesn't like" rather than user "get system working" ;-)15:26
AlbertAseb128: ll /tmp/mir_socket?15:26
josharensonseb128: ah ok15:27
seb128AlbertA, srw-rw-rw- 1 root root 0 juin  25 15:23 /tmp/mir_socket=15:29
AlbertAseb128: then specify MIR_SERVER_HOST_SOCKET=/tmp/mir_socket instead then...15:32
seb128AlbertA, instead of which one? UNITY_MIR_SOCKET?15:35
AlbertAright15:36
seb128AlbertA, wooot, unity8 working15:44
seb128which is nice15:45
seb128but doesn't help me debugging why the normal session hits a "ERROR: QMirServer - Mir failed to start"15:45
AlbertAseb128: bummer15:46
AlbertAseb128: so you do have a unity-system-compositor running? do you have a /run/mir_socket?15:46
seb128I have one running15:48
AlbertAso try MIR_SERVER_HOST_SOCKET=/run/mir_socket now...15:48
seb128from the ps command line I guess the socket is /run/lightdm-mir-015:48
AlbertAor that...15:48
AlbertA:)15:48
seb128should I try to use that azs MIR_SERVER_HOST_SOCKET?15:49
seb128oh, get the same error that the unity8.log then15:50
seb128"ERROR: QMirServer - Mir failed to start"15:50
seb128no more details though :-/15:50
seb128works if I use the demo shell though15:50
seb128so I guess an issue with usc?15:50
AlbertAlook at /var/log/lightdm/unity-system-compositor.log15:51
seb128AlbertA, http://paste.ubuntu.com/11773781/15:51
seb128it acts like if it was waiting for u815:52
AlbertApause....15:52
AlbertAummm15:52
racarrMorning!15:57
AlbertAracarr: morning!16:05
AlbertAvogons: when are the pause handlers called?16:06
AlbertAseb128: so from what I can see, pause would be called when you switch away from the VT16:12
=== dandrader is now known as dandrader|afk
seb128AlbertA, oh, on those systems I get warnings like16:27
seb128"Error using VT_ACTIVATE 7 on /dev/console: Inappropriate ioctl for16:27
seb128device""16:27
seb128I wonder if that's the issue...16:27
AlbertAseb128: sounds plausible16:28
AlbertAseb128: oh...somebody kgunnn or mterry were saying there was a race between agettty and mir getting the vt....but I think that was snappy?16:29
AlbertAbut it may explain why you can start a mir_demo_server after without issues16:30
mterryAlbertA, that was on snappy yeah16:31
bschaeferseb128, i've gotten that and didnt have a pause (though im not using unity8)16:33
bschaeferwasnt that the point of USC.sleep?16:33
seb128AlbertA, I'm trying to get unity8 session to work on snappy, so that's a snappy system I'm on16:38
seb128AlbertA, thanks for the help/hints16:38
AlbertAseb128: ah...ok16:39
seb128I need to go but I'm going to follow up on that tomorrow16:39
seb128mterry, can you bounce me info on that/workaround if you have some?16:39
seb128bye16:40
=== alan_g is now known as alan_g|EOD
=== dandrader|afk is now known as dandrader
=== dandrader is now known as dandrader|afk
=== mibofra is now known as Guest52290

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