Re: Trying initial boot of FreeBSD (main so: 15) of Ryzen 9 7950X3D on an ASUS Prime X670-P WIFI: various dmesg -a lines; more

From: Mark Millard <marklmi_at_yahoo.com>
Date: Thu, 02 Nov 2023 00:32:00 UTC
On Nov 1, 2023, at 06:02, Mark Millard <marklmi@yahoo.com> wrote:

> On Nov 1, 2023, at 05:43, Mark Millard <marklmi@yahoo.com> wrote:
> 
>> On Nov 1, 2023, at 05:39, Mark Millard <marklmi@yahoo.com> wrote:
>> 
>>> On Oct 31, 2023, at 23:00, Mark Millard <marklmi@yahoo.com> wrote:
>>> 
>>>> FreeBSD context:
>>>> 
>>>> # uname -apKU
>>>> FreeBSD amd64-ZFS 15.0-CURRENT FreeBSD 15.0-CURRENT #126 main-n266130-d521abdff236-dirty: Tue Oct 24 18:17:40 PDT 2023     root@amd64-ZFS:/usr/obj/BUILDs/main-amd64-nodbg-clang/usr/main-src/amd64.amd64/sys/GENERIC-NODBG amd64 amd64 1500002 1500002
>>>> 
>>>> I moved my FreeBDSS boot media from a ThreadRipper 1950X to a Ryzen 9 7950X3D and tried
>>>> booting. It booted but some of the following might be of some note. Is any of it likely
>>>> to be problematical? Any of it of particular interest to anyone?
>>>> 
>>>> . . .
>>>> Firmware Error (ACPI): Could not resolve symbol [\134_SB.PCI0.GPP7.UP00.DP40.UP00.DP68], AE_NOT_FOUND (20221020/dswload2-315)
>>>> ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20221020/psobject-372)
>>>> . . .
>>>> pci0: <base peripheral, IOMMU> at device 0.2 (no driver attached)
>>>> . . .
>>>> pci8: <network, ethernet> at device 0.0 (no driver attached)
>>>> . . .
>>>> pci9: <network> at device 0.0 (no driver attached)
>>>> . . .
>>>> pci15: <encrypt/decrypt> at device 0.2 (no driver attached)
>>>> . . .
>>>> ns8250: UART FCR is broken
>>>> ns8250: UART FCR is broken
>>>> . . .
>>>> intsmb0: <AMD FCH SMBus Controller> at device 20.0 on pci0
>>>> intsmb0: Could not allocate I/O space
>>>> device_attach: intsmb0 attach returned 6
>>>> intsmb0: <AMD FCH SMBus Controller> port 0xff00-0xff0f at device 20.0 on pci0
>>>> intsmb0: Could not allocate I/O space
>>>> device_attach: intsmb0 attach returned 6
>>>> . . .
>>>> intsmb0: <AMD FCH SMBus Controller> at device 20.0 on pci0
>>>> intsmb0: Could not allocate I/O space
>>>> device_attach: intsmb0 attach returned 6
>>>> intsmb0: <AMD FCH SMBus Controller> port 0xff00-0xff0f at device 20.0 on pci0
>>>> intsmb0: Could not allocate I/O space
>>>> device_attach: intsmb0 attach returned 6
>>>> acpi_wmi0: <ACPI-WMI mapping> on acpi0
>>>> acpi_wmi0: cannot find EC device
>>>> acpi_wmi0: Embedded MOF found
>>>> ACPI: \134AWW0.WQMO: 1 arguments were passed to a non-method ACPI object (Buffer) (20221020/nsarguments-361)
>>>> acpi_wmi1: <ACPI-WMI mapping> on acpi0
>>>> acpi_wmi1: cannot find EC device
>>>> acpi_wmi1: Embedded MOF found
>>>> ACPI: \134ABAW.WQMO: 1 arguments were passed to a non-method ACPI object (Buffer) (20221020/nsarguments-361)
>>>> acpi_wmi2: <ACPI-WMI mapping> on acpi0
>>>> acpi_wmi2: cannot find EC device
>>>> acpi_wmi2: Embedded MOF found
>>>> ACPI: \134RMTW.WQMO: 1 arguments were passed to a non-method ACPI object (Buffer) (20221020/nsarguments-361)
>>>> acpi_wmi3: <ACPI-WMI mapping> on acpi0
>>>> acpi_wmi3: cannot find EC device
>>>> acpi_wmi3: Embedded MOF found
>>>> ACPI: \134AOD.WQBA: 1 arguments were passed to a non-method ACPI object (Buffer) (20221020/nsarguments-361)
>>>> driver bug: Unable to set devclass (class: ppc devname: (unknown))
>>>> . . .
>>>> acpi_wmi4: <ACPI-WMI mapping> on acpi0
>>>> acpi_wmi4: cannot find EC device
>>>> acpi_wmi4: Embedded MOF found
>>>> ACPI: \134_SB.ATKD.WQMO: 1 arguments were passed to a non-method ACPI object (Buffer) (20221020/nsarguments-361)
>>>> driver bug: Unable to set devclass (class: ppc devname: (unknown))
>>>> . . .
>>>> mixer: speaker: no such device
>>>> mixer: speaker: no such device
>>>> mixer: line: no such device
>>>> mixer: line: no such device
>>>> mixer: mic: no such device
>>>> mixer: mic: no such device
>>>> mixer: mic: no such device
>>>> mixer: mix: no such device
>>>> mixer: mix: no such device
>>>> mixer: rec: no such device
>>>> mixer: rec: no such device
>>>> mixer: igain: no such device
>>>> mixer: igain: no such device
>>>> mixer: ogain: no such device
>>>> mixer: ogain: no such device
>>>> mixer: rec: no such device
>>>> mixer: rec: no such device
>>>> mixer: igain: no such device
>>>> mixer: igain: no such device
>>>> mixer: ogain: no such device
>>>> mixer: ogain: no such device
>>>> mixer: monitor: no such device
>>>> mixer: monitor: no such device
>>>> mixer: monitor: no such device
>>>> . . .
>>>> uhid2 on uhub0
>>>> uhid2: <Corsair CORSAIR iCUE COMMANDER Core, class 0/0, rev 2.00/1.00, addr 3> on usbus1
>>>> devmatch: devinfo_init: Invalid argument
>>>> uhid3 on uhub4
>>>> uhid3: <Corsair CORSAIR M55 RGB PRO Gaming Mouse, class 0/0, rev 2.00/4.07, addr 1> on usbus0
>>>> . . . 
>>>> uhid4 on uhub4
>>>> uhid4: <Corsair CORSAIR K55 RGB PRO Gaming Keyboard, class 0/0, rev 1.10/1.02, addr 2> on usbus0
>>>> devmatch: devinfo_init: Invalid argument
>>>> uhid6 on uhub4
>>>> uhid6: <Corsair CORSAIR K55 RGB PRO Gaming Keyboard, class 0/0, rev 1.10/1.02, addr 2> on usbus0
>>>> . . .
>>>> pci0:8:0:0: no VPD ident found
>>>> . . .
>>>> 
>>>> I used a USB3 Ethernet dongle in order to have Ethernet available.
>>>> 
>>>> For reference:
>>>> 
>>>> # pciconf -lvV | less
>>>> . . .
>>>> none0@pci0:0:0:2:       class=0x080600 rev=0x00 hdr=0x00 vendor=0x1022 device=0x14d9 subvendor=0x1043 subdevice=0x8877
>>>> vendor     = 'Advanced Micro Devices, Inc. [AMD]'
>>>> class      = base peripheral
>>>> subclass   = IOMMU
>>>> . . .
>>>> none1@pci0:0:20:0:      class=0x0c0500 rev=0x71 hdr=0x00 vendor=0x1022 device=0x790b subvendor=0x1043 subdevice=0x8877
>>>> vendor     = 'Advanced Micro Devices, Inc. [AMD]'
>>>> device     = 'FCH SMBus Controller'
>>>> class      = serial bus
>>>> subclass   = SMBus
>>>> . . .
>>>> none2@pci0:8:0:0:       class=0x020000 rev=0x05 hdr=0x00 vendor=0x10ec device=0x8125 subvendor=0x1043 subdevice=0x87d7
>>>> vendor     = 'Realtek Semiconductor Co., Ltd.'
>>>> device     = 'RTL8125 2.5GbE Controller'
>>>> class      = network
>>>> subclass   = ethernet
>>>> none3@pci0:9:0:0:       class=0x028000 rev=0x00 hdr=0x00 vendor=0x10ec device=0xb852 subvendor=0x1a3b subdevice=0x5471
>>>> vendor     = 'Realtek Semiconductor Co., Ltd.'
>>>> class      = network
>>>> . . .
>>>> none4@pci0:15:0:2:      class=0x108000 rev=0x00 hdr=0x00 vendor=0x1022 device=0x1649 subvendor=0x1043 subdevice=0x8877
>>>> vendor     = 'Advanced Micro Devices, Inc. [AMD]'
>>>> device     = 'VanGogh PSP/CCP'
>>>> class      = encrypt/decrypt
>>>> . . .
>>>> 
>>>> 
>>>> 
>>>> Example temperatures (while idle, ambient around 20 DegC):
>>>> 
>>>> # kldload amdtemp
>>>> # sysctl dev.amdtemp
>>>> dev.amdtemp.0.ccd1: 33.0C
>>>> dev.amdtemp.0.ccd0: 34.6C
>>>> dev.amdtemp.0.core0.sensor0: 39.6C
>>>> dev.amdtemp.0.sensor_offset: 0
>>>> dev.amdtemp.0.%parent: hostb0
>>>> dev.amdtemp.0.%pnpinfo:  dev.amdtemp.0.%location:  dev.amdtemp.0.%driver: amdtemp
>>>> dev.amdtemp.0.%desc: AMD CPU On-Die Thermal Sensors
>>>> dev.amdtemp.%parent: 
>>>> 
>>>> Example during llvm build activity during buildworld:
>>>> 
>>>> # sysctl dev.amdtemp
>>>> dev.amdtemp.0.ccd1: 60.5C
>>>> dev.amdtemp.0.ccd0: 67.2C
>>>> dev.amdtemp.0.core0.sensor0: 77.1C
>>>> . . .
>>>> 
>>>> (Of course, the cooling system in place contributes greatly.)
>>>> 
>>>> 
>>>> Example from scratch builds (of my usual style of personal builds):
>>>> 
>>>> ThreadRipper 1950X: World built in 1345 seconds, ncpu: 32, make -j32
>>>> Ryzen 9 7950X3D:    World built in 545 seconds, ncpu: 32, make -j32
>>>> 
>>>> ThreadRipper 1950X: Kernel(s)  GENERIC-NODBG built in 123 seconds, ncpu: 32, make -j32
>>>> Ryzen 9 7950X3D:    Kernel(s)  GENERIC-NODBG built in 51 seconds, ncpu: 32, make -j32
>>>> 
>>>> Note: It is the same media in use: PCIe Optane moved from the 1950X
>>>> to the 7950X3D, ZFS (for bectl use, not other reasons ZFS is commonly
>>>> used for).
>>>> 
>>>> ThreadRipper 1950X: 128 GiBytes of RAM. Swap parition was 480 GiBytes at the time.
>>>> Ryzen 9 7950X3D:     96 GiBytes of RAM. Swap parition changed to 364 GiBytes.
>>>> 
>>>> (That avoids the swapon warning about possibly being out of tune vs. the amount of
>>>> RAM.)
>>> 
>>> 
>>> An ongoing poudriere bulk -a test looks to have a stuck objdump ( used for building
>>> www/node18 ):
>>> 
>>> # ps -oetime -alxdww | grep node18
>>> 05:48:03   0 44960 53404 21  68  0   18544    2892 select   I     0     0:00.03 | |       |-- sh: poudriere[main-amd64-bulk_a-default][15]: build_pkg (node18-18.18.2) (sh)
>>> 05:47:36   0 76480 44960 21  68  0   18544    2892 wait     I     0     0:00.00 | |       | `-- sh: poudriere[main-amd64-bulk_a-default][15]: build_pkg (node18-18.18.2) (sh)
>>> 05:47:36   0 76485 76480 19  68  0   12896     276 wait     IJ    0     0:00.01 | |       |   `-- /usr/bin/make -C /usr/ports/www/node18 build
>>> 05:47:36   0 77304 76485 22  68  0   13356     288 wait     IJ    0     0:00.00 | |       |     `-- /bin/sh -e -c (cd /wrkdirs/usr/ports/www/node18/work/node-v18.18.2; if ! /usr/bin/env CC.host=" cc"  CFLAGS.host="-O2 -pipe  -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing "  CXX.host=" c++"  CXXFLAGS.host="-O2 -pipe -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include "  LDFLAGS.host="  -fstack-protector-strong "  LINK.host="c++" OPENSSLBASE=/usr OPENSSLDIR=/etc/ssl OPENSSLINC=/usr/include OPENSSLLIB=/usr/lib XDG_DATA_HOME=/wrkdirs/usr/ports/www/node18/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/www/node18/work  XDG_CACHE_HOME=/wrkdirs/usr/ports/www/node18/work/.cache  HOME=/wrkdirs/usr/ports/www/node18/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/www/node18/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/www/node18/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig DONTSTRIP=yes DONTSTRIP=yes MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local  LOCALBASE=/usr/local  CC="cc" CFLAGS="-O2 -pipe  -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing "  CPP="cpp" CPPFLAGS="-isystem /usr/local/include"  LDFLAGS="  -fstack-protector-strong " LIBS="-L/usr/local/lib"  CXX="c++" CXXFLAGS="-O2 -pipe -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include "  MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install   -m 555"  BSD_INSTALL_LIB="install   -m 0644"  BSD_INSTALL_SCRIPT="install  -m 555"  BSD_INSTALL_DATA="install  -m 0644"  BSD_INSTALL_MAN="install  -m 444" gmake -f Makefile -j32  all; then  if [ -n "Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer." ] ; then  echo "===> Compilation failed unexpectedly.";  (echo "Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer.") | /usr/bin/fmt 75 79 ;  fi;  false;  fi)
>>> 05:33:34   0  7035 80309  9  26  0   22620    1312 piperd   SJ    0    32:56.31 | |       |           `-- /usr/local/bin/python3.9 tools/genv8constants.py /wrkdirs/usr/ports/www/node18/work/node-v18.18.2/out/Release/obj/gen/v8constants.h /wrkdirs/usr/ports/www/node18/work/node-v18.18.2/out/Release/obj.target/tools/v8_gypfiles/libv8_base_without_compiler.a
>>> 05:33:32   0  8045  7035  9  94  0 4443576   15732 -        RJ    0    39:43.22 | |       |             `-- objdump -z -D /wrkdirs/usr/ports/www/node18/work/node-v18.18.2/out/Release/obj.target/tools/v8_gypfiles/libv8_base_without_compiler.a
>>> 00:00   0 98535  2129 23  20  0   12784    1836 piperd   S+    2     0:00.00 |     `-- grep node18
>>> 
>>> For reference:
>>> 
>>> # ~/fbsd-based-on-what-commit.sh -C /usr/ports/
>>> 6ec8e3450b29 (HEAD -> main, freebsd/main, freebsd/HEAD) devel/sdts++: Mark DEPRECATED
>>> Author:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
>>> Commit:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
>>> CommitDate: 2023-10-21 19:01:38 +0000
>>> branch: main
>>> merge-base: 6ec8e3450b29462a590d09fb0b07ed214d456bd5
>>> merge-base: CommitDate: 2023-10-21 19:01:38 +0000
>>> n637598 (--first-parent --count for merge-base)
>>> 
>> 
>> Looks like www/node16 has the same sort of issue as www/node18 :
>> 
>> # ps -oetime -alxdww | grep node16
>> 02:24:49   0 58471 53404 30  68  0   18544   2884 select   I     0     0:00.03 | |       |-- sh: poudriere[main-amd64-bulk_a-default][17]: build_pkg (node16-16.20.1_1) (sh)
>> 02:15:35   0  1626 58471 18  68  0   18544   2884 wait     I     0     0:00.00 | |       | `-- sh: poudriere[main-amd64-bulk_a-default][17]: build_pkg (node16-16.20.1_1) (sh)
>> 02:15:35   0  1655  1626 21  68  0   12896    276 wait     IJ    0     0:00.02 | |       |   `-- /usr/bin/make -C /usr/ports/www/node16 build
>> 02:15:34   0  2154  1655 11  68  0   13356    280 wait     IJ    0     0:00.00 | |       |     `-- /bin/sh -e -c (cd /wrkdirs/usr/ports/www/node16/work/node-v16.20.1; if ! /usr/bin/env OPENSSLBASE=/usr OPENSSLDIR=/etc/ssl OPENSSLINC=/usr/include OPENSSLLIB=/usr/lib XDG_DATA_HOME=/wrkdirs/usr/ports/www/node16/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/www/node16/work  XDG_CACHE_HOME=/wrkdirs/usr/ports/www/node16/work/.cache  HOME=/wrkdirs/usr/ports/www/node16/work TMPDIR="/tmp" PATH=/wrkdirs/usr/ports/www/node16/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/wrkdirs/usr/ports/www/node16/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig DONTSTRIP=yes DONTSTRIP=yes MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local  LOCALBASE=/usr/local  CC="cc" CFLAGS="-O2 -pipe  -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing "  CPP="cpp" CPPFLAGS="-isystem /usr/local/include"  LDFLAGS="  -fstack-protector-strong " LIBS="-L/usr/local/lib"  CXX="c++" CXXFLAGS="-O2 -pipe -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -Wno-error=enum-constexpr-conversion -isystem /usr/local/include "  MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install   -m 555"  BSD_INSTALL_LIB="install   -m 0644"  BSD_INSTALL_SCRIPT="install  -m 555"  BSD_INSTALL_DATA="install  -m 0644"  BSD_INSTALL_MAN="install  -m 444" gmake -f Makefile -j32 CC.host=" cc" CFLAGS.host="-O2 -pipe  -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing " CXX.host=" c++" CXXFLAGS.host="-O2 -pipe -g -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -Wno-error=enum-constexpr-conversion -isystem /usr/local/include " LINK.host=c++ LDFLAGS.host="  -fstack-protector-strong " all; then  if [ -n "Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer." ] ; then  echo "===> Compilation failed unexpectedly.";  (echo "Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintaine
>> 01:55:30   0 84603  3452 15  47  0   22620   1312 -        RJ    0    14:00.49 | |       |           `-- /usr/local/bin/python3.9 tools/genv8constants.py /wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj/gen/v8constants.h /wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj.target/tools/v8_gypfiles/libv8_base_without_compiler.a
>> 01:55:27   0 86093 84603 15 101  0 3754296  32540 -        RJ    0    16:59.56 | |       |             `-- objdump -z -D /wrkdirs/usr/ports/www/node16/work/node-v16.20.1/out/Release/obj.target/tools/v8_gypfiles/libv8_base_without_compiler.a
>>  00:00   0 84657  2129 29  20  0   12784   1812 piperd   S+    2     0:00.00 |     `-- grep node16
>> 
> 
> For reference (node16's objdump then node18's):
> 
> # truss -p 86093
> write(1,"  2ff853: 74 61                 "...,74) = 74 (0x4a)
> write(1,"  2ff855: 45 4e                 "...,50) = 50 (0x32)
> write(1,"  2ff857: 53                    "...,51) = 51 (0x33)
> write(1,"  2ff858: 30 5f 36              "...,61) = 61 (0x3d)
> write(1,"  2ff85b: 48 61                 "...,50) = 50 (0x32)
> write(1,"  2ff85d: 6e                    "...,58) = 58 (0x3a)
> write(1,"  2ff85e: 64 6c                 "...,61) = 61 (0x3d)
> write(1,"  2ff860: 65 49 4e              "...,50) = 50 (0x32)
> write(1,"  2ff863: 53                    "...,51) = 51 (0x33)
> write(1,"  2ff864: 30 5f 39              "...,61) = 61 (0x3d)
> write(1,"  2ff867: 42 79 74              "...,75) = 75 (0x4b)
> write(1,"  2ff86a: 65 41 72 72           "...,74) = 74 (0x4a)
> . . .
> 
> # truss -p 8045
> write(1,"  16f4ca: 01 00                 "...,58) = 58 (0x3a)
> write(1,"  16f4cc: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4ce: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4d0: ed                    "...,54) = 54 (0x36)
> write(1,"  16f4d1: ae                    "...,62) = 62 (0x3e)
> write(1,"  16f4d2: 0b 00                 "...,57) = 57 (0x39)
> write(1,"  16f4d4: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4d6: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4d8: 0a 00                 "...,56) = 56 (0x38)
> write(1,"  16f4da: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4dc: 09 00                 "...,57) = 57 (0x39)
> write(1,"  16f4de: 00 00                 "...,57) = 57 (0x39)
> write(1,"  16f4e0: d7                    "...,46) = 46 (0x2e)
> write(1,"  16f4e1: a8 03                 "...,56) = 56 (0x38)
> . . .
> 

Turns out that my rare poudriere bulk -a runs are sometimes
WITH_DEBUG experiments where most things are built using
WITH_DEBUG. This was such an example.

I stopped the bulk -a and started a new from-scratch one
based on not using WITH_DEBUG . node18 and node16 worked
fine in this context. (The bulk -a is still running,
building other ports into packages.)

(I've a gradually growing list of ports that end up with
WITH_DEBUG nearly always undefined. Build failures and
resource use can both lead to such a choice.)

===
Mark Millard
marklmi at yahoo.com