Microsoft Is Forcing Me to Buy MacBooks
youtube.com
youtube.com
I don't run around enough to care about quick/instant startup. Despite using the Windows 10 Windows menu Power command to "Shut down" my Thinkpad X1C6, I took it out of its bag the following day, on a few not too infrequent occasions, to find it warm and "doing stuff" (Windows Update sticks in my mind). Moreso than a lowered charge, the idea of it cooking itself inside its padded sleeve and bag caused me concern.
After a bit of investigation, I settled on training myself to always open/use a command window to issue "shutdown /s".
No more warm or hot, drained laptop since then.
I agree with Linus: Microsoft's behavior and indifference WRT this problem is reprehensible. For me, it is another example of how Microsoft has not -- fundamentally -- changed since its E3 days. The 900 pound gorilla that we will, per force, accommodate. Amazing how entrenched such cultural mindsets are.
By the way, the X1C6 as configured by Lenovo does not support S3. Since Linus, in his demo of a possible BIOS configuration change, was using a Thinkpad, maybe I'll get lucky with that option -- watch the video to see whether you might have such a fix for your system.
Okay, I'll bite. Care to expand? What behavior, and why is it bad? Why should users not expect a "suspend" state to work (more or less) as advertised?
edit: Or are you arguing that the only "correct" states are running and complete shutdown? Why would that be preferred?
If I open my laptop within 24hrs then it is already ready by the time I finish opening the lid. This immediacy means I don’t lose my train of thought (ie; the reason I grabbed my laptop in the first place).
I’m a hard Linux lover, and begrudgingly use a MacBook, but sleep has a lot of value, and the Mac stuff seems to work a lot more consistently than what windows is offering. (Linux too, in a number of circumstances: though my old precision 5520 never had an issue with suspend)
This is all described towards the end of the video, for those who don't want to watch the whole ~11 minute thing.
P.S. I should clarify that it works just fine with Windows settings hackery that was being used prior to BIOS implementors disabling or eliminating S3 in their BIOS's.
It's a real crapshoot whether the dock will properly or fully connect upon cold startup or reboot. Sometimes everything is dead. Sometimes the monitors get signal but Ethernet and the mouse are down. Sometimes only the mouse is down; very occasionally, only Ethernet is down.
About a year ago, I spent multiple hours on the phone in a looong call with a CalDigit support rep. Essentially, we used my system to troubleshoot. We never solved the problem.
With time and observation, I've learned it's best to cold boot (with power connected, my daily work configuration) with this CalDigit Thunderbolt dock physically disconnected. After Windows has booted and gotten to its desktop, I then wait 90 - 100 seconds or a bit longer before I plug in the dock. Doing this, my success at having everything come up working is 50% or even a bit more.
If dock isn't fully functional, repeated warm rebooting is not too likely to correct this. The best bet is to hard shutdown, maybe wait a bit for whatever capacitors to discharge, and then start the above procedure over.
The CalDigit rep thought it was maybe the Thunderbolt support/configuration in my X1C6 that was/is to blame, but I have since formed the impression that Thunderbolt, for all its vaunted power, is actually kind of a shitshow.
The X1C6 did initially have a problem: It rewrote its Thunderbolt configuration upon every boot, into a kind of physically memory not designed to have a lifespan of that many writes. About a year, as I understand it, was what it took for many users to start having problems. Lenovo did eventually ship a firmware update to stop this behavior, and through circumstances I'll skip I ended up de facto avoiding the problem. My point in mentioning this being, maybe the X1C6's Thunderbolt support is still/also borked in some manner that causes my problem with the CalDigit dock.
But, I'm not too convinced of this. And I suspect CalDigit is using the same chipset that many other brands are using for similar docks.
For all the premium they charge for it, Thunderbolt designers/implementors should... be induced to provide a better result. IMHO.
Heh, that's such a Lenovo problem. I hard bricked my old ThinkPad W520 four times (and got warranty replacements) just by hitting F12 to bring up the BIOS boot menu. It did some sort of write that wore out the BIOS flash chip. I don't think they ever fixed that problem.
I hadn't heard of this problem, so thanks for the heads up! I'll be very planful and sparing in my BIOS config access/writes.
I think CoreBoot has made it to some if not all of the -20 series. I wonder whether it would make any difference, although I can't see how if you're still writing to that storage.
The speed and reliability with which a Mac sleeps and wakes and how well it maintains battery is insanely good. My Windows laptop was more like a portable desktop, as I always had to plug it in and would walk around with the lid open rather than risk a sleep/wake attempt between meetings.
Also I have had this issue with Macbook Pro 15 (2019), so it can't be guaranteed every-time for any OS I guess; not sure of the reason though. To me closing the lid should take preference over everything.
My previous, older Mac wouldn't sleep at all for more than a few seconds unless I unplugged the external monitor.
The "modern standby" feature on macs is called power nap: https://support.apple.com/en-ie/guide/mac-help/mh40773/mac
It already has different behavior depending on whether it's on battery or mains.
You can turn it off but it's not the option that Linus mentioned. It's elsewhere: https://support.apple.com/en-ie/guide/mac-help/mh40774/mac
On Apple Silicon Macs, the machine is never going into that deep a sleep to wake up from (it's basically a huge iPhone, remember?) and Wake for network access is not for Wake on LAN but rather if you want it to keep WiFi running to get push notifications etc while in "sleep" (the description under it in Settings even says it's for iMessage and iCloud updates).
Marcan has talked about Apple Silicon sleep states wrt to implementing it in Asahi Linux and IIRC they never put the machine to sleep, they just stop all the processes and hardware like the display and let the CPU idle normally (which it's extremely efficient at)
The solution to this is to install noclamshell via brew or just get in the habit of disconnecting your mac first before closing the lid.
I noticed this because previously it was sleeping completly fine and the problems started only recently which is inline then I started using the dock.
shutdown /s /f /t 0
or in PowerShell: Stop-Computer -ForceFor myself, I prefer not to force application closures. If something's stuck, I'd rather look into it and avoid potential data loss. I'm seldom in that much of a hurry, these days (but I understand others can be).
For anyone who's curious:
shutdown:
https://learn.microsoft.com/en-us/windows-server/administrat...
Stop-Computer:
https://learn.microsoft.com/en-us/powershell/module/microsof...
Someone in Microsoft has a KPI related to the percentage of machines updated with the latest patches every month.
He or she can best meet their KPIs at the low, low cost of the occasional destroyed laptop, fire, or -- very rare -- customer death.
People just have to accept the risk of burning to death so that this person can meet their KPIs by forcefully updating laptops even if they're hibernating, in a laptop bag, and in the cargo hold of an airliner.
Those passengers knew what they were signing up for when they boarded that plane together with a Windows user.
The good thing is, once a fix for this is pushed, even laptops in cargo holds will get it. Win win!
With millions of users it's less likely to be rare. As tragic as it sounds, Microsoft likely won't brought to heel until it too experiences a Boeing 737MAX-type incident of its own making.
Such is the arrogance of those who run Microsoft.
"PS: one would hope that this bad unsafe design would already be under investigation by various safety regulators/authorities. Perhaps this story may awaken them."
Save to to swap and hibernate (turn all the way off) on lid close.
It's like 8 seconds longer to boot back up - but It uses no battery and produces no heat.
Crazy how fast machines boot these days. I'm low 30s and still vividly remember the days of waiting 3 to 5 minutes for a machine to come up. Those days are gone - The value proposition of sleep is just really, really low right now.
Generally speaking - I'd rather have the extra 10% battery life per day over saving 15 seconds basically always - even when sleep works perfectly.
I can leave a machine for 5 to 10 days, and it comes right back up at the same battery I left it. A machine in sleep will be completely dead.
There was one really obscure docking station problem which was the real last straw.
I think it was a Dell which updated itself while docked.
After that update, the laptop would not work undocked.
Reinstalling was of no use as every update would reinstall the same problem.
Moved to Intel MacBooks and Bootcamp. I don't remember when I last needed anything Windows specific.
Docs:
https://www.freedesktop.org/software/systemd/man/systemd-sle...
https://www.freedesktop.org/software/systemd/man/systemd-sus...
- unnecessary disk writes (for the times you slept only for a short time)
- keeps using battery until power runs out (rather than after some interval or at some non-zero battery level)
What?! How could this be??!
God that's annoying as hell. Apparently the Systemd dev who added this functionality intended it for a different use case than mine or yours. They revised their implementation to better serve their original purpose without realizing it broke our (mis)use of their feature.
For convenience for anyone running a sufficiently bleeding edge distro to have this very latest release already, here's a direct link to a comment with a configuration workaround which restores the old behavior: https://github.com/systemd/systemd/issues/25269#issuecomment...
And here's the PR for the formal fix, which combines the old behavior (new config value name, read carefully) with that new 5% emergency fallback behavior, for folks who want to patch it themselves:
https://github.com/systemd/systemd/pull/25374
It's not merged yet but maintainers have approved it for merging with a few comments on config value names, so it should be safe to add as a patch.
Person A reports that he wants to hibernate after being suspended for 30 minutes, and that it used to work and is now broken. Person B doesn’t understand why, so asks why 30 minutes and not 4 hours? Person A thinks Person B is judging them for their personal preferences, and says that they chose 30 minutes because they like it. Person B then deduces that Person A is an idiot who thinks that the systemd default behavior should be determined Person A’s personal preferences.
What Person A really wants is to pull their laptop out in the morning and have it still be at 90% charge instead of 5% (or 0%!) charge. Given no other configuration options, they chose to have it hibernate after 30 minutes. They would not choose to configure the delay to 4 hours because then the battery would be a lower the next morning.
Then Person C comes along and tries to correct the misunderstandings by suggesting that there’s no reason why it cannot do both at the same time. Person B is still focused on improving safety, and still sees the configurable time as unsafe (because someone might configure it for longer than their battery can last), and misunderstands Person C. Person C has to return and reexplain, with amplification from Person D, that the default behavior should be to hibernate when the battery is low for safety, but also to hibernate at the expiration of the timer, if the timer fires first. This would satisfy everyone, even the weirdos who want their battery to stay charged when they’re not using their laptop.
Person B finally understands and says that would be fine. Elapsed time? 6.5 excruciating days, plus two more days for Person E to push a patch.
Then Persons F, G, H, I and J chime in to add their own amplifying explanations, congratulations, thanks, etc. Even I wanted to re–explain it to Person B.
Perhaps projects should have policies and codes of conduct that protect them against this type of harmful behavior.
Edit: note also that there were _two_ harmful misunderstandings here: Person B misunderstood Person A, but Person A also misunderstood Person B’s question. A Code of Conduct is not going to help.
Like when B highlights that this change in suspend behavior was not only documented but '6 months of work', it kinda seems like they were defensive or irritated because they felt like their hard work to implement a useful feature was being discounted. If they felt like that work was recognized, they might have been less defensive about defending the original idea for their future and more curious about why the bug reporter wanted the behavior they wanted.
Same thing for Person A; if they had been less inclined to read Person B's question as critical, they might have explained themselves more completely earlier on.
A code of conduct treated as a rulebook to cite against people would definitely not help, but a skilled moderator pointing to a policy that encourages people to slow down, listen, be curious, or to a shared statement of values that makes people feel relaxed and safe, or to something that evokes pride in their shared participation in the project... that could have gotten this resolved more quickly.
Some projects have maintainers/authors whose kindness, deliberateness, or thoughtfulness seems to flow downstream to later contributors as a norm. Something like a code of conduct could serve in part just to encode that explicitly as a community aspiration.
But yeah you can't just say that being confusing, confused, frustrated, or frustrating is g allowed lol
My experience is that something like 25% percent of the people who run open source projects are just "like this" and there's nothing you can do about it. If you end up forced to deal with them because there aren't other contributors who can step in, or because they're the BDFL of the project, your best bet is just to move on and/or fork it to do what you need. I have probably half a dozen soft forks I maintain myself because the project leads are impossible to work with for exactly this reason.
This isn't about open source explicitly, to be clear. It's just more obvious and visible when it's happening because there's often 1:1 contact on bug trackers. Likewise, it obviously doesn't excuse shitty entitled behavior from issue reporters, of which there is plenty. I'm only making a comment about what I've observed from developers.
These people have no idea how to build products and have never read anything on the subject.
https://www.youtube.com/watch?v=wjyrfAK6Ib4
It's also mediated substantially by firmware, which is apparent if you examine the resume time of an Intel laptop running Coreboot instead of the chipset manufacturer's original firmware:
https://www.youtube.com/watch?v=vxNalLoFclU
Resume from suspend is at about 06:15, and looks like about half as much time (between 1 and 2 seconds) as the Intel MacBook Pro's resume time in the previous video (2-4 seconds).
And strictly speaking, macOS actually turns on kinda slowly compared to other desktop operating systems. It's one of the first things I notice whenever I start spending time on a Mac again! Here's one comparison, for example, on identical hardware:
https://www.youtube.com/watch?v=6UXCreX57H8
And this is still true today in comparable laptops with fast SSDs, even with the Mx chips:
https://www.youtube.com/watch?v=xsioUHMxCsw
(And none of that matters relative to what you quoted, because 'sleeping, then hibernating after a bit' is indeed the same behavior, whether your firmware handles the hardware wakeup part of the process quickly or slowly.)
In one case, the BIOS screen that prevented booting was a warning screen that comes up when the laptop is attached to a charger that supplies less than 90W (!) ... for example, the charger built into the USB-C external monitor it was connected to. That's funny, I thought ... my MacBook can boot when it's not even connected to any charger at all! Actually, the Alienware will boot without a charger also, but complains self-righteously when connected to a 60W charger. Eventually I found a BIOS setting that appears to disable this behavior.
In another case, there was an unrelated BIOS warning screen. I forget now what it was, but on a second attempt the reboot completed without any warning.
Both cases resulted in a disturbingly hot computer.
I could not find a way to disable automatic Windows updates.
Windows update triggered while the laptop was sleeping, went to BIOS where the device ran full throttle, and I’d find it just sitting there while being scalding hot.
That was the last windows laptop I bothered owning. Other than maybe the ThinkPad line, the XPS line was the closest I could get to a MacBook Pro in build quality, yet I had tons of other issues like audio buzzing, swelling batteries, trackpad issues and just generally, a very plastic build quality.
The one thing I do really miss though is the touch screen. I know it’s divisive but there’s something just nice in being able to touch the thing I want vs navigating to it via a proxy device.
Because for whatever inexplicable reason, they've gotten it into their heads that laptops need to achieve feature parity with smartphones. Smartphones get to be always-on, so laptops apparently need to as well.
It's completely ridiculous, and I'm quite upset at Microsoft for continually trying to destroy the PC ecosystem in new and creative ways.
I mean, we're discussing this because they are forcing S0ix; the question is whether this resulted in fewer buggy implementations, which I doubt.
It wasn't always like this. We still use an iPad 2 and 4 for CC processing and they don't need to be charged for 2-3 months at a time!!! It is definitely on newer devices. I have a Yoga 1 that i can have in sleep for almost a month and I can still have it turn on with some percentage of battery i can do a few things.
What Microsoft and everyone else it seems, is doing is maddening, the batteries are getting worst, and you simply cannot just rely on a device to be usable anymore without being next to a power outlet and probably even waiting 15minutes before they can even power up.
I actually built two Shortcuts to simultaneously toggle low power mode and all wireless connectivity. I have an older iPad I use for videos and podcasts while exercising that lasts over a week by using those, with zero power usage in between sessions.
My hypothesis is that the Mini still runs iOS, and the Pro runs iPadOS. I think I started noticing the Pro standby battery drain after "upgrading" the Pro to iPadOS, whenever that came out.
The way it works is that the Bluetooth and GPS stacks are powered on every few seconds briefly, even if the device is supposedly off.
iPhones that have "home" buttons demonstrates this not-true-sleep very well. The button looks like it is embedded in the front glass and have a nice satisfying click when it's depressed...
...except that it's not a button at all. It's just a polished circular indent in the glass! There is no moving part.
The click? That's haptic feedback from the vibration motor that works even if the phone is "off". If the phone loses all power or is truly turned off, then suddenly the button goes dead and you realise that it's just smooth glass. I had that phone for years before I first noticed this.
I find that having an Apple Pencil 2 snapped on the side makes the iPad drain its battery.
I hate Modern Standby with a passion and I wish it a painful death.
Maybe I'm just old. It feels like I've totally lost touch with the way most people use computers today. (Not necessarily in a bad way.)
I'm not saying that suspend isn't a useful feature, but given that it doesn't work I'm not sure why people keep using it.
[0] https://www.macworld.com/article/675859/should-i-shut-down-m...
With my work laptop, I shutdown by 5pm, as I don’t mind booting and opening everything in the next day.
But for my personal laptop, there isn’t a defined use time. Sometimes I just want to check something for 15 minutes, so 2 minutes to boot and open apps is way to long. I don’t want to keep the laptop fully running the whole day while I’m not using it, it should just go into a power saving mode. And I would expect for the laptop to hold the battery and state meanwhile.
The human is supposed to own and control the tool so he can use it to perform tasks.
If the human wants to use the tool to perform a task and the tool says "sorry, I don't feel like doing that right now, I decided to do something else, tough luck", then the human does not control the tool, the tool controls the human.
You should think about what users want, not just what YOU want. Most users want security and convenience. They therefore WANT auto-updates and they are entirely OKAY with making the tradeoff that entails. YOU may not like it, but you don't get to stop things from working a certain way because you disagree with the average user.
TL;DR: Your own argument defeats itself. Computers are a tool, and users are choosing the best tool for the job. End of story.
What jumps to mind is macOS’s Disk Utilities app.
It's even sillier when using a dock with the lid closed: unplug, open lid until screen wakes, then close lid.
The real shame here is that the supply chain seems to be moving away from supporting S3, as the video notes, with hardware (CPU or motherboard) and firmware support disappearing in newer models.
WTF Microsoft.
- or to be remotely logged on to and operated, without your knowing.
A computer system that is on and connected the internet while you thought it was turned off, is IMO an attack vector.
Being in Linux, issuing a reboot, picking Windows instead of Linux in GRUB and booting Windows takes less than 20 seconds.
The argument that people "suspend" or "hibernate" or "close the lid" or whatever because Windows takes "too long to boot" makes zero sense.
Just turn the fucking computer off. Windows boots in no time nowadays.
I hate Windows. I really do. It's a mediocre piece of turd. Every time I need to help a relative with their Windows issue I'm reminded how much of a turd it is.
But it's not slow to boot.
Turning the machine off means I need to re-open all my shit again. That's annoying.
- Switching away from an M1 MacBook because they can't stand macOS.
- Happy with Windows or Linux from past experience.
- Close lid, put in bag is an important workflow.
- Something reasonably modern and capable would be nice, but doesn't need to be a powerhouse (don't need current gen CPU necessarily, don't need discrete graphics).
Does anything on the market actually have reliable power management? I've been looking at the Dell XPS range, Lenovo Yoga, X1 Carbon, and Framework laptops today. But I can find power management horror stories for all of them, so I don't know what to think.
If I can't stand MacOS for whatever reason, I can wait for asahilinux to modernize. If I had bought another intel leafblower, it would have still been a jet engine under linux.
I can't go back to the craziness of chasing on horseback with a lasso the power user features and how/where windows moved/removed/unset them on every update.
Just the other day Carmack was complaining about Google GPUs - will anything happen? At least there is a chance, unlike if thousands of other developers listed their grievances.
[0] No offense to Linus, but he is not Beyonce.
Modern standby is absolutely useless in the best case. And devastating to usability in the worst. Just nuke it, go back to normal sleep. Or at least give an option to users!
With that in mind it's not too surprising that a display firmware update fixed your problem.
Might as well call it a hardware revision instead of a firmware version.
It's a little disconcerting, and I wonder what hope there is for user empowerment in the future? There's just so many layers in the stack, and users have high expectations about what capabilities they want from devices.
I often envision a low-tech alternative, where everything is as simple as required. Where devices are tools, and not distractions. And we can still do everything which is necessary with them.
The walled-garden effect makes it impractical to even design an alternative, because homebrew devices aren't supported by our institutions. The APIs aren't open.
The solution is increasingly to remove devices from life, and incrementally introduce only those that are necessary. But complex and user-hostile devices are becoming the standard for what is required to interact with banks, government, and other important institutions.
Does anyone see a possible out here?
"There are only two possibilities. Either the user controls the computer or the computer controls the user" - Richard Stallman
One of the first things I noticed was after I closed the lid to suspend on a full battery, walked 20 minutes to the library intending to work there and opened it to find the battery down to 80% already!
Not a great start. As the lid settings are to sleep on closing the lid when on battery, I figured out the same idea as the article: Unplug power and external display first, wait a bit, then close the lid.
I thought that was working, but after enough tries doing that, only to find it stayijg hot for hours in my bag, I'm confident the unplug-then-sleep method is unreliable.
I've tried going to the Start menu's power icon and clicking 'sleep". That often doesn't work. It turns things off, eventually, but the fan keeps going and it stays hot about half the time. Sometimes it doesn't even bother pretending, and the power light stays on.
I've tried to change the lid settings to Hibernate. Not available: Lid settings are set by remote policy, not user configurable except by local admin access to override policy, which I don't have.
Under the Start menu's power icon there is no Hibernate option, of course.
Doing "powercfg /a" as in the video, I see S1, S2, S3 and Hybrid Sleep are all "does not support". I'm reluctant to change BIOS settings on a work laptop managed remotely with a strict security policy.
It seems I'm doomed to take the laptop out in the library and coffee shops and find it drained and very hot sometimes, even if I charged it before going out. But unpredictably.
So I haven't found a reliable way to make this Dell laptop sleep yet. Hibernate and S3 are unavailable. I suspect Shut Down might be the only option, but it's a bit drastic and I'm not confident even that will always work.
M1 macs also do something when sleeping, whatever that is, although they don't lose enough power for it to be a problem. The only reason I notice is that for some reason it sometimes connects to my 2.4GHz Wifi, which I then notice because it interferes with my bluetooth trackpad on another computer... That being said, I've also noticed that M1 macs lose more battery while sleeping than intel macs did.
That would be the 'Power Nap' setting that allows it to occasionally wake briefly for background service updates.
After more than a year of the machine being out they finally fixed that firmware bug, but it still doesn’t quite work as I expect (now I think I’m on to some of Window’s quirks). Just things like it still being on after a day of not being used when it should have gone to sleep and things like that. It just doesn’t work like I expect it should, whereas my Macs tend to just do what they’re meant to.
Yeah, you only think that until you have your first Intel motherboard/computer. They might not be the worst at it, but they're pretty bad. I'd probably rather have an ECS board than an Intel board.
> but no, the thing would literally just die when it was meant to go to sleep or hibernate, and wouldn’t wake up despite being in a semi-on state.
Sleep definitely requires a cooperative firmware, but hibernate should work regardless of firmware (although windows was doing hibernate + sleep for a while). If it can turn off, it should be able to hibernate.
“fixed” it by making it hibernate instead which kinda sucks.
Power conservation during non-use stage is paramount for us users who travel or have limited power available.
Looks like our next laptop is going to be an AMD or ARM laptop with BIOS having configurable S3 support.
And non-UEFI and non-ME (no management engine) too!
Absolutely maddening to hear that not only is this not an isolated issue, but it's also still not fixed (and apparently getting worse?).
Somehow, me manually putting it to sleep (through Start menu or with the sleep button) is safer (not 100% though), so my current solution is to set the Screen-off and Sleep timers to 166,000 hours (disabling or setting to zero didn't work) and also only close the lid when the laptop is (supposedly) fully off.
It's a used Asus that I bought off eBay, so I'm not too invested in figuring it out... but it is annoying.
Curious as to what this means.
We've also had Lenovo USB-C cables fail, and Lenovo docks fry themselves.
This. At least I'm not alone. It's not rocket science.
The functionality is there. If resume from suspend breaks 3 times in a row, disable, enable hibernate.
If working, after 30 mins suspend, awake, do hibernate.
If fails 3 times, always use hybrid suspend.
If this functionality does not exist is because resources are being misallocated.
If they don't want to support suspend: REMOVE the option.