web-dev-qa-db-ja.com

BIOSは、ubuntu 16.04(Dell XPS 15)からの再起動後にSSDを検出しません

Ubuntuを再起動すると、起動可能なUSBまたはSSD以外が接続されていない限り、ラップトップを起動できなくなります。Windowsまたはubuntuからのシャットダウンと再起動は正常に機能し、Windowsからの再起動も可能です。 BIOSを更新し、さまざまなバージョンのUbuntu(16.04.3と17.10を含む)を再インストールしようとしましたが、どちらも同じ問題を示しています。また、実際にubuntuをインストールせず、ブート可能なUSBの「Try ubuntu」オプションから再起動しても問題が解決しないことを言及する価値があるでしょう。私の仕様:

Dell XPS 15 9950:

SSD:Samsung NVMe PM951 512GB

プロセッサー:Intel i7-6700HQ(2.6 Ghz)

GPU:Intel Graphics 530/NVIDIA GeForce 960M

私が見つけたすべてのチュートリアルに従って、Windowsがセーフモードである間に、SATA操作をRAIDオンからAHCIに切り替えました。パーティション分割はデフォルトのパーティションマネージャを使用して行われました(ただし、ライブスティックから再起動する際に、元のパーティションで試しました)。 BIOSからセキュアブートがオフになり、インストールした以前のLinuxからも非アクティブ化されました。また、プロセス中にWindows 10を何度もリセットしました。最後に、私は投稿されたほぼ同一の質問を知っていますが、それは賛成票も返信もありません、そして私は機知の終わりにいます。 Ubuntuをあきらめて代わりにDebianをインストールすることはおそらく気にしないでしょうが、どうしたらいいかわかりません(Linuxの新機能とチュートリアルはありません)。

追伸:ある時点で、適切に動作するubuntu 16.04(使用したスティックが数か月前から16.04.1だった可能性があります)がありましたが、17.10へのアップグレードが失敗し、再インストールすることにしました。

編集:PCを再起動すると、Dellサポートアシストに直接移動し、「ハードドライブがインストールされていません」(またはハードディスク、覚えていない)と表示され、この問題を除けばubuntuは正常に動作するようです。

4
YamiNoKirin

カーネル4.16を使用して、Dell XPS 15 9550で同じ問題が発生していました。多くの研究の後に、私は私のために働く解決策を見つけました:

TLDR:カーネルパラメーターnvme_core.default_ps_max_latency_us=4950で起動

  • これを行うには、GRUB_LINUX_CMDLINE_DEFAULT/etc/default/grubを変更し、Sudo grub-installを実行します。

問題

クリスチャンベラスケスラモスが以前に投稿 このスレッドでは、NVMe Samsung 950(ファームウェアID:BXV76D0Q)のAPST(自律電源状態遷移)を無効にする癖がメインラインカーネル4.11にマージされました。 これら などのバグを修正する0rc7:

linux-nvmeメーリングリスト からの議論:

Dell XPS 15 9550およびPrecision 5510ラップトップ(本質的に同じラップトップ)のSamsung 950シリーズSSDは、最も深いAPST状態を使用できる場合、PCIeリンクを失う可能性があります。 Samsungのエンジニアは、影響を受けるシステムを使用しており、それに取り組んでいます。他のマシンとまったく同じSSD(XPS 13でも)は正常に動作するようです。

このため、デバイスのデフォルトのAPSTコントローラーの状態はoffに設定されており、これにより、表示されていたソフトリブートの問題が発生します。

メインライン4.11にマージされた癖に関する議論

ソフトリブートで問題を解決するには、何らかの方法でこの癖を無効にする必要があります。

nvme_core.force_apst=1を使用することで、この癖を完全に無効にすることができますが、これにより、長時間使用した後の読み取り/書き込みのバグが発生する可能性があります(3日間の稼働後)。このため、単にapstをオーバーライドしても機能しません。

ただし、カーネルパラメータnvme_core.default_ps_max_latency_us=4950を使用して、最低電力状態を無効にできます。

これですべての問題が修正されます! クリスチャンベラスケスラモス 修正に感謝します。

1
tuxxi

おそらくあなたはもう心配していませんが、私はあなたと同じ問題を抱えていました。

多くの調査の結果、問題の原因を発見しました。

カーネルバージョン4.11では、電力を節約するNVMeコントローラーが追加されました。カーネルバージョン4.11.0rc7の後、彼らはこのパッチに追加しました:

static const struct nvme_core_quirk_entry core_quirks[] = {
    /*
     * Seen on a Samsung "SM951 NVMe SAMSUNG 256GB": using APST causes
     * the controller to go out to lunch.  It dies when the watchdog
     * timer reads CSTS and gets 0xffffffff.
     */
    {
        .vid = 0x144d,
        .fr = "BXW75D0Q",
        .quirks = NVME_QUIRK_NO_APST,
    },

どうやらこれは再起動時にSSDに問題を引き起こし、検出されないようにします。 Debian以外の別のディストリビューションに切り替える場合、またはカーネルを変更する場合は、v4.11.0rc7以下のカーネルを使用してください。

さて、私の唯一の質問は、より新しいカーネルでこれを無効にすることは可能ですか?私はこれについてどうすればいいのか全く知りません。ブートパラメータを追加するのと同じくらい簡単であることを願っています。