[Testing Update] 2021-11-16 - KDE Frameworks, Cinnamon, Haskell, Thunderbird

Oh. Yeah was just testing the new kernel.

Nothing in 5.14 kernel

(base) [firestar@ThinkPad ~]$ journalctl -k -o short-monotonic --no-host --no-pager -b 0 | grep --ignore-case "gpu hang"
(base) [firestar@ThinkPad ~]$ 

Latte Dock 0.10.4 is out. It is available in Arch linux repositories. Could you add it in Manjaro testing branch ?

Thanks.

Ok, it is available in the unstable branch. Perhaps Philm can add it in the testing branch as it is not something that can ‘break’ the system. The new version brings bug fixes.

Previous announcement you were also asking same kind of things, so same answer

Testing will get it when it’s deemed OK to go in Testing, refer, again, to the following diagram

1 Like

It may looks like that at a first sight, but bugfixes could fix one bugs, and introduce another, that’s the unstabletestingstable package flow is used for. If a package will not be recognized as heavily bugged in current branch, it could propagate into next one branch.

You need to wait some time while possible lacks/drawbacks in that version could be recognized or not before a package will reach next branch in the flow.

Also you can switch to unstable updates branch to get it and to report problems you might have after that switch. And if you did not found a lack after 5 minutes after a package installation, it is not meaning yet that a drawbacks are absent.

Ok, no problem, I’ll wait.

Then just do a sudo pacman -U https://manjaro.moson.eu/unstable/community/x86_64/latte-dock-0.10.4-1-x86_64.pkg.tar.zst ?

2 Likes

Kernel 5.16 is available in the Testing repository and can be installed via mhwd already.

However, it looks like there are some issues in the packages. I tried building the Nvidia driver 390 against this kernel, and at first, there seems to be some include paths not set appropriately:

In Datei, eingebunden von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-frontend.c:12:
/home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/os-interface.h:27:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden
   27 | #include <stdarg.h>
      |          ^~~~~~~~~~
Kompilierung beendet.
make[2]: *** [scripts/Makefile.build:287: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-frontend.o] Fehler 1
make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet....
In Datei, eingebunden von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/nv-linux.h:16,
                 von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-gpu-numa.c:24:
/home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/nv.h:18:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden
   18 | #include <stdarg.h>
      |          ^~~~~~~~~~
Kompilierung beendet.
make[2]: *** [scripts/Makefile.build:287: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-gpu-numa.o] Fehler 1
In Datei, eingebunden von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-instance.c:12:
/home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/os-interface.h:27:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden
   27 | #include <stdarg.h>
      |          ^~~~~~~~~~
Kompilierung beendet.
make[2]: *** [scripts/Makefile.build:287: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-instance.o] Fehler 1
In Datei, eingebunden von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv.c:12:
/home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/os-interface.h:27:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden
   27 | #include <stdarg.h>
      |          ^~~~~~~~~~
Kompilierung beendet.
make[2]: *** [scripts/Makefile.build:287: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv.o] Fehler 1
In Datei, eingebunden von /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-acpi.c:14:
/home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/common/inc/os-interface.h:27:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden
   27 | #include <stdarg.h>
      |          ^~~~~~~~~~
Kompilierung beendet.
make[2]: *** [scripts/Makefile.build:287: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel/nvidia/nv-acpi.o] Fehler 1
make[1]: *** [Makefile:1846: /home/gerd/Downloads/nvidia-390xx/5.16/src/NVIDIA-Linux-x86_64-390.144-no-compat32/kernel] Fehler 2
make[1]: Verzeichnis „/usr/lib/modules/5.16.0-1-MANJARO/build“ wird verlassen
make: *** [Makefile:81: modules] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...

The culprit is the Makefile in /usr/lib/modules/5.16.0-1-MANJARO/build. When the Makefile from /usr/lib/modules/5.15.2-2-MANJARO/build is used instead, the build succeeds as the includes are found, but then another error occurs due to missing files:

/bin/sh: Zeile 1: ./tools/bpf/resolve_btfids/resolve_btfids: Datei oder Verzeichnis nicht gefunden

The problem here is with Makefile.modfinal in /usr/lib/modules/5.16.0-1-MANJARO/build/scripts. It contains the following entry starting on line 42:

	if [ -f vmlinux ]; then						\
		LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J $(PAHOLE_FLAGS) --btf_base vmlinux $@; \
		$(RESOLVE_BTFIDS) -b vmlinux $@; 			\
	else								\
		printf "Skipping BTF generation for %s due to unavailability of vmlinux\n" $@ 1>&2; \
	fi;

$(RESOLVE_BTFIDS) points to ./tools/bpf/resolve_btfids/resolve_btfids which appears to be missing in the entire /usr/lib/modules/5.16.0-1-MANJARO tree.

