[00:00] Who'd object to a little helper class for passing std::funcition<> as a function pointer? :) [00:02] Only slightly terrifying. === mibofra is now known as Guest25588 [02:15] RAOF, did you upload glmark2 directly to https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/landing-004? [02:17] robert_ancell: I did, yes. [02:17] ok, cool [02:18] RAOF, and the vivid package goes to the overlay PPA when this landing is accepted? [02:18] Yeah, that's my understanding. [02:19] RAOF, so I just pushed the updated xmir in xorg-server into this PPA. What does this mean for the git branch for xorg-server? [02:20] robert_ancell: You should update the wily branch in git. And probably create a vivid-overlay branch, unless you've just uploaded the wily xorg to vivid. [02:21] RAOF, well, I can't upload this to wily because we don't have the new Mir there yet [02:21] But the landing PPA will be syncd to wily... [02:21] Maybe ask tjaalton what he'd like, though. [02:25] I was requested to put xorg-server in the landing. Don't know why we need it there.. [02:26] I think we bumped client ABI, so it needs a rebuild at least. [02:26] yeah, but it would be easier to just do it post hitting wily [02:28] Yeah, but then untested code is hitting wily!!!!111111 [02:58] Ah. [02:59] It's always helpful when exceptions are silently discarded, and the only visible result is that everything locks up... [03:00] *Of course* wayland buffer stride is in pixels, mir buffer stride is in bytes. === chihchun_afk is now known as chihchun [03:48] RAOF: I had a similar issue yesterday. Found a way for my client to make the server segfault but it was hidden. That's a regression of bug 1237332 that Alan intentionally made :( [03:48] bug 1237332 in mir (Ubuntu) "Fatal exceptions raised in a compositing thread have no usable stack trace" [Critical,Fix released] https://launchpad.net/bugs/1237332 [03:48] Well, related bug [03:49] The problem is the "fix" for bug 1285084. We should not have fixed it at all. [03:49] bug 1285084 in Mir "Exceptions are raised in a compositing thread and not handled" [Undecided,Fix released] https://launchpad.net/bugs/1285084 === duflu_ is now known as duflu === chihchun is now known as chihchun_afk === chihchun_afk is now known as chihchun [04:33] hm could you also upload that for vivid? [04:33] robert_ancell: ^ that = xorg-server [04:33] or is the version different? [04:34] anpok_, I have been trying to but it keeps rejecting the upload. I think we have to give it a special version number so it doesn't complain about two versions. [04:35] Yeah, you can't upload the same thing to two different series. === chihchun is now known as chihchun_afk [04:48] ok, uploaded as 2:1.17.1-0ubuntu5~vivid [05:02] If only there was a way to make libmirclient8 and libmirclient9 both official at the same time. Then most downstreams would not need updating immediately [05:03] You can have both installed at once. Just not both in the distro at once, kind of, except for the release!=proposed period [05:15] * RAOF wants to set fire to GLibMainLoop. [05:15] But will instead head to the shops. [06:20] hm we still could resurrect the asio loop [06:21] It's not *that* bad :) [06:21] duflu: scroll down.. there is predictive user input! http://blog.mattbierner.com/stupid-template-tricks-super-template-tetris/ [06:22] well .. picking up idle tasks from dead instances.. [06:22] provoking fancy invalid instruction crashes .. [06:22] Heh. [06:23] asio only has face palms and odd hand wavings.. [06:23] [06:25] asio is a four letter word. But seriously, I've never seen asio do anything worth using in production. It's generally terrible. [06:25] Way over-complicated and not even documented in a way that makes it comprehendable [06:26] My first encounter with asio was its regex library (which compiled to multiple megabytes and caused some compilers grief). So I replaced it with something 10kb in size [06:26] Thus, asio is often and generally a joke [06:27] A bad joke people keep telling [06:27] Anyone feel like adding some utility code for turning a std::function into a raw function pointer? [06:28] * duflu needs to see the outside world for a little while at least once today [06:29] asio has no regex but .. i guess you mean xpressive .. which is very expressive.. [06:29] RAOF: hm how raw? [06:29] anpok_: Passable-to-C raw. [06:29] It's perfectly possible if you don't mind generating the trampolines. [06:29] so .. void call_it(void*) ? [06:29] anpok_: Sorry I meant boost is generally terrible. Asio is part of boost, no? [06:30] * RAOF would just *really* like to be able to pass some bound member functions to a C interface. [06:30] But asio is worse than the boost average even [06:30] hm it is simpler if you dont use std::function in between.. [06:31] anpok_: Hm. Howso? [06:32] hm .. ok nah doesnt matter much because you have to pass in objects anyhow.. [06:32] i just thought you could get away with encoding everything inside the type [06:32] I... don't think so? === mibofra is now known as Guest54792 [07:02] ah you cannot move it === chihchun_afk is now known as chihchun [07:10] RAOF: http://paste.ubuntu.com/11814229/ something like that? [07:11] one could do it fancier if I knew how to extract the signature from a lambda === rsalveti_ is now known as rsalveti [07:12] ... i.e. avoid the functio.. but on the other hand the c code does not take ownership of the function<..> so the creator needs to keep it alive.. and for that function seems to be a good pick === mapreri_ is now known as mapreri [07:16] anpok_: Na, something more like http://paste.ubuntu.com/11814245/ [07:18] Was what I was thinking of, but your simpler thing might be enough for what I'm considering. [07:18] And involves less runtime codepatching. [07:19] hm but you need the address somwhere.. unless of course if you squeeze the adress of the functio<> into a symbol with external.. [07:19] then it can be a template param.. [07:19] *external linkage [07:21] No, no. It's simple. You have a static thunk with a placeholder guard value; you copy the code into memory your trampoline object owns, adjust the guard value to point to the std::function<> that your trampoline object owns, and then return that :) [07:21] hehe yeah simple [07:22] Not portable, of course, but the number of segmented memory architectures we care about can be counted on the fingers of one fish. [07:22] thats what encoding the address of the function into a template param would do.. [07:22] function<> [07:24] Hm. How could you do that? [07:25] Or, at least do that in a way that doesn't require a type+external singleton per trampoline? [07:25] * RAOF goes to get some fish. === chihchun is now known as chihchun_afk === chihchun_afk is now known as chihchun [08:02] RAOF: http://paste.ubuntu.com/11814351/ .. enough fun.. === mibofra is now known as Guest66587 === chihchun is now known as chihchun_afk === chihchun_afk is now known as chihchun === chihchun is now known as chihchun_afk [11:57] anpok_: ping [11:58] pong [12:03] anpok_: hey, need your help testing usc with your mir overrideorientation work. Can you check out lp:~unity-team/unity-system-compositor/toggle-cursor2/ please [12:04] I'm running it, and wanting to test the dbus method [12:04] (install qdbus-qt5) [12:05] sudo qdbus --system com.canonical.Unity.Screen / com.canonical.Unity.Screen.overrideOrientation 0 2 [12:05] is the call I'm using. The first param is the display id, the second is the desired orientation [12:06] anpok_: aha, I'm an idiot [12:06] ignore me === chihchun_afk is now known as chihchun === chihchun is now known as chihchun_afk === chihchun_afk is now known as chihchun === chihchun is now known as chihchun_afk === Guest66587 is now known as mibofra [13:21] greyback_: which channel do you use as a basis for silo-000 [13:22] anpok_: rc-proposed [13:24] i guess I have to reflash [13:24] it is just getting hot while showing the logo [13:25] anpok_, MX4 ? [13:25] n4 [13:25] oh [13:26] i guess it was my fault [13:26] .. dist-upgrade instead of citrain script .. or installing them individually [13:27] yeah, the citrain script turns off access to the archive [13:27] so you only get PPA contents [13:27] if you do a normal dist-upgrade you will get archive bits along === dandrader is now known as dandrader|afk === dandrader|afk is now known as dandrader === dandrader is now known as dandrader|afk === dandrader|afk is now known as dandrader === dandrader is now known as dandrader|afk === dandrader|afk is now known as dandrader