On Sun, Mar 21, 2021 at 02:55:12PM +0100, Pierre Labastie via blfs-book wrote: > On Fri, 2021-03-19 at 05:45 +0000, Ken Moffat via blfs-book wrote: > > On Fri, Mar 19, 2021 at 12:04:56AM -0500, Douglas R. Reno via blfs-book > > wrote: > > > On Thu, Mar 18, 2021 at 11:33 PM ken--- via blfs-book < > > > blfs-book@lists.linuxfromscratch.org> wrote: > > > > > > > Author: ken > > > > Date: Thu Mar 18 21:32:57 2021 > > > > New Revision: 24382 > > > > > > > > Log: > > > > Update qtwebengine to 5.15.3 from git. > > > > > > > > This is a lot bigger and slower to build. > > > > > > > > Downgrade the 'Caution's in qtwebengien and falkon to 'Warning's. > > > > I am not yet suggesting we should deprecate those two packages, > > > > but users should start to ask themselves whether the want to use > > > > a package where the upstreams are happy to stick with python2 > > > > and have no interest in running on current glibc. > > > > > > [...] > > > > + <sect2 role="kernel" id="qtwebengine-kernel"> > > > > + <title>Kernel Configuration</title> > > > > + > > > > + <para> > > > > + Enable the following options in the kernel configuration and > > > > recompile the > > > > + kernel if necessary: > > > > + </para> > > > > + > > > > +<!-- Spaces are significant in <screen> sections --> > > > > +<screen><literal>General setup ---> > > > > + -*- Namespaces support ---> > > > > + [*] UTS namespace [CONFIG_UTS_NS] > > > > + [*] TIME namespace [CONFIG_TIME_NS] > > > > + [*] IPC namespace [CONFIG_IPC_NS] > > > > + [ ] User namespace #CONFIG_USER_NS is not > > > > set > > > > + [*] PID namespace [CONFIG_PID_NS] > > > > + [*] Network namespace > > > > [CONFIG_NET_NS]</literal></screen> > > > > + > > > > + <para> > > > > + These are now the default options. Do <emphasis>NOT</emphasis> > > > > enable > > > > + User namespace (CONFIG_USER_NS), it <emphasis>will</emphasis> > > > > cause > > > > + libQtWebengineCore to crash. > > > > + </para> > > > > + > > > > + <indexterm zone="qtwebengine qtwebengine-kernel"> > > > > + <primary sortas="d-qtwebengine">qtwebengine</primary> > > > > + </indexterm> > > > > + </sect2> > > > > > > > > > > > This is going to be a problem. UPower requires CONFIG_USER_NS to function > > > properly. > > > > > > > Ouch. After adding '-config debug' to the qconf invocation (in > > front of the '--') I was able to make a debug build (needs 25GB for > > source and install). Trying to run falkon from gdb gave me a series > > of backtraces (multiple threads). > > > > [26147:26147:0318/162343.989885:FATAL:sandbox_linux.cc(555)] Check failed: > > NamespaceSandbox::InNewPidNamespace(). > > > > bool SandboxLinux::EngageNamespaceSandboxInternal(bool from_zygote) { > > CHECK(pre_initialized_); > > CHECK(IsSingleThreaded()) > > << "The process cannot have multiple threads when engaging the > > namespace > > " > > "sandbox, because the thread engaging the sandbox cannot ensure > > that > > " > > "other threads close all their open directories."; > > > > if (from_zygote) { > > // Check being in a new PID namespace created by the namespace sandbox > > and > > // being the init process. > > CHECK(NamespaceSandbox::InNewPidNamespace()); > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > const pid_t pid = getpid(); > > CHECK_EQ(1, pid); > > } > > > > Note that on one of my machines where this works I do not have PID > > namespaces enabled at the moment, but those settings above are all > > the defaults and I obviously never saw any reason to enable that > > when making oldconfig. > > > > That failing code seems to have been called from > > > > [26137:26137:0318/162346.234871:FATAL:zygote_host_impl_linux.cc(204)] Check > > failed: ReceiveFixedMessage(fds[0], kZygoteHelloMessage, > > sizeof(kZygoteHelloMessage), &real_pid). > > > > But I was none the wiser about the rest of it, and after checking > > that the chromium glibc-2.33 patch at Arch matched the qtwebengine > > patch I tried turning off CONFIG_USER_NS just in case, and was > > relieved whn falkon worked. > > > > > I'll spend some time looking at this when i'm done with video editing work > > > (Monday, which is also when I'll start on GNOME-40 and other tickets). > > > > Sorry about that. But I'm surprised - the kernel help says (end of > > lines trimmed for length) > > > > CONFIG_USER_NS: > > │ > > │ This allows containers, i.e. vservers, to use user namespaces > > │ to provide different user info for different servers. > > │ > > │ When user namespaces are enabled in the kernel it is > > │ recommended that the MEMCG option also be enabled and that > > │ user-space use the memory control groups to limit the amount > > │ of memory a memory unprivileged users can use. > > │ > > │ If unsure, say N. > > > > FWIIW, i've built qtwebengine 5.15.3 by the book, and I have CONFIG_USER_NS > set > in my kernel config. Using the previously compiled falkon (against 5.15.2), > I've > not seen any problem (not sure I've tried many things, videos on youtube, and > random web sites). I've been able to compile falkon against 5.15.3, and to > install it. Still no failure up to now. > > Pierre > If it works, it works - my problem was that it crashed when starting.
When falkon failed to run, and clearing out the cache had not helped, I tried rebuilding it (no change) and then I built both falkon and webengine with debugging enabled. Then I went back to the altready-rebuilt non-debug version. So on this system this is a fresh build of falkon. But I still think *I'm* missing something: on my old 10.0 systems (and 9.1) it built and ran without problems, on 10.1 the builds were nothing but trouble even after adding a python symlink. And the code where it crashed was not obviously related to USER_NS (possibly for PID_NS, but one of my machines does not have that enabled and still works). If it is working for you with USER_NS enabled then the whole kernel config section, and the reference to it in the previous section, can be removed. ĸen -- On average, the Panda feeds for 15 hours a day. This is the same as an adult at home under quarantine, which is why we call it a "Pandemic". -- http://lists.linuxfromscratch.org/listinfo/blfs-book FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page