Hacker News new | past | comments | ask | show | jobs | submit login

That is a very good point. I would go even further and say that Canonical, too, shouldn't have to apply patches. That's upstream kernel's job.

But here's the rub - on some hardware enabling SATA PM can sometimes lead to various weird bugs - from failure to boot to crash with blank screen after few hours of working perfectly. And Intel would't release any sort of documentation that sheds any light on why that is the case, and what should be done to avoid it. Intel does know what to do, since (sic) Intel's storage drivers do the right thing on Windows.

Which brings us to even stranger point: Intel apparently doesn't share this documentation with Microsoft either. Hence new laptops with pre-installed Windows ship with Intel's storage drivers, while installing vanilla Windows 10 with Microsoft's storage drivers will give you as bad a battery life, as you get under Linux. This is an issue important enough that some laptop vendors employ hardware tricks to make storage hardware "invisible" for normal Microsoft's drivers for no good purpose other than to enable Intel's driver take over this hardware smoothly. See for example recent "Lenovo fake RAID" debacle:


There is a patch to make the nvme drive last a bit longer mentioned on the arch wiki (I've not tried it yet, tbh):



That is not quite the same thing. Andy's NVMe patches allow drive itself to go into deeper power-saving states, while discussion above was about power-management of SATA controller which is part of PCH (earlier known as northbridge), which in turn, on last 3 generations of Intel CPUs is integrated into the same die as CPU itself.

Unpleasant side-effect of SATA (or NVMe) controller being integrated onto the CPU die is that it now shares a power domain with the rest of the chip (i.e. PM being present or absent on SATA controller affects allowed set of C-states for the whole package). In other words, as long as SATA controller don't go into deep sleep (i.e. never - without power management enabled), whole CPU+PCH package would not go to deeper C-state. Thus, lack of PM in storage controller has disproportionately high effect on the total system power consumption.

Thanks that is very informative (as is your followup comment). And also it is kind of depressing; are there vendors more open or does that just not happen?

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact