I use my Dell XPS 9500 laptop each day for work, it’s connected to a Dell WD19TB Thunderbolt Dock
I power off my laptop (Dell XPS 9500) at the end of the day systemctl poweroff
But here’s the problem, for some reason when I power on my laptop it will power cycle when it reaches SDDM.
When it reboots it recognises the thunderbolt is connected, since it uses the monitors, and keyboard that are connected to the dock. However, it will say the AC Power isn’t connected. Even when I check the BOIS itself it’ll show AC Power as not connected (when it usually shows 130W).
To get it to recognise that it’s powered, I have to boot all the way into my window manager (hyprland), and then power off again (it doesn’t work if I shutdown at SDDM).
I tried looking at the journal to see if anything was logged there about the first boot crash, but found nothing.
Stupid things to check: does power-cycling the Thunderbolt dock (disconnecting from both laptop and power) instead of shutting down from logged in does anything? Is precisely power off required, or does hot reboot work as well? How you shut down from Hyprland and from SDDM, and is behaviour the same if you open a different VT, log in in text mode, and shutdown with systemctl poweroff from there? Apparently powering off for 5 seconds does not trigger the powercycle-on-SDDM, and a full night does; can you easily try 1 hour or something like that? Do you power down the power strip feeding the dock when you power off the things for the night?
Left it turned off for the evening, I booted it just now but the problem didn’t happen. So I’ll test the other things out tomorrow morning.
Also during the first boot that crashes, I can go into the BIOS and see the dock is detected and has 130W. So I don’t think the dock itself is causing the crash, I think the crash is causing the thunderbolt authentication or handshake to be locked somehow. So it’s a symptom, though I’ll still test the power cycle of the dock
Yesterday I went and used fwupdmgr to update the dock to see if that would help.
I booted up today with the dock unplugged and it didn’t crash. Though I had to use a TTY to login, since SDDM was configured to only use my external monitor.
So either
Something that was updated with fwupdmgr was the cause
Using the TTY and manually launching hyprland bypassed the problem
The dock not being plugged in bypassed the problem
I got lucky
It doesn’t help that I don’t have a consistent way to test changes other than waiting for the next day
I don’t have another dock to try, and the Dell AC Power loss page sadly isn’t the same issue, since when I plug the dock back in all the devices attached to the dock work, just not the AC Power.
So it just crashed (turned off, and rebooted) while I was using it, inside hyprland I was just watching a YouTube video
AC Power is not detected, I tried unplugging the dock and unpowering the dock. But that didn’t help. I even tried plugging in just the USB-C power cable to the laptop without the dock. But even that doesn’t charge.
Checking sudo dmesg I can see there lines appear when plugging in my USB-C AC Power cable. (same lines appear in the journal, no extra lines there).
Most of the time I get the crash before logging in, so hyprland isn’t even called
I might try removing the Nvidia drivers, so that the device just uses the Intel integrated GPU to see if the issue persists
I have used ly and cosmic-greeter for a while and I had crashes that had the same effect when using them. So I assume it’s the same crash.
If I can’t find more paths to try I’ll try the minimal config, though I’m reluctant since I use this device for work, so don’t want to have none of my tooling for that. Maybe I’ll try it on the weekend.
I just made the BIOS changes the first link mentions (to disable C-state), since that sounds plausible that it’s changing power modes and causing this
I stupidly didn’t check many Dell based forums as I thought it was a Linux issue, as I didn’t have the problem while on Windows (though my laptop sat on a shelf for a couple years since then)
Powered on today with dock plugged in.
Crashed twice in a row as soon as I reached SDDM this morning.
Had to power off, unplug the dock, and disconnect the dock from power to start charging again.
So C-state wasn’t the solution
I’ll try again without the dock plugged in during boot, since I’ve updated SDDM to use all monitors so I can use it without bypassing to a TTY
I wonder if setting up live export of dmesg to another machine could be an option, if it is power-cycling, sometimes kernel prints suspicious messages when things start to go badly, but there is no time to sync them to the log… (ssh brokkr dmesg -w from a different device might be a good first thing to try in the sense of low cost moderate chance, of course, if means needing to enable SSH and then trying to hit the time window when SSH is up but graphical session launch has not yet caused a reboot)