FreeBSD bootet nach Spectre-NG-Fix nicht mehr mit "CPU0 does not support X87 or SSE: 0"

  • Hi,


    eine Frage in die Runde: Benutzt noch jemand ein FreeBSD 10 auf einem vServer und kann dieses nach dem aktuellen Spectre-NG-Fix nicht mehr booten? Mein Server sagt bei einem Reboot nur noch:

    Zitat
    Booting...
    panic: CPU0 does not support X87 or SSE: 0

    Das ist natürlich etwas unentspannt. Die in der Info-E-Mail über den Fix gegebenen Links zu Heise und Golem lassen (für mich) nicht erkennen, ob hier eine Ursache liegen könnte.

    Für Tipps zum erfolgreichen Booten des Systems bin ich somit dankbar.

    Merci im voraus.

  • Bei den vServern (virtuelle CPU):

    Code
    flags        : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl xtopology pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave hypervisor lahf_lm invpcid_single ssbd ibrs ibpb kaiser invpcid
    bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf


    Bei den Root-Servern (dedizierte CPU - Intel Xeon Gold 6140):


    Code
    flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ssbd ibrs ibpb kaiser fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves arat pku ospke
    bugs        : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf



    Boote einmal in das Rettungssystem und gucke, welche CPU Flags dir angezeigt werden. Sollte SSE fehlen so kontaktiere bitte den Support.

  • Danke. Mit den unter https://www.netcup-wiki.de/wiki/Rettungssystem gegebenen Hinweisen komme ich leider nicht in das Rettungssystem ("Rettungssystem aktivieren" ist schlicht im SCP nicht verfügbar).


    Mittels "boot -s" in den Single-User-Mode zu booten bringt leider das gleiche Ergebnis der oben erwähnten Kernel-Panic.


    Kann ich die CPU-Flags ggf. auch anderweitig einsehen? Oder hat sich schlicht am Zugang zum Rettungssystem seit dem obigen Wiki-Artikel etwas geändert?

  • Hallo rolando,


    das Rettungssystem befindet sich im SCP an einer anderen Stelle.


    "vServer auswählen" -> "Einstellungen" -> Boot Reihenfolge auf "Netzwerk" umstellen


    Anschließend:

    "vServer auswählen" -> "Medien"-> "Rettungssystem" (Rechts oben gibt es ein kleines Menü)



    Genauer beschrieben wird das Ganze auch in der SCP-Anleitung. Siehe: https://www.netcup-wiki.de/wik…anel_(SCP)#Rettungssystem

    Mit freundlichen Grüßen

    Julian Duss

    netcup Team

    Softwareentwicklung

  • Genauer beschrieben wird das Ganze auch in der SCP-Anleitung. Siehe: https://www.netcup-wiki.de/wik…anel_(SCP)#Rettungssystem

    Merci. Damit ist immerhin bestätigt, dass die CPU-Flags wohl korrekt zugeordnet sind:

    Code
    core id: 0
    cpu cores: 1
    flags: ... sse sse2 ... ssse3 ... sse4_1 sse4_2
    bugs: 

    Die Angabe bei den 'bugs' sieht anders als von dir empfohlen aus, aber das Dilemma liegt wohl eher in meinen Fehlenden FreeBSD-Updates.


    Empfehlungen, wie ich das System zumindest soweit gebootet bekommen kann, um ein freebsd-upgrade durchzuführen, sind weiterhin sehr willkommen.

  • (Update: Zwischenzeitliche Mount-Probleme sind behoben. Hier der Stand.)


    OK, das System lässt sich jetzt booten mit:

    Code
    Drücken von "3" im Bootmenü, um den Boot-Prompt zu erhalten
    set hw.use_xsave="0"
    boot -cpu Opteron_G3

    Damit lässt sich hoffentlich ein freebsd-upgrade machen. "uname -a" zeigt nämlich, dass es sich um ein "10.4-RELEASE #0" handelt und somit die von vmk oben erwähnten Updates nicht eingespielt sind.

  • Vielen Dank,

    Das hat mir sehr geholfen.


    Ich musste kurz nachschauen, wie ich diese Einstellungen in der loader.conf persistieren kann, daher für alle, die hier landen, das folgende in /boot/loader.conf eintragen (und dann besser Upgrade auf FreeBSD 11 machen - und wieder rausnehmen).

    Code
    hw.use_xsave=0
    kernel_options="-cpu Opteron_G3"
  • Hallo nochmal,


    Ich habe gerade auf FreeBSD 11.2 aktualisiert. Ohne die o.g. Einstellungen in loader.conf bootet auch die aktuelle Version nicht.


    Daher sehe ich Handlungsbedarf auf Seiten von NetCup. Eine Support-Anfrage habe ich bereits gestellt. Wenn man den Fehler ein wenig in die Suchmaschine wirft, sieht man KVM-Einstellungen, die das Problem lösen können.


    Hat noch jemand eine Idee?

  • Ich musste kurz nachschauen, wie ich diese Einstellungen in der loader.conf persistieren kann

    Möglicherweise durch loader.conf.local


    Versuche mal eine andere CPU einzutragen. Ich stelle mir den Betrieb mit Opteron Vorgabe auf einer Intel Plattform recht inperformant zu. Gibt es dort evtl. Haswell Tags o.Ä. - Welches Produkt hast du vServer oder Root-Server, und welche Generation?


    Netcup hat vor Kurzem betriebssystemspezifische Optimierungen durchgeführt, die auswählbar sind. Einmal für Linux und für Windows. Inwieweit sich der Unix-Kernel davon beeindrucken lässt, weiß ich nicht.

    Vielleicht hilft ja schon das Verschieben auf einen neuen Host? Ich kann gerne prüfen, ob bei meinen Servern die FreeBSD 11 Disk bootet.

  • Hallo,


    Danke für den Hinweis.


    NetCup verwies mich nun auch auf die obigen Einstellungen im SCP. Man kann nun ebenfalls BSD in der Liste der Optimierungen wählen.


    Es ist ein vServer einer recht frühen Generation (v6) und wohl nur diese haben mit dem KVM-Update mit den BSDs Probleme. Mit den Einstellungen ist es aber dann wieder OK.

    • Offizieller Beitrag

    Guten Tag,

    Ich habe diese Möglichkeit in der Auswahl nicht. Mir wird nur Linux und Windows angeboten. Gibts da einen Trick?

    Diese Einstellung ist nur bei einigen älteren Rootservern und VPS erforderlich. Bei neueren Rootservern ist die Option nicht erforderlich und daher auch nicht auswählbar.

  • Ich habe das gerade aus aktuellem Anlass (mir ist heute ein Server mit dieser Panic hopsgegangen) ausprobiert: Ja, die Option BSD fixt das Problem. Der Server ist von 2014, falls das relevant ist.

    Intelligente Menschen sind manchmal gezwungen, sich zu betrinken, um Zeit mit Narren zu verbringen.
    (E. Hemingway)