Again, when /usr/lib/modules/5.16.0-1-MANJARO/build/scripts/Makefile.modfinal is replaced by the same file from /usr/lib/modules/5.15.2-2-MANJARO/build/scripts which does not have the reference to $(RESOLVE_BTFIDS), I am able to finalize building my package.

Amendment:
Looks like the line

install -Dt "${_builddir}/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids

is missing in PKGBUILD for the linux516 package, in section package_linux516-headers().

With the resolve_btfids tool installed properly, there is at least no need to mess around with /usr/lib/modules/5.16.0-1-MANJARO/build/scripts/Makefile.modfinal.

1 Like

Hi,

From the first post:

That’s at least good news although a bit surprising for me because apparently, tools/bpf/resolve_btfids/resolve_btfids is called when you invoke /usr/lib/modules/5.16.0-1-MANJARO/build/scripts/Makefile.modfinal but the package does not install that tool by default.

And, it also looks like linux516-headers sets the include paths different from linux515-headers, causing standard declarations like

#include <stdarg.h>

to fail because the compiler does not seem to know /usr/lib/modules/5.16.0-1-MANJARO/build/include/linux/ and consequently, does not find the headers. Did you hard-wire the include paths, like

#include "/usr/lib/modules/5.16.0-1-MANJARO/build/include/linux/stdarg.h"

or

#include "/usr/lib/modules/5.16.0-1-MANJARO/build/include/linux/stddef.h"

in the Nvidia 470 driver package, to be able to build it?

Update:
Indeed, with hard-wiring the #includes for stdarg.h and stddef.h to /usr/lib/modules/5.16.0-1-MANJARO/build/include/linux/ in the driver source, I was able to compile the Nvidia 390 driver against kernel 5.16-RC1.
So far, it runs without problems.

Driver 495.44 also builds after this patch:

--- a/kernel/nvidia-uvm/uvm_migrate_pageable.c	2021-11-18 16:07:54.991678461 +0100
+++ b/kernel/nvidia-uvm/uvm_migrate_pageable.c	2021-11-18 16:08:45.691269289 +0100
@@ -406,7 +406,7 @@
         uvm_push_set_flag(&push, UVM_PUSH_FLAG_CE_NEXT_MEMBAR_NONE);
         copying_gpu->parent->ce_hal->memset_8(&push, dst_address, 0, PAGE_SIZE);
 
-        dst[i] = migrate_pfn(page_to_pfn(dst_page)) | MIGRATE_PFN_LOCKED;
+        dst[i] = migrate_pfn(page_to_pfn(dst_page));
     }
 
     if (copying_gpu) {
@@ -490,7 +490,7 @@
         uvm_push_set_flag(&push, UVM_PUSH_FLAG_CE_NEXT_MEMBAR_NONE);
         copying_gpu->parent->ce_hal->memcopy(&push, dst_address, src_address, PAGE_SIZE);
 
-        dst[i] = migrate_pfn(page_to_pfn(dst_page)) | MIGRATE_PFN_LOCKED;
+        dst[i] = migrate_pfn(page_to_pfn(dst_page));
     }
 
     // TODO: Bug 1766424: If the destination is a GPU and the copy was done by

Currently, I am not able to test this driver as my GPU is too old.

I was able to track down the changes to /usr/lib/modules/5.16.0-1-MANJARO/build/Makefile which prevent the driver 390 from being compiled:

# arch Makefile may override CC so keep this after arch Makefile is included
NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)

If -isystem $(shell $(CC) -print-file-name=include) is omitted, the compiler is not able to find its include files when trying to compile the 390 driver.

Interestingly, this is not a problem in driver version 495.44 but I was not yet able to determine the differences that might be important here.

Well it is far to early to tell why stuff is not yet compiling. 5.16-rc just started and more or less 6 more builds are expected …

Thank you very much. This makes me sigh a breath of relief for now.
But as the newer versions of the Nvidia driver are compiling, it looks like there is some misconfiguration in the 390 driver sources which might remain important on subsequent kernel versions as well.

Well as far as I see it 390xx is dead. We have a new Xorg-Server and that driver doesn’t work. So ya, lets see if Nvidia fixes it or not.

With the well-known entry

Section "ServerFlags"
  Option "IgnoreABI" "1"
EndSection

in /etc/X11/mhwd.d/nvidia.conf, it works, even with kernel 5.16-RC1 :slight_smile:

1 Like

The saga of the regression doing 7-zip compression from Dolphin context menu continues with this update.

Here is a fine description of the two remaining issues.

last report was my fault, gseetings/desktop/schemas was obsolete so Gnome GDM didn’t start.
Now is ok, but some extensions need update