[PATCH] drm/amdgpu: fix link error for !PM_SLEEP

Limonciello, Mario Mario.Limonciello at amd.com
Mon Jul 14 16:52:23 UTC 2025


On 7/14/25 10:49 AM, Mario Limonciello wrote:
> On 7/14/25 10:01 AM, Arnd Bergmann wrote:
>> On Mon, Jul 14, 2025, at 16:59, Limonciello, Mario wrote:
>>> On 7/14/25 3:16 AM, Arnd Bergmann wrote:
>>>> From: Arnd Bergmann <arnd at arndb.de>
>>>>
>>>> When power management is not enabled in the kernel build, the newly
>>>> added hibernation changes cause a link failure:
>>>>
>>>> arm-linux-gnueabi-ld: drivers/gpu/drm/amd/amdgpu/amdgpu_drv.o: in 
>>>> function `amdgpu_pmops_thaw':
>>>> amdgpu_drv.c:(.text+0x1514): undefined reference to 
>>>> `pm_hibernate_is_recovering'
>>>>
>>>> Make the power management code in this driver conditional on
>>>> CONFIG_PM and CONFIG_PM_SLEEP
>>>>
>>>> Fixes: 530694f54dd5 ("drm/amdgpu: do not resume device in thaw for 
>>>> normal hibernation")
>>>> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
>>>
>>> We're going to fix it using this stub instead.
>>>
>>> https://lore.kernel.org/linux-pm/20250712233715.821424-1- 
>>> superm1 at kernel.org/
>>>
>>> It's in drm-misc-next as of this weekend and it should show up in
>>> linux-next in the next day or two.
>>
>> That patch makes sense as well, but I think mine is useful as an
>> improvement even if it doesn't address a link failure but only
>> reduces the object size by reducing the amount of dead code.
>>
>>        Arnd
> 
> Thanks for pointing it out.  You're right.  I'll get it picked up.
> 
> Reviewed-by: Mario Limonciello <mario.limonciello at amd.com>

The internal AMD CI raised a problem on a dGPU (details below).  I think 
that the diff might be a little overzealous, perhaps on the poweroff() 
callback?

Here is the assertion that got raised.

https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/blob/master/lib/amdgpu/amd_pci_unplug.c#L376

Failed test(s)
==============

igt at amdgpu/amd_pci_unplug at amdgpu_hotunplug_with_exported_bo
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Error message
   -------------
Starting subtest: amdgpu_hotunplug_with_exported_bo
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Test assertion 
failure function amdgpu_hotunplug_with_exported_bo, file 
../lib/amdgpu/amd_pci_unplug.c:344:
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Failed assertion: r 
== 1
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Last errno: 2, No 
such file or directory
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: error: 0 != 1
Subtest amdgpu_hotunplug_with_exported_bo failed.
**** DEBUG ****
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Test assertion 
failure function amdgpu_hotunplug_with_exported_bo, file 
../lib/amdgpu/amd_pci_unplug.c:344:
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Failed assertion: r 
== 1
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: Last errno: 2, No 
such file or directory
(amd_pci_unplug:981) amdgpu/amd_pci_unplug-CRITICAL: error: 0 != 1
(amd_pci_unplug:981) igt_core-INFO: Stack trace:
(amd_pci_unplug:981) igt_core-INFO:   #0 ../lib/igt_core.c:2075 
__igt_fail_assert()
(amd_pci_unplug:981) igt_core-INFO:   #1 
../lib/amdgpu/amd_pci_unplug.c:377 amdgpu_hotunplug_with_exported_bo()
(amd_pci_unplug:981) igt_core-INFO:   #2 
../tests/amdgpu/amd_pci_unplug.c:50 __igt_unique____real_main34()
(amd_pci_unplug:981) igt_core-INFO:   #3 
../tests/amdgpu/amd_pci_unplug.c:34 main()
(amd_pci_unplug:981) igt_core-INFO:   #4 
../sysdeps/nptl/libc_start_call_main.h:58 __libc_start_call_main()
(amd_pci_unplug:981) igt_core-INFO:   #5 ../csu/libc-start.c:128 
__libc_start_main@@GLIBC_2.34()
(amd_pci_unplug:981) igt_core-INFO:   #6 [_start+0x25]
****  END  ****
Subtest amdgpu_hotunplug_with_exported_bo: FAIL (0.033s)


   Dmesg output
   ------------
<6> [701.429516] [IGT] amd_pci_unplug: executing
<6> [701.434258] [IGT] amd_pci_unplug: starting subtest 
amdgpu_hotunplug_with_exported_bo
<6> [701.475508] [IGT] amd_pci_unplug: finished subtest 
amdgpu_hotunplug_with_exported_bo, FAIL
<6> [701.483839] [IGT] amd_pci_unplug: exiting, ret=98


More information about the dri-devel mailing list