SSDのファームウェアのせいでWindows 11 24H2が落ちた話

Windows 11 24H2が出て1か月ぐらい経ちますね。

カーネル部分(OSの中核部分)を大幅に書き換えた、特大更新という感じのもので、場合によってはWindows 12という名前になったかもしれないものなので、最近の更新の中ではトラブルが多めに報告されている更新になります。

ちなみに、現在未解決のトラブルリストはこちらから見られます。

learn.microsoft.com

さて、今日の本題は、この未解決トラブルリストに載っていない、厄介なトラブルの話。

Release Candidate 時代からブルースクリーンで落ちまくる

Windows Insider のRelease Previewチャンネルに参加してるので、今から数か月前には24H2にアップグレードできました。

…できたんですが、アップグレードすると CRITICAL_PROCESS_DIED というエラーコードでOSごと落ちるという致命的な問題に見舞われました。

ファイルを激しく読み書きすると起こるようだ、という以外には、条件がさっぱりわかりませんし、一度OSがちゃんと起動はするので、何か環境依存のソフトウェアの問題やドライバの問題だろうか…と悩み続けていました。

そうこうしているうちに2024/10が過ぎ、24H2が正式リリースされたのに、私のPCはセーフガードホールドでアップグレードを止められてしまい、上記の未解決トラブルについて対策を施しても全然解除されません。なんで…?

原因=SSD

結論:下記のSSDを利用していると、起動後しばらくするとブルースクリーンで落ちる。

  • WD Black SN770
  • WD Blue SN580
  • WD Blue SN5000 (SN770のリネーム品)
  • Sandisk SDSSDX3N-2T00

内蔵SSDの重要なファームウェア・アップデートにより、Windows 11 24H2 UpdateのBSOD が解決される | SanDisk

このうち、WD Black SN770は、某ブログで激推しされていたこともあり、利用者がそこそこいるのではないでしょうか。

chimolog.co

ファームウェアをアップデートした上で、24H2にすると、うそのように安定しました。

SN770の場合は731130WD以降にしてください

なんでこんなことに…

Host Memory Buffer (HMB) という、PC上のメインメモリをSSDDRAMキャッシュ相当として使う機能の、SSD側の実装にバグがありました。

たとえばSN770の場合は、SSD側では64MBしか使えないのに、200MB確保を推奨する情報をOS側に送ってしまっていました。

23H2はこんな変な状況でも問題なかったようなのですが、24H2になるとHMBの実装の違いで、OS側は大まじめに200MBを確保してしまい、SSD側との整合性が取れなくなり、キャッシュ管理用のシステムプロセスが落ちて、CRITICAL_PROCESS_DIEDエラーになったようです。

さすがにこれはMicrosoftのせいではありません。WD(SSDメーカー)のせいです!

…でも、原因に気づくまでだいぶかかったので、Windows の未解決トラブルリストに載せておいてほしかったな…

10/18の時点で情報が公開され、それなりにPCブログなどで取り上げられていたようなので、今さら知らない人は少ないかもしれませんが、同シリーズのSSDを利用している方は、十分注意してください。