Tuesday, 2019-01-29

*** zbenjamin_ is now known as zbenjamin02:10
dcalisteHello chriadam, I hope you envoyed nice vacations.08:13
chriadamdcaliste: hi, thank-you, yes ;-)  snowboarding, was fun08:13
chriadamdcaliste: I hope you've been well08:13
dcalisteI'm fine, thanks. I've seen your comments on the security-ui thing.08:14
chriadam(I didn't get a chance yet to test your patch)08:14
dcalisteNo prblem, as I was mentioning, it's not a definitive fix.08:15
dcalisteIt just makes the app crash later in the call stack…08:15
chriadamah, I didn't understand that.  what crashes later?  qtquick side?08:17
dcalisteYes, if you look at the backtrace in the snippet, you see that it happens from a call in qtquick -> qtwayland.08:18
dcalisteTo summarize:08:18
dcalistethe render thread is in a QWaylandGLContext::swapBuffers() call.08:19
dcalisteat the same time, the main thread is destroying the the window that the rendering thread is swapping.08:19
dcalisteIn this scenario, there are several possible place for the app to crash:08:19
dcaliste- in libhybris at two different places, because the the swap buffer call is calling internally prepareSwap() and later on finishSwap() with pointer on the window that is nullified in the main thread.08:20
dcaliste- if we survive libhybris, there is a last call in swapBuffer in QtWayland (doResize stuff) that is called at the end of the routine that is accessing private members of the window that have been destroyed in the main thread.08:21
dcalisteI've patched libhybris in the mentioned PR on Github.com to avoid accessing nullified pointers and add locking mechanism for the main thread to set this pointer to null safely.08:22
dcalisteBut I've no idea how to proceed for QtWayland, because I didn't see any locking mechanism there.08:23
dcalisteAnd we are at the threat of the main thread destroying the object while the rendering thread is still within swapBuffer().08:23
dcalisteI want to give a look in QtQuick to see if there is some smat pointer mechanism there ensuring that the object is not destroyed while the rendering is still using it, but didn't find the package with debug symbols.08:25
tortoisedocdcaliste : the object living in the gl state machine is a copy of the one in the main thread, living in gpu memory?08:25
dcalisteI've seen you mentioned mer-qt repo, I'm going to check if it is enabled on my device.08:25
tortoisedocmal : can you point me to enable valgrind in sb2?08:26
tortoisedoc...it seems due to stripped ld-linux.so, valgrind refuses to run08:26
chriadamdcaliste: mine is internal repo, but hopefully the same packages also exist in public repositories... mer-qt         ... https://download-internal.jollamobile.com/mer:/qt/latest_armv7hl/08:26
dcalistetortoisedoc: for the gpu, yes I guess so, but here we're still on CPU, having two CPU threads, as far as I understand, and the main one is destroying memory used by the rendering one in my particular scenario.08:27
tortoisedocdcaliste : garbage collecting?08:27
chriadamno, race between window close causing destruction of surfaces, and final frame being rendered from window to egl buffer08:28
chriadam(if my understanding is correct)08:28
dcalistechriadam: thanks for the rephrasing, exactly my thinking ;)08:28
chriadamdcaliste: one sec, just pinged denexter08:31
dcalistechriadam: about the repo, 'ssu lr' doesn't show me any disabled repos that may be of interest, and 'pkcon search qtquick' doesn't list any debuginfo package…08:32
chriadamdcaliste: can you pastebin or email `ssu lr` output?08:33
chriadamalso, qtdeclarative not qtquick08:34
dcalistechriadam: https://pastebin.com/WgFUheim08:35
dcalistechriadam: Ah, I see, there is a qtdeclarative-debuginfo, goos.08:36
dcalistegood.08:36
dcalisteIt may cover the qt5-qtdeclarative-qtquick subpackage, indeed. Thanks for the tips.08:37
chriadamno worries.  that ssu lr output is different to what I expected, e.g. no mer-core or mer-qt.  I wonder if you try to access https://cbeta.jolla.com/releases/3.0.1.13/mer/qt/armv7hl/ does that work?  or https://cbeta.jolla.com/releases/3.0.1.13/mer/core/armv7hl/ ?08:37
dcalisteI don't know, because I don't know how to provide credential if I curl these URLs for instance. But I'm installing the qtdeclarative-debuginfo package and I will see if that's enough.08:40
chriadamcool08:40
chriadamhopefully qt5-debuginfo for qtcore/qtgui will work also08:40
chriadamdcaliste: Andrew said that it might (or might not) be fixed with upgraded QtWayland (e.g. Qt 5.9)08:42
chriadamaside from that he couldn't offer much advice unfortunately08:44
chriadamI agree that it's v.strange that qtquick doesn't internally manage its state to avoid the race08:44
dcalisteYes, that's why I would like to give a look. Maybe it's just how we are calling it that creates the race in this specific scenario and not in the majority of cases.08:46
chriadamright, if the window destruction is somehow being triggered due to server-side signal in this case, rather than normal "application is quitting" case08:49
chriadamor something else "unusual"08:49
chriadamwell, I really appreciate you looking into this.  regardless, I think defensive programming (your hybris PR) makes sense, I will ask people to review / test / merge your pr08:50
chriadamon the email / signature stuff side, jpetrell is still on leave, he should be back in 2 days IIRC08:51
chriadamthen we can get the ball rolling on that one again I think08:51
chriadamunrelated, but I noticed at recently sailfish community meeting, someone raised the IMAP IDLE issue again.  I will follow up on that one internally, too, as JB#32000 was recently marked for maintenance work IIRC08:52
chriadamoh, no, it was just flagged internally again, but not yet approved for maintenance work08:53
Dakonthe whole IMAP stuff sucks08:53
dcalisteThank you. Indeed, in my opinion, there is an issue there in libhybris and I would like to discuss it with whoever knows better than me on this topic.08:54
chriadamDakon: what in particular?08:54
Dakonit keeps duplicating deleted mails in my trash folder, it is slow and unreliable marking mails as read or moving them to the correct folder08:54
chriadamdcaliste: sledges / frajo / abranson probably know libhybris best08:54
Dakonand it seems to completely get messed up when you mark mails as read or even delete them from a different host08:55
dcalisteAbout IMAP stuff, yes that bug is tricky about loosing idle. It takes a lot of time to investigate. I really would like to make it goes on but I really have no time for it now.08:55
Dakonand it only watches inbox08:55
chriadamdcaliste: I hope that rainemak has time to investigate that one08:55
chriadamas he did similar work for exchange in the past IIRC08:55
abransondcaliste: thanks for helping point out that it's not a trivial bug to fix in the last meeting :)08:56
chriadamDakon: if you can provide me with logs of error case syncs (e.g. the duplication events etc) and email to chris dot adams at jolla dot com I would appreciate it08:56
dcalisteConcerning GPG stuff, I'll be off the two next Tuesdays, but will be around some of the other days. I've addressed all remarks from pvuorela on the GUI side. Don't hesitate to test internally and report anything in the various MRs, I'll reply quickly there.08:56
chriadamDakon: you may have to enable a bunch of debugging output (see https://sailfishos.org/wiki/Sailfish_OS_Cheat_Sheet#Diagnostics for more info)08:56
chriadamdcaliste: no worries, and thank you very much08:57
chriadamI'll poke jpetrell when he gets back, and we will finally get all that stuff in ;-)08:57
rainemakgenerally speaking... if you see / find something useful missing from e.g. Sailfish_OS_Cheat_Sheet please raise / propose improvements08:58
chriadamindeed08:58
chriadamabranson: are you able to help dcaliste with libhybris things, by any chance?08:58
dcalisteI wish so ;) I would happy to have some feedback from cbeta and early adopters also, that would be great.08:59
krnlyngchriadam, i am in the process of updating libhybris to a common base, i will look into the rendering issue afterwards if that is ok (otherwise we need to cherry-pick it to each adaptation)08:59
krnlyngrendering PR*08:59
chriadamkrnlyng: yes, that sounds very sensible08:59
chriadamwhat is the eta for that, ooi?08:59
krnlyngchriadam, this or next week hopefully09:00
chriadamdefinitely no problem ;-)09:00
chriadamthank you09:01
chriadamdcaliste: did you have anything else to discuss tonight?  did I forget anything of importance which I need to follow up on over the coming weeks?09:01
abransonchriadam: i'm not very knowledgeable about libhybris - krnlyng's your man there ;)09:02
dcalisteNo, the main blocker IMHO for the GPG stuff is the hanging of security-ui and we have discussed this a lot today. I'm going to look into the call path in QtQuick to see if we're doing something strange there.09:02
Dakonand the email app needs a option "automatically mark mails as read when moving to trash" as roundcube has it09:02
chriadamDakon: that sort of feature request is sensible.  when jpetrell gets back you should mention that to him.09:03
Dakonwhen will that be?09:03
dcalisteDakon, that's true, I agree, I'll give a look, no ETAt though.09:04
chriadamDakon: jpetrell should be back at the end of this month, e.g. 2 or 3 days I think09:05
chriadamok, thanks again - if there's nothing else to discuss, I will head home now :-)  have a good night / week, and I look forward to discussing with you again in 3 weeks hopefully after merging the gpg stuff to email side!09:07
dcalisteHave a good night. Thank you for all the feedback ;)09:07
Dakonoh, and a switch "don't bother me with the HTML cruft, show the text/plain part only. always."09:09
tortoisedocmartyone_ : ping09:22
martyonetortoisedoc: pong09:23
martyonetortoisedoc: reply to your last question: I assume you installed them inside tooling (correct). Did you run sb2-init after that, to tell sb2 about the new compiler?09:23
martyonetortoisedoc: get an irc boucer ;)09:23
martyonebouNcer09:24
tortoisedocmartyone : hey, thanks, yes I got the gcc4.9 working thanks :) now Im investigating memory bubbles in rustc, so I need valgrind. But as ld-linux.so is stripped, valgrind is not cooperating :(09:28
tortoisedocmartyone : so I am looking how to use valgrind effectively from within sb2 (or from outside if necessary)09:31
martyonetortoisedoc: I have no answer to that at hand, sorry09:32
tortoisedocmartyone : is the source code for ld-linux.so somewhere?09:33
martyonedefinitely, part of glibc I guess09:34
tortoisedochmhm09:37
tortoisedocthanks, ill have a look09:37
Laalfso i bought an xa2 because my op3 died and sfos seemed nice. i also saw that there will be an option to buy the full package of sailfishos soon for this device. what does "soon" mean?18:02
r0kk3rza not too distant point in the future18:03
Laalfthe first contact i had with sfos was pretty much saturday. so i dont really know what "too distant" means for jolla18:04
leszekThis year definitely. Q1 maybe. Is that better?18:05
Laalfyep. thanks. fingerprint won't come with that, right?18:06
r0kk3rzidk its already been delayed once or twice, so who knows18:08
leszekLaalf: I am not even sure we will get fp this year18:19
Laalfleszek: fingerprint isnt that important, autocorrect would be though..18:19
caitlingot pretty used to jolla making up release dates for things and then releasing less than suggested later than suggested. but it does at least work.18:27
leszekLaalf: there is no autocorrect available for SailfishOS. There is text predicition that should work already without an issue on Xperia X.18:31
leszekXA2 will have it with the commercial image18:31
Laalfi have an xa218:31
Laalfidk, ill probably get used to it.18:32
vinipsmakerwhere do I report issues and feature requests for the virtual keyboard?18:37
vinipsmakerI reported a few to the maliit repository, but I think that was the wrong place to report18:38
*** Renault_ is now known as Renault18:39
leszekvinipsmaker: I think tjc aswell might help18:42
vinipsmakerleszek: thanks19:25
vinipsmakertjc: ping19:26
attahSo I tried wdehoog's gstreamer from yesterday, but it seems my /var/lib/environment/nemo/90-gstreamer-playbin.conf isn't being run19:36
Laalfkido: so starfish is incredibly white. and only white.19:49
kidodamn whitewashing19:50
Laalflol19:51
kidoLaalf: well, probably there is a bug, I assume you compiled it yourself and ran it from Qt Creator, didn't you? don't you have logs of what's going on in the tiny execution box at the bottom of the window?19:51
Laalfkido: i imported that project and i hope i compiled it correctly. gave me a 32kb or so rpm that i just installed on my phone19:52
kidoif you got a rpm probably the compilation went fine but there is a problem at the execution19:52
Laalfwhere can i find logs?19:53
Laalfor do you have a package?19:53
kidoI just remembered you also need that daemon here: https://github.com/AsteroidOS/asteroidsyncservice19:53
kidowe did some work to have it work for both SFOS and Ubuntu Touch but it might be that we got it to work on neither of those in the end19:54
Laalfso i compile that thing as well, install it and hope for the best?19:54
kidosort of, yeah20:00
kidostory of my life :|20:00
kidowhat I suspect happens is the QML code from starfish (which is not parsed before building the RPM) tries to import org.asteroid.syncservice which is distributed as part of the asteroidsyncservice repository https://github.com/AsteroidOS/starfish/blob/master/qml/starfish.qml#L2220:01
kidoand since it doesn't find it, then QML is unhappy and the whole thing doesn't work ;)20:02
kidobut you should find a way to run starfish from QtCreator if you want a convenient way to work on it20:02
Laalfi should just buy an old pebble20:02
Laalfthose seem to work20:02
kidooh and from a look at it, asteroidsyncservice also depends on libasteroid20:03
kidohttps://github.com/AsteroidOS/libasteroid20:03
Laalfoh god20:03
kidoeheh :)20:03
kidoI told you it's not entirely trivial20:03
kidothere is a lot of work to do on sailfish to implement this in a way that the connection isn't lost when the app closes20:04
kidoand also there is a lot of work done to make the whole thing modular so that other projects (such as Telescope, the Ubuntu Touch client) don't have to reinvent the wheel20:04
Laalfid rather just spend another few € on a watch that will kinda work out of the box20:06
Laalfbut i dont even know what that would be20:06
kidoyeah I understand that, thanks for trying at least ;)20:10
kidoas I told you there is quite a bit of work required to make starfish work so it needs proper motivation20:10
Laalfi am not that big of a dev. so if it doesnt work i probably wont do anything anyways... lets see if i can find some hardware list for pebble/rockpool20:11
kidosounds like a simpler way indeed20:12
Laalfcant get my lifetime back. i can get my money back though. i shouldnt be scared of closed software since i am running sailfish:')20:13
kido:)20:23
Laalfif someone runs rockpool, could you tell me what watch you run? i cant seem to find anything on which watch would be ok to buy20:24
wdehoogattah: it is not working? too bad20:45
attahWeird how that file is not processed20:46
attahIf you are running that, what is your output of env | grep GST20:46
attah?20:46
wdehoogrunning what?20:47
attahthat patched bunch of gstreamer packages20:47
wdehoogif I ssh in it prints: NOTICE: Env value ignored GST_PLAYBIN_FLAGS=0x18220:48
wdehoogfor the shell the two vars are not allowed20:48
attahinteresting20:48
wdehoogbut for apps I launch (sailsoma of shoutcast-sailfish) they work20:49
attahbut they apply anyway, how would one know?20:49
wdehoogthe other one: NOTICE: Env value ignored GST_PLAYBIN_BUFFER_SIZE=25600020:49
attahyou get that from just SSH-ing in?20:50
wdehoogwell without them shoutcast-sailfish takes ages before a 320 stream is buffered20:50
wdehoogwith the buffer it is a few seconds20:50
attahO.o20:50
wdehoogyes plain ssh20:50
wdehoogsee https://pastebin.com/JYqHg7VY20:50
attahhah, what do you know.. i get those warnings20:51
attahthey are just, as it says, ...ignored20:51
attahI perceive a *slight* improvement to initial stuttering.. but at the expense of alot more lag until start20:53
attahsight ~=50%, alot ~=10x20:53
wdehoogthey are being filtered here: /etc/profile.d/developer-profile.sh20:53
attahi just thought my app was acting up on the latter20:53
wdehoogslight is not enough, then it will not help you at all20:54
attahno, not really20:54
wdehoogmaybe try other flags or bigger buffer20:54
attahI'm on 512 already20:54
wdehoogor it is just another problem20:54
attahI should try switching to a seekable stream version and seek back soem seconds initially20:55
wdehoogor ask a jolla person. abranson might know more on gstreamer20:56
attahYeah... just throwing a live .mp3 stream at the QML MediaPlayer should be expected to work somewhat reliably21:00
attahas in stutter only on bad networks or so21:00
wdehoogattah: just curious do you have a journal log of what happens when you start playing the stream?21:00
attahi could make one i guess21:01
attahjournalctl -f gives nothing but my debug printouts21:02
wdehoogmaybe use GST_DEBUG or stuff like that21:06
attahhmm, i did export GST_DEBUG=1 and then launced the app via xdg-open on the .desktop file (since it is a pure QML app), no change to jounal21:10
wdehoogor increase log of pa: http://www.merproject.org/logs/%23sailfishos-porters/%23sailfishos-porters.2017-09-26.log.html#t2017-09-26T11:22:5821:10
wdehoogxdg-open? will that result in setting the correct flags and buffer_size?21:11
attahalthough 1 isn't high enough it seems21:11
attahi thought this was system wide?21:12
attahjust not the devmode console for whatever reason21:12
wdehoogbut you start xdg-open from that console? or not?21:12
attahoh, right21:12
attahle derp21:13
attahsooo debug level 5 seems to do the business21:14
attahit log so much that the audio becomes laggy :P21:14
attahseems i have something to to tomorrow evening as well21:17
wdehoogattah: so I have to do like this: GST_PLAYBIN_FLAGS=0x182;GST_PLAYBIN_BUFFER_SIZE=256000 xdg-open /usr/share/applications/shoutcast-sailfish.desktop21:21
attahright, that makes sense21:21
wdehoogthis does not work: xdg-open /usr/share/applications/shoutcast-sailfish.desktop21:21
wdehoogfor me that is21:21
attahBut i need more than a few minutes if i'm going to read the amount of log it produces... thus, tomorrow21:23

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!