[Bug 280772] x11/nvidia-driver: Update to 550.107.02 with x11/linux-nvidia-libs and related DRM ports

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 12 Aug 2024 23:17:59 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280772

--- Comment #4 from Tomoaki AOKI <junchoon@dec.sakura.ne.jp> ---
(In reply to Chad Jacob Milios from comment #3)
Nice! Latest GPU architecture, Ada Lovelace!

> when you say "includes fixes to allow 560 series" am i to understand your intention is that i twiddle the NVIDIA_DISTVERSION myself then? i will try your patches and let you know how it goes.

Yes. You must specify which DISTVERSION to be wanted.
Without it, 550.107.02 is built with this patch applied.
Technically, NVIDIA_DISTVERSION is set with "=", means, forcibly set it.
OTOH, DISTVERSION is set with "?=", means, set with right-side value if not yet
set, thus, possible to override.

For example, I have configurations below for 560.31.02 in my /etc/make.conf.
It works fine for x11/nvidia-driver and x11/linux-nvidia-libs, but couldn't
determine why, graphics/nvidia-drm-*-kmod and graphics/nvidia-drm-kmod always
pick version from x11/nvidia-driver/Makefile.version ("NO_CHECKSUM= YES" works,
though).

     ===== Quote =====
NVIDIA_OVERRIDE_VERSION= 560.31.02

.if ${.CURDIR:M/usr/ports/x11/nvidia-driver} && defined
(NVIDIA_OVERRIDE_VERSION)
  DISTVERSION=  ${NVIDIA_OVERRIDE_VERSION}
  NO_CHECKSUM=  YES
.endif

.if ${.CURDIR:M/usr/ports/x11/linux-nvidia-libs} && defined
(NVIDIA_OVERRIDE_VERSION)
  DISTVERSION=  ${NVIDIA_OVERRIDE_VERSION}
  NO_CHECKSUM=  YES
.endif

.if ${.CURDIR:M/usr/ports/graphics/nvidia-drm-*-kmod} && defined
(NVIDIA_OVERRIDE_VERSION)
  DISTVERSION=  ${NVIDIA_OVERRIDE_VERSION}
  NO_CHECKSUM=  YES
.endif

.if ${.CURDIR:M/usr/ports/graphics/nvidia-drm-kmod} && defined
(NVIDIA_OVERRIDE_VERSION)
  DISTVERSION=  ${NVIDIA_OVERRIDE_VERSION}
  NO_CHECKSUM=  YES
.endif

     ===== End quote =====

Strangely, if I build graphics/nvidia-drm-*-kmod ports with overriding
DISTVERSION with 560.31.03 but without editing
x11/nvidia-driver/Makefile.version (kept for 550.107.02 as is), `% pkg version
-v | grep nvidia-drm-61-kmod` would show

     ===== Quote =====
nvidia-drm-61-kmod-560.31.02_1     =   up-to-date with index
     ===== End Quote =====

but actually it is nvidia-drm-61-kmod-550.107.02, thus, not work with version
mismatch.


> How likely is this to brick my GPU? (1 being probably and 5 being certainly lol)

First of all, do not load GPU related modules via /boot/loader.conf[.local].
It could brick your PC when something goes wrong.
If you load GPU related modules via kld_list variable in /etc/rc.conf[.local],
don't worry. If your PC seems to become a brick, try Ctrk-Alt-Del and wait in
front of your PC, then, go to single user mode when loader menu is displayed.
You can rebuild/reinstall safer version of drivers. (Remount of FS with RW
would be needed just as installworld in single user mode.)

If 560 series of drivers exposed problems, you can still try 555 series of New
Feature drivers. 555 series doesn't have GSP firmware, so would be expected
less problematic.


> Do you think i will be okay with the Linuxulator bits having my DEFAULT_VERSIONS= linux=rl9 ?

Not sure. I've not even tried rl9. c7 only.
And IIRC/IIUC, rl9 ports are largely restructured compared with c7.


> how might i help you further this cause until FreeBSD natively supports CUDA and UVM as well or better than Linux?

Unfortunately, CUDA and UVM are not stated to be supported even on 560.31.02.
At least, modules/components needed for them, which Linux version has, are not
built on FreeBSD yet.

-- 
You are receiving this mail because:
You are the assignee for the bug.