Re: stable/13 - amdgpu broken with n253286-d8a88ec38149

From: Jeff Gibbons <jgibbons_at_protogate.com>
Date: Sun, 18 Dec 2022 16:55:09 UTC
I see exactly the same thing Jonathan does, but in my case with
i915kms.ko (which also comes from the /usr/ports/graphics/drm-510-kmod/
port, like his amdgpu.ko does).  My video device is Intel's
'WhiskeyLake-U GT2 [UHD Graphics 620]'.  This bug report may be
related:

   https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267421

After I upgraded my Lenovo Thinkpad T490s laptop with yesterday's
/usr/src/, my laptop hung completely every time I tried to load
/boot/modules/i915kms.ko, requiring a power-off/power-on.  It hung
when loading i915kms even after I rebuilt and reinstalled
/usr/ports/graphics/drm-510-kmod/ .

I tried many things, including rebuilding several different recent
versions of /usr/ports/graphics/drm-510-kmod/, but nothing cured it.

After seeing Jonathan's email to this list, I tried reverting my
/usr/src/ to Friday before that commit date that he gave, and
after rebuilding my system and then rebuilding/installing
/usr/ports/graphics/drm-510-kmod/ again (drm-510-kmod-5.10.113_8),
I can now kldload i915kms again without crashing, and everything
works.

It behaves as if something around the time of that commit that
Jonathan pointed to:

   commit d8a88ec381498f5942403088d28ee325b92e9a78
   (Date: Fri Dec 16 03:15:28 2022 -0600)

is preventing FreeBSD from working with /usr/ports/graphics/drm-510-kmod/

Jeff
--
Jeff Gibbons


From: Jonathan Vasquez <jon_at_xyinn.org>
Date: Sat, 17 Dec 2022 16:43:15 UTC

I redid another clean install of latest stable/13 and latest ports for drm-kmod / drm-510-kmod/ and gpu-firmware-amd-kmod FLAVOR=sienna_cichlid and the same thing arises. The system locks up immediately when loading the amdgpu driver.

current src commit:

commit a3c07a933d5cb71a6d58cc9f0ecb5385a5e0ea29 (HEAD -> stable/13, origin/stable/13)
Author: Rick Macklem <rmacklem@FreeBSD.org>
Date: Sun Nov 13 12:16:06 2022 -0800
rpcb_clnt.c: Do not force use of UDP

current ports commit:

commit 414eb4d80eb56f154435a5749ec08811bf192a83 (HEAD -> main, origin/main, origin/HEAD)
Author: Jan Beich <jbeich@FreeBSD.org>
Date: Sat Dec 17 16:14:16 2022 +0000

emulators/yuzu: requires C++20 after 7b88749b5e69
https://github.com/yuzu-emu/yuzu/commit/07632ad82508

root@leslie:/usr/src # pkg info drm-kmod
drm-kmod-20220907_1
Name : drm-kmod
Version : 20220907_1Installed on : Sat Dec 17 11:32:01 2022 EST

root@leslie:/usr/src # pkg info drm-510-kmod
drm-510-kmod-5.10.113_8
Name : drm-510-kmod
Version : 5.10.113_8Installed on : Sat Dec 17 11:32:01 2022 EST

Installing sienna_cichlid as usual gives the correct information:

make install clean FLAVOR=sienna_cichlid

Installing gpu-firmware-amd-kmod-sienna-cichlid-20221207_1...
===> Cleaning for gpu-firmware-amd-kmod-sienna-cichlid-20221207_1

