AMDGPU panic: pkg upgrade -f not upgrading firmware at fault

0 views
Skip to first unread message

Mark G.

unread,
Dec 11, 2025, 7:37:16 PM (7 days ago) Dec 11
to FreeBSD questions
Upgrading from 14.3p6 to 15.0
=============================

Backup system/snapshot first.

Specs: AI/LLM test toy for ollama.
AMD 16 core threadripper 1950X 128GB RAM
NVMe x4 ZFS raidz1
AMD 7900XTX GPU 24GB VRAM

Foreshadow of important context: kld_list="amdgpu"

(at 14.3)
# freebsd-update fetch
# freebsd-update install

We are at the latest 14.3 patch level 6. Reboot for hygiene.

# freebsd-update -r 15.0-RELEASE upgrade
No errors
# freebsd-update install
Questions on pkg's /etc/pkg/FreeBSD.conf
gets merged into (I manually set it to use latest):

===
FreeBSD-ports: {
url: "pkg+https://pkg.FreeBSD.org/${ABI}/latest",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
FreeBSD-ports-kmods: {
url: "pkg+https://pkg.FreeBSD.org/${ABI}/kmods_latest_${VERSION_MINOR}",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkg",
enabled: yes
}
FreeBSD-base: {
url: "pkg+https://pkg.FreeBSD.org/${ABI}/base_release_${VERSION_MINOR}",
mirror_type: "srv",
signature_type: "fingerprints",
fingerprints: "/usr/share/keys/pkgbase-${VERSION_MAJOR}",
enabled: no
}
===

Other merges: /etc/dma/auth.conf
Almost got wiped, I said no because it was replacing my configured
version with the three lines of comments, with no option to edit.

Make copies of /etc/dma/auth.conf -> /etc/dma/auth.conf.mine
Make copies of /etc/dma/dma.conf -> /etc/dma/dma.conf.mine

Choosing no at this merge completely halted the install phase,
so I had to restart:

# freebsd-update install

Redo pkg config merge, accept bad dma/auth.conf merge,
continue with install without further issues.

Reboot into new kernel. Note that there was no panic
at this time. I assume the attempt to kld_load the amdgpu
was refused as a kernel ABI mismatch, so didn't panic the
system.


Install base system/userland:

# freebsd-update install

Message about upgrading all ports, do so, but run pkg bootstrap first:

# pkg bootstrap -f
Succeeded

# pkg update
Succeeded

# pkg upgrade -f
Went through three iterations of proceed with the
installation for all ports and completed (eventually,
I was getting sub Mbps transfer rates (i.e. 500kbps)
for alot of files, on a Gbit connection. Overloaded
servers?).

Said completed successfully.

I see that drm-kmod was upgraded and drm-66-kmod was installed.

Reboot with this in rc.conf:

kld_list="amdgpu"

System loads into the boot process until the attempt
to kld_load amdgpu, whereon we get a panic. Did not
capture the panic message, sorry.


Boot into single user mode with /bin/sh.

# mount -u /
# vi /etc/rc.conf
comment out kld_load line, save.

Reboot, system boots without panic or graphics driver.

# freebsd-version -kur
15.0-RELEASE
15.0-RELEASE
15.0-RELEASE


Package Repos:

root@brain:/etc/dma # pkg repos
FreeBSD-ports: {
url : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/latest",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
FreeBSD-ports-kmods: {
url : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/kmods_latest_0",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
FreeBSD-base: {
url : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/base_release_0",
enabled : no,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkgbase-15"
}

Check what drm kmods we have:

root@brain:~ # pkg info -g drm*
drm-66-kmod-6.6.25.1500068_6
drm-kmod-20250428


Check what gpu-firmware kmods we have:

root@brain:~ # pkg info -g gpu-firm*
gpu-firmware-amd-kmod-aldebaran-20230625.1403000_2
gpu-firmware-amd-kmod-arcturus-20230625.1403000_2
...
gpu-firmware-radeon-kmod-turks-20220511.1403000
gpu-firmware-radeon-kmod-verde-20220511.1403000
===


Looks like they were all built for 14.3 and not upgraded
when the pkg upgrade -f command was run. Why not?



Remove the 1403000 gpu firmware modules.

root@brain:~ # pkg remove -g gpu-firm*
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 128 packages
(of 0 packages in the universe):

Installed packages to be REMOVED:
gpu-firmware-amd-kmod-aldebaran: 20230625.1403000_2
...
gpu-firmware-radeon-kmod-verde: 20220511.1403000

Number of packages to be removed: 128

The operation will free 106 MiB.

Proceed with deinstalling packages? [y/N]: y
[1/128] Deinstalling gpu-firmware-kmod-20241114,1...
...
[128/128] Deinstalling gpu-firmware-radeon-kmod-verde-20220511.1403000...
[128/128] Deleting files for gpu-firmware-radeon-kmod-verde-20220511.1403000: 100%
===


Remove drm-kmod and drm-66-kmod for good measure.
Reboot for hygeine.

System boots.

Reinstall drm-kmod:

===
root@brain:~ # pkg install drm-kmod
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
All repositories are up to date.
The following 130 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
drm-66-kmod: 6.6.25.1500068_6 [FreeBSD-ports]
drm-kmod: 20250428 [FreeBSD-ports]
gpu-firmware-amd-kmod-aldebaran: 20230625.1500068_2 [FreeBSD-ports]
...
gpu-firmware-radeon-kmod-verde: 20220511.1500068 [FreeBSD-ports]

Number of packages to be installed: 130

The process will require 123 MiB more space.
28 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/127] Fetching gpu-firmware-amd-kmod-psp-13-0-4-20230625
...
[127/127] Fetching gpu-firmware-amd-kmod-psp-13-0-11-20230625.1500068_2~01b2165a6b.pkg
...
Checking integrity... done (0 conflicting)
[1/130] Installing drm-66-kmod-6.6.25.1500068_6...
[1/130] Extracting drm-66-kmod-6.6.25.1500068_6: 100%
[2/130] Installing gpu-firmware-amd-kmod-aldebaran-20230625.1500068_2
...
[129/130] Extracting gpu-firmware-kmod-20241114,1: 100%
[130/130] Installing drm-kmod-20250428...
[130/130] Extracting drm-kmod-20250428: 100%
=====
Message from drm-66-kmod-6.6.25.1500068_6:
...
For amdgpu: kld_list="amdgpu"
...
===


root@brain:~ # kldstat
Id Refs Address Size Name
1 83 0xffffffff80200000 1f4daa0 kernel
2 1 0xffffffff8214e000 620c10 zfs.ko
3 1 0xffffffff8276f000 8808 cryptodev.ko
4 1 0xffffffff82778000 1c708 geom_eli.ko
5 1 0xffffffff831f8000 3570 fdescfs.ko
6 1 0xffffffff831fc000 3390 acpi_wmi.ko
7 1 0xffffffff83200000 21e8 hcons.ko
8 3 0xffffffff83203000 30a8 hidmap.ko
9 1 0xffffffff83207000 21e8 hms.ko
10 1 0xffffffff8320a000 21e8 hsctrl.ko
11 1 0xffffffff8320d000 6210 ig4.ko
12 1 0xffffffff83214000 3220 intpm.ko
13 1 0xffffffff83218000 2178 smbus.ko
14 1 0xffffffff8321b000 32320 linux.ko
15 2 0xffffffff8324e000 6d98 mqueuefs.ko
16 4 0xffffffff83255000 ce68 linux_common.ko
17 1 0xffffffff83262000 2e3f0 linux64.ko
18 1 0xffffffff83291000 2278 pty.ko
19 1 0xffffffff83294000 73c0 linprocfs.ko
20 1 0xffffffff8329c000 440c linsysfs.ko
21 1 0xffffffff832a1000 2f5e0 if_wg.ko

Nothing about amdgpu in /boot/firmware

root@brain:~ # ls -la /boot/firmware/
total 7836
drwxr-xr-x 2 root wheel 11 Dec 11 01:41 .
drwxr-xr-x 15 root wheel 73 Dec 11 14:29 ..
-rw-r--r-- 1 root wheel 918268 Dec 11 01:41 iwm3160fw
-rw-r--r-- 1 root wheel 1028032 Dec 11 01:41 iwm3168fw
-rw-r--r-- 1 root wheel 1049340 Dec 11 01:41 iwm7260fw
-rw-r--r-- 1 root wheel 1028316 Dec 11 01:41 iwm7265Dfw
-rw-r--r-- 1 root wheel 1180412 Dec 11 01:41 iwm7265fw
-rw-r--r-- 1 root wheel 2120860 Dec 11 01:41 iwm8000C
-rw-r--r-- 1 root wheel 1811984 Dec 11 01:41 iwm8265fw
-rw-r--r-- 1 root wheel 2678284 Dec 11 01:41 iwm9000fw
-rw-r--r-- 1 root wheel 2678092 Dec 11 01:41 iwm9260fw

Manually load the driver:

root@brain:~ # kldload amdgpu
root@brain:~ #

No panic.

Uncomment the rc.conf kld_list entry and reboot.

Normal boot. Graphics loads.

Fix /etc/dma/auth.conf file.

Underlying problem on this system was the failure of
pkg upgrade -f to get the upgraded firmware files for
the drm-kmod dependencies. Retained 1403000 rather
than fetching 1500068 files.


Hope this helps someone.

Mark

P.S.
Output of fwget for interest's sake:
root@brain:~ # fwget -nv
Trying to match device 0x1539 in class network and vendor intel with pci_network_intel
Trying to match device 0x10fb in class network and vendor intel with pci_network_intel
Trying to match device 0x10fb in class network and vendor intel with pci_network_intel
Trying to match device 0x744c in class video and vendor amd with pci_video_amd
Needed firmware packages: 'gpu-firmware-amd-kmod-dcn-3-2-0
gpu-firmware-amd-kmod-gc-11-0-0
gpu-firmware-amd-kmod-psp-13-0-0
gpu-firmware-amd-kmod-sdma-6-0-0
gpu-firmware-amd-kmod-smu-13-0-0
gpu-firmware-amd-kmod-vcn-4-0-0'









Graham Perrin

unread,
Dec 14, 2025, 6:43:18 AM (5 days ago) Dec 14
to FreeBSD questions
On 12/12/2025 00:36, Mark G. wrote:
> …
>
> Underlying problem on this system was the failure of
> pkg upgrade -f to get the upgraded firmware files for
> the drm-kmod dependencies.  Retained 1403000 rather
> than fetching 1500068 files.
>
>
> Hope this helps someone.
>
> Mark
>
> P.S.
> Output of fwget for interest's sake:
> root@brain:~ # fwget -nv
> Trying to match device 0x1539 in class network and vendor intel with
> pci_network_intel
> Trying to match device 0x10fb in class network and vendor intel with
> pci_network_intel
> Trying to match device 0x10fb in class network and vendor intel with
> pci_network_intel
> Trying to match device 0x744c in class video and vendor amd with
> pci_video_amd
> Needed firmware packages: 'gpu-firmware-amd-kmod-dcn-3-2-0
> gpu-firmware-amd-kmod-gc-11-0-0
> gpu-firmware-amd-kmod-psp-13-0-0
> gpu-firmware-amd-kmod-sdma-6-0-0
> gpu-firmware-amd-kmod-smu-13-0-0
> gpu-firmware-amd-kmod-vcn-4-0-0'


Thanks.

<https://www.reddit.com/r/freebsd/comments/1pfj3hn/comment/nssugej/?context=2>
includes <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291351>, and
notes that there's no mention of fwget in the FreeBSD Handbook.


Reply all
Reply to author
Forward
0 new messages