/srv/irclogs.ubuntu.com/2015/10/20/#ubuntu-unity.txt

=== marcusto_ is now known as marcustomlinson
dandraderSaviq, fixed the background tests in tst_Shell (lp:~unity-team/unity8/externalMonitor).08:13
Saviqdandrader, ack, thanks08:13
Saviqdandrader, last issue I found is that we broke something with input, when autopilot tries to drag indicators down, it fails half of the time (the indicator panel is not pulled down to the end)08:14
Saviqdandrader, I thought it was touch resampling, but isn't, trying to bisect now08:15
dandraderSaviq, hmm... don't know what could be affecting this08:16
dandraderwill be back in ~ 2 hours08:17
Saviqnothing else jumps out as could cause something like that, but it's unfortunately reliable - a test that drags indicators down passes fine on trunk, but fails ~50% in silo 2208:17
Saviqdandrader, yeah I thought it's early for you ;)08:17
Saviq4am?08:17
Saviqmzanetti, fyi ↑↑08:18
tsdgeosSaviq: you're aware of the deadlock on shutdown gerry found with silo22, right?08:29
Saviqtsdgeos, yeah08:30
tsdgeosk08:30
=== zequence_ is now known as zequence
tsdgeosgreyback: so the object is not being deleted09:23
tsdgeosby the deleteLater09:23
greybacktsdgeos: which is strange. deleteLater sticks event on gui event loop, might the gui thread be blocked before it manages to process that event?09:31
tsdgeosgreyback: i thoguht the same, but yes and no09:31
tsdgeosyes the gui thread is blocked since it's the thread calling the destructor09:32
tsdgeosno since the object doesn't live in the guy thread, it lives in the thread we're trying to quit09:32
tsdgeoss/guy/gui :D09:34
tsdgeosgreyback: do you know if any changes to event porcessing in the silo?09:35
tsdgeosSaviq: do we have a "big diff" of what the silo introduces09:35
tsdgeos?09:35
Saviqtsdgeos, I have a branch that reproduces what the train did (until robru fixes bug #1348531)09:36
ubot5bug 1348531 in CI Train [cu2d] "Silo branches should be public" [Medium,In progress] https://launchpad.net/bugs/134853109:36
Saviqtsdgeos, interested?09:36
greybacktsdgeos: nope. The only thing coming to mind is the shutdown sequence might be more time consuming on the gui thread09:36
tsdgeosSaviq: guess so yeah09:37
Saviqtsdgeos, also, unity8 or qtmir?09:37
* greyback upvoting that bug09:37
Saviqgreyback, robru said it should be done within days09:37
tsdgeosboth?09:37
Saviqtsdgeos, ack, gimme 509:38
greybackSaviq: bit of a nudge never hurts ;)09:40
robruSaviq: yeah this week or next week. I unfortunately have higher priorities but I really want to get that one done.09:43
Saviqtsdgeos, lp:~unity-team/unity8/req-44509:48
Saviqtsdgeos, ~lukas-kde/qtmir/wheelEvent09:51
Saviqno09:51
Saviqtsdgeos, lp:~unity-team/qtmir/req-44509:51
Saviqtsdgeos, greyback, fwiw it is qtmir that causes the deadlock, downgrading it to overlay version helps09:54
Saviqalso the touch issue it seems, /me bisects09:55
Saviqbut eyeballs touch_tracing09:55
tsdgeosthere's something very wweird with threads09:57
tsdgeosgreyback: if you kill it while the locker is on the bt is different09:58
tsdgeosit's stuck at09:58
tsdgeos#3  0xb63366ce in QThreadPoolPrivate::waitForDone(int) () from /usr/lib/arm-linux-gnueabihf/libQt5Core.so.509:58
tsdgeosSaviq: good find!09:59
Saviqtsdgeos, I should have the actual MP that caused this soon09:59
Saviqmaybe shines a light on something09:59
greybacktsdgeos: yeah this is most likely qtmir's fault10:00
greybackam just confused how it impacts that thread10:00
tsdgeosah wait10:01
tsdgeosmaybe it's locked inside a request itself10:01
tsdgeosthat's why the object is not deleted10:02
tsdgeosbecause the thhread doesn't go back to it's event loop10:02
tsdgeosthat makes sense10:02
* tsdgeos adds some debug10:02
tsdgeosQThread: Destroyed while thread is still running10:09
tsdgeosthat's bad10:09
tsdgeosbut may be a red herring10:16
* tsdgeos checks if we have that too without silo 2210:16
Saviqgreyback_, http://pastebin.ubuntu.com/12875877/ ??10:18
greyback_Saviq: building manually? You need a cmake switch for GL/GLES10:19
Saviqnative qtmir build on flo10:19
Saviqgreyback_, dpkg-buildpackage should take care of it for me?10:19
greyback_ -DUSE_OPENGL_BUT_LINK_AGAINST_OPENGLES=110:19
greyback_oh yes it should10:19
Saviqlemme clean10:20
tsdgeosyes it's there without silo 22 so "QThread: Destroyed while thread is still running" is probably not it10:22
greyback_ok10:22
tsdgeosstill worth fixing probably thoug10:22
tsdgeosso no the thread doesn't seem to be busy either :S10:37
Saviqgreyback_, looks like dednick's debian/rules simplifications break manual armhf dpkg-builds somehow10:49
greyback_Saviq: darn. Odd CI is happy though10:50
Saviqgreyback_, indeed10:50
greyback_dednick: ^^ able to have a look?10:50
Saviqdednick, when dpkg-buildpackage'ing qtmir with your cmake bits I get http://pastebin.ubuntu.com/12875877/10:51
dednickhmmm10:51
dednicklet me look quick10:52
Saviqowait10:52
* Saviq didn't look closely maybe10:52
Saviqarm-linux-gnueabihf-g++: internal compiler error: Killed (program cc1plus)10:52
greyback_you were still getting linker errors10:53
Saviqdednick, not after I cleaned I think10:53
dednickah. k10:53
Saviqgreyback_, rather ↑10:54
greyback_Saviq: -DNO_TESTS=1 helps avoid that10:54
Saviqkk10:54
greyback_until we land dednick's test refactoring10:54
dednickhm. latest CI not happy.10:54
dednickoh. it's multimonitoe10:55
Saviqdednick, yeah, I think it's fine after all10:55
Saviqjust I got lost in the build errors10:55
dednickok10:55
Saviqgreyback_, that's OOM?10:57
greyback_Saviq: yeah10:57
greyback_tsdgeos: I suspect that the mir server thread isn't shutting down. I'm seeing no evidence mir is even trying to shut down on sigstop, it only appears to capture the signal11:14
tsdgeosgreyback_: but what changed?11:14
greyback_tsdgeos: I dunno yet. a lot of code changed. This is something I checked a month ago (and was ok), but not recently11:16
tsdgeosmhmm11:21
tsdgeosQCoreApplication::postEvent can't find the dispatcher11:22
Saviqgreyback_, tsdgeos, my current suspect is touch_tracing11:23
greyback_tsdgeos: might explain things. QCoreApp::quit() is being called by mir, which should go through event loop, make qt start shutting down, whih will ask mir to quit at the right time11:24
Saviqhmm not for the indicator drag though :/11:24
Saviqbut I built r394 from lp:~unity-team/qtmir/req-445 and no more hang on shutdown11:25
Saviqchecking r395 now to confirm11:25
tsdgeosfood!11:26
Saviq+1, and filing tax report11:26
Saviqgrr no11:31
Saviqok I take all that back11:39
Saviqqtmir old or new, there's a deadlock in new unity8, so bisecting that again11:44
seb128ltinkl, I think you fix from https://code.launchpad.net/~lukas-kde/ubuntu-settings-components/extractPo is slightly incomplete, you need a "X-Ubuntu-Use-Langpack: yes" in debian/control for the template to be imported by launchpad on package build11:45
seb128ltinkl, https://translations.launchpad.net/ubuntu/wily/+source/ubuntu-settings-components11:45
ltinklseb128, will have a look11:48
seb128ltinkl, thanks11:48
ltinklseb128, should I update the MP or file a new one?11:49
seb128ltinkl, that one landed so I guess a new one11:50
ltinklseb128, ok11:50
greyback_Saviq: have you a branch with silo22 unity8 handy?11:52
Saviqgreyback_, lp:~unity-team/unity8/req-44511:53
greyback_thanks11:53
ltinklseb128, https://code.launchpad.net/~lukas-kde/ubuntu-settings-components/langpack/+merge/27501711:53
* Saviq really going out now11:53
seb128ltinkl, comment approved, I'm not in a team that allows me to change the mp status though11:53
seb128Saviq might be able to help there11:54
ltinkl:)11:54
greyback_seb128: ltinkl: done11:56
ltinklgreyback_, great, thx11:56
seb128thanks11:56
=== alan_g is now known as alan_g|lunch
=== alan_g|lunch is now known as alan_g
mterrytsdgeos, does your use_sdk_13 branch really fix bug 1449628?  (it's marked as doing so, but that would surprise me unless you did extra logic beyond 1.3 porting)13:14
ubot5bug 1449628 in unity8 (Ubuntu) "[Icons] X-Ubuntu-Splash-Color=#ffffff yields #f5f5f5" [Undecided,In progress] https://launchpad.net/bugs/144962813:14
tsdgeosmterry: it does13:15
mterryOh nice  :)  Side benefit13:15
tsdgeosmterry: http://bazaar.launchpad.net/~unity-team/unity8/use_sdk_13/revision/185613:15
tsdgeosSaviq: how did you try with an older qtmir? here it wants to uninstall unity8 if i do so13:17
mterrytsdgeos, I'm all for it, that paper overlay was dumb in my opinion, but is Design OK with dropping it?13:17
Saviqtsdgeos, install unity8-fake-env13:17
mterryWell, not dumb.  Just poorly applied13:17
tsdgeosmterry: read the log ;) "Update with new SDK 1.3 MainViewStyle.qml looks"13:17
tsdgeoswe're not doing anything that SDK doesn't do13:18
Saviqtsdgeos, in any case, it seems qtmir isn't the culrpit after all, I had a weird mix of locally built packages13:19
mterrytsdgeos, yeah but before we did do stuff the sdk didn't do  :)13:20
tsdgeosmterry: not really13:20
tsdgeosmterry: what did we do?13:20
tsdgeosthe paper was part of the SDK 1.213:21
mterrytsdgeos, it was?  It looked like we were loading graphics/background_paper.png ourselves in that commit you linked13:21
tsdgeosyes because we're that smart and decided to copy the png file13:21
tsdgeosbut if you care to check  SDK 1.2 MainViewStyle.qml you'll see it does the same13:22
mterrytsdgeos, OK cool.  :)   Thanks for walking me through it.  That's been a bugbear of mine for a while on my own apps that have white in their app icons13:22
tsdgeosSaviq: have you been able to find which rev makes it break?13:30
Saviqtsdgeos, not yet, wasted some time on qtmir which wasn't to blame, still a few rebase cycles away13:31
tsdgeosi'm a bit a lost of why the event isn't being delivered13:31
greyback_as am i13:31
tsdgeosall i can see it now i'd blame glib going crazy13:31
tsdgeossince it seems really we post it to the thread event loop and it's there but it's never sent back13:32
tsdgeoswhich may mean we do something weird somewhere else that confuses glib13:32
tsdgeosi tried valgrind but it says nothing memory wise13:32
tsdgeosnot sure if helgrind would make sense13:33
=== dandrader is now known as dandrader|afk
greyback_tsdgeos: mir uses glib for its event loop. I believe glib does fancy things consolidating event loops. Could it be mir asking glib to quit the event loop, is also quitting qt's event loop?14:19
greyback_I might be on the wrong track tho14:19
tsdgeosgreyback_: no idea, it could, but then unity8 is the only culprit, it's the unity8 packages that introduce the regressio14:19
tsdgeosn14:19
Saviqtsdgeos, greyback_, it's https://code.launchpad.net/~unity-team/unity8/externalMonitor/+merge/27382914:20
Saviqmust be the two windows (per-screen) make things go wrong14:21
SaviqIIRC thread/renderer per window?14:21
tsdgeosso the delete view is gone14:23
tsdgeosthat changes destruction order of stuff14:23
tsdgeosmay as well be that14:23
tsdgeosprobably is that tbh14:23
Saviqindeed14:25
Saviqdandrader|afk, ↑14:26
=== dandrader|afk is now known as dandrader
greyback_tsdgeos: the view is wrapped with a scoped pointer, it should be deleted14:29
tsdgeosgreyback_: nobody says it's not being deleted14:30
tsdgeosgreyback_: i'm saying the delete order *changed*14:30
greyback_true14:30
Saviqgreyback_, I think we had the explicit delete there for exactly that reason14:30
dandraderSaviq, ok, will play with explicit deletion of the quickviews14:36
Saviqdandrader, I'm set up quite well for testing, so whenever you're ready14:37
tsdgeosgreyback_: the arguments thing is not caused by passing the '\0' instead of nullptr i have in some branch, right?14:39
greyback_tsdgeos: no, a bit more involved, passing args to mir, mir will remove things it understands, then ensure qt gets the remainder14:40
tsdgeosk14:40
greyback_tsdgeos: it's rough, but works https://code.launchpad.net/~gerboland/qtmir/fix-cmdline-args/+merge/27495414:40
tsdgeos:D14:42
greyback_Saviq: tsdgeos: replacing the main.cpp with the one from trunk, the shutdown hang goes away (replaced with a crash, yay http://pastebin.ubuntu.com/12877293/)15:00
tsdgeos"good"? :D15:01
greyback_that might be consequence of me running unity8 by hand (i.e. upstart not doing it)15:01
greyback_dandrader: ^15:03
dandraderSaviq, greyback_, pushed the "hanging on shutdown" fix to lp:~unity-team/unity8/externalMonitor.15:05
Saviqack15:06
Saviqdandrader, the mouse issue seems to be qtmir after all, bisecting now to see which MP15:06
dandraderSaviq, greyback_, nevermind. still hanging. it was segfaulting before :)15:12
Saviqkk, not holding breath15:12
ltinkldandrader, http://developer.kde.org/~lukas/screenshots/unity8/screenshot20151019_164547260.png15:14
ltinkldandrader, notice the window resize cursor :)15:14
greyback_dandrader: it improves things a little for me, I get crash now deleting mouseTouchAdapter15:14
dandraderltinkl, yes. I've seen this kind of problem before15:14
dandraderltinkl, dialog (or its background) has also to consume hover events15:15
Saviqltinkl, you need to not paste screenshots in Czech, I can't wipe my screen all the time ;P15:15
ltinklSaviq, tsk tsk15:15
dandraderltinkl, yeah, looks like your text strings are corrupted as well :)15:15
ltinkldandrader, perfectly fine15:15
ltinkl:)15:16
dandraderlike showing random memory or something15:16
Saviqworse, even15:16
ltinklyeah yeah15:16
ltinklI get that feeling when seeing Polish text as well15:16
greyback_dandrader: yeah still hanging when I fix crash on deletion15:16
ltinklSaviq, the truth is, Polish looks exactly the same Czech used to be written in 15th century, not kidding15:16
Saviqltinkl, it shoulda stayed that way :D15:17
Saviqltinkl, for us, most Czech words are like some funny versions of our "real" words15:17
ltinklSaviq, we're a lazy bunch, that's why we invented those carons15:17
Saviqltinkl, oh we have plenty of those ourselves, even ones not used anywhere else in the world15:18
Saviqltinkl, but it's not even about those15:18
ltinklSaviq, yea I know, we don't have many of them15:18
dandraderhhmmmm that shows in my stack trace: QSqlResult::setLastError(QSqlError const&) () at kernel/qsqlresult.cpp:39115:18
dandradermight be the window geometry saving logic15:18
ltinklThe caron evolved from the dot above diacritic, which Jan Hus introduced into Czech orthography (along with the acute accent) in his De Orthographia Bohemica (1412)15:18
ltinklsays wikipedia15:18
dandraderwhich is async15:18
dandraderwell, better crashing than hanging forever I guess :)15:19
Saviqlet's just signal(SIGABRT) ;)15:20
Saviqerrors.ubuntu.com will love us for that :)15:20
tsdgeoscimi: wyh do you need widgetMargins: -units.gu(1) ?15:22
tsdgeosshoouldn't it just be 0?15:22
tsdgeosit being -1 is weird since it still means it's coupled somewhere15:22
Saviqtsdgeos, bug #1507769 is coming our way15:23
ubot5bug 1507769 in unity8 (Ubuntu) "App store does not display images" [High,Confirmed] https://launchpad.net/bugs/150776915:23
tsdgeosSaviq: yeah i saw it, not very reproducible bug being jumped around :D15:23
Saviqindeed15:23
cimitsdgeos, it's the row15:23
cimitsdgeos, Preview.qml puts widgets with spacing or a margins iirc15:24
tsdgeoscimi: i'd say it's15:25
tsdgeos                        leftMargin: units.gu(1)15:25
tsdgeos                        rightMargin: units.gu(1)15:25
tsdgeosshouldn't those be widgetmargins?15:25
tsdgeoscimi: lol ignore i was looking at the wrong code15:26
dandraderSaviq, greyback_, tsdgeos removing the logic to save window state on destruction I get this: http://pastebin.com/C4skrYQm15:26
dandrader(ubuntu pastebin wasn't  working)15:26
tsdgeosdandrader: is this deleting the view before the app?15:27
dandradertsdgeos, yes15:27
greyback_dandrader: can you share your patch?15:29
tsdgeoscimi: meh, it still sucks that we need to have that -1 :/15:29
dandradergreyback_, I pushed it15:29
greyback_ok15:30
dandradergreyback_, plus this: http://pastebin.ubuntu.com/12877457/15:30
=== dandrader is now known as dandrader|afk
cimitsdgeos, other ideas?15:41
tsdgeoscimi: the only think i can think of is passing down the parentMargins in a var and using those in the code with -15:43
tsdgeosif we make that var 0 by default and set it to 1 when inside the row15:44
tsdgeosit helps a bit with reusability15:44
tsdgeosbut i may be overthinking this15:44
tsdgeoscimi: does this need a silo or i just get the top branch and try it?15:44
cimitsdgeos, for the preview no, for the sharing we have no scopes using it15:45
greyback_dandrader|afk: I'm seeing no impact from your patches, things still locking up with the same backtrace15:47
greyback_I didn't get a fail with the google protobuf15:47
tsdgeosgreyback_: Saviq: this deadlock thingie was not found by any test right? or was it?15:48
greyback_tsdgeos: autopilot found it I believe15:48
tsdgeosmakes sense15:48
Saviqtsdgeos, greyback_, well, *if* it would actually run in CI15:48
Saviqthe only result would be longer autopilot times15:48
Saviqbecause upstart SIGKILLs after 60s or so15:48
tsdgeosoh15:49
Saviq*but*15:49
Saviqwe have a crazy timeout set out in autopilot waiting for shutdown15:49
Saviqwe should reduce that to a sane value now that we're actually shutting down fine15:49
Saviqand probably wait for the SIGKILL anyway, otherwise we'd try to start the next test before the previous one completed15:52
greyback_dandrader|afk: I think you forgot to delete the QQmlEngine15:53
greyback_that fixes the hang, but brings me back to the crash with dbus errors15:53
greyback_and I managed to hit the google protobuf fail15:57
=== boiko_ is now known as boiko
Saviqmterry, fyi, zsombi's beginning Ubuntu.Gestures migration to UITK right now16:09
Saviqif that affects OOBE at all16:09
ltinklSaviq, the tutorial yes, the wizard not16:12
Saviqltinkl, yeah, I was just thinking the bottom edge tutorial, we were discussing the two possible approaches (shell monitoring the gesture vs. app reporting progress)16:13
Saviqso just wanted to let him know what's happening there16:13
mterrySaviq, ok cool16:14
mterryThat would help with consolidation if we do IPC to unity816:14
=== dandrader|afk is now known as dandrader
dandradergreyback_, ah, good one. interesting I wasn't getting a hang even though I wasn't deleting the qml engine16:37
dandradergreyback_, but it wasn't leaking as the application was the parent16:38
dandradergreyback_, well, now it does as I stopped deleting the application, like in lp:unity816:38
dandradergreyback_, and unity-system-compositor hangs around for a while before finally going away16:45
dandradermaybe crashing as well... gonna check16:46
Saviqgreyback_, looks like qtmir/multimonitor is what breaks input so that autopilot panel tests don't pass (the panel gets stuck a few pixels above the bottom edge, suggesting there was no TouchEnd when the autopilot finger went offscreen)17:02
Saviqjust compiling qtmir @ multimonitor to verify, but that's my current thinking (and makes sense because there's quite a bit of input happening?)17:03
Saviqwill also get you output from TouchRegistry / DDA debug17:03
Saviqdandrader, fyi, you're off the hook for the autopilot issue ↑17:03
Saviq(looks like)17:03
=== alan_g is now known as alan_g|EOD
dandraderSaviq, does unity8 handle SIGTERM?17:15
Saviqdandrader, Mir does17:15
dandraderah, ok17:15
Saviqdandrader, then unity8 is told to shut down17:15
dandraderSaviq, so qtmir calls QGuiApplication::quit()?17:16
* dandrader greps qtmir code17:17
Saviqdandrader, our main does atm17:17
Saviqas in unity8's17:17
Saviqdandrader, main.cpp:11917:17
dandraderSaviq, not sure what's the purpose of this line. qtmir does call QCoreApplication::quit17:19
dandraderhttp://pastebin.ubuntu.com/12878228/17:19
Saviqdandrader, indeed17:20
Saviqdandrader, I think it might be the case where it's Qt that wants to quit17:21
Saviqdandrader, when closing the session17:21
Saviqwe're not handling a signal then17:21
Saviqdandrader, yeah17:22
Saviqdandrader, QQmlEngine::quit() is emitted when you call Qt.quit() in qml17:22
Saviqdandrader, so yeah, qtmir quits when mir handles a SIGTERM, while unity8 quits when Qt.quit() is called17:30
dandraderSaviq, as for the  google::protobuf::ShutdownProtobufLibrary() segfault. I think we will need alan_g's help17:33
Saviqdandrader, so we're not hanging, but crashing now?17:34
dandraderSaviq, yes17:34
Saviqdandrader, I can ~live with that...17:34
robin-heroHey! I'd like to try unity8 on my laptop, but I can't find the desktop-next images.18:05
robin-heroWhere can I find it?18:05
davmor2robin-hero: I think they are removed as no-one was really working on it, since the plan changed to move to snappy for the base of unity8 aiui18:08
robin-herodavmor2: So I can't test the actual progress?18:09
davmor2robin-hero: no idea18:10
dandraderrobin-hero, install unity8-desktop-session-mir package and then a new session type will appear on the lightdm greeter: "Unity8-Mir"18:27
robin-herodandrader: Thanks, but I don't want to install it, just want to test the live session :)18:28
davmor2robin-hero: it's in an lxc container so you can dump it afterwards I guess18:29
robin-herodavmor2: But I have Ubuntu 14.04 on my laptop, is it not to "old"?18:30
=== dandrader is now known as dandrader|afk
=== greyback__ is now known as greyback
=== dandrader|afk is now known as dandrader
greybackdandrader: about http://pastebin.ubuntu.com/12878228/, it is Mir which first gets the SIGTERM signal, and calls that lambda. But we don't shut down mir immediately, instead we tell Qt to shut down, and Qt shuts down the mir server at the right time (i.e. at QPA unload, which is after all windows & gl contexts have been released)19:05

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