/srv/irclogs.ubuntu.com/2013/07/11/#ubuntu-mir.txt

robert_ancellRAOF, ah00:00
mterryrobert_ancell, guh, so many layers of abstraction to make a surface, and none of them include the session00:48
robert_ancellmterry, yes..00:48
mterryrobert_ancell, I'm going to file a bug00:48
robert_ancellmterry, please do00:49
mterryrobert_ancell, https://bugs.launchpad.net/mir/+bug/120003500:50
ubot5Ubuntu bug 1200035 in Mir "Should expose the session that a new surface is for" [Undecided,New]00:50
mterryrobert_ancell, is that bug something I should assign to you?01:11
mterryOr shall I look into it?01:11
robert_ancellmterry, if you feel up to it go ahead01:11
* robert_ancell -> lunch01:11
mterryrobert_ancell, it will take me longer, but I suspect you are pretty busy already01:11
robert_ancellyep :)01:12
* mterry rolls up sleeves01:12
mterryrobert_ancell, but basic approach is just to modify all the layers between session and surface to include session pointer, eh?01:12
mterryin the create_surface call01:12
robert_ancellthomi, is the docs uploader still broken?02:34
duflurobert_ancell: Do you prefer Skype or Hangouts?02:53
robert_ancellduflu, hangouts02:53
duflurobert_ancell: OK, the usual one?02:53
robert_ancellduflu, there's a usual one?02:54
duflurobert_ancell: Umm, give me a link, any link02:55
=== jono is now known as Guest7396
RAOFDamn duflu's flaky internet!04:34
thomirobert_ancell: yeah, I need to update the configuration, it's been on my TODO list all day04:34
thomiwill do it now04:34
robert_ancellthomi, ta04:34
=== Mirv_ is now known as Mirv
didrocksrobert_ancell: hey, FYI, kevin told me he would look at the clang issue if he has time, I have no idea how to fix it as I don't use it05:18
thomirobert_ancell: IS are fixing something relating to the mir docs uploads. I'll come back later and see if it's fixed. Gotta go help with dinner now though05:28
dufluYES. Internet tubing fixed. Let's hope it sticks.05:38
RAOFWOOT!05:42
RAOFduflu: Hey, can I ask some compiz rendering questions?05:42
dufluRAOF: OK. Might remember05:42
RAOFWell, I guess it's really only a single question.05:43
RAOFIn two parts!05:43
dufluDoes it always swapbuffers? :)05:43
RAOF1) Does compiz use the composite-overlay window? and05:43
RAOF2) Does it ensure the composite overlay window is fullscreen?05:44
duflu1) Can't remember. I vaguely recall the "overlay window" is deprecated.05:44
duflusmspillaz can verify05:44
* duflu looks at the code05:45
dufluRAOF: Yes it does use overlay windows: plugins/composite/src/screen.cpp05:46
dufluAlso window.cpp05:47
RAOFOk.05:48
dufluRAOF: And they are not guaranteed full screen05:48
RAOFHrm.05:48
dufluWhich I guess is part of the reason why unredirect works with multi-monitor05:48
RAOFHeh, yeah.05:49
dufluOh, hang on05:49
dufluRAOF: There was other logic mentioning overlay. I think the answer is yes it is only ever one overlay == root window:     overlay = XCompositeGetOverlayWindow (screen->dpy (), screen->root ());05:50
dufluBut the root window is all outputs, not "full screen"05:51
RAOFRight.05:51
RAOFGetting GLX bypass for anything spanning more than one monitor is not going to happen. Sadly.05:53
RAOFBut that's not soooo bad.05:54
dufluRAOF: Can we still have it for windows which fit a single monitor?05:55
RAOFYes.05:55
dufluCool. Though I just realize my existing logic doesn't handle the multi-monitor case for bypass05:56
duflu+d05:56
dufluThen again, there are no multi-monitors yet05:56
RAOFThe condition should be “GLX window exactly covers an entire monitor and has override-redirect set”05:56
dufluRAOF: No, not override-redirect. It's a normal window. The decision is based on stacking order05:57
dufluRAOF: "Full screen" is generally a WM hint only.05:58
RAOFduflu: That can't work in general, right? There's nothing saying that a fullscreen, on top window has to be uncomposited.05:58
dufluRAOF: If it's on top, and lacks an alpha channel, and not being transformed, and fits the full monitor then it's unredirected/bypassed05:59
* RAOF goes digging in the compiz code to see how the server can tell.05:59
dufluApps generally flag full screen with WM hints. They never set override redirect any more05:59
RAOFNor does compiz?05:59
dufluRAOF: Compiz doesn't ever "set" override redirect. That's an app/toolkit decision.06:00
RAOFOh, right. I'm getting my terminology mixed up, aren't I.06:01
dufluRAOF: More generally Compiz does not use the WM flags in deciding to bypass. It looks at window placement and size in the end.06:01
duflu... that way bypass decisions are right no matter how old-fashioned or modern the fullscreen method it06:02
duflu*is06:02
dufluRAOF: P.S. Old-fashioned fullscreen is seen with glxgears. Modern hinted full screen is seen in browsers or gnome-terminal. Though the latter uses RGBA so is never bypassed06:03
RAOFWhat I actually want to gate on is composite status, isn't it.06:04
dufluRAOF: You mean take the XComposite redirection state? Probably...?06:05
RAOFRight.06:05
tvossgood morning :)06:05
duflutvoss: Hi06:05
tvossduflu, hey :) how goes?06:06
duflutvoss: Going slowly but I finally have fast internet again. So that's something06:06
thomirobert_ancell: mir-docs-upload job is fixed. Documentation uploads should be working again now06:06
RAOFWhat ended up being the problem, by the way?06:06
* thomi goes to eat dinner06:06
dufluRAOF: I was on a noisy cable to the exchange in which all the pairs experienced heavy noise. They put me on a different cable06:07
tvossthomi, hey there :)06:07
tvossduflu, \o/06:08
tvossRAOF, good morning06:09
RAOFtvoss: Yo!06:09
tvossrobert_ancell, good morning :)06:11
duflualf__, ping06:35
alf__duflu: pong06:37
NikThHello everyone06:37
duflualf__: BufferSwapperMulti is being constructed (a second time) with a buffer list of length 106:37
dufluIs that meant to happen?06:37
NikThSomehow apport allowed me to report a bug, even with third party software (Xmir PPA) installed. I filled a new bug report here, now full logs are listed. https://bugs.launchpad.net/ubuntu/+source/unity/+bug/120009706:38
ubot5Ubuntu bug 1200097 in unity (Ubuntu) "compiz crashed with SIGSEGV in nouveau_pushbuf_kick() - Xmir" [Undecided,New]06:38
NikThHope this helps devs to spot the exact problem :-)06:39
dufluNikTh, ok thanks06:39
NikThduflu: Hey :-) good to see you again06:39
alf__duflu: What's the scenario?06:41
duflualf__: I have client_queue constructed as size 1, even when swapper_size==3. And one is not enough so I hang waiting for a new buffer06:42
dufluHaven't verified the same issue is on trunk06:42
dufluMaybe it's not an issue, but designed that way. If so then it might partly explain how in_use_by_client dips to -106:43
alf___duflu: If this happens while switching swappers then it is possible that the client is holding 2 buffers and only one is passed to the new swapper, that's ok. However in_use_by_client falling to -1 is a bug, probably because when we switch to a new swapper this is not set correctly.06:47
duflualf___: OK maybe not a bug then. But with bypass it will be so I'll figure it out06:48
duflualf___: Yes BTW. The client is holding one and the DisplayBuffer holding the other (as it's being scanned out via bypass)06:50
=== alf___ is now known as alf__
* duflu counts the underscores again07:07
dholbachgood morning07:38
robert_ancelldidrocks, ok07:57
robert_ancellthomi, thanks!07:57
robert_ancelltvoss_, hello07:57
robert_ancelltvoss_, I think you called me via G+? We were on the hangout in the meeting invite and didn't see you on IRC07:57
tvoss_robert_ancell, yeah, tried to call via g+ as I was on a birthday08:08
tvoss_robert_ancell, damn android, couldn't figure out how to join the hangout from the meeting invite :)08:08
robert_ancelltvoss_, sorry about that, too many windows08:08
tvoss_robert_ancell, know that problem :)08:08
robert_ancelltvoss_, did you want a quick call without mterry or reschedule?08:09
tvoss_robert_ancell, reschedule is fine with me, it's not urgent, just want to touch base with the both of you08:09
robert_ancellsure08:10
robert_ancellwe discussed a bit together, try again at a similar time?08:10
tvoss_robert_ancell, yup, let me quickly check my calendar08:10
tvoss_I've got a call at 8:30 my time, what is my 9pm in your timezone?08:11
tvoss_RAOF, your doc mp failed ci ;) https://jenkins.qa.ubuntu.com/job/mir-saucy-amd64-ci/220/console08:12
RAOFtvoss_: You've probably got the vpn setup required to hit the “retry” button, don't you?08:12
tvoss_RAOF, nope, did a fresh install yesterday after my adventures in "all the DEs"-land08:13
RAOFBecause that's clearly a nondeterministic test.08:13
RAOFOh, bah.08:13
tvoss_mzanetti, ping08:13
RAOFrobert_ancell ^^ ?08:13
tvoss_mzanetti, mind hitting retry here: https://code.launchpad.net/~raof/mir/more-doc-doc-docies/+merge/17412108:14
tvoss_?08:14
robert_ancellRAOF, I retries it08:14
robert_ancelltvoss_, ^^08:14
RAOFHurray!08:14
robert_ancellretried it already I mean08:14
robert_ancelltvoss_, that's 7am my time08:14
RAOFWe should really turn on dbgsyms for the PPA, too.08:14
tvoss_robert_ancell, bit early, isn't it? let's postpone to next week then08:15
robert_ancelltvoss_, ok08:15
robert_ancelltvoss_, yeah, my daughter gets up then so it clashes for me08:15
tvoss_robert_ancell, no worries, next week it is08:16
mzanettitvoss_: you mean a test rebuild or autolanding?08:19
tvoss_mzanetti, hold on, robert ancell already hit the button08:19
RAOFTo the pizza!08:21
tvoss_RAOF, enjoy08:27
smspillazRAOF: 1) yes, 2) It is always fullscreen08:29
smspillaz(except when there are other "unredirected windows")08:30
smspillaz(in which case its fullscreen but shaped)08:30
duflusmspilaz: Kinda... It's fullscreen in the single monitor case08:30
dufluMan, I've lost a buffer and don't know what's holding it08:34
* duflu looks behind the fridge08:34
racarrsmspillaz: Lol internet08:34
racarr(smspillaz and I just got back from berkeley ;))08:35
smspillazracarr: dude08:36
racarrsmspillaz: I met some guy who seemed like he was a compiz developer on the bart08:36
racarrbut I thought he was a total hack08:36
smspillazoh you meam robert parr?08:37
racarrhaha08:37
smspillazi occasionally run into him08:37
tvoss_hmmm, the doc mp fails on clang :)08:37
smspillazhe stalks me or something08:37
duflutvoss_: It's the build machine broken, not clang08:38
tvoss_duflu, still annoying as we cannot land the mp. mzanetti: mind taking a look here: https://jenkins.qa.ubuntu.com/job/mir-clang-saucy-amd64-build/1155/console?08:39
smspillazduflu: the cow is always screensize08:39
* duflu realizes it's past midnight in California and stops trying to make sense of the (likely) drunk people08:39
smspillazwell im not drunk anymore08:39
smspillazbut by cow i mesnt composite overlay window08:40
smspillazits just phone typing08:40
racarrSam speaks truth. Its only me thats drunk08:40
racarr(Zzz...)08:40
duflusmspillaz: OK, so not http://www.flickr.com/photos/joshmt/5604316602/08:40
smspillazracarr: not as drunk as i was last night :)08:41
racarrI dunno I did fall over on that old woman.08:42
racarrerr ^H^H^H^H08:42
racarrIm going to go to sleep ;)08:42
* duflu is only jealous08:42
dufluof the drinking, not the falling08:43
smspillazlolllllllll08:43
smspillazand the dropped glass08:43
smspillazXD08:43
racarrOk, I think everyone gets the picture.08:44
duflusmspillaz: I meant that the COW covers all screens. All the while a "fullscreen" window usually only covers one08:48
smspillaz(theres really not mich more than that)08:48
dufluIt's important if you're using multiple monitors and need one of them unredirected to play HD video :)08:49
smspillazduflu:ah, correct. im the case though the cow may effectively be smaller than the screensize08:49
dufluYes, where "Screen" is the compiz word for Mir's "Display"08:50
smspillazanyways, the main caveat is that the assunption tjat cow output size == screensize vreaks when there is internal redirection happening08:51
smspillazanywyas, night :)08:51
duflusmspillaz: Night. Happy holidays08:54
mzanettitvoss_: I logged in jenkins and tried to reproduce the failure. couldn't reproduce. then I retriggered the job and it past that point now09:03
tvoss_mzanetti, thx09:04
mzanettitvoss_: probably some temporary network issues09:04
tvoss_mzanetti, saw it being merged09:04
alan_gduflu: you're building on raring? I'm failing to do so because I can't find a libmockdev.dev package. What was your solution?09:10
tvoss_alan_g, are you looking into the test hang on armhf?09:12
alan_gtvoss_: no09:12
alan_gtvoss_: I thought racarr had a solution09:12
tvoss_alan_g, don't see an mp up and the bug is blocking us from landing in distro09:15
alan_gtvoss_: "<racarr> alan_g: Yes. client-focus-notifications contains a solution"09:16
tvoss_didrocks, mind sending me your .pbuilderrc again?09:16
didrockstvoss_: sure09:16
duflualan_g: Yes just install the saucy packages: https://launchpad.net/ubuntu/+source/umockdev09:16
didrockstvoss_: http://paste.ubuntu.com/5864291/09:16
didrockstvoss_: you probably want to change the HOOK_DIR :)09:17
alan_gduflu: thanks09:17
didrockstvoss_: if you need any hook, tell me09:17
xnoxRAOF: i think you said you'd want to see bugs when dual screen setup is not mirrored.09:19
xnoxbug 120013009:19
ubot5bug 1200130 in Mir "Multi-monitor bug: different results after VT-switch" [Undecided,New] https://launchpad.net/bugs/120013009:19
xnoxbug 120012909:19
ubot5bug 1200129 in Mir "Multi-monitor bug: different brightness" [Undecided,New] https://launchpad.net/bugs/120012909:19
xnoxbug 120012709:19
ubot5bug 1200127 in Mir "Multi-monitor bug: different resolution" [Undecided,New] https://launchpad.net/bugs/120012709:19
duflualf__: Is there a high-level description of how buffers are shared safely between server threads?09:26
dufluA locking plan even?09:26
alf__duflu: the idea is that once a buffer is extracted from the swapper, whoever extracts it owns that thread. There hasn't been a need for multiple buffer ownership until now. Do you have a use case?09:27
alf__duflu: ...owns that buffer...09:28
duflualf__: Yes unfortunately the compositor/flipper thread now needs to own the buffer, not just till the flip, but also until the next page flip. And that's a different thread to the session mediator09:29
dufluHmm, maybe it's the compositor locking I should be looking at09:29
alf__duflu: to be clear, there hasn't been a use case for multiple buffer ownership with both readers/writers. There can be multiple read-only users of a buffer.09:30
duflualf__: Alright. I need to figure out the multi-thread implications... or figure out how to avoid multi-threaded ownership09:32
duflu... also to figure out where my buffers are going. Because the session_mediator should never be starved with 3 buffers. Somehow it is09:33
alf__duflu: could we do all this by switching compositing strategies when a full-screen session is active?09:36
duflualf__: That's part of the plan, kind of. And possibly not exactly what I'm talking about right now09:37
alf__duflu: I mention this because the amount of time a buffer is held is currently managed in the compositing strategy. With a different strategy we could use a different policy for holding buffers.09:39
duflualf__: Yes I noticed the multithreaded compositor locking is a big factor. I need to clarify the problem further before I ask you more questions09:40
dufluAnd maybe make dinner09:41
alf__duflu: ok, enjoy!09:41
dufluHmm, the throttling of swapinterval=1 clients is a much more implicit chain of events than I expected09:54
tvoss_duflu, I'm surprised that thoughts like that arise while doing dinner :)09:56
dufluIf I was making dinner I wouldn't be logged in09:56
dufluMy IRC presence is more definitive than other peoples09:56
dandraderwhat do you guys do when you wanna build mir packages? doing so in an armhf chroot (with qemu) is taking forever...09:59
dandrader... and qemu crashes when running the acceptance tests10:06
dufludandrader: We usually develop via cross compilation, for speed. I'm not sure anyone else has ever needed "fast" builds of armhf debs10:06
didrocksthe nexus 4 + ccache works fine with Mir for my tests10:09
=== dandrader is now known as dandrader|afk
=== dandrader|afk is now known as dandrader
tvoss_alf__, ping11:03
=== alan_g is now known as alan_g|errands
tvoss_alf__, ping11:22
alf__tvoss_: pong11:22
tvoss_alf__, hey there :) got a list of the Mir lttng tracepoints handy?11:22
alf__tvoss_: grep -C2 -R TRACEPOINT_EVENT src/11:25
=== alan_g|errands is now known as alan_g
=== dandrader is now known as dandrader|lunch
=== alan_g is now known as alan_g|tea
derEremitjust booted with mir ppa and:15:03
derEremitcat /var/log/lightdm/x-0.log:15:03
derEremitFatal server error:15:03
derEremitno screens found15:03
derEremitintel core i715:04
derEremitalso as second card nvidia ( optimus ) if that matters15:04
=== dandrader|lunch is now known as dandrader
kdubdidrocks, i'm trying a new approach for getting gmock out of our tree, hopefully will get it through jenkins today15:15
didrockskdub: what do you mean by new approach?15:17
* didrocks is interested15:17
kdubby having cmake build the external project (ExternalProject_Add), instead of just adding the out of tree sources as internal sources15:18
didrockskdub: neat idea :)15:19
=== alan_g|tea is now known as alan_g
mlankhorstfwiw, the xorg-server needs to be refreshed15:37
xjuniormlankhorst: what do you mean?15:47
mlankhorstsystem-compositor-testing xorg-server is out of date :-)15:48
mlankhorstanyway I'm EOD, if anyone else wants to pick up some fixes for unity-system-compositor..15:57
mlankhorsthttp://paste.debian.net/15562/ <- attempt to fix xserver-xorg-video-radeon alignment15:58
mlankhorstseems to hard lock up here, but it does show the cursor for a bit before it hard locks up :P15:59
mlankhorsthttp://paste.debian.net/15490/ <- experimental fix to enable sna in xserver-xorg-video-intel15:59
mlankhorstprobably RAOF will look at it, I'll be back on monday16:00
mlankhorstkgunn_: that ati fix should help your radeon https://bugs.launchpad.net/mir/+bug/1195425 bug16:00
ubot5Ubuntu bug 1195425 in Mir "Corrupted screen using radeon drivers" [Critical,Triaged]16:00
mlankhorstEOD, EOW16:01
katieracarr, hello16:01
kgunn_mlankhorst: thanks!16:02
=== om26er is now known as om26er|afk
greybackracarr: ping16:33
=== alan_g is now known as alan_g|EOD
=== om26er|afk is now known as om26er
racarrWoo. Root canal 2/3rds complete19:02
racarrsorry I forgot to send an email19:02
=== Cimi_ is now known as Cimi
=== popey_ is now known as popey
=== JoseeAntonioR is now known as jose
=== TheDrums_ is now known as TheDrums
robert_ancellkgunn, oh sorry, I missed the meeting21:38
kgunnrobert_ancell: no problem really, everyone's got their bit to do...bregma was waiting on an arm build to finish & then we should be good to go for universe (i think)21:39
robert_ancellkgunn, awesome21:40
olli_robert_ancell, quick q, will we have lightdm on the phone21:42
robert_ancellolli_, yes, I believe that is what the phone team decided, and I'm working to implement the required changes21:42
olli_robert_ancell, thx for putting the doc together22:14
robert_ancellolli_, np22:14
kdubi guess resizing the display is more associated with the MirConnection than the MirSurface22:30
kdub'is this session allowed to change the resolution' more than 'is this surface on this session allowed to do change it'22:31
RAOFkdub: Yup, that sounds right.22:56
kgunnwrt lib deps, does anyone know why it seems sometimes android-input is the dep...sometimes 3rd_party...but 3rd_party seems to be a wrapper for android-input23:20
kgunnseems redundant/overkill?23:22
kdubkgunn, we've been working on deflating that directory, eventually it should just become android-input23:22
kgunnkdub: thanks...confirmation i'm actually understanding my unwinding exercise :)23:23
kdubRAOF, what is the easiest way for xmir to get 'display changed' notifications?23:45
kdubtrying to come up with an api for monitor configuration that makes sense for xmir23:46
RAOFkdub: Use whatever racarr's using for focus notification?23:52
kdubhmm23:54
RAOFI'm resigned to the fact that it's likely to be a callback from a random thread :)23:54
kdubyes, likely23:55
kdubi guess i'm just asking what happens in the xserver when that callback happens though23:55
kdublike, does it go and recompute the output configuration the xserver wants, and then asks to apply it?23:56
RAOFI guess that depends on the cause of the notification.23:56
RAOFie: there are two possibilities - “the hardware has changed”, or “some other client changed the configuration”23:57
RAOFActually, now that I think about it - no.23:58
RAOFThe X server never does any output configuration directly.23:58
RAOFIt's just going to forward that notification on to whatever clients are listening to RANDR events.23:59
kdubah, interesting23:59
RAOFAnd there's no guarantee what they think they'll want to be doing.23:59
kdubso it does indeed need a callback signal, that it would pass on to the xrandr-subscribed clients23:59

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