/srv/irclogs.ubuntu.com/2014/07/09/#ubuntu-mir.txt

dufluRAOF: You didn't seem excited when I pointed out your branch improved performance... ?03:40
RAOFduflu: It's neat, but it's not really the point :)03:41
dufluNice freebie03:42
dufluAnd quite unexpected that we can reduce round trip time at all, especially without trying03:42
RAOFWell, it can help when you don't have to do quite so much queuing on the main loop.03:44
* duflu isn't familiar with any of that newfangled main loop stuff03:45
dufluProbably just as well or else I might have an opinion03:45
dufluBut there are other problems to be worked on...03:45
RAOFNot newfangled :)03:49
RAOFBefore the rework all IO was being deferred to the IO mainloop, afterwards you just write().03:50
dufluRAOF: Care to reconsider? https://code.launchpad.net/~vanvugt/mir/fix-1338902/+merge/22592905:50
RAOFduflu: You don't seem to have fixed the race?05:51
dufluRAOF: What race?05:51
RAOFBetween if(locked) and locked = false.05:51
RAOFUnless the event handler cannot be called from multiple threads, in which case you've got a spurious std::atomic<bool> :)05:51
dufluRAOF: Yes the latter05:52
RAOFAh. Then drop the std::atomic and I'll reconsider :)05:52
dufluRAOF: The whole only works from one particular thread thing is fragile, but I wasn't aiming to fix everything about that code05:53
dufluRAOF: So is anyone else building on utopic or am I just unlucky to have that test failing constantly?05:54
RAOFThen why not replace with if(locked.compare_exchange_strong(true, false) ?05:54
RAOFI build on Utopic; you're just unlucky to have that test reproducibly fail.05:54
RAOFOr lucky, depending on your perspective :)05:55
dufluI hate compare/exchange ops. They always mess with my head and require surprisingly careful thought every time I see one05:56
dufluBut they're often necessary05:57
dufluRAOF: Done06:08
RAOFIs it really pending Nick's approval?L06:09
dufluRAOF: Not really. That was just if he's curious (since I think he's the only one the test is meaningful to)06:10
RAOFIn which case... top-approved.06:10
dufluWhee... and then I won't have every branch failing the same test06:11
duflusil2100: Hello?07:13
dufluanpok: How goes life with Mesa/GBM?07:28
sil2100duflu: morning07:32
duflusil2100: Morning. Do you have any thoughts on this? https://code.launchpad.net/~vanvugt/mir/fix-changelog-0.4.0/+merge/22560807:32
sil2100duflu: let me take a look, hmm07:35
anpokduflu: moving to the kernel now07:44
dufluanpok: Umm, good (?)07:45
duflusil2100: Thanks07:45
anpokduflu: different source code quality  :)07:46
dufluanpok: What in the kernel needs fixing?07:46
anpokpage flipping07:46
dufluanpok: Oh, vesa doesn't do it?07:46
dufluOr is it some hypervisor driver?07:47
anpokhm qxl needs it - I think most if not all of the others provide it07:47
anpoke.g. the displaylink driver recently received support for it07:47
dufluOh, right. Pity we can't say the kernel fixes from last year provide minimum Mir support :(07:47
anpokthe qxl-spice protocol does not seem to provide something like swap command or plane configuration command07:48
anpokso I will first investigate what it would take to make a clean solution before I settle with - just copy it.07:49
dufluanpok: If there's no display hardware to accelerate the scanout offset setting then there's no performance benefit to implementing it in the kernel over userspace. Userspace would at least provide better kernel compatibility... (?)07:49
anpokbut .. i mean it could be done .. if the host system allocates the buffers we could do bypass all steps to the host07:50
dufluanpok: Oh, yes.07:51
anpokduflu: well the user space fallback would have to go into mesa eglSwapBuffers and into mir and for mir we would need another mesa api to mmap the buffer07:52
anpokwhich is not complex either07:52
sil2100duflu: yw!08:00
=== yofel_ is now known as yofel
duflugreyback: I'm doubting my sanity now. I think triple buffers has high latency, but actually with the current protocol design, double may not be any better09:07
dufluI wonder what I was thinking back in May !?09:07
greybackduflu: why would double not be better?09:08
duflugreyback: Because the swapping protocol still requires a round trip, either way09:08
dufluWe can eliminate that round trip delay with a protocol change, but only triple-buffers would benefit09:08
greybackduflu: I can't remember the details of our discussion to make a good argument :(09:11
duflugreyback: Me too. It's present me vs past-me09:11
greybackolder and wiser you09:11
duflugreyback: I sense more grey hair coming on09:23
ogra_duflu, the traceback in bug 1339610 is from the smoke tests (that crash causes 34 failures in ui-toolkit tests) ... since it has to install the test suites it cant relly work without PPAs ...10:07
ubot5bug 1339610 in Mir "unity8 crashed with SIGSEGV in mir::frontend::ClientBufferTracker::client_has()" [Undecided,Incomplete] https://launchpad.net/bugs/133961010:07
dufluogra_: OK, well I tried looking into the offending function. It's trivial and has no reason to crash without further details :(10:09
ogra_:810:09
ogra_:( even10:09
dufluAnd then it was dinner time10:09
=== pete-woods is now known as pete-woods-lunch
=== alan_g is now known as alan_g|lunch
=== alan_g|lunch is now known as alan_g
=== pete-woods-lunch is now known as pete-woods
=== Ranomier2 is now known as Ranomier
desrthihi16:41
desrtjust tried to build the 0.4.0 release of mir -- it fixed some issues... but there is still this one hitting me: https://bugs.launchpad.net/mir/+bug/132303116:41
ubot5Ubuntu bug 1323031 in Mir "google::ShutDownCommandLineFlags not available on Fedora" [Medium,Triaged]16:41
desrtwe already had a patch for it in jhbuild, so i'll just roll it over.... this is really just a 'reminder' :)16:42
=== alan_g is now known as alan_g|EOD
davmor2kgunn: so tomorrow AM I'm going to start testing Qtcomp on mako manta and flo.  Is there anything other than testing that nothing breaks or is more broken that at present that I need to do?17:31
kgunndavmor2: it should be on par except for the one sidestage exception i describe in the wiki17:32
davmor2kgunn: no worries then17:32
=== renato_ is now known as Guest36942
=== DalekSec_ is now known as DalekSec
racarr_I hope everyone is enjoying the cursor color change19:42
racarr_:p19:42
racarr_what is round trip time to a modern GPU19:50
kdub_like, round trip over ipc?19:51
racarr_no I mean like just from CPU to GPU19:51
racarr_not content flush or anything19:51
racarr_just like hey ping GPU19:51
kdub_like, command submission to some sort of end point?19:52
racarr_yeah or something like that.19:54
racarr_It doesn't really matter lol, im just curious all of a sudden.19:54
kdub_like, writing to a register is fast of course, the time comes from processing/pushing pixels19:55
racarr_Mm but I mean writing to a register19:56
racarr_is slower than writing to a register on the CPU19:57
racarr_so by how much?19:57
racarr_I guess it has to be slower than writing to system memory19:59
racarr_which basically answers my question "its a lot slower" :p19:59
kdub_racarr_, yeah, i'd guess so, but in the same ballpark19:59
racarr_mm20:13
racarr_ah the joy of arguing over totally speculative performance points in small text boxes in the web browser.20:13
racarr_(touchspot-visualizer :p)20:13
kdub_yeah... well you have a +1 from me :D20:14
racarr_:)20:15
racarr_cursor as a renderable will be up soon and make it more clear20:15
racarr_just getting the mesa hardware cursor to work again20:15
bschaeferracarr_, the mouse looks to real now :)20:22
bschaefercursor*20:22
racarr_lol20:24
racarr_bschaefer: p.s. you can implement cursor support in SDL if you want20:24
bschaeferracarr_, yay!20:24
racarr_bschaefer: In cursor-spike-phase-7 (up for review) there are mir_curosr* names for the different cursors.20:25
bschaeferracarr_, sweet, that'll be fun to get in :)20:25
racarr_so I guess not quite yet lol20:25
racarr_yes its surprisingly satisfying to watch the cursor change20:25
bschaeferbut i can at lease see the api haha20:25
racarr_yeah just mir_surface_configure_cursor20:25
bschaeferracarr_, nice! also was hotspot implemented?20:26
* bschaefer remembers you mentioning it wasn't before20:26
racarr_bschaefer: indeed20:47
racarr_it is implemented that is20:48
bschaeferimplemented is always nice, didn't see it mentioned in the client api20:48
racarr_oh well there is no client side cursor upload yet just20:49
racarr_the system cursor theme20:49
racarr_so the hotspot is contained20:49
racarr_in the cursor theme20:49
bschaeferhopefully its just the case of "need to expose it to the client api"20:49
bschaeferoo20:49
bschaeferi see20:49
bschaeferracarr_, o, so atm its just the system themes makes much more sense :)20:50
* bschaefer was thinking to far ahead :)20:50
* bschaefer actually looked at the MP20:50
racarr_I guess the two remaining features are animted cursors (not actually particularly difficult) and client cursor upload20:51
bschaeferyup, and i think SDL2 only really uses client cursor upload. I didn't even think about animated cursors20:52
bschaeferracarr_, at lease, thats from the point of view of my needs haha20:52
bschaeferracarr_, (besides warp cursor, but thats a different story)20:53
racarr_mm21:03
racarr_ok ill add client side cursor uploads soon its really quite straight forward.21:04
bschaeferracarr_, no rush :), and thanks! (Cursors!!)21:04
SaviqAlbertA, kgunn, manta seems to be indeed more vulnerable, I just flashed it and left for an hour maybe → locked up21:51
kgunnSaviq: ack...btw, is it only on lock screen? or also on edge-tutorial ?21:52
Saviqkgunn, I only saw it on lock screen, rsalveti reported after phone hang-up though21:53
kgunnSaviq: does anyone know which image it actually showed up in ?21:54
kgunne.g. which packages changed?21:54
Saviqkgunn, 114 seems to be the first people remember this21:55
Saviqkgunn, http://people.canonical.com/~ogra/touch-image-stats/114.changes21:55
Saviqdoesn't really mean it wasn't there before21:55
* Saviq flashes 110 on manta21:56
kgunnlol... Saviq suspects mir04021:56
Saviqkgunn, maybe I can rule it out...21:56
kgunnyep21:57
Saviqactually 109 probably makes more sense21:58
AlbertAhuh...I got a manta here that I had not woken up, #11222:01
AlbertAit seems unity8 is locked up...22:01
AlbertAso to replicate just let the device sleep for a while?22:02
kgunnSaviq: just curious...for stuff like qtdeclarative...do the core devs still do the build of the src against latest image ?22:05
kgunne.g. no chance of someone sneaking in a bin against an "unknown" environ ?22:05
Saviqkgunn, there's nothing built outside of PPAs/distro22:08
Saviqkgunn, even if someone uploads directly, without train, stuff gets rebuilt on buildd22:08
SaviqAlbertA, yeah, looks like it22:08
SaviqAlbertA, manta seems especially vulnerable22:09
AlbertASaviq: does it happen pretty fast in manta?22:10
kgunnAlbertA: noteworthy that the u-s-c bug fix for xmir went in on http://people.canonical.com/~ogra/touch-image-stats/113.changes22:11
AlbertAwell I'm suspecting a deadlock in the timeout frame dropping policy...22:14
AlbertAbecause all these 3 stack traces look similar22:16
AlbertAwhere a compositor release, triggers an update in the policy at the same time a timeout happened22:16
SaviqAlbertA, I couldn't really say, but between when I flashed and had it locked it must've been under an hour22:17
AlbertAoh yeah, deadlock...22:19
AlbertAessentially, the compositor thread owns the buffer_queue mutex as it's releasing...22:23
AlbertAbut it's trying to update the timeout framedropping policy, so it waits to own the internal alarm mutex22:23
AlbertAmeanwhile a timeout has occurred, so the timedropping policy inthis thread owns the internal alarm mutex22:24
AlbertAbut its waiting on the buffer queue mutex...so deadlock...22:24
SaviqAlbertA, awesome22:35
AlbertAkgunn: should I target a fix against devel or mir/0.4?22:44
kgunnAlbertA: you can dual target i suppose22:45
kgunnthat might be simplest22:45
AlbertAok22:45
kgunnAlbertA: might wanna propose as mir-team to leave on Cemil's desk overnight22:46
AlbertAkgunn: ok, still thinking of how to fix...:)22:46
kgunnack22:46

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