/srv/irclogs.ubuntu.com/2020/02/17/#snappy.txt

amurraymwhudson: https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/186325500:28
mupBug #1863255: Programs installed in Snap format do not detect the keyboard  <amd64> <apport-bug> <focal> <package-from-proposed> <snapd:New> <snapd (Ubuntu):Confirmed> <https://launchpad.net/bugs/1863255>00:28
mwhudsonamurray: good morning00:33
amurrayhey mwhudson :)00:34
mwhudsonyes i see "apparmor="DENIED" operation="connect" profile="snap.chromium.chromium" pid=41956 comm="pool" family="unix" sock_type="stream" protocol=0 requested_mask="send receive connect" denied_mask="send connect" addr=none peer_addr="@/home/mwhudson/.cache/ibus/dbus-FTeGlGGx" peer="unconfined"" too00:35
mupPR snapd#8141 opened: interfaces/desktop-legacy: ibus socket path has moved in focal <Created by alexmurray> <https://github.com/snapcore/snapd/pull/8141>00:44
mupPR snapd#8141 closed: interfaces/desktop-legacy: ibus socket path has moved in focal <Created by alexmurray> <Closed by alexmurray> <https://github.com/snapcore/snapd/pull/8141>00:51
amurrayhah I should read scrollback from all channels before diving into stuff - jdstrand already sent a PR for this on friday (PR #8139)00:59
mupPR #8139: interfaces/{desktop-legacy,unity7}: adjust for new ibus socket location <Simple πŸ˜ƒ> <Created by jdstrand> <https://github.com/snapcore/snapd/pull/8139>00:59
mupPR snapd#8139 closed: interfaces/{desktop-legacy,unity7}: adjust for new ibus socket location <Simple πŸ˜ƒ> <Created by jdstrand> <Merged by zyga> <https://github.com/snapcore/snapd/pull/8139>01:05
mborzeckimorning07:08
mvohey mborzecki - good morning07:08
mborzeckimvo: hey07:10
mborzeckimvo: how was your weekend?07:10
zygagood morning!07:18
zygamvo: hey,07:18
zygamvo: I merged a small patch last night07:18
zygamvo: I was thinking we should dput that patch into focal07:18
zygamvo: as it breaks snap X input for some users07:18
zygamvo: the patch in question is in https://github.com/snapcore/snapd/pull/813907:19
mupPR #8139: interfaces/{desktop-legacy,unity7}: adjust for new ibus socket location <Simple πŸ˜ƒ> <Created by jdstrand> <Merged by zyga> <https://github.com/snapcore/snapd/pull/8139>07:19
zygamvo: it consists of extra permissions to talk to the current ibus api over dbus07:19
zygaer. unix07:19
zyga(not dbus, sorry)07:19
mvomborzecki: hey, sorry for the delay, was reviewing #8078. weekend was good, a bit windy yesterday and tonight, another storm here07:27
mupPR #8078: daemon: support resuming downloads <Created by chipaca> <https://github.com/snapcore/snapd/pull/8078>07:27
mvomborzecki: how was yours?07:27
mvozyga: hey, let me see07:27
mvozyga: aha, I see07:28
zygamvo: let me know if I can help07:28
zygamvo: I think I cannot dput to the archive (even snapd)07:28
zygamvo: but if you want I can try07:28
mvozyga: should be trivial, let me just finish my current stuff and then I will do it07:29
mborzeckizyga: hey07:31
zygahey maciek :)07:31
mborzeckiwow that ibus thing, saw the emails07:32
mborzeckiguess a lot of folks were unhappy :/07:32
zyga:D07:32
zygayeah, it's still the dev release but I guess people noticed07:32
mborzeckizyga: afaik it broke chromium too07:33
zygabrb07:45
zygamborzecki: hey07:53
zygamborzecki: on Friday I was working on modernizing services code07:53
zygamborzecki: and port it over to syncdir07:53
zygamborzecki: I will post some of that today07:54
zygaI noticed I got a review from jamie so I'll part everything and handle that first07:54
zygamborzecki: oh and a small one for you https://github.com/snapcore/snapd/pull/8134 :)07:55
mupPR #8134: interfaces: use commonInteface for desktopInterface <Created by zyga> <https://github.com/snapcore/snapd/pull/8134>07:55
mupPR snapd#8134 closed: interfaces: use commonInteface for desktopInterface <Created by zyga> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/8134>08:09
mupPR snapd#8127 closed: interfaces/cpu-control: allow to control cpufreq tunables <Created by alexmurray> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/8127>08:10
mvo8078 needs a second review, then it can go in08:10
mvozyga: uploaded to focal08:11
zygamvo: thank you so much!08:12
zygathe download API has evolved, I see08:16
* mwhudson installs snapd from https://launchpad.net/ubuntu/+source/snapd/2.43.3+git1.8109f8/+build/1871729608:25
mwhudsonyay i can type again08:26
zygahaha, same here :)08:26
pstolowskimorning08:39
mborzeckipstolowski: hey!08:43
mvohey pstolowski08:52
zygagood morning pawel!08:52
Saviqhey guys, on focal my snapped firefox (and actually some other app prior) lost its gtk runtime… discarding ns helped https://pastebin.canonical.com/p/yZNy7mNjrv/ - but is there a known problem?09:03
Saviqanything else I can dig out?09:03
Saviqzyga: FYI ↑09:06
zygaSaviq: 1-2-1 now09:06
Saviqnw09:14
zygaSaviq: hmmm09:54
zygaSaviq: it might be, perhaps, let me look09:54
zygahmm09:55
zyganot sure, we have one thing that fixes a class of bugs like that that's not enabled by default09:56
zygaso without extra digging I cannot say with certainty that the issue you experienced is covered by that change09:56
zygaSaviq: I'm thinking about 808909:56
zygathis changes the default on an experimental setting09:57
zygaSaviq: I'll try to get it ready for 2.4409:57
Saviqzyga: it's not like I have a reproducer, but it did happen twice on two different snaps for me09:57
SaviqI'll let you know if it's back, maybe we can dig live09:57
zygathank you09:58
zygaSaviq: if you want you can also set the config option09:58
zygaSaviq: snap set core experimental.robust-mount-namespace-updates=true09:59
pedronis#8078 needs a 2nd review10:00
mupPR #8078: daemon: support resuming downloads <Created by chipaca> <https://github.com/snapcore/snapd/pull/8078>10:00
zygapedronis: going through it now10:00
zygareviewed with some questions10:26
zygaI also requested a review from jamie10:26
zygamvo: ^ fyi10:27
mvozyga: ta10:28
pedronismvo: to be clear I don't think it needs to be blocked on jamie given that there is no special bypassing of the usual auth checks, I answerd some of the comments there10:50
mvopedronis: ta, i add some tests around the range header now, that was indeed under-tested10:57
mupPR core20#21 closed: Add bash-completion support <Created by xnox> <Merged by xnox> <https://github.com/snapcore/core20/pull/21>10:57
mborzeckifrom the forum `> I run a once annual update` why would someone do this to themselves?11:19
zygamborzecki: clearly it is when their asteroid comes in close proximity with earth11:20
mborzeckiotoh users seem to have come up with some bizarre ways to worakroudn the auto update, maybe we should just allow disabling it and default to auto update? then any support requests start with -> please update to the latest version11:22
zygamborzecki: on that thread, do we still have the refresh timer?11:24
mborzeckizyga: not sure we ship it anymore11:25
zygabrb, more tea11:27
mvopedronis: hey, a quick question about the download client api (client/snap_op.go). For Client.Download() we currently pass "SnapOptions", for the download with resume we need to add peekHeader and resumeToken, should I add a new DownloadOptions that embeed SnapOptions or rather add the two fields to SnapOptions?11:31
zygare, sorry, some interrupt at home11:55
zygaback now11:55
pedronismvo: probably a new struct11:57
pedronisif you look the server is also a bit like that11:57
pedronismvo: are you pushing anything more to download-resumt atm?11:58
mvopedronis: I'm done with download-resume for now12:01
mvopedronis: was looking at the client bits12:01
pedronismvo: I pushed some small changes to it12:05
zygaif you are okay with it I will support merging download as is12:05
zygawe can ask for a security review later, I think the answers given by samuele are sufficient12:06
mvopedronis: thank you! I have a look12:06
mvopedronis: and will add the new struct in my other PR12:06
pedronismvo: do you understand what this is talking about: https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1861648 ?12:18
mupBug #1861648: When booting 20.04 an 'ld-2.23.so' process consumes 100% CPU for minutes <champagne> <focal> <performance> <snapd (Ubuntu):New> <https://launchpad.net/bugs/1861648>12:18
pstolowskicachio: hey12:20
mupPR snapd#8142 opened: client: add support for "ResumeToken", "HeaderPeek" to download <Created by mvo5> <https://github.com/snapcore/snapd/pull/8142>12:20
mvopedronis: I suspect that is fontconfig12:21
mvopedronis: at least that's my gut feeling12:21
cachiopstolowski, hey12:27
zygapedronis, mvo: I saw that bug and I came to the same conclusion - perhaps the way we linked fontconfig could be optimzed and we are not using the dynamic linker correctly (lots of relocations?)12:28
pstolowskicachio: hi, did you find anything about kill-timout with preseed test on focal? i've been debugging it, added a bunch of debug statements to the test and .sh helpers; it seems to be always killed at the same spot at the end of prepare, but it doesn't make sense.. when i'm dropped in the shell i can do the next operation of the test (actual preseeding) without problem12:28
mvopedronis: I replied in 186164812:29
pedronisthx12:29
mvozyga: I replied in the bug, I suspect it's really the generation of either v6 or v7 or something is off in 20 and there is a v8 that we are not aware of12:29
zygamvo: yeah, could be a good idea to reproduce it12:30
zygamvo: perhaps it would be good to ask about their system as well12:32
zygamvo: I can understand slow cache gen12:32
zygamvo: but it doesn't seem to go to "minutes"12:32
zygamvo: more like 20 seconds12:32
zygamvo: that is: we could be running the same thing over and over, for each snap (perhaps)12:32
zygamvo: or it could be a particularly low-end PC12:32
zygamvo: or we have gazillion symbols12:32
zygamvo: or all at once12:32
cachiopstolowski, I was testing it a bit on friday12:35
cachiopstolowski, I am going to run with thte profiler now to see the system resources12:35
cachiobecause it completes the prepare and then gets stuck12:36
cachioI moved the prepare as part of the execute12:36
cachioand it completes all that code and a bit more and then gets stuck12:36
cachionot sure why12:36
cachioyet12:36
pstolowskicachio: i see; what's weird though is when I run the critical operation (snap-preseed command) manually in the shell after it timeouts, it works12:37
pstolowskicachio: thanks for looking into it!12:37
cachiopstolowski, np12:37
pstolowskicachio: something must have changed, cause it worked a few days earlier, and i run it several times before12:38
cachiopstolowski, I updated the image12:39
pstolowskiaah12:40
cachioapt updated/upgrade12:41
cachiopstolowski, just that12:41
pstolowskicachio: yeah, but on focal that means lots of updates atm, maybe something unexpected has changed12:52
cachiopstolowski, yes, I know12:54
=== ricab_ is now known as ricab|brb
=== ricab|brb is now known as ricab_
BlackDexHello there, i am having some issues with the latest spotify snap, it does not want to start. And if i check the journalctl i see the following output: https://pastebin.com/wTiE8jB613:15
zygaHello13:15
diddledano/13:15
zygaBlackDex: can you tell me the output of snap version please13:15
zygaBlackDex: I fixed part of the stuff you see on https://github.com/snapcore/snapd/pull/813313:16
mupPR #8133: cmd/snap-confine: allow snap-confine to load nss libs <Created by zyga> <https://github.com/snapcore/snapd/pull/8133>13:16
zygaBlackDex: let me read the rest though13:16
BlackDexsnap/snapd: 2.43.3-1 - series: 1613:16
zygaBlackDex: are you on arch?13:16
BlackDexzyga: Yes13:16
zygaright, this is where I saw this problem before13:17
zygahaving said that, I don't know if the errors there are strongly related to the eventual crash / failure of spotify13:17
zygamborzecki: ^ can you please check what happens on your arch system13:17
zygamborzecki: can you run spotify13:17
zygamborzecki: and perhaps cherry pick the patch into the AUR package13:18
zygaBlackDex: perhaps also report a bug with this pastebin as attachment13:19
BlackDexat the snapcraft launchpad?13:20
zygaBlackDex: launchpad.net/snapd please13:20
BlackDexdone13:28
BlackDexhttps://bugs.launchpad.net/snapd/+bug/186361313:28
mupBug #1863613: spotify fails to load (Trace/breakpoint trap (core dumped)) <snapd:New> <https://launchpad.net/bugs/1863613>13:28
zygaBlackDex: thank you, we'll check it out13:28
BlackDexI do see a some what similar report13:29
BlackDexthat is for openSuse13:29
zygarefer to it, perhaps it is the same issue13:29
BlackDexbut seemed to be resolved and was in 201813:29
zygahmm13:29
BlackDexi will change my report13:29
zygathanks!13:29
mborzeckiBlackDex: does that happen only on stable channel?13:30
BlackDexmborzecki: stable channel of what? Arch? Snapd? Spotify?13:31
BlackDexSince the spotify snap has been updated today it seems13:31
mborzeckiBlackDex: spotify snap, but nvm, looks like they updated it today?13:31
mborzeckiBlackDex: you can also `snap revert spotify`13:32
mborzeckiand then check if it works13:32
BlackDexyea, i did that, that seemed to work. Then i went debugging, and in the end removed that revision :(13:32
cachiopstolowski, well13:33
mborzeckiBlackDex: well, dumps core here too13:33
cachioit is really really weird13:33
cachioI prefiled it and mem and cpu are ok13:33
mborzeckizyga: i don't think the patch is related at all, the spotify process has already started13:34
cachioit finishes the execution13:34
zygamborzecki: the patch would remove a lot of the leading noise13:34
cachiopstolowski, but it does not return the execute script13:34
mborzeckiwth is libcef?13:34
cachioI see all the output13:34
cachiopstolowski, and see how it runs everything but I is not returning13:34
zygamborzecki: no idea13:35
cachiopstolowski, perhaps something related to ssh?13:35
mborzeckihuh, i only see it in spotify package, steam package, and spotify snap13:35
zygaCEF13:35
zygahmm13:35
* zyga checks one thing13:35
zygamborzecki: haha13:36
zygamborzecki: it's chrome13:36
zygamborzecki: chromium embedded framework13:37
zygamborzecki: aka, OS in a .so file13:37
mborzeckihm the aur pacakge is at 1.1.10, wonder why13:38
BlackDexok13:39
mborzeckiany clue whether it works on ubuntu?13:39
diddledanCEF is similar, but also different, to electron13:39
mborzeckior fedora?13:39
BlackDexi just copied over all the files from /var/lib/snapd/snap/spotify/41/usr/share/spotify to ~/bin/spotify and started spotify13:39
BlackDexthat seems to work13:39
diddledanof course that'll work, because you're removing the confinement :-)13:40
BlackDexi only had to install libcurl-gnutls as an extra package13:40
BlackDexyea, but i just wanted to know if it isn't spotify which crashes on my system13:40
zygabrb13:40
BlackDexi could try and disasble apparamor13:41
BlackDexsee what that does13:41
mborzeckiBlackDex: not much, coredupms as well13:47
mborzeckiBlackDex: zyga: so it works on fedora, but consistently coredumps on arch, even with --devmode13:49
BlackDexsame here13:49
BlackDexi also tried to start snap within a lxd container, but that also didn't worked :S13:49
BlackDexi could try a nspan with ubuntu as a base see what happens13:50
BlackDexbut seems a bit much of a hassle13:50
mborzeckiBlackDex: just to be sure, do you have the -lts kernel? iirc it's 5.4 now?13:52
BlackDexi'm using the zen latest one13:52
BlackDex5.5.413:52
mborzeckiBlackDex: right, mine is 5.5.4 too, though the stock repo one13:53
BlackDexi could try the lts13:53
BlackDexlet me reboot13:53
mborzeckifedora has 5.4.xx atm13:53
ijohnsonhello folks13:55
zygahey Ian :)13:55
BlackDexon 5.4.20-1 i get the same result13:55
pstolowskicachio: perhaps upgrade 20.04 image again?13:56
pedronisijohnson: hi, there's probably a few more places in makebootable.go that can use Filename13:57
ijohnsonhi pedronis zyga13:57
pedronisunrelated to the new code13:57
ijohnsonpedronis: yes I missed some when rebasing13:58
pedronisijohnson: maybe not though, I think we need to be careful, because I don't think Path always has name_rev format there13:59
ijohnsonwell I specifically was trying to limit usage of that new function to places where we were doing filepath.Base(sn.MountFile())14:00
pedronisyea, indeed14:00
ijohnsonI just grepped for that pattern of filepath.Base\(.*MountFile\(\)\)14:00
ijohnsonanyways SU now?14:01
mborzeckiBlackDex: hah, thanks for checking14:03
BlackDexi will update my report14:11
mborzeckihm flatpak has the same revision as aur14:13
BlackDexyea, i checked the repo, but that is still on an old version 1.10 or something14:14
mborzeckiwonder whtehr there's something off with the version 1.1.2014:14
zygamborzecki: I'm checking if spotify works on ubuntu now14:15
zygait does14:15
BlackDexand which snapd version is that?14:16
BlackDexmaybe there is a small difference14:16
mborzeckizyga: what's the version of the spotify snap you installed?14:22
zygamborzecki: stable14:22
mborzeckizyga: rev 41?14:22
zygayes, 4114:22
mborzeckihmmm14:22
BlackDexi just tested older versions of snapd, but no success14:26
mborzeckiBlackDex: no, imo it's a problem with spotify snap14:31
mborzeckitried to disable gpu acceleration, but no luck there14:31
cachiopstolowski, hey14:33
cachiodid you see what I wrote?14:33
cachiopstolowski,  the line > qemu-nbd -c /dev/nbd0 "$CLOUD_IMAGE"14:33
pstolowskicachio: yep, about qemu-nbd?14:33
pstolowskiright14:33
cachioin the function mount_ubuntu_image14:33
pstolowskicachio: interesting14:33
pstolowskicachio: qemu-nbd doesn't return or what happens?14:34
cachiopstolowski, this is affecting sshe somehow14:35
pstolowskihuh14:35
cachiowhen I remove this line the systemd does not get stuck anymore14:35
cachioin fact what is getting stuck is ssh14:35
cachiothe script is executed 100%14:35
cachiobut ssh never returns14:36
mupPR snapcraft#2944 opened: add github action ci/cd <Created by sd-hd> <https://github.com/snapcore/snapcraft/pull/2944>14:36
cachiopstolowski, don't know why14:36
pstolowskicachio: weird.. thanks, i'm trying to re-arrange this test a little bit14:38
zygapstolowski: is my comment on services sensible, should I send a patch?14:41
pstolowskizyga: yes it is, thanks, i can do it, thanks for spotting!14:45
pstolowskicachio: bingo!14:48
pstolowskicachio: i've re-arranged the test to setup and restore qemu-nbd in execute:14:48
pstolowskicachio: and it passed14:49
cachiopstolowski, nice14:49
cachiopstolowski, perfect14:49
pstolowskicachio: it may have something to do with what zyga said in the standup (holding fds?)14:49
cachioplease leave a note in the code :)14:49
mupPR snapd#8143 opened: github: add github workflow <Created by sd-hd> <https://github.com/snapcore/snapd/pull/8143>14:50
sdhd-saschaHi14:50
zygahey sdhd-sascha14:51
sdhd-sascha:-)14:51
sdhd-saschaIs 8143 useful ?14:52
zygasdhd-sascha: that's a question for mvo and cachio14:54
cachiosdhd-sascha, there is already a procedure for creating/releasing snapd snap, perhaps mvo could clarify14:59
cachiosdhd-sascha, thanks for proposing this btw14:59
sdhd-saschacachio: i know. But i need a custom build, because i waiting for some PRs14:59
sdhd-saschaSo i build the patched version on github15:00
mvosdhd-sascha: in a meeting right now, but this looks interessting, does it mean we get a snap for each commit basicly? if so, where is that stored? that might be cool for some people to test etc15:00
sdhd-saschamvo: foreach `git tag`15:00
pstolowskicachio: thanks for finding this! and it's weird 19.10 is happy15:01
sdhd-saschamvo: here are the results from snapcraft https://github.com/sd-hd/snapcraft/releases15:01
cachiopstolowski, yaw15:04
sdhd-saschamvo: then i do this for installation `snap install --dangerous <(wget -q -O- https://github.com/sd-hd/snapcraft/releases/download/3.9.9-0sdhd2/snapcraft-snap-3.9.9-0sdhd2)15:04
sdhd-saschamvo: we can rewrite this, to get a build from each commit, too15:09
mvosdhd-sascha: in a meeting still, will get back to you15:14
BlackDexi'm almost tempted to create a aur package based upon the .snap squashfs file ;)15:24
mborzeckiBlackDex: well, there's an aur package, but it extracts a *.deb afaik15:26
BlackDexi know, that is why i was thinking of using the .snap15:26
* cachio lunch15:27
pedronismborzecki: #8136 needs a 2nd review16:00
mupPR #8136: boot: write current_kernels in bootstate20, makebootable <UC20> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8136>16:00
BlackDexmborzecki: if i check the coredump it seems to fail after the libc-2.27.so16:13
* zyga afk / dinner16:24
ijohnson /me missed many tests in using Filename() it seems, had test*.go excluded in my grep :-|16:44
mupPR snapd#8144 opened: tests: use Filename() instead of filepath.Base(sn.MountFile()) <Simple πŸ˜ƒ> <Test Robustness> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8144>17:03
ijohnsonmvo: oh also I just realized that the next PR I have for snap-bootstrap will break foundations' pi work w/o us also supporting ExtractedRunKernelImageBootloader for uboot because my next PR needs that interface in the initramfs-mounts :-(17:15
ijohnsonI will propose that PR today, so maybe in the AM you can think about what to do about this17:17
ijohnsonpedronis: ^17:18
mvoijohnson: ok, thank you! please just add a note about it in the PR and I can look tomorrow17:41
ijohnsonmvo: sure I will also put it in my SU notes before my EOD, also unfortunately I found a bigger issue with the current kernel verification in initramfs: https://github.com/snapcore/snapd/pull/8136#issuecomment-58710003817:45
mupPR #8136: boot: write current_kernels in bootstate20, makebootable <UC20> <β›” Blocked> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8136>17:45
ijohnsonoh darn just missed him17:45
ijohnsonoh well17:45
pedronisijohnson: I asked some questions there18:15
ijohnsonpedronis: did you see the other comment I left on my PR ?18:16
ijohnsonpedronis: the attack is that if they switch the symlinks around, then effectively they prevent the system from ever booting the new kernel18:16
ijohnson(with the current code that I had proposed)18:17
pedronisijohnson: yes, but I'm trying to understand what we are trying to fix,  there are other ways to achieve that18:17
pedronisor brick the device18:17
pedroniswhat we don't allow is to open the disk18:17
ijohnsonyes or brick the device18:17
pedronisijohnson: they can also remove try-kernel completely18:17
pedronisthey can empty boot18:17
ijohnsonright but specifically switching the symlinks around should break something in the boot18:17
ijohnsoncurrently it wouldn't18:18
ijohnsonso I am refactoring the initramfs-mounts code I have to make the assumption that current_kernels[0] is _always_ the fallback kernel and current_kernels[1] (if it exists) is always the try kernel18:18
ijohnsonthen the boot would fail if an attacker switched the symlinks around18:18
ijohnsonI guess the concern is that they switch the symlinks around and we still perform a boot without detecting that the attack happened18:19
pedronisijohnson: the issue here, is what distinguish a bad filesystem vs an attacker18:19
ijohnsonhow does bad filesystem play into this ?18:19
pedronisijohnson: we might try to boot without a try-kernel at all18:19
ijohnsonYes they could so other malicious things and in that case we would successfully either fail to boot (because we are broken/untrusted) or we would detect the issue and fail18:20
ijohnsonSorry my point is specifically that we wouldn't be able to know anything happened if they switched the symlink around18:20
ijohnsonUnless we enforce an ordering to the modeenv kernels setting18:21
pedronisijohnson: my point is that the point we can check that we openend the disk18:21
pedronisanyway18:22
pedronisso if the old kernel is bad in some ways18:22
pedroniswell if openend the disk18:22
ijohnsonWhen I say switch I mean literally switch, i.e make kernel.efi point to what we set try-kernel.efi to in boot18:22
ijohnsonHmm I suppose that's another way we could check, seems like more work though18:23
pedronisijohnson: do you understand my point? any check based on having opened the disk is maybe interesting but slightly too late18:23
pedronisand by definiton anything can be written to boot18:23
ijohnsonPerhaps I should also mention that the code in the boot pkg as of my PR doesn't detect this swapping either18:24
ijohnsonSo even if we get to userspace we don't detect that kernel.efi was changed and try-kernel.efi was changed18:25
ijohnsonMaybe I should share my notes on this rather than try to explain over IRC18:26
pedronisijohnson: sorry, my point is that either of the try kernel and the kernel will let us open the disk18:27
ijohnsonYes I understand that, one minutes while I finish typing the attack in a doc to share18:30
pstolowskipedronis: hey, ok to land #8046 with small spread test fix for 20.04 (just need to push one more)? i don't think it warrant re-reviews18:32
mupPR #8046: many, tests: integrate all preseed bits and add spread tests <Complex> <Needs Samuele review> <Preseeding 🍞> <Created by stolowski> <https://github.com/snapcore/snapd/pull/8046>18:32
ijohnsonpedronis I shared you a gdoc can you see it?18:33
pedronisijohnson: not yet18:33
ijohnsonpedronis: https://docs.google.com/document/d/1Z4A4tYCaW_ew7tOLxQjJ0vaQ8E6v4lPWVi46fg4aE8Y/edit?usp=drivesdk18:34
pedronisijohnson: I need to go have dinner, also I can't even comment in that doc18:36
ijohnsonOh sorry let me add comments18:36
ijohnsonWe can discuss tomorrow morning, I don't mean to keep you18:37
cachioI am with a power outage here19:25
cachioif someone needs me please telegram me19:26
mupPR snapd#8145 opened: cmd/snap-bootstrap: verify kernel snap is in modeenv before mounting it <UC20> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8145>19:38
mupPR snapd#8146 opened: tests/core: add swapfiles test <Simple πŸ˜ƒ> <Test Robustness> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8146>20:35
pedronisijohnson: what happens if we reboot just before the point where we rewrite modeenv but we have already manipulated the symlinks ?20:43
pedronisthat was the isue why we thought we couldn't track which is which20:43
ijohnsonpedronis: hmm in the boot pkg ?20:44
pedronisyes20:44
pedronisremember that originally we planned to have try_kerne and kernel in modenev20:44
pedronisand then we found issues with that plan and fell back to just having a list20:44
pedroniswhat has changed?20:44
ijohnsonpedronis: for kernel snap setNext() we set the modeenv first20:46
pedronisno, the issue is more with mark successful I think20:46
* ijohnson looks at markSuccessful20:46
ijohnsonwith markSuccessful we are only removing kernels from the modeenv, and we do that last, because if we did that first and got rebooted we would not be able to finish boot in the initramfs20:47
ijohnsonpedronis: ^20:47
pedronisyes, but before we remove it20:48
pedronisthe first kernel is the old kernel that might not be there20:48
pedronisI mean for a bit the symlinks point to the same thing20:48
pedronisthen they point just to the new one20:48
pedronisbut only after the modeenv is adjusted20:49
ijohnsonfor markSuccessful the symlinks are moved before the modeenv is written ? so if we got rebooted right before writing the modeenv, kernel.efi -> new kernel, and new kernel is still in the modeenv20:49
pedronisit is but the new code in your branch20:50
pedronisin your new branch20:50
pedronisseems very opinonated about what it expects where20:50
ijohnsonah I see what you mean now20:50
pedronisthat's the point of it20:50
ijohnsonhmm yes that does introduce a problem then20:50
pedronisbut will it work with those intermediate states?20:50
pedronisI mean that's where we started20:51
pedronisI mean maybe it's tractable but it needs quite a bit of tests about all these states20:52
ijohnsonyes I think the code is vulnerable right now, but I think we can move modeenv earlier20:52
ijohnson* move writing the modeenv earlier20:52
pedronisthen we have the reverse problem20:53
pedronisanyway my point is that this needs testing infrastructure to double check these things20:54
ijohnsonyes I think this is why we went with the list in the first place :-/ because there's no way to avoid that short period of time where we really don't want to be rebooted20:54
pedronisand I don't see an easy win here20:54
pedronisatm20:54
ijohnsonI will think on this a bit20:56
ijohnsonbe back in a bit, need to reboot to finish upgrade to focal20:58
mupPR snapd#8147 opened: cmd/snap-bootstrap: verify kernel snap is in modeenv before mounting it <UC20> <Created by anonymouse64> <https://github.com/snapcore/snapd/pull/8147>21:22
mupPR snapd#8145 closed: cmd/snap-bootstrap: strictly verify kernel snap is in modeenv before mounting it <UC20> <Created by anonymouse64> <Closed by anonymouse64> <https://github.com/snapcore/snapd/pull/8145>21:23
wxlnot sure this is the best place to ask this but the chromium snap has a sandboxed $HOME, right? so ~/Downloads is not /home/`whoami`/Downloads?21:38
mupPR snapcraft#2945 opened: ci: only run docker builds for cron <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/2945>21:40
wxlnevermind answered my own question (yes) XD21:42
* ijohnson is now a focal fossa21:50
roadmrwhat even is a fossa :)21:57

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