diff --git a/contrib/scripts/nm-in-container.sh b/contrib/scripts/nm-in-container.sh index 72b3f1130..c8f5ad62e 100755 --- a/contrib/scripts/nm-in-container.sh +++ b/contrib/scripts/nm-in-container.sh @@ -113,7 +113,19 @@ create_dockerfile() { find NetworkManager bind mounted at $BASEDIR_NM run \`nm-env-prepare.sh setup --idx 1\` to setup test interfaces -Configure NetworkManager with +Coredumps: coredumps are not namespaced, so by default they will +be sent to coredumpctl of the outer host, which has no idea where +to get the debugging symbols from. A possible workaround is setting + + $ echo '/tmp/core.%e.%p' | sudo tee /proc/sys/kernel/core_pattern + +so that core dumps get written to file. Afterwards, restore with + + echo '|/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h' | sudo tee /proc/sys/kernel/core_pattern + +from /usr/lib/sysctl.d/50-coredump.conf. + +For example, configure NetworkManager with \$ ./configure \\ --enable-address-sanitizer=no \\ --enable-compile-warnings=yes \\ @@ -164,6 +176,10 @@ Configure NetworkManager with "\${NM_CONFIGURE_OTPS[@]}" Test with: \$ systemctl stop NetworkManager; /opt/test/sbin/NetworkManager --debug 2>&1 | tee -a /tmp/nm-log.txt + +Alternatively, configure with \`contrib/fedora/rpm/configure-for-system.sh\`, +subsequent \`make && make install\` will overwrite your system's NetworkManager, +and you can test it with \`systemctl daemon-reload ; systemctl restart NetworkManager\`. EOF cat <