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

bschaeferracarr_, can a cursor exist (render) with a mir surface that never swaps buffers?00:10
bschaeferattempting to manually swap said surface causes a crash :(00:11
racarr_bschaefer: I dont exactly understand the second bit00:21
racarr_but to the first bit...should be able to!00:21
RAOFWe don't expose the ability to use a surface as a cursor yet, do we?00:22
bschaeferracarr_, well, the issue im see is in SDL2 they do a cursor test just by simply rendering the cursor (a surface/window exists but is not renderered)00:23
bschaeferRAOF, so yeah, thats what would be needed i suppose (or at lease how this one SDL2 test assume cursors work)00:24
RAOFCan we tell SDL that we don't support hardware cursors?00:24
bschaeferRAOF, hmm00:27
bschaeferRAOF, so thats a hardware cusor? I wonder if it assumes the system cursor is a hardware cursor?00:27
bschaeferRAOF, i think we can live with out that support, considering most the time a window will come along with the cursor (otherwise thats a pretty boring app)00:28
RAOFWell, can we tell SDL that it'll have to draw its own cursors if it wants to draw something special?00:29
bschaeferfor now i can just set the cursor for the surface, and if they don't render the window then they wont get anything00:29
RAOFOh, right!00:29
bschaeferRAOF, not that i know, ill have to dig into that, but i think it just sets the cursor00:29
bschaeferand wishes it luck00:29
RAOFBecause the cursor is only going to change when it's *over* the surface.00:29
bschaeferright00:29
bschaefercool, i can live with that00:29
bschaeferjust wanted to double check :). Thanks!00:29
RAOFAnd the surface isn't going to appear until some rendering has been done to it.00:29
RAOFRight, I think I see your problem now :)00:30
racarr_hmm00:31
racarr_shouldnt the surface be in the input targets though00:31
racarr_even if its never posted a buffer00:31
bschaeferyeah, the test was interesting ill have to write my own where the window is being rendererd00:31
bschaeferracarr_, yeah, inputs and all is fine it just never gets to the swap buffers stage00:32
bschaeferso when i set the cursor00:32
bschaeferconfigure for the surface00:32
bschaeferyou need to swap the buffers to get the new cursor right?00:32
bschaeferas, from i can tell doing a set cursor config on a surface yeilds nothing until a swap happens00:33
racarr_I wouldn't thinky ou would no00:34
racarr_as far as I can tell doing a swap doesn't change anything with respect to doing hte set cursor00:34
racarr_and there is a test that00:35
racarr_you can change the cursor without anything else happening00:35
racarr_and the appropreiate things happen...so00:35
racarr_something weird is happening00:35
RAOFracarr_: If you haven't submitted a buffer we don't show the window at all, right?00:35
RAOFracarr_: So the surface *won't* be in the input targets list?00:36
RAOFOr, at least, if the surface is in the input targets list that'd be a pretty horrible bug, because it would look like you'd have input mysteriously going nowhere.00:36
bschaeferracarr_, i can take a look, where is the input target list kept?00:37
bschaeferi would think the mir_server somewhere?00:37
bschaeferracarr_, yeah in your example if i comment out that first swap buffers00:39
bschaefernothing shows up, and soo i cant see any cursor changes (since it has to be over a surface)00:39
bschaefersooo i guess the overall issue, there is no swap at the very beginning, so no mir_surface is rendered so i cant see the cursors getting changed00:40
racarr_RAOF: I think it will be and it would be a horrible bug01:12
racarr_bschaefer: Ok possible if nothing01:12
racarr_is ever rendered01:13
racarr_at all01:13
racarr_then the cursor wont show up01:13
racarr_hahaha01:13
racarr_like from any surface.01:13
bschaeferracarr_, yeah haha01:16
=== chihchun is now known as chihchun_afk
RAOFAh, cmake04:05
RAOF*Of course* set(VAR value PARENT_SCOPE) doesn't actually set VAR in the *current* scope.04:05
RAOFWhyever would I expect that behaviour?04:05
=== chihchun_afk is now known as chihchun
=== chihchun is now known as chihchun_afk
RAOFOops.06:31
RAOFDon't do testing in a dirty tree.06:31
=== chihchun_afk is now known as chihchun
alan_galf_: anpok want to give an opinion on this or shall I top-approve? https://code.launchpad.net/~alan-griffiths/mir/fix-libmirclient/+merge/22833608:25
alf_alan_g: just commented08:25
alan_gJust saw that. ;)08:26
alan_gBTW I'd be happier if it were *only* the unit tests that linked directly to the internal classes - maybe we should record that as a bug?08:28
anpokhm or the opposite .. acceptance tests not using the libraries08:35
anpoki mean we have integration tests that dont include/touch/need the complete system08:35
alan_gYes, the acceptance tests ideally use the libraries.08:39
anpokthe $<TARGET_OBJECTS.. will pull in the object files built for the target08:40
anpok?08:40
alan_gyes08:41
anpoknearly like libtool convenience library08:42
alan_galf_: It is great how the review process unearths hidden problems: https://code.launchpad.net/~alan-griffiths/mir/fix-libmirclient/+merge/228336/comments/55378409:03
alan_ggreyback: is the "PrivateProtobuf" stuff being used?09:12
alf_alan_g: @"It is great how the review process unearths hidden problems", +109:13
greybackalan_g: not that I can see, no09:14
alf_greyback: Yesterday my eye caught a comment about not showing the last frame. Do you have a bug for that, more information about how to reproduce etc?09:15
alan_ggreyback: cool. No immediate plans either?09:16
greybackalan_g: none that I'm aware of either09:16
* alan_g stop worrying about breaking it09:17
* alan_g finds ua_ui_set_clipboard_content()/ua_ui_get_clipboard_content()09:20
groot_hello all10:05
groot_racarr_, you here ?10:05
groot_I was trying to investigate my device being stuck at boot logo. Yesterday I tried removing hwcomposer.so from android system and reboot.10:15
groot_This time device booted up and a small ubuntu logo appeared followed by a hello screen to choose language.10:15
groot_But it got stuck there. So I'm thinking maybe mir has problems with hwcomposer module. How can I debug it ?10:16
alan_ggroot_: the guys that know about bringing up devices new best (kdub and AlbertA) are not up yet.10:24
alan_ggroot_: can you adb into the device and see what's running? Or is that broke too?10:27
groot_alan_g, I see. I'll wait for them. kdub helped me a lot to debug my issues :). Are they gonna be here soon ?10:27
groot_alan_g, I've ADB access10:27
alan_gProbably an hour or so10:29
groot_alan_g, I can upload some logs if you want to take a look.10:29
alan_ggroot_: I'd be guessing as much as you are10:29
alan_gBut if you've adb you can try running mir_demo_server_basic and clients10:30
groot_alan_g, all right. I'll try and see what happens.10:34
alan_galf_: (non-urgent) please have another look at https://code.launchpad.net/~alan-griffiths/mir/fix-libmirclient/+merge/22833611:10
alf_alan_g: ok11:10
alan_galf_: is anything still happening with https://code.launchpad.net/~afrantzis/mir/fix-mircommon-debian-replaces/+merge/228247?11:13
alf_alan_g: RAOF thinks that Breaks,Replaces is the right way to go, and wanted to try some script changes to use apt instead of dpkg11:17
alan_galf_: understood.11:18
=== pete-woods is now known as pete-woods|lunch
=== tvoss is now known as tvoss|lunch
alf_alan_g: @fix-libmirclient, 136- mirclient , do we remove the explicit link because it's linked through libmirserver?11:33
alan_galf_: no, because I accidentally reverted that before checking in. (And, as you observer, it "just works")11:35
alan_galf_: fixed11:36
=== dandrader is now known as dandrader|lunch
=== chihchun is now known as chihchun_afk
=== pete-woods|lunch is now known as pete-woods
=== alan_g is now known as alan_g|lunch
groot_kdub, hello. I've come again to solve my device hang issue. Are you here ?12:20
kdubyep, I thought you had a segfault issue though12:20
groot_kdub, something interesting happened. Yesterday I tried removing hwcomposer.so from android system and reboot.12:21
groot_This time device booted up and a small ubuntu logo appeared followed by a hello screen to choose language.12:21
groot_But it got stuck there. So I'm thinking maybe mir has problems with hwcomposer module.12:22
kduboh, well if you do that you start using the backup mode (the fb module), which is deprecated in android, but seems it works on your device12:22
kdubgroot_, so that assessment is right... I was thinking that your hwcomposer module was malformed or loaded incorrectly, because a lot of the function hooks we call in hwc were nullptrs12:23
groot_kdub, I'm sure that hwcomposer is fine since we use the same source on other custom roms. So probably it is loaded incorrectly.12:25
kdubalso, where you trying to run with hwcomposer as root?12:26
* kdub forgets if that was aske12:26
groot_kdub, I'm not sure. hwcomposer is loaded during system startup? how to know it's running as root ?12:28
kdubwell, I meant running the test binaries12:28
kdublike mir_demo_server_basic12:28
groot_kdub, ohh I didn't use sudo. Just ran them normally when hwcomposer was present before.12:29
kdubgroot_, it tries to access some files in /dev, its a common problem with new devices that the permissions arent set up to run as the normal user12:30
kdubso, might be worth a shot12:30
groot_kdub, just to let you know, I ran some mir_demo commands like flicker, eglflash, scroll etc after removing hwcomposer.so. They worked, device screen was updated with the commands12:31
groot_I'll test with hwcomposer beign present12:32
kdubright, it seems the backup module is working12:32
groot_kdub. just tried with sudo. Without sudo it segfaults and with sudo it falls back to command prompt. But those tests are failing, saying "couldn't connect to display server"12:39
kdubso that wasnt the root of the problem12:40
=== alan_g|lunch is now known as alan_g
groot_kdub, So hwcomposer is the main issue here?12:43
kdubyep!12:44
groot_kdub, so how to know it's from my end or it's loaded incorrectly? I'm ready for some tests :)12:48
kdubnot quite sure, as we're hitting null function hooks that apparently aren't there in sf12:50
kdubsome devices have a .so that's just a passthrough to load another blob .so... is this driver like that?12:50
groot_kdub, it's not. You can take a look if you want https://github.com/AndroidOpenSourceXperia/android_hardware_ste-sony/tree/master/display/libhwcomposer12:54
kduboh great, its open12:54
groot_:)12:56
kdubare any of those ALOGE's in hwcomposer_device_open printed in logcat?12:57
kdubthat seems to be the fn that fills the fn hooks12:57
groot_kdub, I'll check and let you know.12:58
groot_kdub, no errors like that. In fact, there's no log with that log tag.13:09
kdubhmm, well, from what I've been told it seems like its not getting to lines 1681-168613:10
groot_kdub, there's a error in logcat "E/MMHwBufferPool( 1875): allocate: HWMEM_EXPORT_IOC failed". Maybe it's related ?13:16
kdubwell, sure doesn't sound good to me13:16
kdubbut it could be from any component13:16
groot_kdub, is there a way to pinpoint the exact functions causing hwcomposer issue? (like backtrace)13:25
kdubgroot_, i'd see if it gets to those lines I pointed out in hwcomposer... that can be done via gdb or sprinkled printf13:26
groot_kdub, can you tell me which commands to run ? I've the device attached.13:28
=== dandrader|lunch is now known as dandrader
groot_kdub, ^^13:41
kdubgroot_, short answer, its a bit too interactive to do over irc.13:41
kdubbut basically, after you have things built with debug symbols, you just run gdb and set up the breakpoints on hwcomposer_device_open13:42
kduband you can step over the lines of code to see if those function hooks get filled13:43
=== tvoss|lunch is now known as tvoss
groot_kdub, I'll try that. But hwcomposer is a .so file. I used "gdb programm_name" to get backtrace. How to do it with lib files? That part I don't understand :)13:47
kdubah, so when the executable starts up, the linker will stitch that .so file into the program (because the executable will ask for hwcomposer)13:47
groot_kdub, all right. Lastly, what executable I should run?13:50
groot_mir_demo_server_shell ?13:50
kdub./mir_demo_standalone_render_to_fb is the simplest thing that will drive the display, but that one will work also13:50
groot_kdub, All right. I'll be here when I'm done with the test.13:53
kdubgroot_, good luck!13:59
groot_kdub, thanks. It seems hard to me, do I have to build mir again? Or just the hwcomposer with "-g" flag ?14:02
kdubhwcomposer14:08
kdubmir should have been built with it, since you built it yourself14:08
chmodplusxHey guys, I was poking around wayland stuff and considered buildining it but I came across the link to Mir on the ubuntu website. Any pointers I should know that arent listed on the site?14:19
=== alan_g is now known as alan_g|tea
=== alan_g|tea is now known as alan_g
racarr_Morning15:21
willcookehey racarr_15:28
alan_gkdub: (non-urgent) please have another look at https://code.launchpad.net/~alan-griffiths/mir/fix-libmirclient/+merge/22833615:44
kdubsure15:44
=== chihchun_afk is now known as chihchun
=== alan_g is now known as alan_g|EOD
kdubany other takers? https://code.launchpad.net/~kdub/mir/fd-refcount/+merge/22830617:09
=== chihchun is now known as chihchun_afk
racarr_why am I putting the pixel 0x00 0xff 0xff 0xff in to an argb buffer and getting green lol...17:52
kgunnracarr_: its really rgb ? ending up 00ffff ?18:07
racarr_kgunn: Well...I dunno...I guess something really isn't18:10
racarr_the buffer really does report being ARGB though, and my pixel really is 0, 255, 255, 25518:10
racarr_and I do get green...18:10
racarr_lol I guess that buffer isnt really ARGB or I have18:11
racarr_made some strange error18:11
racarr_touchspots are all done besidfes being18:11
racarr_green...18:11
racarr_lol18:11
kgunnyea! for green touch spots18:12
racarr_well in particular they are blue circles on green rectangles18:12
racarr_instead of orange circles on transparent18:12
racarr_:p18:12
kgunnracarr_: oh wait....rgba vs argb18:13
kgunnracarr_: suppose swap the values around would prove the theory18:13
racarr_kdub: You were...talking about something the other day with android buffer maps and pixel format mess...is there anything in particualr beyond having to get the pixel format right?18:36
racarr_kdub: ...my buffer reports being mir_pixel_format_argb888818:36
kdubracarr_, that should be all, as far as I remember18:36
kduband green would be 0xFF00FF0018:36
anpokno tiling madness?18:36
racarr_no tiling madness my18:37
racarr_circle shows up as expected...18:37
racarr_I guess I am getting yellow lol.18:37
racarr_it was hard to see......18:37
racarr_but my buffer says it should be argb8888, and I put in18:38
racarr_0, 255, 255, 255 and get yellow which means my buffer is really...bgra18:40
racarr_or something18:40
racarr_starting in b18:40
racarr_what....:/18:40
racarr_grrr18:42
kdubracarr_,18:45
kdubmir_pixel_format_argb_8888: gets translated to HAL_PIXEL_FORMAT_BGRA_888818:46
kdubso sounds like a byte ordering thing18:46
racarr_I...feel like I must not understand what pixel formats18:47
racarr_mean18:47
racarr_why do we have something called pixel_format_argb if the pixels are bgra18:48
kdub" * The order of components in a format enum matches the18:52
kdub * order of the components as they would be written in an18:52
kdub *  integer representing a pixel value of that format.18:52
kdub"18:52
racarr_kdub: Oh...I see...lol. thanks :)18:54
racarr_This is a strange choice for us18:54
racarr_considering both systems we have ever run mir on18:54
racarr_are little endian...18:54
racarr_(well arm is little endian by default at least)18:54
racarr_there's something I still dont understand...18:57
racarr_the cursor (which I guess has never been used on ARM)18:57
racarr_(i.e. black_arrow.c)18:57
racarr_gets put in a GBM_FORMAT_ARGB8888 buffer18:57
racarr_however the image file18:57
racarr_is RGBA?!?!18:57
racarr_so what on earth is GBM_FORMAT_ARGB8888 in memory....18:58
racarr_well18:58
racarr_RGBA apparently18:58
racarr_lol18:58
kdubwe don't have a bgra format19:00
kdubprobably because android doesn't have a corresponding pixel format19:03
kdubthere's a HAL_PIXEL_FORMAT_BGRA_8888, but that would be mir_pixel_format_argb_888819:04
kdubfun, huh?19:04
racarr_yes lol19:04
racarr_IO understand now19:05
racarr_what confused me19:05
racarr_was just the comment from the gimp C file outputer lol...the cursor image thing is ARGB in our terms.19:06
racarr_...do we have any other19:12
racarr_transparent surfaces anywhere19:12
racarr_because now I am writing it in BGRA...(though I dont think its going to work on mesa now...not sure what I am going to do...)19:13
racarr_but I get19:13
racarr_white for the background19:13
racarr_(writing ff ff ff 00 in to HAL_PIXEL_FORMAT_BGRA)19:13
racarr_and my renderable says shaped19:14
racarr_I've got go to outside lol...between my seeming inability to put a pixel of the correct color on the screen, the people outside with jack hammers19:20
racarr_and the person yelling at the person with a jack hammer19:20
racarr_I am about to lose it:p19:20
racarr_back after lunch19:20
racarr_ugh of course...my pixels arent premultiplied...I wonder how alan got gimp to produce such a nice black_arrow.c19:24
kduboh, there's an output plugin19:26
racarr_mm but it produces the pixels in the opposite order we need19:27
racarr_and doesnt premultiply19:28
racarr_unless I am missing like an extra19:28
racarr_options page19:28
racarr_or something19:28
racarr_maybe it depends on the input format oO19:28
kgunnfwiw, ti did the same damn misnaming....19:51
kgunncreated the same headaches19:51
kdubyeah, the best is when like19:56
kdubmarketing somehow gets involved ;)19:57
racarr_lol...20:08
racarr_premultiplied alpha sounds like something people might pay extra for20:09
kduband even more for MostSignificantByte premultiplied alpha20:14
kdubwith some tiling20:15
racarr_lol20:16
racarr_Whee...fresh install22:03
racarr_feels nice :p22:04
racarr_so how do I update this23:45
racarr_server-ABI-sha1sums file23:45
racarr_eh nvm pipe find + some stuff to xargs sha1sum23:47
racarr_lol...this is ridiculous23:47
racarr_my two branches which I am proposing23:47
racarr_ok nvm maybe it will be fine23:48
racarr_conflicts galore23:48
racarr_...sorry speaking outloud in half sentences23:48
RAOFHeh.23:53

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