After upgrading the nvidia packages from latest Xorg server will terminate immediately after startup leaving blocks of color on the screen. see also https://forums.freebsd.org/threads/scrambled-screen-with-nvidia-driver.102881/post-762933 I am on FreeBSD 15.0-RELEASE-p9, graphics card NVIDIA Quadro P2000 Packages installed from pkg latest: drm-66-kmod-6.6.25.1500068_9 Direct Rendering Manager (DRM) GPU drivers drm_info-2.10.0 Dump info about DRM devices gpu-firmware-kmod-20250109,1 Firmware modules for the drm-kmod drivers libdrm-2.4.133,1 Direct Rendering Manager library and headers libva-nvidia-driver-0.0.17 NVDEC-based backend for VAAPI linux-nvidia-libs-580-580.159.04 NVIDIA graphics libraries and programs (Linux) linux-rl9-libdrm-2.4.123 Rocky Linux Direct Rendering Manager runtime nvidia-driver-580-580.159.04 NVIDIA graphics driver userland nvidia-drm-66-kmod-580-580.159.04.1500068 NVIDIA DRM Kernel Module nvidia-kmod-580-580.159.04.1500068 NVIDIA graphics driver kernel module The error also occurs when the packages are build from ports. After reinstalling all packages from pkg quarterly the error does not occur.
First reported at forums.freebsd.org: https://forums.freebsd.org/threads/scrambled-screen-with-nvidia-driver.102881/ This doesn't happen for me both on stable/15 and main on my ThinkPad P52 with Quadro P1000 (notebook), which is at the same generation (Pascal) of architecture. And this is why I cannot dig into. Note that this would be auto-assigned to group maintainer x11 if you write the summary like below. Comma separated ports glob (category/port) and following colon is the culprit. (I don't have permission to edit this.) x11/nvidia-driver-580, x11/nvidia-kmod-580: scrambled screen
(In reply to Tomoaki AOKI from comment #1) sorry that I cannot point to the right package creating the issue. But obviously some changes between quarterly and latest must be the source of the problem. As an additional information, with packages installed from quarterly I do also see these blocks of color when I power off the system.
(In reply to Ludger Bolmerg from comment #2) I've read through the forums thread again, and noticed noone including myself asked this: Are there anything NVIDIA driver related or X11 related thing under /usr/local/lib/compat/pkg/? If any, possibly wrong version of shared objects are picked from there instead of correct place. So renaming the directory, restart your computer (just to be 100% sure) and see something differs could be worth trying in this case.
(In reply to Tomoaki AOKI from comment #3) Sorry for this late reply, I was away from home and could not answer your question. /usr/local/lib/compat/pkg/ is totally empty. # ls -l /usr/local/lib/compat/pkg/ total 0
(In reply to Ludger Bolmerg from comment #4) So, can you try another display and/or display cable if you have any? One possibility is that NVIDIA somehow changed binary only codes that detects and initializes displays and it bites your monitor and/or cable. In several recent updates for 595 series (Production Branch) and 610 series (New Feature Branch) fixed issues for specific displays that were known to be problematic. But what's changed are unclear, as NVIDIA haven't provided specific page for upgrades after 580.142 and records no entry in NVIDIA_Changelog file stored in the driver tarball of 580.159.04. Another possible differences between us would be that I'm habitally rebuilding x11-servers/xorg-server on upgrading any driver ports including NVIDIA ones (not limited with NVIDIA ones, though) from the time I've started using NVIDIA GPUs. This was because, at the moment, x11/nvidia-driver and MESA GL drivers (less frequently updated) installed samely named libraries at the same place, causing install time race conditions, as libmap was NOT used (even not yet available). So I needed to be sure x11/nvidia-driver to be installed later than all MESA ports and x11-servers/xf86-server (it was before Xorg superseded XFree86 on FreeBSD) certainly pick NVIDIA ones to avoid strange breakages / slownesses at the era. And this still is my habit.
(In reply to Tomoaki AOKI from comment #5) Unfortunately I don't have another DisplayPort cable available. I would have to buy a new one. But I have a second monitor which has a DVI-D port. To connect this monitor I would need a DVI-to-DP adapter which I also need to buy. If you do think that it is worth a try I may spend the money to check it out. As I am again away from home for a week or so this will take a while. I will also try your other suggestion to install all MESA packages and Xorg servers prior to all NVIDIA packages and report back if this makes any difference.
(In reply to Ludger Bolmerg from comment #6) It would be better testing something free of charge first. As this issue cannot be reproduced in my side, the root cause could be in differences between us. Configurations for X11, OS versions, what's installed and how configured, and finally, hardware. I'm testing 580 series of drivers on: ThinkPad P52 with Quadro P1000 (notebook) with 4k panel (internal and external) Minisforum MS-01 with RTX A400 with external 4k monitor On both hardwares, tested on stable/15 (and main if my spare time allows) that are nearly up-to-date at the moment I'm testing. Intel iGPUs are explicitly disabled via UEFI firmware on both hardwares. External monitor is actually single JAPANNEXT JN-IPS2380UHDR-C65W-HSP that is capable of displaying 4k in 60Hz VSYNC and having 1 DP, 1 HDMI and 1 USB-C as input. RTX A400 on Minisforum MS-01 is connected via miniDP on RTX A400 itself. ThinkPad P52 is connected via USB-C, which is recognized as Internal Display Port by xorg. Using up-to-date (at build time) master (aka latest) branch of ports tree to generate sane diffs to submit. Using graphics/nvidia-drm-612-kmod-580 with graphics/drm-612-kmod,x11/nvidia-kmod-580, x11/nvidia-driver-580 and x11/linux-nvidia-libs-580.
To make sure that there is no race condition between mesa and nvidia packages I have (in a separate boot environment) deinstalled all nvidia, drm, mesa and xorg server packages. This operation removed a bunch of other packages which depend on xorg server. I have then build and reinstalled from ports. All nvidia packages were installed after mesa and xorg server. I see the same behaviour. As you are using graphics/nvidia-drm-612-kmod-580 and graphics/drm-612-kmod I tried to build these but did not succeed. drm-612-kmod-6.12.85.1500068_1 not supported on FreeBSD < 1500509, no kernel support. I am still on FreeBSD 15.0-RELEASE
(In reply to Ludger Bolmerg from comment #8) Yes, graphics/{nvidia-}drm-612-kmod* does NOT work on 15.0, as supports for Linux 6.12 on LinuxKPI are landed AFTER 15.0 and BEFORE 15.1. The OSVERSION of 1500509 is of stable/15 after releng/15.0 (the source for 15.0{-p*}) is branched but before releng/15.1 (the source for 15.1{-p*}) is branched. stable/15 initially inherited 1500000 from main in preparation for releng/15.0, and bumped to 1500500 when releng/15.0 (15.0 is at 1500067 at start and finally at 1500068) is branched from stable/15. And stable/15 is bumped to 1501500 after releng/15/1 branched from stable/15. Anyway, I think now issues would be narrowed down to specific configuration or hardware. If your Quadro P2000 has multiple outputs (my RTX A400 has 4 miniDP connectors on it), switching to same type of physically different port could be worth trying without additional costs.
(In reply to Tomoaki AOKI from comment #9) The Quadro P2000 has 4 DP outputs. I tried all of them with no luck.
I have now tried both a different cable and a different monitor. The problem is still there.
I have now upgraded my system to FreeBSD 15.1-RELEASE-p1 Prior to do the upgrade I have deleted all installed packages and reinstalled them from pkg quarterly after the upgrade. The following packages have been installed from ports x11/nvidia-kmod-580-580.173.02.1501000 x11/nvidia-driver-580-580.173.02 x11/linux-nvidia-libs-580-580.173.02 graphics/nvidia-drm-612-kmod-580-580.173.02.1501000_1 graphics/drm-612-kmod-6.12.85.1501000_1 I can confirm that this resolved my problem. There is only one issue remaining. When exiting the Xorg server I still get colored boxes on the screen.