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

From: Emmanuel Vadot <manu_at_bidouilliste.com>
Date: Mon, 19 Dec 2022 10:37:52 UTC
On Mon, 19 Dec 2022 03:20:36 -0600
Doug Moore <unkadoug@gmail.com> wrote:

> Emmanuel -
> 
> If you are withdrawing your statement that this was a successfully 
> tested change, then I should withdraw the change.

 Your change restored abi compat but it seems that the code isn't ok.

> I don't know anything about drm_mm_insert_mode_in_range, or drm as a 
> whole, but grepping the 13.1 drm directory for 'rbtree' or 'RB_TREE', I 
> can't find anything.  So I don't know where to look.

 The code that fails is here
https://github.com/freebsd/drm-kmod/blob/5.10-lts/drivers/gpu/drm/drm_mm.c#L167
and
https://github.com/freebsd/drm-kmod/blob/5.10-lts/drivers/gpu/drm/drm_mm.c#L531

> Doug
> 
> On 12/18/22 10:09, Emmanuel Vadot wrote:
> > On Sun, 18 Dec 2022 19:34:19 -0500
> > Adam McDougall <mcdouga9@egr.msu.edu> wrote:
> >
> >> Hello,
> >>
> >> I have a Dell R6525 which I use to make new FreeBSD builds from -stable
> >> and distribute them to other systems as upgrades. I updated my 13-STABLE
> >> tree to 20221217 and the kernel hangs during boot after printing
> >> messages from mlx5 driver. I'm not even using a GPU. I don't know how
> >> many of my systems this would affect but I'd rather prevent it than find
> >> out. I recompiled the kernel commit by commit and d8a88ec38149 makes it
> >> hang. I think I have little exposure to binary compat issues with 13 so
> >> I will probably revert the commit locally for now. It boots with that
> >> commit reverted though.
> >   Ok it seems that I've only tested 13.1 drm-kmod on stable and not
> > recompiling it.
> >   So the new code is compatible with 13.1 but doesn't work ?
> >   Since the problem is also on mlx5 (which I guess uses the linuxkpi
> > rb_tree stuff).
> >   My machine isn't frozen but the drm code is stuck in
> > drm_mm_insert_node_in_range (which uses the rb_tree stuff).
> >
> >   Doug, any ideas ?
> >
> >> On 12/18/2022 11:55 AM, Jeff Gibbons wrote:
> >>> 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 ori
> >   gi
> >


-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@FreeBSD.org>