[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d2de07ae-9558-41e8-a0d3-ae46bbaa19de@amd.com>
Date: Mon, 14 Jul 2025 16:52:23 +0000
From: "Limonciello, Mario" <Mario.Limonciello@....com>
To: Arnd Bergmann <arnd@...db.de>, Arnd Bergmann <arnd@...nel.org>, "Ho,
Kenny" <Kenny.Ho@....com>
CC: "Olsak, Marek" <Marek.Olsak@....com>, "amd-gfx@...ts.freedesktop.org"
<amd-gfx@...ts.freedesktop.org>, "dri-devel@...ts.freedesktop.org"
<dri-devel@...ts.freedesktop.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>, "Deucher, Alexander"
<Alexander.Deucher@....com>, "Koenig, Christian" <Christian.Koenig@....com>,
Dave Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>, "Lazar,
Lijo" <Lijo.Lazar@....com>, "Zhang, GuoQing (Sam)" <GuoQing.Zhang@....com>
Subject: Re: [PATCH] drm/amdgpu: fix link error for !PM_SLEEP
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@...db.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@...db.de>
>>>
>>> We're going to fix it using this stub instead.
>>>
>>> https://lore.kernel.org/linux-pm/20250712233715.821424-1-
>>> superm1@...nel.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@....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@...gpu/amd_pci_unplug@...gpu_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
Powered by blists - more mailing lists