/srv/irclogs.ubuntu.com/2013/08/29/#ubuntu-mir.txt

bschaeferRAOF, though whats strange is:00:00
bschaeferhttp://paste.ubuntu.com/6038461/00:00
bschaeferit has a XMIR-1 display added in?00:00
bschaeferbut not connected...00:00
bschaeferannd yeah changing the res sends me back to lightdm00:02
bschaeferRAOF, if you're interested in the stacktrace in my Xorg.0.log:00:05
bschaeferhttp://paste.ubuntu.com/6038469/00:05
RAOFTa.00:08
RAOFbschaefer: And, as usual, you can't get a proper trace out of that, can you?00:11
RAOFbschaefer: OH! Did you get an apport crash report out of that?00:11
bschaeferhmm00:13
bschaeferRAOF, im not sure, I usually don't use apport :)00:13
* bschaefer checks00:13
RAOFBecause you can post-process that locally to get a symbolic backtrace, using apport-retrace.00:13
bschaeferlet me see if I can get a real backtrace...00:14
bschaeferas that one is pretty useless :)00:14
bschaeferRAOF, hmm I don't seem to have a *.crash file from today ... besides the hud service...00:16
RAOFDelete any existing Xorg crash file, and then crash it again :)00:17
bschaeferalright!00:17
bschaeferRAOF, cool got a *.crash file, now to run it through apport...00:30
bschaeferit doesn't crash very often though00:31
RAOFOh, it doesn't dependably crash when you change resolution?00:31
bschaefermost the time it was changing the res, but lots of graphic problems00:31
bschaefernope!00:31
bschaeferill upload an image of what it looks like...but it looks baaad00:31
bschaeferfinally got a crash though00:31
bschaeferRAOF, http://i.imgur.com/dKiZNKY.jpg00:37
bschaeferwhen it does work00:37
RAOF404'd!00:37
bschaefer:(00:37
* bschaefer tries a different site?00:38
bschaeferRAOF, or possibly this: http://imgur.com/dKiZNKY00:38
RAOFWhee!00:39
bschaeferstrange, o well but yeah, I think I saw similar rendering issue with other testers?00:39
bschaeferbut things are rendering fine when I don't force the res00:40
bschaefer:(00:47
bschaeferBacktrace stopped: previous frame inner to this frame (corrupt stack?)00:47
RAOF:(00:51
RAOFbschaefer: There'll be a shiny new -ati to test in qa-testing2 shortly.00:52
bschaefersweet, I can give that run00:53
* bschaefer attempts the apport-retrace again...for the hell of it00:53
bschaeferRAOF, i've also just realized I pulled the packages directly from qa-testing2, instead of adding that ppa...01:03
bschaeferwhich im guessing means it can't find the correct packages for the sandbox...01:03
* bschaefer adds pps01:03
bschaeferppa*01:03
RAOFbschaefer: That would be correct, yes.01:12
RAOFbschaefer: You're looking for xserver-xorg-video-radeon 7.2.0-0ubuntu3+xmirMM401:13
bschaeferRAOF, the new one?01:14
* bschaefer just added the ppa, and is redoing the apport-retrace01:14
RAOFYeah. That's the one to test next.01:14
bschaefercool, ill test it out after this (hopefully) new retrace attempt01:15
bschaeferhopefully successful*01:15
bschaeferRAOF, stracktrace: http://paste.ubuntu.com/6038660/01:23
bschaefer        pid = -122216038401:24
bschaeferdoesn't like good :)01:24
RAOFsrc_obj = {pitch = 1280, width = 3093165488, height = 3086817120, bpp = -1237450752, domain = 3093165488, bo = 0xb8560c28, tiling_flags = 3086729320, surface = 0xb63a06d6 <RADEONEXASetSharedPixmapBacking+70>}01:25
bschaeferyeah I just saw that as well01:25
bschaefersame with dest_obj01:25
bschaeferdst_obj*01:25
RAOFI believe that's fixed in MM401:25
bschaefersweet, let me give that a run01:26
* bschaefer reboots01:29
bschaeferRAOF, just to double check, just asserting that that crash ins't happening?01:37
bschaeferafter ~3 attempts no crash, but still have to reboot after the screen goes crazy :)01:37
RAOFHm.01:37
RAOFScreen going crazy is not expected. :01:37
RAOF:/01:37
bschaeferRAOF, I could also be forcing the res in an odd way01:37
* bschaefer paste bin commands01:37
bschaeferRAOF, http://paste.ubuntu.com/6038680/01:38
RAOFOk.01:39
RAOFHuh.01:39
bschaeferused: cvt 1280 720 to get the modeline01:39
RAOFWhy do you need --newmode?01:39
RAOFThat won't work :)01:39
bschaeferRAOF, excellent, I just quickly looked up how to change the res using xrandr...01:39
bschaeferRAOF, I should just have to do:01:40
RAOF“xrandr -q” should list the valid modes, then you can just xrandr --output XMIR-0 --mode $EXISTING_MODE01:40
bschaeferxrandr --output XMIR-0 --mode 1024x768?01:40
bschaeferalright, ill give that a try then01:41
bschaeferRAOF, :( screen still went crazy....01:44
RAOFHm.01:44
* bschaefer checks logs for anything01:44
bschaefernothingis crashing though01:44
RAOFGot dmesg / Xorg log?01:44
bschaeferRAOF, hmm let me past the xorg log/dmesg but Its hard to read them with such a small screen :)01:46
RAOFYou should be able to just use pastebinit, right?01:47
bschaeferyeah I can: http://paste.ubuntu.com/6038693/01:47
* bschaefer likes to be able to attempt to read them01:48
bschaeferdmesg: http://paste.ubuntu.com/6038696/01:50
* bschaefer looks at the kern log01:50
RAOFAh. You haven't tried to change the mode yet?01:54
bschaeferRAOF, ?01:54
RAOFbschaefer: The xorg log doesn't seem to contain an attempt to change the mode from the default.01:55
bschaeferRAOF, hmm I wonder if I grabed the wrong one?01:55
RAOFMayhap.01:55
bschaeferi used Xorg.0.log.old...assuming it was the last one01:55
* bschaefer attempts the mode change again looking at the current time...01:56
bschaeferRAOF, hmm my Xorg has the correct time, but I don02:02
bschaeferdont see it trying to set it...02:02
RAOFThat is odd.02:04
bschaeferi have a bunch of extra bytes at the end of the file though...02:04
dufluRAOF: Those little horizontal lines with intel+XMir+bypass, they seem to be on damage rect boundaries... ?02:05
RAOFduflu: Not really, no?02:05
bschaeferRAOF, which when I try to open it in gedit says there an encoding error...I wonder if it was failing to get logged to...02:05
bschaeferlots of: \0002:06
RAOFbschaefer: Hm, maybe?02:06
* bschaefer has no clue how that would happen02:06
bschaeferRAOF, should I try turning all the debugging messages back on?02:06
bschaeferand try to get some logs from the kern.log?02:07
RAOFHm, maye?02:07
bschaeferwouldn't hurt at this point at lease...02:07
bschaeferRAOF, would setting the drm.debug thing even work for this?02:11
* bschaefer also forgot the path to it...and does't have the log saved02:12
* bschaefer found it..02:13
bschaeferwell wouldnt hurt02:13
bschaeferRAOF, yay the Xorg log is showing it now...02:21
RAOFWoot!02:21
bschaeferhttp://paste.ubuntu.com/6038776/02:21
bschaeferbut no errors in it...02:22
bschaeferat lease that I see :)02:23
* bschaefer wonders if its having a problem cause one monitor is still the 640x480 res02:26
bschaeferas things are mirrored atm02:27
RAOFHrm. Stupid qa-testing2 ppa building against the archive...02:31
RAOFHm. Ok, that looks pretty standard.02:32
* RAOF wonders if he can trigger this on his radeon.02:32
bschaeferI wonder if its cause im setting a mirror monitor to a res that is not supported by the other02:33
bschaeferthe only one that overlaps is 640x48002:33
bschaeferRAOF, well im going to head off for the night and eat some dinner, hopefully its reproducible else where :)02:35
RAOFYeah.02:36
RAOFHave nice dinner!02:36
bschaeferthanks! If I find any other info Ill poke you tomorrow02:36
bschaeferor if you want me to test anything else out02:36
RAOFYay! Reproducible locally!02:40
kgunnRAOF: did anyone tell you?....nouvea w/ latest drivers from qa-testing2 will boot to usable unity single screen02:49
RAOFkgunn: But not more than one screen?02:50
kgunnRAOF: nope....but gagnon tried with standalone X and it wasn't happy02:50
kgunni'm convinced nouveau is just a mess02:50
kgunnbefore we stirred the pot02:50
=== chihchun_afk is now known as chihchun
duflurobert_ancell: I only heard underwater mumbles half the time :/03:35
robert_ancellduflu, awesome03:36
robert_ancell:)03:36
duflurobert_ancell: So which should I expect to be landing first? bypass or timerless?03:43
robert_ancellduflu, probably bypass03:43
dufluOK, removing one of the timerless branches then03:44
robert_ancellduflu, does that make it easier to land timerless?03:44
dufluYes03:44
tvoss__good morning04:28
tvoss__RAOF, ping04:31
RAOFtvoss__: Pong.04:31
robert_ancellbbiab04:35
tvoss__kgunn, ping04:36
kgunntvoss__: pong04:38
mlankhorstmorning05:17
RAOFmlankhorst: Speak of the devil!05:23
* robert_ancell -> dinner etc, will be back later05:27
dufluOh multi-monitor is so much less annoying when none of them are analog VGA05:29
RAOFYeah, I'm trying to rid the world of VGA interfaces.05:32
dufluEspecially when my oldest monitor misdetects the VGA signal most of the time05:33
RAOFYou know, it'd be much easier to debug bypass if my radeon card didn't work perfectly with it.05:34
dufluRAOF: Good to hear, kinda. I'm working on a setup to try radeon+saucy here too05:45
dufluOh, new saucy wallpapers?!05:47
dufluAhem, wallpapers for saucy05:48
RAOFTo the multi-monitor-bypass-testotron!05:48
RAOFHeh.05:48
dufluRAOF: Do you have a solid indication it is bypassing on radeon? Like performance?05:52
duflu... lack or mouse lag?05:53
RAOFOk. As long as you don't mind waiting a couple of frames for all your rendering to appear, multimonitor+bypass on Intel wors.05:53
RAOF*works.\05:53
dufluRAOF: Yeah that was true without bypass too, but I think the out-of-order-ness is worse with bypass05:53
RAOFOh, no.05:53
RAOFThis isn't out of orderness.05:53
RAOFAnd I'm *not* seeing the same out-of-order problems. At least at the moment.05:54
RAOFI'm talking about the rendering "teleporting in" in horizontal lines.05:54
dufluRAOF: Yeah saw that (less so) with intel bypass single monitor too05:55
RAOFRight.05:55
dufluAnnoyingly, only on the XMir surface05:55
mlankhorstRAOF: did you fix ati? :P05:55
RAOFmlankhorst: By setting the window pixmap of all the children of the root window that share the root window's pixmap.05:57
RAOFI presume by "fix ati" you're talking about mode changing here?05:57
mlankhorstytes05:57
RAOFYeah.05:57
RAOFDid nouveau work with modechanges? I'd expect it to suffer the same problem.05:57
duflubrb05:58
mlankhorstRAOF: did you upload a version bump to mir so it's easier to test? :p05:59
RAOFNo; I'll do so now.06:00
* mlankhorst slowly wakes up06:03
RAOFmlankhorst: Got any idea what might cause this: http://ubuntuone.com/08RzJfgwUfZd1LigIS16Mh particularly fun brand of misrendering?06:22
mlankhorstRAOF: forgetting to flush maybe?06:25
RAOFThat thought occurred06:26
mlankhorsttry damaging the whole screen and see what happens..06:27
mlankhorsthm compiz already should, though06:27
duflumlankhorst: I tried that. No change06:29
mlankhorstduflu: might be a driver bug or something :P06:30
RAOFI suspect it might be a cache-coherency problem that ickle warned me about.06:30
dufluDoes intel need/use the "dirty/clips" feature of DRM? I thought it was only vmware that did06:31
RAOFfbc might interact with that?06:31
mlankhorstoh is it intel?06:31
RAOFYad06:32
dufluYes06:32
RAOFYah06:32
mlankhorstyeah probably something like that06:32
dufluRAOF: What was the cache coherency warning?06:32
duflubrb06:33
RAOFmlankhorst: xserver MM16 awaits your attention06:34
mlankhorstwhat do you want me to test?06:34
RAOFnouveau MM06:35
RAOFIf that didn't work before.06:35
RAOFduflu: I forget the details, but I half-remember that there was special cache invalidation magic needed when doing things to the framebuffer that mesa doesn't do?06:36
dufluRAOF: AFAICT, we're not doing anything Mesa doesn't do. I keep searching the Mesa sorce06:36
dufluBut I'm probably wrong06:36
RAOFWe'll, we're calling drmModeAddFB and drmModePageFlip, which mesa doesn't do :)06:37
dufluRAOF: Oh just SetCrtc?06:37
RAOFMesa doesn't do that, either.06:37
dufluRAOF: ??06:37
RAOFMesa doesn't do any of the modesettingy stuff; it leaves that for X to do.06:38
RAOFAnd X leaves that for the DDX to do.06:38
RAOFExcept we don't let the DDX do what it was doing, and we do our own thing.06:38
dufluRAOF: So we need to copy some magic from DDX into Mir?06:38
RAOFMaybe06:39
dufluThe old DDX06:39
* duflu now has new source to examine06:39
dufluBTW, my experiment to get saucy on radeon has now failed06:39
dufluThe machine fails to boot for new unknown reasons06:39
mlankhorstRAOF: hm could you MIR libjsoncpp? :P06:40
mlankhorstbuild-dep for llvm-toolchain06:40
RAOFmlankhorst: I can't promote it myself; is there a MIR already filed?06:40
mlankhorstit hm don't know if there is, but it was always a build-dep for llvm, but llvm-toolchain-3.3 had some package modifications to use an external copy06:41
RAOFHow did llvm build before if it always build-depended on a package not in main?06:45
mlankhorstit had an internal copy :P06:45
RAOFHeh06:45
mlankhorstI suppose I could make a MIR for it, but I feel it's a bit of overkill06:46
mlankhorstbah it moved llvm-toolchain-3.3 back to universe06:47
tvossduflu, one thing I noticed yesterday: we never "release" the BufferObject for the scanout bo06:51
duflutvoss: I thought  there was a devious and non-obvious path where it was released. Will check again. It's certainly different to the default front_buffer as far as GBM is concerned06:52
tvossduflu, as I understand it, the buffer object is never released until destruction06:54
duflutvoss: Oh. Yes we do delete it correctly. And the "release" call would be erroneous (and crash from memory) on the bypass buf. Because that applies to gbm surface-specific bo's06:55
tvossduflu, might be good to have a different type to wrap the buffer object, then. But that's for later06:56
duflutvoss: You're only meant to gbm_surface_release_buffer on things which come from gbm_surface_lock_front_buffer06:56
tvossduflu, one other thing: if a bypass buffer is provided, we never eglswap06:56
duflutvoss: Correct! Bypass means no GL-anything!06:56
tvossduflu, ack06:56
tvossduflu, if only that was documented somewhere ;)06:56
duflutvoss: Fair point. But it's interesting when you realise you can composite without any GL06:57
RAOFWell, we're not actually compositing anything.06:57
dufluTrue06:57
dufluKinda06:57
RAOFIf we used overlays then we *could* be compositing and bypass at the same time.07:03
duflu... it opens up doors like Mir supporting non-GL platforms in a limited fashion07:04
* tvoss points out that we have a weird cache invalidation thingy to fix first07:05
dufluRAOF: Already with the hardware cursor (works over bypass)07:05
dufluBTW, I think I observed a noticeable improvement with timerless on radeon with dual monitors. I think...07:18
sil2100Hi everyone07:30
duflusil2100, morning07:31
sil2100Did all the branches needed for bypass and multimonitor get merged into trunks already?07:32
sil2100Of mir and unity-system-compositor?07:33
duflusil2100: Not yet. Happening now07:33
tvosssil2100, I will keep you posted as merges are happening07:33
tvosssil2100, makes sense?07:33
sil2100duflu: can you poke me when that's done? And which components have changes that need releasing? Since I'd like to get it out today07:33
sil2100tvoss: thanks!07:33
duflusil2100: Yep07:51
hikikohi, question: what's the drm interface version? is it the library version or something else?07:52
dufluhikiko: I was wondering that myself. Seems unrelated to anything. And I was told that it doesn't get updated at all07:53
hikikoand it causes a bug in nested mir07:53
mlankhorsthikiko: no it's checking if dri2 is supported or not07:53
mlankhorstthat's all07:53
hikikoso, if I want to fix the bug on nested mir (which is: I don't have permission to set the drmInterfaceVersion to the device I want to use - which is usable) I have to find another way to check if dri2 is supported?07:55
mlankhorstjust assume it's supported tbh07:56
mlankhorstdid you try killing that check entirely?07:57
hikikoyes and it works fine07:57
hikikoif there's no other part of mir that uses it07:57
hikikothen I ll just do an mp07:57
hikikomlankhorst, duflu could you review it? https://code.launchpad.net/~hikiko/mir/mir.fix-drm-version/+merge/18283008:00
hikiko(i just removed the check)08:00
dufluWill do08:01
hikikothanks!08:01
dufluhikiko: Could that explain the strange DRM open failures some nvidia users get?08:02
mlankhorstduflu: that's.. more complicated08:03
mlankhorstbut link a bug?08:04
duflumlankhorst: bug 120663308:04
ubot5bug 1206633 in Mir "mir doesn't start "Error opening DRM device" on nVidia" [Medium,Triaged] https://launchpad.net/bugs/120663308:04
hikikothat's the error I was getting too08:04
hikikobut I don't know if that change solves it (I have an intel)08:04
mlankhorstsome calls require DRM_MASTER, but meh08:06
dufluWhich we have, maybe not soon enough?08:07
mlankhorstprobably not then08:08
alan_g\o/ bypass has landed08:08
hikiko:D08:08
mlankhorstand there can only be 1 master08:08
mlankhorstthis is legacy from dri1 :/08:08
mlankhorstduflu: it's complicated, there used to be a race between xorg-server, lightdm and plymouth, where lightdm could not detect plymouth..08:11
* duflu ducks08:12
mlankhorstI think if you start xorg-server before opening the drm fd in mir, you get the same kind of symptoms for a race..08:12
duflualan_g: I'm fixing timerless now. I don't care what the variables are called. *count/no/num ... pick one and I'll change them all08:13
dufluhikiko: You got the same exception with errno==0 ?08:14
alan_gduflu: I'm not blocking on the names - and *_sequence_number is a mouthful08:15
hikikono, with errno = 13 or so let me see08:15
dufluhikiko: Different bug. But it exists :)08:15
hikikoa yes the Success08:15
hikikolet me run it one more time08:15
hikiko:P08:15
dufluhikiko, Success or errno 13?08:15
alan_gduflu: *seq_no?08:18
hikikoI got the 1308:18
hikikoPermission denied08:18
hikikobut I think that at some point I got the success as well :S while debugging08:18
hikikoif I leave the check I get the 1308:19
duflualan_g: That's the one option I disliked. It is actually a count or frame number without gaps (on at least one or more monitors). So I think count/no/num is better08:19
mlankhorsthikiko: can you do lsof /dev/dri/*08:19
hikikoit doesnt return anything08:19
hikikoplymouthd  189 root   12u   CHR  226,0      0t0 8971 /dev/dri/card008:20
hikikoXorg      1988 root  mem    CHR  226,0          8971 /dev/dri/card008:20
hikikoXorg      1988 root   10u   CHR  226,0      0t0 8971 /dev/dri/card008:20
hikikoXorg      1988 root   42u   CHR  226,0      0t0 8971 /dev/dri/card008:20
hikikomir_demo_ 8375 root  mem    CHR  226,0          8971 /dev/dri/card008:20
hikikomir_demo_ 8375 root    9u   CHR  226,0      0t0 8971 /dev/dri/card008:20
hikikomir_demo_ 8375 root   10u   CHR  226,0      0t0 8971 /dev/dri/card008:20
hikikoouch08:20
hikikosorry08:20
hikiko://08:20
hikikoit was huge08:20
alan_gduflu: sync_counter?08:21
mlankhorsthikiko: yeah you still had some stuff open, can only run 1 at the same time08:21
duflualan_g: I think frame number is more self explanatory08:21
hikikomlankhorst, it seems that I have plymouth running after all :)08:21
mlankhorstindeed!08:21
alan_gduflu: ok [current|local|global]_frame_number08:24
duflutvoss: Do you want timerless done before we declare MM feature complete?08:25
dufluIt's not really critical08:25
tvossduflu, let's get it in if it does not break us08:26
duflutvoss: Still working on fixing it tho08:26
hikikomlankhorst, what do you mean I can only run one at time? only one can use the drm device at a specific time? (which means that I can't set the version to a device that is used although I can use the device?)08:26
tvossduflu, don't block on it08:26
hikikoI dont know if what I wrote makes sense :p08:27
mlankhorsthikiko: there can only be 1 master08:27
hikikoand when you set the version you have to be the master?08:27
mlankhorstyes08:27
mlankhorstand if nobody has the device opened, you automatically become master08:27
dufluIn that case, sil2100, bypass and MM are fully landed in lp:mir. There is no new version/tag yet. Usually robert_ancell does that08:27
hikikothen ok it's normal that only nested mir has the error08:27
robert_ancellyeah, I tag on mondays08:28
hikikobecause in my case I am not and I don't want to become the master08:28
robert_ancellduflu, you haven't landed MM right?08:28
duflurobert_ancell: I said lp:mir where it landed weeks ago08:28
robert_ancelloh, right08:28
mlankhorsthikiko: yeah if you get the fd from someone else, presumably you're already authenticated. it's a silly concept :P08:29
duflusil2100: But ask RAOF when the XMir parts are landing...08:29
alan_ghikiko: ( mlankhorst ) the fd should come from the hosting Mir session08:30
duflualan_g: Actually I just noticed freezing the count doesn't always freeze rendering. It probably should. So fixing...08:30
sil2100duflu: ok, anything else needs landing? Anything in u-s-c?08:31
duflurobert_ancell, ^08:31
hikikoalan_g, the host uses the drm device and then I create a drm device to create the gbm device and allocate a gbm buffer (because gbm depends on drm) but it's the host that renders on the screen and is the master08:31
robert_ancellsil2100, lp:unity-system-compositor and lp:lightdm are all up to date08:31
hikikoso while my device can be used I dont have the permission (since I am not a master) to set the version08:31
alan_ghikiko: you can get a pre-authorised from mir_connection_drm_auth_magic()08:32
hikikoyes08:32
hikikobut I don't want to do this08:32
hikikobecause I need to see on the screen08:32
hikiko(host mir does the rendering/vt etc)08:33
hikikowhat does mir_connection_drm_auth_magic() do exactly?08:34
mlankhorsthikiko: authenticate08:34
mlankhorstwhich involves guessing a 32-bit integer iirc08:34
hikikoyes, in nested mir I only authenticate when I need to use the display08:35
hikikoand I guess that's correct, because if nested mir is the master then the host mir won't render anymore08:36
hikikoand I will see a freeze08:36
hikikoisnt it?08:36
mlankhorstauthenticate != master08:36
hikikothen authentication doesn't solve the problem with the interface version08:37
RAOFmlankhorst: Did you get to test MM+nouveau?08:37
hikikothe initial problem was that I couldnt call the drmSetInterfaceVersion without being the master08:37
alan_gthe host remains master, but gives the nested the fd it needs. The host sets the interface version nested08:38
alan_gnested doesn't need to08:38
mlankhorstRAOF: i was busy with llvm and tjaalton's stuff :P08:38
RAOFmlankhorst: Yeah, thought so.08:38
hikikoalan_g, the problem is that in drm helpers we call the setInterface when we open the drm device08:39
hikikowhich is before authentication anyway08:39
hikikoand we use that code to check if the device we already opened08:39
hikikois "usable"08:39
hikikosorruy meeting brb08:39
mlankhorsthikiko: even authentication is not enough, requires master08:40
mlankhorstan authed client is something like glxgears, it can't touch the output mode or anything, but it can render and allocate buffers08:41
hikikocurrently I do: open_drm_device08:41
hikikoamd then authentication08:41
alan_gmlankhorst: that's what I understand hikiko needs for nested. It is "just" an auth client08:41
mlankhorstindeed08:42
mlankhorstbut drmSetVersion requires master :P08:42
mlankhorstso just kill it08:42
alan_ghikiko: don't do that - just get the fd from the master08:42
hikikoyes :)08:42
hikikothat's what I did08:42
mlankhorstok so erm nouveau mm testing..08:43
hikikoalan_g, I cant get the fd from the master08:43
hikikothe master must use it's own gbm device08:44
hikikobecause it might have other clients instead of mir on mir08:44
RAOFhikiko: Aren't you getting the drm fd from the PlatformPackage?08:44
hikikoPlatformIPCPackage?08:45
RAOFMirPlatformPackage, from mir_connection_get_platform08:46
hikikono because I don't get the platform08:46
hikikoI create a native platform08:46
hikikothat has it's own buffers08:46
hikikoI don't use mir buffers08:46
RAOFAnd you can't get the platform first?08:47
RAOFBecause mir_connection_get_platform will give you a fully armed and operation drm fd that you can create a gbm_device from.08:47
RAOFAnd then allocate buffers to your heart's content.08:47
alan_gRAOF: that's exactly what we want08:47
hikikoyes but the design we did was to have a native platform etc alan_g08:48
alan_ghikiko: What has that to do with this?08:49
alan_gThe native platform needs an FD. mir_connection_get_platform (I had the wrong function before) gets that FD08:51
mlankhorstRAOF: single monitor works :P08:51
tvossRAOF, what changes in Mir do you need landed for mm?08:52
RAOFtvoss: NOne08:52
hikikoyes just checking the MirPlatformPackage struct alan_g08:52
mlankhorsthm didn't crash on hotplug08:52
RAOFmlankhorst: And is displaying roughly correctly?08:53
hikikoRAOF, will this platform package give me the drm device of the host mir?08:53
mlankhorstRAOF: it would seem so08:53
RAOFmlankhorst: SHIP IT!08:53
hikikobecause this is not what I want08:53
RAOFhikiko: No, it won't give you the same drm fd that the host mir has open.08:53
mlankhorstRAOF: overlapping screen works correctly too08:54
RAOFhikiko: It will give you a drm fd that you can use for your own rendering/buffer allocation/etc.08:54
mlankhorstas does a hole between the screens :P08:54
RAOFOOoh, thorough!08:54
hikikoRAOF, also will it be the master?08:54
RAOFhikiko: No, but it will be authenticated.08:54
mlankhorstRAOF: well those would be the main usecases anyway..08:54
hikikocool then :)08:55
RAOFmlankhorst: And then it doesn't notice hotunplug? :)08:55
mlankhorstRAOF: no idea, I tried disabling both screens for fun, didn't work as intended :P08:55
mlankhorstmain screen turn on08:56
RAOF:)08:56
hikiko+question how is this fd allocated? if we call the open_drm_device in gbm_display_helpers we have the same problem :)08:56
hikikoI think that just removing the check is the best08:56
mlankhorstRAOF: so it seems the case of 0 monitors doesn't work correctly :p08:57
mlankhorstwhen doing xrandr --output XMIR-* --off for all outputs08:57
alan_ghikiko: if gbm_display_helpers doesn't do what you need don't use it08:58
RAOFmlankhorst: I'm a bit surprised that doesn't work, but that's an edge case I'm happy to fix in post :08:58
RAOF:)08:58
alan_ghikiko: or give it the function you do need08:58
dufluI'm sure someone logged a bug for that yesterday08:58
mlankhorstlooks like xorg didn't crash either :O08:59
hikikoalan_g, I ll just write a second open_drm_device that doesnt have the check of this branch: https://code.launchpad.net/~hikiko/mir/mir.fix-drm-version/+merge/182830 then and use it09:00
mlankhorstoh right didn't test normal shutdown yet09:00
mlankhorstgasp, no crash09:00
alan_ghikiko: ack09:00
mlankhorstnow the same, but with valgrind >:O09:01
RAOFmlankhorst: My code laughs at your petty memory-correctness tools!09:01
mlankhorstor does it? DUN DUN DUUN09:02
RAOFhikiko: It's still not clear to me why you need to open_drm_device at all?09:02
mlankhorstRAOF: haha i broke things, lets see if the panda has some debug output on serial console :P09:04
hikikoRAOF, I wont use mir buffers09:04
hikikoI will use native buffers09:04
hikikogbm and android09:04
mlankhorstRAOF: bahaha09:04
mlankhorst[  292.862839] nouveau E[  PGRAPH][0000:01:00.0] DATA_ERROR [XY_OUT_OF_BOUNDS] ch 3 [0x003fb4e000 unity-system-co[1120]] subc 2 class 0x9039 mthd 0x0300 data 0x0010000009:04
hikikoso in order to allocate a gbm buffer I need a gbm device which needs a drm device09:04
mlankhorstRAOF: seems to happen a few times during resizing09:05
RAOFhikiko: Yeah, but you *get* a drm device for free from the hosting Mir.09:05
hikikoRAOF, the problem is this check here:09:05
hikikohttps://code.launchpad.net/~hikiko/mir/mir.fix-drm-version/+merge/18283009:05
mlankhorstRAOF: so har har har har har, I win :D09:05
hikikowhich is inside open_drm_device09:06
hikikoso before you authenticate09:06
hikikoyou have to drmSet..09:06
RAOFhikiko: Yeah, but you don't need to call open_drm_device at all.09:06
* duflu doesn't understand what mlankhorst wins09:07
hikikothat's what I asked you, if I call the mir_connection..09:07
hikikoit wont call the open_drm_device at some point?09:07
RAOFAll that open_drm_device does is get a drm fd; and you get the correct, pre-authenticated drm fd from mir_connection_get_platform09:07
RAOFhikiko: No, not on the nested server side.09:07
hikikoin any server's side09:07
hikikothe 2nd drm device allocated09:07
RAOFIt *will* call get_authenticated_fd on the host's side.09:07
hikikowill have the problem09:08
hikikoyes09:08
mlankhorstduflu: RAOF may have won on memory validation, but he definitely LOST on gpu validation ;)09:08
hikikothen ok you ll get the bug in the host racarr|desert09:08
RAOFBut you can get as many authenticated fds as you want.09:08
hikikosorry09:08
hikikoRAOF,09:08
hikikoRAOF, I know the prob is that you cant run drmSetInterfaceVersion09:08
hikikowithout being the drm_master09:08
RAOFRight. But the host Mir *is* drm master.09:09
hikikosince that is called before the drm authentication09:09
hikikoquestion:09:09
RAOFAnd the host Mir opens the fd for you, and then gives the fd over IPC.09:09
hikikodrm master is mir or a device?09:09
RAOFdrm master is a state that a drm fd can be in. It basically means you get to modeset.09:10
RAOF(Among other things)09:10
hikikowhen you call SetDrmMaster you pass an fd?09:10
hikikolet me check09:10
RAOFI'm not sure why you're caring about drm master?09:11
RAOFThe nested compositor is not going to have access to a drm master fd, nor does it need one.09:11
hikikoRAOF,09:11
hikikohost mir starts09:11
hikikoit opens fd009:12
hikikoit automatically becomes the master because it s the first device isnt it?09:12
hikikoand then you call setInterfaceVersion09:12
hikikothen opens fd109:13
hikikoit's not the master09:13
hikikoyou have to call setDrmMaster if you want it to be the master09:13
hikikobut before that09:13
hikikoin open_drm_device09:13
hikikoyou call setInterfaceVersion09:13
hikikofor which you have no permission09:13
hikikobecause you are not the master09:14
hikikothats the problem09:14
alan_ghikiko: didn't we already solve that?09:14
alan_g<hikiko> alan_g, I ll just write a second open_drm_device that doesnt have the check of this branch: https://code.launchpad.net/~hikiko/mir/mir.fix-drm-version/+merge/182830 then and use it09:14
hikikoalan_g, yes but RAOF asked which is the problem09:14
tvosshikiko, I don't think we should call setInterfaceVersion in the nested compositor then09:15
mlankhorstwhich is what I said :P09:15
hikikotvoss, that's what mlankhorst said and initially I did this MP because I thought that for the reason I wrote we dont wont it on mir as well09:15
hikikohttps://code.launchpad.net/~hikiko/mir/mir.fix-drm-version/+merge/18283009:16
tvosshikiko, we want it on the outer-most mir09:16
hikikobut ok I ll just remove it from the nested mur09:16
RAOFalan_g, hikiko: The second open_drm_device should be: { MirPlatformPackage *pkg; mir_connection_get_platform(conn, &pkg); return pkg->fds[0]; }09:16
hikikook then I ll just use another function in my branch09:16
alan_ghikiko: go for it!09:16
hikikono RAOF because this way we ll get the device that the  host uses for rendering and we ll see nothing ... anyway :) I am going to do the change as alan_g says and then we improve it if there's something better :)09:17
duflusil2100: Got what you need? AFAIK the LP-based projects are fully landed at least09:18
RAOFhikiko: That is how *all* (non-software) Mir clients work!09:18
RAOFhikiko: That *will* allow you to render and allocate buffers correctly.09:18
alan_ghikiko: we get an fd that allows us to allocate and use buffers - which is what we need09:18
sil2100duflu: I think all is in now, had a talk with RAOF and I think it should all go smoothly09:18
hikikoalan_g, RAOF then maybe better to give it a try09:19
dufluHah. Don't google saucy wallpapers09:27
RAOFduflu: bypass is busted on intel; xmir is just exposing the bustedness by drawing enough to fill caches.09:32
dufluRAOF: I don't understand that statement entirely09:32
RAOFI'm talking with ickle in #intel-gfx; the horizontal bar corruption we see is stale cachelines.09:33
RAOFThis is why you see it more on multihead than single-head; you're less likely to overfill the cache there.09:34
dufluRAOF: OK. What is "overfilling" and how is it avoided?09:34
RAOFIntel-specific stuff.09:35
dufluRAOF: Anything I can do for it in DRM userland?09:35
RAOFWe need to disable caching for scanout buffers, and then periodically call kgem_busy09:35
dufluSounds hackish09:36
RAOFYeah.09:36
dufluThat reminds me, I must improve the examples/ to help with that09:36
tvossRAOF, is there an example where that is done?09:37
RAOFtvoss: grep xf86-video-intel for is_scanout; it's fairly widely distributed.09:37
tvossRAOF, ack09:38
tvossRAOF, where do we need to call kgem_busy? on the client or server-side?09:38
RAOFReally, server side.09:38
RAOFSince xmir is the only thing that reliably exposes this at the moment we could get away with doing it in xmir, but Unity8 will hit the same problems later.09:40
tvossRAOF, indeed09:40
tvossRAOF, is there a trigger that tells us when we should call kgem_busy?09:45
RAOFDon't know09:45
tvossRAOF, ack09:45
RAOFAlthough probably when submitting a batch buffer09:45
tvossduflu, do you file a bug?09:45
tvossRAOF, reading through the numerous commits mentioning kgem_busy right now09:45
duflutvoss: I don't think we have one yet. Because it never affected any PPA most people were testing, let alone trunk09:46
tvossduflu, ack09:46
tvossduflu, might make sense to note it down in a bug, though09:46
RAOFActually, we might not have to fix it in the server; fixing it in XMir *and* ensuring that Mesa does the right thing (which it should do) should fix it for both.09:47
RAOFWhich is significantly more tractable.09:47
tvossRAOF, indeed, we keep it driver specific with that, don't we?09:47
RAOFYes.09:47
tvossRAOF, otherwise the server would make _interesting_ assumptions09:47
* duflu votes for driver-specific hacks in driver-specific packages09:48
RAOFEh, we'd just need to have a DDX layer for Mir ;)09:48
duflu:)09:48
RAOFWe'd have a intel-gbm platform, and a nouveau-gbm platform, and…09:48
dufluEek09:48
duflutvoss, RAOF: Any objections to me logging off? I may yet cook dinner10:08
RAOFduflu: None from my end?10:08
dufluRAOF: On my desktop forcing two hardware surfaces to be placed on corresponding outputs (1920x1200) isn't enough to hit corruption/cache issues... !? But that's raring10:11
RAOFduflu: What card?10:12
tvossduflu, feel free. Will call you in case of emergencies10:12
tvoss;)10:12
dufluRAOF: HD2000 (i7-2600)10:12
dufluRAOF: Also lp:~vanvugt/mir/eglapp-place-output10:14
=== chihchun is now known as chihchun_afk
RAOFmlankhorst: Oh, where is your current xf86-video-nouveauL?10:55
hikikoalan_g, if you have a moment could you review this: https://code.launchpad.net/~hikiko/mir/mir.init-native-gbm/+merge/182864 ?10:57
alan_ghikiko: sure10:57
alan_ghikiko: there are some MPs you can review too. ;)10:58
hikikoI am going to pull them alan_g :)10:58
mlankhorstRAOF: ..?11:07
RAOFmlankhorst: Yours is the last upload to qa-testing2; I want to prepare that for the archive.11:07
mlankhorstRAOF: oh didn't upload to github11:08
mlankhorstjust apt-get source it11:08
RAOFYeah, that's what I decided to do ;)11:08
mlankhorstRAOF: can you include xserver-xorg-video-nouveau 1.0.9 too?11:08
RAOFSure.11:08
hikikoalan_g, how can I run the mir tests?11:21
alan_ghikiko: how long have you been on the project?!11:21
alan_ghikiko: https://code.launchpad.net/~hikiko/mir/mir.init-native-gbm/+merge/182864/comments/41459711:22
=== hikiko is now known as hikiko|lunch
tvoss_RAOF, mlankhorst sent you some packages for testing purposes11:45
mlankhorstyeah he should have them11:45
tvoss_mlankhorst, on nouveau with usc running, could you try to run sudo glmark2-es2-mir?11:46
mlankhorstsec, let me plug in a more.. stable card11:46
tvoss_mlankhorst, ack :)11:46
* alan_g suddenly realises that we don't run the test suite for clang or android/armhf targets in CI11:52
=== alan_g is now known as alan_g|lunch
mlankhorstmir should really have -dbg packages12:05
mlankhorstand usc too12:06
RAOFNo, not really.12:07
RAOFUse the dbgsym packages.12:07
RAOF*Debian* should have -dbgsym packages12:07
RAOFRather than manually constructing -dbg packages, like _animals_!12:07
mlankhorstRAOF: in the ppa?12:08
RAOFIIRC we've turned dbgsym packages on for the PPA.12:08
RAOFDear Xserver: your intermittently failing test suite is adorable.12:08
mlankhorstRAOF: tell me where to find them, then :P12:09
kgunnRAOF: remember i told you there would be new ways for X to annoy you12:09
RAOFmlankhorst: I think you need to add the main/debug component to sources.12:09
RAOFmlankhorst: Enjoy your shiny new nouveau 1.0.912:09
mlankhorstah12:10
mlankhorstdo all ppa's have that?12:10
RAOFOnly those that have dbgsym packages enabled, sadly.12:10
RAOFProbably for space reasons?12:10
RAOFI don't know.12:10
mlankhorstprobably12:10
RAOFBut PPAs are space-limited *anyway*12:11
RAOFWe should totally build dbgsym packages *everywhere*12:11
mlankhorstexcept we don't12:11
RAOFshould implies don't :)12:11
RAOFAnyway, sleepy time!12:11
mlankhorstnn12:12
tvoss_RAOF, good night and get well soon12:17
mlankhorstinteresting, I'm hitting a bug in vblanking somewhere12:22
mlankhorstprobably12:22
tvoss_mlankhorst, with my testing packages12:23
mlankhorstI'm not sure what's causing it yet, but it seems some event is not being sent, ever ;P12:26
tvoss_mlankhorst, interesting12:27
=== hikiko|lunch is now known as hikiko
mlankhorsthm might be a hang, bah12:33
mlankhorstok other card12:36
tvoss_mlankhorst, ;)12:37
mlankhorst>:(12:37
mlankhorstthere seems to be a memory corruption affecting all cards, but I don't know how12:38
=== alan_g|lunch is now known as alan_g
kgunnhikiko: ping13:09
hikikokgunn, hi13:14
mlankhorstwow..13:21
tvoss_mlankhorst, ?13:24
mlankhorstI may have found my nouveau issue, lets find out..13:26
mlankhorsthm no, still no closer :/13:29
mlankhorsttvoss_: do you have a normal glmark too? :P13:54
tvoss_mlankhorst, normal as in? :)13:54
mlankhorstx1113:54
tvoss_mlankhorst, it installs the usual x glmark2 as well13:54
tvoss_mlankhorst, should be part of the package13:54
mlankhorsttvoss_: not really, only contains glmark2-mir13:56
mlankhorstand glmark-es2-mir13:56
tvoss_mlankhorst, okay, recompiling packages13:56
tvoss_mlankhorst, thanks for testing :) found the issue btw13:56
mlankhorsthehe np :P13:57
mlankhorstbtw does it matter if xorg runs in usc or not?13:58
mlankhorstas opposed to not running at all13:58
sil2100tvoss_, kgunn: hi guys, can you confirm if everything landed as needed (in -proposed at least)?13:58
tvoss_sil2100, ack13:58
sil2100tvoss_, kgunn: related to mir and the two features13:59
mlankhorstoh btw mesa 9.2 landed now13:59
tvoss_mlankhorst, wow, you love living on the edge, don't you? :)13:59
tvoss_mlankhorst, in archive or in proposed?13:59
mlankhorsttvoss_: proposed13:59
mlankhorstand now main it seems :P13:59
tvoss_mlankhorst, ack14:00
mlankhorstso right in time for feature freeze this time14:01
kgunnsil2100: yes14:02
mlankhorsttvoss_: hey last release we landed 9.1 right before final freeze14:02
kgunnhikiko: i just realized i'm on the hook for a uds session14:10
hikiko:)14:11
hikikono problem kgunn14:11
mlankhorstunfortunately I cna't make any session this week, g2g :/14:12
kgunnhikiko: oh...wait...i was wrong...top of the hour....we're still on14:15
=== alan_g is now known as alan_g|tea
jonotvoss_, hey14:38
jonoso the composite bypass lands today?14:38
=== alan_g|tea is now known as alan_g
tvoss_jono, yup14:44
smartboyhwtvoss_, is Mir now already in ubuntu-desktop meta packaage?14:55
tvoss_smartboyhw, not sure, need to check :)14:55
tvoss_jono, http://samohtv.wordpress.com/2013/08/29/mir-xmir-performance-in-13-10/14:55
smartboyhw:)14:55
jonotvoss_, does that include MM?14:55
tvoss_jono, the post? no: that's only addressing bypass14:55
tvoss_jono, I think we need some fixes for mm before we want to blog about it14:56
jonotvoss_, no I mean is MM in the archive?14:56
jonoas part of FF?14:56
tvoss_jono, yeah14:56
jonoahhh awesome14:56
ollismartboyhw, no, it will need to be in main first before being pulled in as default15:53
ricmmtvoss_: ping16:29
tvoss_ricmm, pong16:29
ricmmtvoss_: where does Mir stand re: resizing/moving surfaces?16:30
tvoss_ricmm, we don't have it right now16:30
ricmmis there a plan for this? short-term I mean16:30
tvoss_ricmm, not really, would be great if we can live a week without it16:31
ricmmnot sure how possible that is going to be with the OSK16:32
ricmmwe will try today, but not sure16:32
=== alan_g is now known as alan_g|beer
=== marrusl is now known as marrusl_afk
=== marrusl_afk is now known as marrusl
arssonlatest updates makes my cursor freeze in lightdm with nouveau?23:33
RAOFarsson: Updates from where?23:40
arssonRAOF: basic no ppa23:54
RAOFarsson: :(23:58
RAOFarsson: And you're presumably using unity-system-compositor+XMir? Does VT switching away and then back unfreeze the cursor?23:58
robert_ancellRAOF, lp:~robert-ancell/mir/drop-focus-on-vt-switch seems to work with test clients and drops focus when you VT switch away from them. It has a graphics lock-up as described in the MP, but you can work around it23:59
robert_ancellIt should be good enough to start the XMir side of things23:59
RAOFrobert_ancell: Sweet!23:59
arssoni went VT and removed u-s-c and now everything is workin23:59

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