💾 Archived View for gemini.ctrl-c.club › ~phoebos › logs › kisslinux-2022-03-22.txt captured on 2022-04-28 at 18:30:49.
-=-=-=-=-=-=-
[2022-03-22T01:41:34Z] <dilyn> things in KISS Linux land are very mellow and chill. I think this whole community has found its maximal equilibrium [2022-03-22T01:41:46Z] <dilyn> it's tight knit & gucci :v [2022-03-22T01:52:34Z] <jslick> It has updated firefox and sgt-puzzles, two of the things that make a headed linux distribution. It is indeed very mellow and chill. [2022-03-22T01:53:25Z] <dilyn> honestly, what more could you want [2022-03-22T03:22:51Z] <rohan> hi guys [2022-03-22T03:24:04Z] <rohan> how i add alias permanently in my system? [2022-03-22T03:25:47Z] <acheam> add it to your shell rc file [2022-03-22T03:26:26Z] <acheam> You need to set one for busybox ash IIRC [2022-03-22T03:26:40Z] <acheam> so put "ENV=~/.ashrc" in ~/.profile [2022-03-22T03:26:50Z] <acheam> then your aliases in ~/.ashrc [2022-03-22T03:27:58Z] <rohan> okay [2022-03-22T03:28:21Z] <rohan> so .profile is not like a ashrc? [2022-03-22T03:28:29Z] <rohan> all that time i used like it [2022-03-22T03:34:05Z] <acheam> .profile is read by the login shell, and rc files are read by interactive shells [2022-03-22T03:34:54Z] <acheam> so if you set an environment variable in .profile, you'll have to log out and in again to have it take effect systemwide [2022-03-22T04:23:48Z] <testuser[m]> Hi [2022-03-22T04:56:56Z] <GalaxyNova_> hi [2022-03-22T09:33:54Z] <user86234> hi everyone [2022-03-22T09:34:20Z] <user86234> i'm having some issues installing kiss linux [2022-03-22T09:34:58Z] <user86234> when i run `cd /var/db/kiss/installed && kiss build *` [2022-03-22T09:35:20Z] <user86234> i get this error `ERROR pigz Failed to download https://zlib.net/pigz/pigz-2.6.tar.gz` [2022-03-22T09:38:00Z] <illiliti> user86234: switch to community repositories: https://github.com/kiss-community/repo [2022-03-22T09:38:45Z] <illiliti> testuser[m]: i got oom [2022-03-22T09:38:57Z] <illiliti> sh: killed gdb /usr/lib/chromium/chromium [2022-03-22T09:39:06Z] <illiliti> xd [2022-03-22T09:39:11Z] <testuser[m]> lol [2022-03-22T09:46:00Z] <illiliti> i don't have spare space to create swap partition [2022-03-22T09:46:05Z] <illiliti> and swap as pool on zfs is quite unstable [2022-03-22T09:46:09Z] <illiliti> https://github.com/openzfs/zfs/issues/7734 [2022-03-22T09:47:43Z] <illiliti> i can create swap on usb stick, but ... that would be slow af [2022-03-22T09:51:42Z] <testuser[m]> illiliti: check the linked merge request in that alpine issue [2022-03-22T09:59:26Z] <testuser[m]> https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/32307 [2022-03-22T10:12:55Z] <illiliti> try in gdb: thread apply all backtrace [2022-03-22T10:16:48Z] <testuser[m]> i got the bt [2022-03-22T10:19:41Z] <illiliti> https://git.musl-libc.org/cgit/musl/tree/src/thread/pthread_mutex_unlock.c#n17 [2022-03-22T10:20:32Z] <illiliti> i think we have a bug that you previously mentioned: https://github.com/void-linux/void-packages/issues/29105#issuecomment-787219097 [2022-03-22T10:20:59Z] <illiliti> https://marc.info/?l=musl&m=161232508119452&w=2 [2022-03-22T10:34:18Z] <testuser[m]> https://marc.info/?l=musl&m=161238368314692&w=2 the thread mentions the test that times out aswell [2022-03-22T10:35:20Z] <testuser[m]> illiliti: does --no-sandbox imply --single-process ? [2022-03-22T10:38:07Z] <illiliti> i think --single-process implies --no-sandbox, not vice-versa [2022-03-22T10:38:37Z] <illiliti> but i may be wrong [2022-03-22T10:38:44Z] <illiliti> https://source.chromium.org/chromium/chromium/src/+/main:sandbox/linux/services/namespace_sandbox.cc;l=115?q=MaybeUpdateGlibc&sq= [2022-03-22T10:40:20Z] <illiliti> we need this func for musl [2022-03-22T10:43:32Z] <illiliti> https://source.chromium.org/chromium/chromium/src/+/main:sandbox/linux/services/namespace_sandbox.cc;l=225 [2022-03-22T10:44:01Z] <illiliti> ForkInNewPidNamespace uses this hack to update tid on clone() [2022-03-22T10:46:12Z] <illiliti> the equivalent hack for musl should fix the bug i guess [2022-03-22T10:47:58Z] <illiliti> we can also attempt to rewrite this func to use fork+setns instead of clone [2022-03-22T10:48:35Z] <illiliti> theoretically, this should fix bug too [2022-03-22T10:53:34Z] <illiliti> https://source.chromium.org/chromium/chromium/src/+/main:base/threading/platform_thread_posix.cc;l=213-227 [2022-03-22T10:53:54Z] <illiliti> interesting [2022-03-22T10:57:59Z] <illiliti> testuser[m]: can you try to run tests in base/threading? [2022-03-22T10:58:29Z] <testuser[m]> wait [2022-03-22T11:20:13Z] <testuser[m]> illiliti: how do i build those lol idk the target name [2022-03-22T11:21:35Z] <testuser[m]> o shit [2022-03-22T11:21:45Z] <testuser[m]> its in base_unittests which is pretty fat [2022-03-22T11:26:01Z] <testuser[m]> ninja: file is missing and not created by any action: '../../base/test/data/file_util/binary_file.bin' [2022-03-22T11:26:05Z] <testuser[m]> idk where to get these test files from [2022-03-22T11:26:56Z] <illiliti> hm [2022-03-22T11:27:34Z] <testuser[m]> it asked for some ttf files for the sandbox tests too i just created empty files there lol [2022-03-22T11:42:30Z] <phoebos> testuser[m]: libretls 3.5.1 has been released [2022-03-22T11:51:06Z] <testuser[m]> phoebos: done [2022-03-22T11:51:32Z] <phoebos> :) [2022-03-22T11:51:33Z] <testuser[m]> illiliti: should i try disabling the MaybeUpdateGlibcTidCache call on my glibc build and see if the sandbox issue starts there? [2022-03-22T11:51:42Z] <testuser[m]> then we can be sure that it's the one [2022-03-22T11:52:05Z] <phoebos> interesting commit message :p [2022-03-22T11:55:38Z] <illiliti> testuser[m]: good idea [2022-03-22T12:30:45Z] <testuser[m]> illiliti: tabs do freeze like musl but no concrete crash [2022-03-22T12:30:47Z] <testuser[m]> weird [2022-03-22T12:33:46Z] <illiliti> tabs freezes on musl as well [2022-03-22T12:33:57Z] <testuser[m]> yeah [2022-03-22T12:34:00Z] <testuser[m]> but its not showing the crash msg [2022-03-22T12:34:12Z] <testuser[m]> and glibc is not returning EDEADLK [2022-03-22T12:48:31Z] <testuser[m]> the tests that get stuck on musl seem to pass aswell [2022-03-22T12:54:03Z] <illiliti> because glibc uses direct gettid syscall for raise() [2022-03-22T12:54:30Z] <illiliti> that's why it doesn't get stuck [2022-03-22T12:56:15Z] <illiliti> does sigtrap show up in dmesg? [2022-03-22T12:56:19Z] <testuser[m]> no [2022-03-22T12:56:30Z] <illiliti> segfault? [2022-03-22T12:57:02Z] <testuser[m]> nothing [2022-03-22T12:57:05Z] <testuser[m]> just tab frozen [2022-03-22T13:03:57Z] <illiliti> i think that's enough to confirm that bug in tid caching [2022-03-22T13:04:04Z] <illiliti> tab frozed or crashed doesn't matter [2022-03-22T13:04:14Z] <testuser[m]> yeah [2022-03-22T13:04:28Z] <testuser[m]> i was recording it but looks like some recent wlroots commit broke wf-recorder lol [2022-03-22T13:04:31Z] <testuser[m]> will bisect it [2022-03-22T13:08:19Z] <illiliti> https://source.chromium.org/chromium/chromium/src/+/main:content/zygote/zygote_linux.cc;l=425 [2022-03-22T13:10:27Z] <testuser[m]> what about it [2022-03-22T13:10:33Z] <illiliti> i think suid-based sandbox is worth checking [2022-03-22T13:10:39Z] <illiliti> i bet it should work [2022-03-22T13:11:01Z] <testuser[m]> yea i thought about it too [2022-03-22T13:13:41Z] <illiliti> i'll try to rewrite ForkInNewPidNamespace to use fork/_Fork instead [2022-03-22T13:26:47Z] <testuser[m]> illiliti: how to force use of SUID sandbox instead of user ns? [2022-03-22T13:28:06Z] <illiliti> see post-install script [2022-03-22T13:39:00Z] <testuser[m]> illiliti: curl -L http://0x0.st/oNvD.so > /usr/lib/chromium/chrome-sandbox; chown it to root:root and chmod u+s [2022-03-22T13:39:00Z] <testuser[m]> 0981918fb28c441f45a5d762c812c21ee44b41c601af6746d599e42fa6d8b3da [2022-03-22T13:39:54Z] <illiliti> try to check ForkInNewPidNamespace test with this patch: http://ix.io/3Taw [2022-03-22T13:41:16Z] <testuser[m]> ok [2022-03-22T13:44:25Z] <testuser[m]> btw use this http://0x0.st/oNvD.so, if the other one has DCHECK failures [2022-03-22T13:48:05Z] <testuser[m]> building rn, but ForkWithFlags is in a couple of other places aswell so maybe u could just modify that function instead and ignore args: https://termbin.com/nrcb [2022-03-22T13:50:33Z] <illiliti> will do, but for now check this one [2022-03-22T13:50:49Z] <illiliti> and chrome-sandbox doesn't work for me [2022-03-22T13:50:51Z] <illiliti> The setuid sandbox provides API version 1, but you need 0 [2022-03-22T13:59:09Z] <testuser[m]> illiliti: https://termbin.com/troj lol [2022-03-22T14:08:06Z] <illiliti> glibc or musl? [2022-03-22T14:08:43Z] <testuser[m]> musl [2022-03-22T14:10:31Z] <testuser[m]> it has some weird longjmp magic going on too, in the original code [2022-03-22T14:29:04Z] <illiliti> http://ix.io/3TaR [2022-03-22T14:31:44Z] <testuser[m]> ok [2022-03-22T14:47:06Z] <testuser[m]> illiliti: instant crash before launching anything: https://termbin.com/jnom [2022-03-22T14:49:11Z] <testuser[m]> let me see whats going off [2022-03-22T14:52:12Z] <testuser[m]> https://termbin.com/q7ly [2022-03-22T14:56:33Z] <illiliti> bt full? [2022-03-22T14:57:57Z] <illiliti> can you set breakpoint after ForkWithFlags? [2022-03-22T14:59:31Z] <testuser[m]> wait [2022-03-22T15:00:41Z] <illiliti> ok [2022-03-22T15:02:29Z] <testuser[m]> https://termbin.com/9p03 [2022-03-22T15:02:54Z] <testuser[m]> CHECK(process.IsValid()) << "Failed to launch zygote process"; maybe this is failing [2022-03-22T15:02:57Z] <testuser[m]> idk why its not logging anythiung [2022-03-22T15:04:01Z] <testuser[m]> browser/zygote_host/zygote_host_impl_linux.cc line 170 [2022-03-22T15:04:08Z] <illiliti> --enable-logging=stderr --loglevel=0 [2022-03-22T15:07:15Z] <testuser[m]> nothing [2022-03-22T15:07:35Z] <testuser[m]> it does get to .Pid() so something below that is failing, will test with breakpoints [2022-03-22T15:16:23Z] <testuser[m]> oh it doesnt log cuz `#define CHECK(condition) UNLIKELY(!(condition)) ? IMMEDIATE_CRASH() : EAT_CHECK_STREAM_PARAMS()` lol [2022-03-22T15:26:28Z] <testuser[m]> illiliti: http://0x0.st/oNwj.txt [2022-03-22T15:27:23Z] <testuser[m]> there are 2 calls to ReceiveFixedMessage, a CHECK after that and a call to EnsureProcessGetsReaped. Only the 2 ReceiveFixedMessage get called so ig the bug is [2022-03-22T15:27:24Z] <testuser[m]> https://github.com/chromium/chromium/blob/010585aae2391e043d16bb70ae98ad25fe9b9b98/content/browser/zygote_host/zygote_host_impl_linux.cc#L206 [2022-03-22T15:29:18Z] <illiliti> bt full [2022-03-22T15:35:08Z] <testuser[m]> illiliti: it doesnt have anything extra [2022-03-22T15:36:45Z] <testuser[m]> https://termbin.com/ochfv [2022-03-22T15:38:22Z] <illiliti> sel 0 [2022-03-22T15:38:28Z] <illiliti> info args [2022-03-22T15:38:32Z] <illiliti> info locals [2022-03-22T15:38:55Z] <testuser[m]> it doesnt have that much debug info, i tried [2022-03-22T15:39:46Z] <testuser[m]> i might be able to strace and get the raw bytes its reading from the pipe and then interpret it as pid_t lol [2022-03-22T15:39:56Z] <illiliti> did you compile with -ggdb? [2022-03-22T15:41:14Z] <testuser[m]> no just with symbol_level. It barely built with that option I doubt my swap would be enough for ggdb [2022-03-22T15:46:59Z] <illiliti> http://ix.io/3Tbn [2022-03-22T15:59:24Z] <testuser[m]> Ok [2022-03-22T16:00:41Z] <illiliti> it seems unshare fails for some reason [2022-03-22T16:02:42Z] <testuser[m]> https://github.com/chromium/chromium/blob/main/base/process/launch_posix.cc#L410-L415 btw any idea what tf this does? [2022-03-22T16:02:46Z] <testuser[m]> Just stumbled upon it [2022-03-22T16:03:01Z] <testuser[m]> How can u memset a function [2022-03-22T16:07:43Z] <testuser[m]> illiliti: same crash, nothing logged [2022-03-22T16:11:58Z] <phoebos> > #if 0 [2022-03-22T16:12:41Z] <testuser[m]> phoebos: yeah [2022-03-22T16:12:48Z] <testuser[m]> its unrelated but the code just seemed funny [2022-03-22T16:20:35Z] <illiliti> testuser[m]: no idea, it looks like c++ nonsense [2022-03-22T16:20:50Z] <illiliti> try --allow-sandbox-debugging [2022-03-22T16:20:58Z] <testuser[m]> [6084:6084:0322/162035.293975:FATAL:zygote_host_impl_linux.cc(204)] Check failed: ReceiveFixedMessage(fds[0], kZygoteHelloMessage, sizeof(kZygoteHelloMessage), &real_pid). [2022-03-22T16:21:02Z] <testuser[m]> [6084:6084:0322/162035.293999:FATAL:zygote_host_impl_linux.cc(206)] Check failed: real_pid > 1 (-1 vs. 1) [2022-03-22T16:21:05Z] <testuser[m]> i changed check to dcheck [2022-03-22T16:22:26Z] <testuser[m]> enough for today [2022-03-22T16:24:16Z] <illiliti> agree [2022-03-22T16:24:28Z] <illiliti> quite tedious to read chromium code [2022-03-22T16:24:56Z] <illiliti> i'll setup swap and continue though... [2022-03-22T16:25:28Z] <illiliti> thanks for the help [2022-03-22T16:26:10Z] <testuser[m]> Np [2022-03-22T18:22:10Z] <Guest6910> Hi [2022-03-22T18:24:17Z] <Guest6910> https://termbin.com/4ejv [2022-03-22T18:24:58Z] <testuser[m]> kiss fork and change ln -s to ln -sf or just remove the ln commands [2022-03-22T18:25:52Z] <noocsharp> re chromium: any idea why file descriptors are being shuffled? [2022-03-22T18:27:25Z] <noocsharp> https://github.com/chromium/chromium/blob/main/base/process/launch_posix.cc#L280-L283 [2022-03-22T18:29:17Z] <Guest6910> testuser[m]: thank you so much [2022-03-22T18:34:06Z] <testuser[m]> Idk what it means [2022-03-22T18:34:07Z] <testuser[m]> noocsharp: https://github.com/mozilla/gecko-dev/blob/b0a1468c010b8973effc61f00408f07997497bd9/ipc/glue/FileDescriptorShuffle.h#L16 from some ancient code [2022-03-22T18:37:01Z] <noocsharp> ah, i see