Hard lock with External GPU on sleep/wake cycle
Brief summary of the problem:
My current device is a Lenovo Legion Go with an external GPU (egpu) connected over USB 4. My external GPU is a Onexgpu (7600M XT).
My Legion Go hard locks when I have the egpu connected on a sleep/wake cycle. When my Legion Go hard locks, it refuses to turn on and a hard reset via holding the power button and turning it on is required. This is intermittent/flaky as I am sometimes able to succesfully do a full sleep/wake cycle.
Hardware description:
- CPU: AMD Z1 Extreme
- GPU:
67:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 33 [Radeon RX 7600/7600 XT/7600M XT/7600S/7700S / PRO W7600] [1002:7480] (rev c7)
c2:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev 04)
- System Memory: 32GB
- Display(s): Built-in Display
- Type of Display Connection: Built-in Display
System information:
- Distro name and Version: Bazzite (Fedora Kinoite)
- Kernel version:
Linux kishor-legion 6.11.2-201.fsync.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Oct 9 21:38:54 UTC 2024 x86_64 GNU/Linux
- Custom kernel :N/A
- AMD official driver version: N/A
How to reproduce the issue:
When I put my Legion Go to sleep, I have the following hardware setup:
- the device is succesfully put to sleep with the egpu connected
- the device goes to sleep and the power LED blinks/fades white indicating that's asleep
- the device screen is black
- the Onexgpu fans turn off
When I attempt to wake the device up:
- the device fails to turn on
- the built-in screen turns on and thens turns off (flashes)
- the built-in screen remains turned off (no backlight)
- the fans ramp up and remain on
- power LED continues to flash/blink white (indicating that it still asleep)
- egpu lights turn on
- egpu fans turn on
Attached files:
Screenshots/video files
Video: 6aW1Vbx
Log files (for system lockups / game freezes / crashes)
I am unable to grab logs for when the device hard locks. After a hard reset, the previous boot logs are empty, even if I do journalctl -b 1 -k
.
However, I have the following logs are for successful sleep/wake cycles with the egpu connect: egpu_numerous_success.log