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

tmpRAOFHm. So, the libmirprotobuf rabbit-hole.01:56
=== tmpRAOF is now known as RAOF
RAOFI have a number of possible hacks, each more awkward than the last.02:02
* duflu wonders if a swear jar is required for lib*protobuf02:26
RAOFI think I'm going to plump for “assert that we'll be able to fix this before we need more than 2^31 surface IDs and abuse the highest bit of output_id to indicate that there's a follow up message coming”.02:30
=== chihchun_afk is now known as chihchun
RAOFif (id & 1<<31)05:42
RAOFAww, yeah.05:42
RAOFHuh.06:21
RAOFWhy do we have both SurfaceCreationParameters and SurfaceModifications, I wonder.06:22
RAOFs/SurfaceModification/SurfaceSpecification/06:22
=== ara is now known as Guest36049
greyback"SurfaceParameters" to be consistent?06:30
RAOFYeah.06:31
RAOFI'm not sure why we have two different structs for ‘here are the properties of this new surface’ and ‘here are the new properties of this surface’06:31
RAOFHm.06:31
RAOFNow that I say that... apart from the only-these-properties changed thing.06:31
RAOFSo, yeah, that's actually totally fine.06:31
* RAOF decides not to write a test that Mir correctly returns an error when a client tries to create 2^31 surfaces.07:45
alf_RAOF: Hi! Did you have a chance to take a look at the glmark2 package?07:48
RAOFalf_: Oh, sorry. Not yet.07:49
RAOFI'll just get to that before EOD.07:49
alf_RAOF: no worries, thanks07:49
RAOFalf_: Any reason for it to be arch restricted anymore? Mir builds everywhere now.07:52
alf_RAOF: Even the archive version?07:53
alf_RAOF: (no reason on the glmark2 side)07:54
RAOFI'm pretty sure wily has an everywhere-built mir, but rmadison is being *super* slow to verify that for me :)07:54
RAOFYup.07:55
alf_RAOF: ok, I will update the package then07:55
RAOFI can do it if you like.07:56
RAOFIt otherwise looks fine, so I'll upload.07:56
alf_RAOF: Sure, go ahead then. Thanks!07:56
RAOFalf_: glmark2 uploaded. Enjoy.08:08
alf_RAOF: thanks08:45
alan_ggreyback: I'm working on the "system compositor" logic and just wanted to check something you probably know. Mir's nested server logic creates a fullscreen surface in the host for each display it uses. I don't see that U8 would want anything else, but could it?08:56
greybackalan_g: I can think of no reason why it would want a non-fullscreen surface08:57
alan_gThanks.08:57
duflualan_g: Fullscreen also means we get bypass/overlays, which is a very good thing09:07
alan_gduflu: yes, my thinking was that for a system compositor we disallow anything else09:08
duflualan_g: "Disallow" is probably too strong a word. Examples of non-fullscreen surfaces could be transitions between sessions, or on-screen keyboards for login09:09
=== tvoss is now known as tvoss|test
=== tvoss|test is now known as tvoss
alan_gHmm. Would an OSK be a client of the system compositor?09:12
duflualan_g: Perhaps. But one of the main reasons for nesting is transitions. And that can involve sliding (hence surfaces not fullscreen briefly)09:15
dufluOh, actually they are fullscreen. Just animated to not look fullscreen09:15
alan_gduflu: I was referring to surfaces a client can create, not what the host can do internally09:16
dednicktvoss: https://docs.google.com/spreadsheets/d/1g1u3RjukeEdTAk0WPHsVuf42apVm3iepMdC82oJ1TcA/edit#gid=117640292010:27
dednickah, actually, the server is a mix of two. let me separate10:30
tvossdednick, mind increasing the sample size such that distribution characteristics become a bit more apparent?10:32
dednicktvoss: ok10:33
tvossgreyback_, ^10:34
greyback_+110:34
tvossdednick, any chance you automate creation of those histograms? R is pretty helpful in doing that stuff10:39
tvossdednick, also: validateAndDeliverTouch - dispatchTouch is interesting10:40
tvossdednick, probably more interesting than the per event timings, although we could leave those in, too10:40
dednicktvoss: probably could do. if you think it's worth putting the effort in. never used R though, so may take some time.10:43
tvossdednick, okay, let's do this in gdocs for now, but we should look into automatically generating reports like this10:43
tvossdednick, not necessarily you, though :)10:43
dednicktvoss: :) ok10:43
greyback_we were discussing this at our sprint in dallas, so it's a work item somewhere on the mir team's plate10:44
tvossgreyback_, I think want similar reports for u8, too10:47
tvossgreyback_, it's probably as easy as emitting an lttng event10:47
greyback_tvoss: ofc, I wanted them to have a reporting interface u8 could link into10:47
alan_galf_: I've been playing with system compositing/guest compositor on my desktop and have seen some intermittent problems with vt switching, closing the nested session and fatal errors in RealKMSOutput::clear_crtc(). Is there any chance that the "platform" in the nested session if fighting with the host over the hardware? Do you know where I should start looking?10:56
dednicktvoss, greyback_ : updated with increased sample size10:59
tvossdednick, does that have the difference, yet?11:00
dednicktvoss: difference?11:00
alf_alan_g: The nested platform doesn't (shouldn't) have access to the display hardware at all, so it's unlikely that there is a conflict there. At some point Intel had some problems with VT switching, and perhaps it still does.11:01
tvossdednick, the difference between validateAndDeliverTouch and dispatchTouch for server11:01
dednicktvoss: ah. no11:01
alan_galf_: that's how I thought it should be. I'll see if I can nail down a repeatable scenario (ideally without a VT switch).11:03
anpok_dednick: Diff is the time the event spends within the event loop?11:04
anpok_or the qtquick scene dispatch..11:04
dednicki'm adding now11:04
anpok_kernel version?11:06
anpok_@vt switching problem?11:06
anpok_oh ok scrolling back .. i only experienced system freezes and kernel panics.11:07
dednicktvoss, greyback_ , anpok_ : diff is on now.11:11
tvossdednick, greyback_ so seems like the majority lies around 15ms11:11
anpok_diff is difference between two events?11:12
dednickya. problem is that it's not the majority we're worried about. most of scrolling is smooth, but it's the outliers that's causing the problems.11:12
tvossdednick, I think you are not calculating the diff between timestamps, but the diff between event timestamp deltas11:12
dednickhm. actually not sure if diff is showing anything in this case. we need to do timestamps11:13
dednickya11:13
tvossdednick, yup11:13
anpok_oh so diff is between receive and send?11:13
dednickgreyback_: what do we get first? the qtmir event feeder event? or the MirSurfaceItem event? it's the feeder right? just need to make sure things are actually in sync11:18
greyback_dednick: feeder11:18
greyback_that pushes the events onto qt's event loop, which trickle through the scene, until they hit a MirSurfaceItem, where they dispatched to client11:18
dednickright. that's from u8 surface as client in usc11:18
greyback_yep11:19
dednickexcellent...11:19
dednicktvoss, greyback_ , anpok_ : diff is on a new sheet11:28
tvossdednick, awesome11:28
greyback_interesting long tail11:29
greyback_dednick: I'd be curious if turning off Qt's input event resampling has any impact on that graph11:30
dednickgreyback_: the compression?11:31
greyback_dednick: yea11:31
greyback_h11:31
dednickgreyback_: this is without compression11:31
greyback_dednick: ah ok11:31
dednickmight be interesting to see it with.11:31
dednickalthough i wonder if the events won't line up anymore11:32
dednicknot 1 to 1?11:32
greyback_that is what we're using right now11:32
greyback_would be nice to know what the main loop is doing on those slow dispatch times11:35
dednickso the diff here is between the QtEventFeeder and the MirSurfaceItem, both on server. need to check between QtEventFeeder and client as well probably.11:35
dednickalthough that's just measuring latency11:40
dednickmajority is around 25ms latency between server->client. But plenty outliers. Particularily worring are a few in the order of 100's of ms.11:45
dednickbetween 500ms and 1300ms.11:46
anpok_O_O11:46
dednickassuming all my data is correct. but should be able to see if it wasn't (should slowly go totally out of sync if it wasn't aligned).11:47
=== alan_g is now known as alan_g|lunch
tvossanpok_, could you provide your packages for the non-resampling version to dednick?12:15
anpok_tvoss: i used the MIR_CLIENT_INPUT_RATE=0 setting12:21
anpok_which passes -1 to the consumer..12:21
tvossanpok_, okay12:21
dednickare the stamps at start of a mir log timestamps?12:22
dednick[1434111685.022267] input: Received event finished ....12:23
anpok_yes12:28
anpok_seconds.microseconds12:29
dednickgraphed the android input channel as well.12:36
tvossanpok_, you sure that those are milliseconds?12:39
tvossdednick, is that server or client?12:40
anpok_micro12:41
anpok_code does "tv_sec and tv_usec/100012:41
anpok_what are you looking at?12:42
tvossandyrock, https://docs.google.com/spreadsheets/d/1g1u3RjukeEdTAk0WPHsVuf42apVm3iepMdC82oJ1TcA/edit#gid=209241450912:42
tvossanpok_, https://docs.google.com/spreadsheets/d/1g1u3RjukeEdTAk0WPHsVuf42apVm3iepMdC82oJ1TcA/edit#gid=209241450912:42
anpok_thats the time difference between two event..12:44
ChrisTownsendahayzen: Hey, are you around?  Following up on your unity8-lxc issue from yesterday.12:44
tvossanpok_, sure, asking for the unit :)12:45
ahayzenChrisTownsend, i'm at work at the moment so will be about later, but i managed to get a full unity8 log http://pastebin.ubuntu.com/11698632/ which shows some errors, and it was unity8 and ms2 using ~90% cpu each12:49
ChrisTownsendahayzen: Ok, I'll look over your log.   Just ping me later when you have some time.12:50
ahayzenthanks12:50
ChrisTownsendahayzen: Sure.  Just looking at that error, it seems the Mir version in the container is out of date.  When you begin to look at this, let' start from a fresh baseline.  Do 'sudo unity8-lxc-setup --rebuild-all --redownload' and then try it again.  If it still fails, then we'll dig deeper.12:53
ahayzenChrisTownsend, cool thanks12:53
=== alan_g|lunch is now known as alan_g
anpok_average time diff between events is 13ms in my sample set .. but like 93% are in  the range of 8ms to 10ms12:58
dednicktvoss: the andoid channel? it's u8 process. MIR_SERVER_INPUT_REPORT14:04
tvossdednick, ack14:07
alan_galf_: the Ctrl+Alt+Fn event to request VT switch ought to be handled in the host server right? I've discovered a way to hang input in a *nested* server and that prevents the request being serviced. (I can 'chvt n' perfectly well from ssh)14:22
=== infinity1 is now known as infinity
=== chihchun is now known as chihchun_afk
=== alan_g is now known as alan_g|EOW
attentehi, is the mir demo server working for anyone? i'm getting an error: <ERROR> mircommon: Failed to load libraries from path: /home/william/Code/jhbuild/install/lib/mir/server-platform (error was:No such file or directory)17:16
anpokattente: you might not have the mir-graphics-drivers-desktop installed?17:18
anpokoh17:18
anpokthats from a build dir..17:18
attenteanpok: i just built it from trunk17:18
attentefor some reason it didn't install into that directory but i'm not sure why17:18
anpokok .. you can either change CMakeCache.txt by switching the platforms built to :17:18
anpokMIR_PLATFORM:=STRING=mesa-kms;android17:19
anpok(it was renamed)17:19
anpokor redo the build directory17:19
attenteanpok: oh ok, thanks. should i file a bug for that?17:19
anpokhm17:19
attenteoh. it's already like that in CMakeLists.txt though17:20
anpokit is not really a bug.. in theory MIR_PLATFORM is a developer setting..17:20
anpokso since that value already exists17:20
anpokwhen the change came17:20
anpokcmake did not overwrite it..17:20
attenteanpok: ok, i see what happened thanks. i was in an older source directory17:25
=== tvoss is now known as tvoss|test
=== tvoss|test is now known as tvoss
=== Trevinho is now known as Trevinho|Holiday
ahayzenChrisTownsend, if your about, i totally forgot I got this when i installed http://pastebin.ubuntu.com/11703788/ not sure if it affects the welcome wizard not working?19:03
ChrisTownsendahayzen: That looks normal.  I have to install upstart and remove systemd in order for it to work.  LXC and systemd do not mix in this instance, at least the last time I tried.19:06
ahayzenChrisTownsend, ok just wanted to check :-)19:06
ChrisTownsendahayzen: Yeah, kind of looks scary if you don't now what's going on.19:06
ahayzenright time to switch sessions and see if it does its normal thing...19:07
ahayzenChrisTownsend, OMG it works \o/19:10
ChrisTownsendahayzen: Awesome!19:11
ahayzennow onto the next issue... why when i hold my finger in a static position on the touchpad does my mouse move? lol19:11
ChrisTownsendahayzen: popey is also all taken care of, so my work is done:)19:11
ahayzen\o/19:11
ChrisTownsendahayzen: That touchpad issue is probably something in Mir.19:12
ahayzenChrisTownsend, thanks for your help getting me running anyway :-)19:26
ChrisTownsendahayzen: Sure, you're welcome!19:27
anpoktvoss: i think i really had corrupted data sets..19:39
anpokbut only a few measurements are affected19:40
anpoktwo of the timestamps i care about are in the distant future19:40
=== chihchun_afk is now known as chihchun
=== mibofra is now known as Guest93939
=== ahayzen_ is now known as ahayzen
=== Guest93939 is now known as mibofra

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