amdgpu panics

Grzegorz Junka list1 at gjunka.com
Mon Apr 6 09:19:33 UTC 2020


On 06/04/2020 09:32, Matthias Andree wrote:
> Am 06.04.20 um 09:37 schrieb Grzegorz Junka:
>> On 06/04/2020 08:21, Hans Petter Selasky wrote:
>>>> They don't match, and they can't.
>>>>
>>>> Files in /boot/modules have been installed by drm-fbsd12.0-kmod and
>>>> files in /boot/kernel have been installed by
>>>> FreeBSD-kernel-venus-12.1_3 (venus is the name I gave the kernel
>>>> configuration).
>>> Is drm-fbsd12.0-kmod built using the same sources as
>>> FreeBSD-kernel-venus-12.1_3. Can you try this:
>>>
>>> 1) Build and install a fresh 12-stable kernel, not release kernel,
>>> from /usr/src
>>> 2) Build and install /usr/ports/graphics/gpu-firmware-kmod
>>> 3) Build and install /usr/ports/graphics/drm-fbsd12.0-kmod
>>>
>>>> I built the ports and the kernel on the same system but at different
>>>> times. First I updated all sources (/usr/src and /usr/ports) then I
>>>> built packages. When that didn't work, few days later I built the
>>>> kernel and world. No updates to the sources have been made between
>>>> those two.
>>>>
>>>> kldload /boot/modules/drm.ko /boot/modules/amdgpu.ko  <- doesn't
>>>> work, system halts after loading one of the vega10 modules.
>>> --HPS
>>
>> I am not sure I understand your question. drm-fbsd12.0-kmod is a port
>> so it's built from /usr/local/poudriere/ports whereas
>> FreeBSD-kernel-venus-12.1_3 is one of base packages build from /usr/src.
> AGAIN:
>
> Do *NOT* build kernel modules in poudriere unless you can guarantee it's
> using the *EXACT SAME* kernel configuration and sources, you must solve
> this discrepancy:


Sorry, what discrepancy do you mean? How does FreeBSD build the 
drm-fbsd12.0-kmod on the FreeBSD pkg build server if not with poudriere? 
Does it have any specific configuration I don't know about, e.g. null 
mounted /usr/src to the host?

Is it even possible to build a poudriere package with a non-generic 
kernel configuration in the poudriere jail?

What if I create the poudriere build jail from the kernel / world I 
built on the host? Is that possible?


>> If you are asking if /usr/src is the same when building ports and
>> kernel then again, no, because when building ports the jail's /usr/src
>> is used, whereas when building the kernel the host's /usr/src is used.
>>
>> But I verified that both are the same, i.e.,
>>
>> diff -r /usr/src /usr/local/poudriere/jails/12rel1/usr/src
>>
>> doesn't return any differences, apart from the additional kernel
>> configuration. They are both 12.1-RELEASE-p3 (checked the version
>> against sources in Github and SVN).
> ...and "additional kernel configuration" is the thing that MIGHT break
> the module in build if the kernel config has any impact on sources that
> the module uses.


The issue was the same with a stock GENERIC 12.1-p3 kernel, which I 
would expect would be build from the EXACT same sources as the RELENG 
12.1 branch https://github.com/freebsd/freebsd/tree/releng/12.1, which I 
would expect freebsd-update to fetch to both, my host and the poudriere 
jail after it updated both to 12.1-RELEASE-p3. At least I verified the 
/sys/conf/newvers.sh in my jail and host to match the file in that 
branch in Github.

Of course I can recompile the kernel and world using GENERIC kernel 
config, that at least would compile all modules that aren't normally 
compiled with GENERIC.


> I still haven't understood why you cannot boot without amdgpu, and then
> built (a) kernel, (b) firmware, (c) amdgpu and DRM drivers all directly
> from /usr/src and updated /usr/ports
> *ON THE MACHINE WITH THE AMD VGA CARD*. There are way too many variables
> in the mix.


I can but I have more than one desktop and I don't want to recompile 
everything from sources on each one. That's why I have a central build 
server. Tell me how I should configure the build server to build the 
packages and/or kernel and/or world in a way that the graphics stack 
expects it to be build and it would be solved.

Or what you are really saying is that if someone wants to use the new 
drm graphics stack they HAVE TO recompile (a) kernel, (b) firmware, (c) 
amdgpu from sources on the host every time?

GrzegorzJ




More information about the freebsd-ports mailing list