Vista SP1 will fix critical ReadyBoost performance bug

Windows Vista SP1 - second comingMore details of the second coming surfaced yesterday when Mary Jo reported a few tips she had received about the upcoming Windows Vista Service Pack 1 beta to be released later this month, including a very basic list of functionality and performance improvements. However a day prior, a Microsoft employee silently outlined a critical flaw in Windows Vista’s ReadyBoost feature and mentioned SP1 would include the fix – a rare occasion under the new Gorbachev Sinofsky administration.

Robert Hensing, a security engineer at Microsoft, wrote on his blog (update: since been removed, Blake Handler has some quotes) about a performance flaw in ReadyBoost which severely hindered the responsiveness after resuming from standby (S3) or hibernate (S4) due to an architectural bug. The problem causes irregular and unnecessary hard-disk thrashing after resume which can take up to 8 minutes to settle down – ironically the outcome is the exact opposite of ReadyBoost‘s purpose to increase responsiveness by caching. The cause is a simple yet stupid oversight in the design of ReadyBoost’s security system which encrypts all cache-data with an AES-128 encryption key, a great idea badly implemented.

ReadyBoostYou see, Vista ‘forgets’ the key after resuming from sleep which invalidates all the ReadyBoost data already held in the memory device forcing it to flush and start over. Yes that’s right, gigabytes worth of good and otherwise usable cache-data which could actually be used to improve system responsiveness, down the drain. Mind you, this is all happening seconds after you’ve opened your lid or pressed the power button, a time when all processor cycles should be focused on getting the system back and running, not wasted to something as stupid as this.

I don’t know how such an obvious oversight can be made by the ReadyBoost team – was resuming never tested? Or was this just something they couldn’t fix in time, if so, how was this ever allowed to ship in the first place? But history aside, it’s a good thing it will be fixed in SP1 along with a batch of other anomalies. I guess now I should join the “need SP1” bandwagon since I actively use ReadyBoost.

It’s interesting to see now that after SP1 has been (informally) announced what the “only-install-Vista-after-SP1 crowd” will think. Are they going to stick to their original cause or move on to “only-install-Vista-after-SP2”. Some people have already moved on to the latter.

And to meet my monthly Sinofsky-quota, “General Secretary Sinofsky, if you seek enthusiasm, if you seek publicity for Microsoft and Windows, if you seek feedback, come here to this gate. Mr. Sinofsky, open this gate. Mr. Sinokfsy, tear down this wall!”

Editorial note: This information was originally spotted by Josh Philips of WindowsConnected.com. However due to work demands he could not write about this sooner. All credits for this extra insight into Vista SP1 should go to Josh.

Update: I’m really surprised the Sinofsky administration has yet to figure out that censorship does not work, which is why Robert Hensing has removed his original post. A summary and quote of his post can be found on Blake Handler’s blog.

Update 2: Robert Hensing’s post has reappeared and it looks like he’s offering a new explanation for the sluggishness during resume from sleep. He’s no longer blaming ReadyBoost as the cause of the problem, however I’m still having resuming problems so I’m not too sure what’s going on just yet.

39 insightful thoughts

  1. Pingback: GottaBeMobile.com
  2. I have to wonder if the reason that they did this was once the computer goes into standby or hibernate mode, you have to assume it’s been removed from the system and then you don’t know what’s happened to it. And then can you assume it’s safe? They’re likely going to add some sort of verification procedure that will match the contents of the drive to the pre-standby state via some sort of hashing operation.

  3. Long, did you get performance improvements with ReadyBoost? Now I realise, that I could use it with a SD card, right? Hmmm….

    Most of the people that think there Vista experience would be better after SP1 forget that SP1 didn’t bring new device drivers.

    Oh and because you linked to an image of the Brandenburg Gate, did someone realised that the Live Earth concert in Germany was in Hamburg but on the website they advertised with the Brandenburg Gate (it’s in Berlin!). Before saving the world we should get to know it first 😉

  4. @tino: Oh absolutely! You can definitely use a SD card. I did and still do get performance (responsiveness) improvements ReadyBoost which is why I still use it day in day out.

    However, as the bug states, resume from standby causes a lot of unnecessary disk thrashing for the time being. But I can live with that for most of the time since I tend to dash off after resuming before coming back minutes later.

  5. “It’s interesting to see now that after SP1 has been (informally) announced what the “only-install-Vista-after-SP1 crowd” will think. Are they going to stick to their original cause or move on to “only-install-Vista-after-SP2″. Some people have already moved on to the latter.”

    The “only install Vista after SP1 crowd” is made up of many people. Yes, there will be “only install Vista After SP2 crowd” people, obviously alot less than the wait for SP1 crowd. People will do what is best for them and their environment.

    Nice wording. “their original cause”. Your wording and the angel pic make your comment seem like you are implying that people waiting for SP1 are similar to some crackpot religious group who believe in the invisible man in the sky who is looking out for them and will solve all of their problems. Nice.

  6. Yikes. I think this issue might escalate, depending on how many people are relying on this. I’ve been annoyed with the resume trashing for half a year now and am amazed it took MS this long to acknowledge it. And seemingly on account of one of its engineers getting annoyed and empowered to investigate, not from the feedback of the customers. How crazy is that?

    As any software lifecycle worker might ask: if they failed to catch a bug this bad, what else did they miss?

  7. BTW, it seems this bug was a feature for users in colder climates. By the time the OS becomes responsive after opening the lid, the toasty heat from the HD is already radiating from the keyboard.

  8. There’s a utility in the ReadyBoost Kit (https://microsoft.mrmpslc.com/windowsvistapartner/resources/ReadyBoostKit.zip) that allows one to create a configuration file for ReadyBoost. It tells ReadyBoost to use a particular cache size when you plug the device in (evne to a new computer). It also has a flag the sets whether the device is removable. Presumably, setting the flag to non-removable tells ReadyBoost to use the old cache data after a S3 resume (the default is for removable, so I guess the cache is discarded).

    I’ve tried setting the flag to non-removable, but ReadyBoost still seems to re-populate the cache after a S3 resume. Perhaps this is the bug that’s going to be fixed? Resume from S4 should always purge the cache since it OS has no way of knowing whether the data is still valid. Or maybe they’re going to add a checksum/hash to the data before going S3/S4 to cater for this (so, not so much a bug as a feature enhancement).

  9. This feature is one of the better features from Vista, for me. Is nice to read they had found that bug!

  10. @DosFreak: I thought you stopped reading this blog already. You’re really going to have to get used to my sarcasm if you continue reading 🙁

  11. Sounds like someone made a design decision for “security reasons” without thinking it through thoroughly. Happens all the time!

  12. It only started thrashing after resume this week… Before that, it was completely fine and FAST. Strange, maybe related to some “fix” :-/

  13. @Long Zheng: yeah, I hope he didn’t actually catch flak from the men in black. Ok everybody, just yank your dongles and move along. (refers to USB dongles, get your mind out of the gutter plz)

  14. @Marco: I think so because SP1 will released when Windows Server 2008 is finished. Both will share the same kernel. But will there be a new Media Center too? Who knows?!

  15. aye. but i wonder how that release will be called because sp1 beta will be released shortly.
    so will that new kernel and maybe the media center be part of sp2?

    im confused now.

  16. I’m just wondering why Microsoft couldn’t distribute a fix for just this issue through Windows Update. I’m kind of annoyed I have to wait for SP1 for a fix critical enough for Long Zheng to fire up Photoshop for :-).

  17. @DosFreak — Jul 10th, 2007 at 3:07 am —

    Congratulations on once again missing out on the sarcasm and entire point of the post.

Comments are closed.