I had a couple of similar problem under Linux, but I believe these are purely software issues and thus unrelated to the windows ones. and also not specific to Dell AFAIK.
1. Linux kernel "mem-sleep" mode default [0], which determines what actually happens when systemd-sleep "suspend" is called. The default value is "s2idle" for many distros which is as good as leaving your computer running with processes paused... when what most users expect is some kind of suspend-to-ram ("deep"). Obviously this burns through battery pretty quickly but at least it shouldn't overheat.
2. I found this systemd infinite hybernate loop bug [1] (now fixed) when swap is smaller than RAM... although you only would come across this is you accidentally under-provisioned the swap partition on install like I did - but the failure mode was spectacularly bad, because it will retry over and over swapping and compressing the RAM which obviously ramps up the CPU, get hot with the lid closed, make short work of battery and SSD.
Anyway the common issue is #1 which you just have to know about otherwise your computer doesn't really suspend at all, and since most machines are very quiet these days you won't notice unless you dig.
It pains me that there's still no comprehensive user docs for kernel features. Everything from hybrid graphics to power-saving to cpu frequency scaling keeps changing from kernel to kernel, and you need a PhD in kernel hacking to know how to use any feature of a specific kernel. I've searched forums for weeks trying to gleam enough information to just get a graphics card to work.
I'm still having an issue where double-finger-touchpad-scrolling causes my X server to core dump, and I can't force the X server to actually dump a core file, because I can't run `ulimit` before the X server runs. You're kind of just shit out of luck as a Linux user.
It is, the problem is you need to explicitly set it.
The default behaviour is unintuitive to most people and often they are not even aware it's not doing what they expect. This is the problem, not that it doesn't work, but that it doesn't work by default.
From my experience, it is the wake timers in some apps that abuses it. I recalled it is one of the function that use the wake timers. To find this out, open the cmd/PS/WT and type:
powercfg -lastwake
This will tell you which action or hardware initiated the wake. It should provide enough clue of the offending software. Also the wakes are recorded in the log, you would be able to pull up the event viewer to find the lists of the offending software that abuses this. There is a event ID for it which you can use to track this down, I couldn't remember the number.
Edit: Here the guide for finding this in the event viewer.[0]
> On occasion, the system stays in the active mode (with the screen off) for a longer interval of time. These longer active intervals occur for a variety of reasons, for example, processing incoming email or downloading critical Windows updates.
I am under the impression that this was a more general Windows issue. Does someone else have more information?