[01:21] Mesa 13 has landed. And my Unity8 no longer works. Related? [01:26] Nope. Not related [03:54] WHY ARE ALL MY COMPUTERS EXPLODING? === RAOF_ is now known as RAOF === chihchun_afk is now known as chihchun [08:44] who's the miral resident expert? [09:20] tsdgeos: alan_g is on it [09:20] what's "it"? [09:21] alan_g: MIR miral [09:21] Actually, greyback is running that [09:22] anpok_: Did you/we change input event accumulation in the recent past? Clients of nested servers are seeing really erratic jagged motion I think... [09:28] Oh nevermind. Just that sudo doesn't import exported environment settings from the parent shell [09:29] duflu: sudo --preserve-env [09:29] Cool [09:30] Joy to the world..... Mir will soon be rid of all input resampling [09:34] Which gives me a feel for how much nicer Unity8 will feel in future === JanC_ is now known as JanC === chihchun is now known as chihchun_afk === chihchun_afk is now known as chihchun [11:02] <_javier4_> Hi guys, I'm porting a device and now I'm stuck at the ubuntu animation boot logo (ubuntu text with dots moving). compositor log doesn't help, and now I'm seeing this messages in dmesg [11:02] <_javier4_> (1)[2353:VSyncThread_0][DISP][mtk_disp_mgr_ioctl #1956]ERROR:[session]ioctl not supported, 0x40104fd5 [11:02] <_javier4_> (1)[2361:Mir/Comp][DISPCHECK]primary_display_switch_mode require sess_mode DIRECT_LINK [11:02] <_javier4_> repeated many times. Are they meaningful for my problem? [11:02] <_javier4_> this is unity8.log [11:03] <_javier4_> http://pastebin.com/50CmQMTz [11:03] <_javier4_> and this is unity-system-compositor.log [11:03] <_javier4_> http://pastebin.com/atis2u9q [11:08] _javier4_: I'm not the best one to help at this stage, but what the logs tell me is that the unity-system-compositor Mir server does start (which is why you see the animation) but that the Unity8 one fails. But I don't see any indication why that is. [11:10] greyback: ^^ [11:10] alan_g: qtmir reports that the mir server failed to start [11:11] I don't really know how to suggest how to debug that [11:14] I'm surprised there's no logging from Mir after "[2010-01-05 20:47:21.436870] mirserver: Starting" [11:21] _javier4_: this is probably in the graphics driver support. The guy that knows that best for android drivers is not currently around (too early in his day and he's on vacation until the new year). [11:36] <_javier4_> ouch. Thanks for your help guys. But if the problem is in the android part, the system compositor shouldn't fail too? [11:40] _javier4_: if it failed completely, yes. But I suspect that some specific operation is working "differently" on your kit and only affects the nested U8 server. The place in the Mir code that collates the "known" differences is src/platforms/android/server/device_quirks.cpp [11:41] It likely needs debugging through to find out exactly what is failing (and why there is no helpful log message). [11:43] I'd go for using instances of the mir_demo_server (as system and session servers) in place of USC and U8 and trying to reproduce the problem. [11:43] That's an easier set-up (for me) to debug. [11:44] <_javier4_> alan_g, could you link a guide to set up mir demo server? [11:45] It is in mir-demos [11:47] Hmm. I don't have a guide for this scenario to hand. Let me search. [11:51] With mir-demos installed you need to shut down USC: sudo stop lightdm [11:52] You need to keep the screen on: mirbacklight [11:53] To start as a host: sudo mir_demo_server [11:55] (In a separate terminal) you can then run "nested" (with a demo client): mir_demo_server --host /tmp/mir_socket --launch mir_demo_client_egltriangle [11:57] Actually, a better command for the host would be: sudo mir_demo_server --window-manager system-compositor [11:58] But, with the way things are failing you probably won't get far enough for it to matter (yet). === dandrader is now known as dandrader|afk [12:30] <_javier4_> alan_g, the problem is that I still didn't complete the port. i didn't apply apparmor patch to my kernel, but just applied the ones needed to complete a boot. I don't know if I'm able to install packages. [12:33] _javier4_: ack. I don't have the knowledge to help with that. [12:43] <_javier4_> alan_g, do you know if mir-demos has dependencies other than a plain install? If I can avoid to setup a net connection, i would try to install it downloading it manually. [12:44] _javier4_: any dependencies should be met by the existing support for USC and U8 [12:44] <_javier4_> ok. thanks. [12:47] <_javier4_> Sorry for my ignorance: should I search it as a click package or a snap one? I don't use Ubuntu since years, now... [12:50] _javier4_: debian package === alan_g is now known as alan_g|lunch [12:52] <_javier4_> greyback, this one? [12:52] <_javier4_> http://launchpadlibrarian.net/201141411/mir-demos_0.12.1+15.04.20150324-0ubuntu1_armhf.deb [12:53] _javier4_: no, that's too old [12:53] _javier4_: https://launchpad.net/%7Eci-train-ppa-service/+archive/ubuntu/stable-phone-overlay/+packages?batch=75&direction=backwards&memo=300&start=225 <- find the mir version for vivid [12:53] <_javier4_> but my Ubuntu touch rootfs is vivid. [12:53] <_javier4_> oh, ok. [12:54] yes, Ubuntu Touch is vivid, plus a PPA supplying newer stuff (the PPA I linked to above) [12:54] note to take care if you're mixing an older touch image with that PPA, PPA can have never stuff than your image. So match package versions carefully [12:55] <_javier4_> in that ppa I can't find mir-demos package. [12:57] _javier4_: look for just "mir - 0.24.1+15.04.20160928-0ubuntu1" with vivid, then click the arrow to expand it [12:58] inside is a big list of the deb packages, one of which is "mir-demos_0.24.1+15.04.20160928-0ubuntu1_armhf.deb" [12:59] <_javier4_> found. thanks a lot. === dandrader|afk is now known as dandrader [13:09] <_javier4_> greyback, just out of curiosity: that strange "nesting" of the package inside the repo, is due to mir being a metapackage or what? [13:10] _javier4_: good question. In that listing, you see "source packages" which contain the source code for the project. Then that package is taken and built for each distro and each architecture, which is nested inside in that listing [13:13] <_javier4_> greyback, Now I understand. Launchpad store the whole "projects", then shows you the various packages in which they have been split into. Thanks again. [13:13] no prob! [13:14] <_javier4_> and now, this is the situation: [13:15] <_javier4_> system compositor start fine, while nested one fail with this (finally meaningful) error [13:15] <_javier4_> [2010-01-06 15:36:43.228679] mirplatform: Found graphics driver: mir:android (version 0.24.1) [13:15] <_javier4_> [2010-01-06 15:36:43.232091] mirserver: Starting [13:15] <_javier4_> ERROR: /build/mir-coQbl3/mir-0.24.1+15.04.20160928/src/server/graphics/default_configuration.cpp(132): Throw in function mir::DefaultServerConfiguration::the_graphics_platform():: [13:15] <_javier4_> Dynamic exception type: N5boost16exception_detail10clone_implINS0_19error_info_injectorISt13runtime_errorEEEE [13:15] <_javier4_> std::exception::what: Exception while creating graphics platform [13:15] <_javier4_> ERROR: /build/mir-coQbl3/mir-0.24.1+15.04.20160928/src/server/graphics/nested/mir_client_host_connection.cpp(245): Throw in function mir::graphics::nested::MirClientHostConnection::MirClientHostConnection(const string&, const string&, const std::shared_ptr&) [13:15] <_javier4_> Dynamic exception type: N5boost16exception_detail10clone_implINS0_19error_info_injectorISt13runtime_errorEEEE [13:15] <_javier4_> std::exception::what: Nested Mir Platform Connection Error: Failed to connect to server socket: No such file or directory [13:15] <_javier4_> Sorry, I should have used pastebin. [13:16] _javier4_: "Failed to connect to server socket: No such file or directory" have you set MIR_SOCKET correctly? And do take care with permissions of the socket [13:18] <_javier4_> greyback, I followed strictly alan_g suggestions, and launched nested compositor passing --host /tmp/mir_socket [13:19] _javier4_: well let's trouble-shoot: please check that /tmp/mir_socket exists, and see what permissions it has [13:20] <_javier4_> actually, it doesn't exists at all. [13:21] ok, so it should have been created by the first mir_demo_server [13:21] is /tmp writable? [13:23] <_javier4_> yes [13:23] <_javier4_> drwxrwxrwt 4 root root 80 Jan 6 15:17 tmp [13:25] _javier4_: ok, well please stop all mir servers, and do "sudo mir_demo_server -f /tmp/mir_socket" to ensure mir creates that file [13:25] and verify socket file is created [13:26] <_javier4_> srwxr-xr-x 1 root root 0 Jan 6 15:49 mir_socket [13:26] <_javier4_> try to launch the nested one? [13:30] <_javier4_> greyback, [13:30] <_javier4_> [2010-01-06 15:52:31.331620] mirserver: Using nested cursor [13:30] <_javier4_> [2010-01-06 15:52:31.341012] mirserver: Initial display configuration: [13:30] <_javier4_> [2010-01-06 15:52:31.347749] mirserver: 0.1: LVDS 5" 57x101mm [13:30] <_javier4_> [2010-01-06 15:52:31.348514] mirserver: Current mode 1080x1920 53Hz [13:30] <_javier4_> [2010-01-06 15:52:31.349704] mirserver: Preferred mode 1080x1920 53Hz [13:30] <_javier4_> [2010-01-06 15:52:31.350017] mirserver: Logical position +0+0 [13:30] <_javier4_> [2010-01-06 15:52:31.350111] mirserver: 0.2: unused DisplayPort [13:30] <_javier4_> [2010-01-06 15:52:31.350362] mirserver: 0.3: unused (null) [13:30] <_javier4_> *** Error in `mir_demo_server': free(): invalid pointer: 0x001bf9c8 *** [13:30] <_javier4_> Aborted (core dumped) [13:31] _javier4_: well we need to find the host server's socket [13:31] hmm, I don't like that error [13:31] _javier4_: can you pastebin the output of "dpkg -l | grep mir" [13:32] <_javier4_> greyback, http://pastebin.com/MX5QLdRF [13:33] ok good, package versions are matching [13:33] right, so please kill the root mir server, and launch again with "sudo mir_demo_server -f /tmp/mir_socket" [13:34] oh hang on [13:34] sorry, I mis-read your output above [13:34] so you have a /tmp/mir_socket? [13:34] <_javier4_> yes [13:35] ok, let's connect a client to it, just to check it works, run mir_demo_client_egltriangle [13:35] <_javier4_> that's what fail with the pointer error [13:35] the demo client? [13:35] <_javier4_> root@ubuntu-phablet:~# mir_demo_server --host /tmp/mir_socket --launch mir_demo [13:36] too soon, I don't want to test nested server just yet [13:36] I just want to check that any client can connect to your host server [13:36] <_javier4_> oh, ok. Sorry. I'm new to all this stuff. [13:36] no worries :) [13:36] <_javier4_> Should I kill system server? [13:37] nope, that's good, keep it running [13:38] <_javier4_> no error, but black screen. Let me kill the server and try from scratch. === alan_g|lunch is now known as alan_g [13:39] _javier4_: ok. You should see a spinning triangle [13:40] also good to try mir_demo_client_flicker [13:42] _javier4_: I forgot an option (to make the socket file accessible) for the "host": sudo mir_demo_server --window-manager system-compositor --arw-file [13:43] <_javier4_> wait. A found a bunch of mir process hanging around on my system. I killed them all. Correct me if I'm wrong: [13:43] <_javier4_> mirbacklight, to get backlight; [13:44] Yes, that keeps the screen on [13:44] <_javier4_> mir_demo_server --window-manager system-compositor --arw-file, to start system compositor [13:46] yes. now /tmp/mir_socket should be globally rw [13:47] <_javier4_> it isn't. I think it's still the one we specifically created before. [13:47] <_javier4_> *explicitly [13:47] <_javier4_> ls -l /tmp [13:47] <_javier4_> total 0 [13:47] <_javier4_> srwxr-xr-x 1 root root 0 Jan 6 15:49 mir_socket [13:48] * alan_g reads scollback because that sounds wierd [13:48] <_javier4_> I can delete it, kill server and relaunch it. I think it will not be created. [13:49] _javier4_: do that [13:49] <_javier4_> ok. Just wait. [13:51] <_javier4_> As suspected: launched system comp with mir_demo_server --window-manager system-compositor --arw-file, but the file has not been created. Should I pass it -f flag? [13:51] <_javier4_> I suspect $MIR_SOCKET is not set [13:51] _javier4_: $MIR_SOCKET should not be set [13:52] have you lost "sudo" from the commandline? [13:52] <_javier4_> no, I'm from root [13:53] <_javier4_> I'm root user. [13:53] The server is running? [13:54] I.e. didn't exit/crash [13:54] <_javier4_> yes http://pastebin.com/SxXmzAT4 [13:55] is $XDG_RUNTIME_DIR set? [13:56] <_javier4_> echo $XDG_RUNTIME_DIR [13:56] <_javier4_> "/run/user/0" [13:56] <_javier4_> quotes needed for irc [13:56] Ah, then the mir_socket will be there [13:57] ls -l $XDG_RUNTIME_DIR/mir_socket [13:57] <_javier4_> yes it is [13:57] <_javier4_> ls -l /run/user/0 [13:57] <_javier4_> total 0 [13:57] <_javier4_> srw-rw-rw- 1 root root 0 Jan 6 16:13 mir_socket [13:57] Cool [13:58] So now: mir_demo_client_egltriangle -f /run/user/0/mir_socket [13:58] So now: mir_demo_client_egltriangle -f -m /run/user/0/mir_socket [13:58] Oops! [13:59] <_javier4_> which one? [13:59] the latter [13:59] Use this: mir_demo_client_egltriangle -f -m /run/user/0/mir_socket [13:59] <_javier4_> Mir chose pixel format 1. [13:59] <_javier4_> Using pixel format 2. [13:59] <_javier4_> Current active output is 1080x1920 +0+0 [13:59] <_javier4_> Can't create a surface [14:01] Try: mir_demo_client_egltriangle -f -m /run/user/0/mir_socket -o 1 [14:01] * alan_g is guessing the output ID [14:02] <_javier4_> Mir chose pixel format 1. [14:02] <_javier4_> Using pixel format 2. [14:02] <_javier4_> Current active output is 1080x1920 +0+0 [14:02] <_javier4_> WARNING: linker /android/system/vendor/lib/libPVROCL.so: is missing DT_SONAME will use basename as a replacement: "libPVROCL.so" [14:02] <_javier4_> library "libPVRDebugger.so" not found [14:02] <_javier4_> Surface 0 DPI [14:02] <_javier4_> Surface exposed [14:02] <_javier4_> but still black screen. :-/ [14:02] mirbacklight? [14:03] <_javier4_> first time I set it, I rememeber I've seen the backlight turning on. Now I'm not sure. [14:04] try it now [14:04] <_javier4_> Already done. But sincerely I can't say if ther was already on, or if they're staying black. [14:05] <_javier4_> reboot the phone and start from scratch? [14:05] First try replacing mir_demo_client_egltriangle with mir_demo_client_muitlwin (which doesn't use EGL) [14:06] *mir_demo_client_multiwin [14:07] <_javier4_> mir_demo_client_multiwin [14:07] <_javier4_> Segmentation fault (core dumped) [14:07] Although the animation does use EGL, so that *shouldn't* be the problem [14:07] I guess a reboot can't hurt [14:07] <_javier4_> ok. Be back soon [14:11] <_javier4_> stop lightdm [14:12] <_javier4_> whoops, wrong window. :D [14:13] <_javier4_> I now know what's wrong: after stopping lightdm, backlight turn off. Issuing mirbacklight they turn on for a second, then they turn off and don't resume even with following mirbacklight. [14:15] <_javier4_> they result still set [14:15] <_javier4_> cat /sys/class/leds/lcd-backlight/brightness [14:15] <_javier4_> 255 [14:20] That's odd. try: mirbacklight 95 [14:20] I've a vague memory of a driver that didn't like to use max_brightness [14:32] greyback: IIRC you mentioned some backlight issues in the past. Does the above sound familiar? [14:41] <_javier4_> nothing. [14:41] <_javier4_> let me reboot, and check the values of lcd-backlight before stopping server. === dandrader is now known as dandrader|afk [14:45] alan_g: actually yes, mirbacklight only works for some devices [14:46] on one phone the lcd backlight wasn't in the standard location [14:55] <_javier4_> sysfs is right. It starts from 102, then goes to 10, then to 0. If I try to set it again on 102, it stays black. === dandrader|afk is now known as dandrader [15:25] <_javier4_> greyback, alan_g : I'm trying to debug my backlight problem. I noticed this thing: [15:25] <_javier4_> If I echo 0 to the brightness, screen goes off, and if I echo 102 it turns back on. But if I turn it off by power button, my following echo 102 doesn't work. [15:26] yeah that is odd [15:27] <_javier4_> It's like if the power button (and the stopping lightdm) does not seto brightness to 0, but changed also somebody else. [15:28] <_javier4_> i tried to monitoring by udev, but I just discovered the real sysfs for my driver. nothing else. [15:34] <_javier4_> perhaps power button issue also some kind of suspend mode for lcd? === dandrader is now known as dandrader|afk === chihchun is now known as chihchun_afk === dandrader|afk is now known as dandrader === marcusto_ is now known as marcustomlinson === dandrader is now known as dandrader|afk === dandrader|afk is now known as dandrader [20:41] RAOF: does mir support higher precision than 888 RGB visuals=? [22:29] fritsch: Not at the moment; we don't expose any 101010 pixel formats. [22:29] RAOF: isn't it a display driver thingy, too? [22:29] i only see 8 8 8 visuals for my intel gpu anyways [22:29] It'll do 101010 [22:29] (Probably ☺) [22:29] how can one force that mode from userspace? [22:30] You can't. [22:30] You need whatever's providing the display buffers to be providing 101010 display buffers. [22:30] (Which means either X, GNOME Shell, Plasma, or Mir) [22:31] that won't help if you cannot open a corresponding visual [22:31] Indeed. [22:31] ah, that's what you mean [22:31] yeah [22:31] So, *mesa* is perfectly happy to render to 101010 textures. [22:31] internally even 16 bit and more precision [22:32] AFAIK, all the desktop cards are happy to scan out of 101010 buffers. [22:32] Oh, yeah. You can render to full-float buffers if it tickles your fancy! [22:32] * RAOF doesn't know about double precision. [22:32] https://github.com/xbmc/xbmc/blob/8d4a5bba55638dfd0bdc5e7de34f3e5293f99933/xbmc/windowing/X11/WinSystemX11GLContext.cpp#L176 [22:32] The missing bit is hooking them all together. [22:32] I searched a solution for kodi [22:33] now since we can decode hevc10 bit and share it lossless via R16, G16 extension [22:33] to get it on the display [22:33] https://lists.freedesktop.org/archives/mesa-dev/2016-December/138472.html <- btw. you don't have a say there? Seems no one cared for now [22:34] I don't have commit access or anything. [22:35] no need to commit, but not a comment since 5 days is quite uncommon [22:36] I can comment, but I'm not sure how useful it'll be. I'm not very involved in mesa development. [22:36] (And the patches I've submitted have also tended to languish, sometimes until somebody independently reimplements them) [22:36] if you find that patch useful it would be nice [22:36] your MIR kodi port / vaapi will also directly be able to use that [22:37] for decoding 10 bit content [22:37] vaapi spits out two planes when decoding 10 bit content? [22:38] * RAOF would naively expect it to spit out a packed XRGB 2101010 plane. But whatever! [22:38] RAOF: nope [22:38] and we certainly don't want RGB [22:38] as that's doulbe as big as NV12 [22:38] Oh, of coures. [22:39] we want as minimal as possible and use a yuv2rgb shader at the end [22:39] It's 10bit, encoded in a different colourspace. [22:39] to get it displayed [22:39] it's just yuv420p10 with more precision [22:43] I'm a bit confused about the R16/GB16 extension, then. Where does that come in? [22:48] RAOF: https://github.com/FernetMenta/kodi-agile/blob/master/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp#L1298 [22:48] https://github.com/FernetMenta/kodi-agile/blob/master/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp#L1376 <- sorry [22:48] here of cours [22:48] we use it for eglCreateImage extension [22:48] to create Y and UV plane [22:49] Oh, right. You're not actually using them as RGB channels, just as storage. [22:50] jep [22:50] we avoid converting anything until display [22:50] (not entirely true, we did not invest time to make your lanczos scaler work on yuv ...) [22:50] so it runs after rgb conversation [22:51] I got to go - already late here. will read the backlog tomorrow [22:57] 5oo/