Although using pkg info says verde, I think that info is wrong even though sienna_cichlid is in fact being used (but that's probably a separate issue):

gpu-firmware-amd-kmod-verde-20221207_1
Name : gpu-firmware-amd-kmod-verde
Version : 20221207_1
Installed on : Sat Dec 17 09:39:52 2022 EST
Origin : graphics/gpu-firmware-amd-kmod
Architecture : FreeBSD:13:amd64
Prefix : /usr/local
Categories : kld graphics
Licenses : AMD
Maintainer : x11@FreeBSD.org
WWW : https://github.com/freebsd/drm-kmod-firmware
Comment : Firmware modules for verde AMD GPUs
Annotations :
FreeBSD_version: 1301510
flavor : verde

Jonathan Vasquez
PGP: 34DA 858C 1447 509E C77A D49F FB85 90B7 C4CA 5279
Sent with ProtonMail Secure Email

------- Original Message -------
On Saturday, December 17th, 2022 at 08:52, Jonathan Vasquez <jon@xyinn.org> wrote:

> Hey Emmanuel,
>
> What do you recommend then? As part of my testing yesterday (and what I described) was that I pulled down latest stable/13 and latest ports. Cleanly recompiled world, kernel, and drm-510-kmod but the system freezes when loading the amdgpu module. From my understanding drm-kmod is just meta port which will bring in drm-510-kmod so recompiling drm-kmod itself won't make s difference if I already recompiled drm-510-kmod.
>
> Jonathan Vasquez
> PGP: 34DA 858C 1447 509E C77A D49F FB85 90B7 C4CA 5279
> Sent with ProtonMail Secure Email
>
> Sent from Proton Mail mobile
>
> -------- Original Message --------
> On Dec 17, 2022, 03:51, Emmanuel Vadot < manu@bidouilliste.com> wrote:
>
>> Hello Jonathan, On Sat, 17 Dec 2022 02:42:42 +0000 Jonathan Vasquez wrote: > Oh, I think I understand a bit better what you meant. Yup, after I found which stable/13 commit was problematic, I compiled HEAD~1 which still works, then I recompiled drm-510-kmod and it's working now. But I still wanted to report it since I'm guessing there will need to be some tweaks made to drm-510-kmod so that it works again with the latest stable/13. There is no tweaks to be done for drm-kmod. In fact in the last two days to commits who broke KBI between 13.1 and stable/13 were taken care of (one I've reverted and the other one being the one Doug fixed). Yes it's a bit unfortunate for stable/13 users that we broke KBI a few times and that you needed to recompile drm-kmod for it to work but what I want is when 13.2 is released users don't have to recompile the ports and can safely upgrade their machines (as the drm-510-kmod port will be compiled on 13.1 for 3 months). Cheers, > Jonathan Vasquez > PGP: 34DA 858C 1447 509E C77A D49F FB85 90B7 C4CA 5279 > Sent with ProtonMail Secure Email > > ------- Original Message ------- > On Friday, December 16th, 2022 at 21:31, Jonathan Vasquez wrote: > > > Hey Doug, > > > > Not a problem. I actually did clean rebuilds of everything, including pulling the latest ports and cleanly reinstalling drm-510-kmod and gpu-firmware-amd-kmod. But it still failed. > > > > Jonathan Vasquez > > PGP: 34DA 858C 1447 509E C77A D49F FB85 90B7 C4CA 5279 > > Sent with ProtonMail Secure Email > > > > Sent from Proton Mail mobile > > > > -------- Original Message -------- > > On Dec 16, 2022, 21:05, Doug Moore < unkadoug@gmail.com> wrote: > > > >> Short answer - try rebuilding kmod from scratch. > >> > >> Long answer - I moved into stable/13 changes from main that changed some binary-level representations. One who found that the kmod he built before those changes no longer worked pointed out my error. So I made a change to stable/13 recently to restore the original representations, and satisfied that person?s complaint. But, someone who built kmod recently will find things broken, the way the original fellow did. I can only apologize and ask you to rebuild non-kernel stuff based on the stable/13 of more than a day ago. I hadn?t considered the impact of my changes on non-kernel code. > >> Doug > >> > >> Sent from my iPad > >> > >>> On Dec 16, 2022, at 6:50 PM, Jonathan Vasquez wrote: > >> > >>> ? > >>> Hey all, > >>> > >>> it seems that my AMD Radeon 6900 XT doesn't load the amdgpu properly anymore. The machine will crash immediately upon load. After a bisect, I found the posted commit. This card uses the sienna_cichlid? flavor for gpu-firmware-amd-kmod. > >>> > >>> commit d8a88ec381498f5942403088d28ee325b92e9a78 > >>> Author: Doug Moore > >>> Date: Fri Dec 16 03:15:28 2022 -0600 > >>> > >>> rb_tree: restore binary compat w/ 13 > >>> > >>> A change to RB_COLOR_INSERT, when merged into stable/13, broke binary > >>> compatibility. For 13, call the new function RB_DO_COLOR_INSERT, and > >>> restore the old function with the original name and parameters. Define > >>> RB_COLOR_INSERT in tree.h, and remove changes to the linux rbtree > >>> header. > >>> > >>> Another change altered the order of pointers in the RB_ENTRY struct. > >>> For 13, restore the original order. > >>> > >>> Reported by: manu > >>> Reviewed by: hselasky > >>> Tested by: manu > >>> Differential Revision: https://reviews.freebsd.org/D37716 > >>> > >>> sys/compat/linuxkpi/common/include/linux/rbtree.h | 11 ++---- > >>> sys/sys/tree.h | 46 ++++++++++++++++------- > >>> > >>> Jonathan Vasquez > >>> PGP: 34DA 858C 1447 509E C77A D49F FB85 90B7 C4CA 5279 > >>> Sent with ProtonMail Secure Email -- Emmanuel Vadot