In den Insiderversionen wurde die Migration von Retpoline schon seit einigen Versionen getestet. Damit konnte Microsoft sich die Auswirkungen zum Schutz gegen Spectre-Variante 2 genauer anschauen und auswerten. Mit der KB4482887 für die Windows 10 1809 hat man nun erstmals auf die Produktivsysteme „losgelassen“.
Auslöser des ausführlichen Tests war eigentlich, dass einige mit Leistungsproblemen des PCs zu tun hatten. Die Retpoline hat man nun mit dem Update (KB4482887) wieder zurückportiert, sodass sie verwendet werden kann. Retpoline wird es laut Aussage von Microsoft nur für die Windows 10 1809 und höher geben.
"In den kommenden Monaten werden wir Retpoline als Teil eines schrittweisen Rollouts über die Cloud-Konfiguration aktivieren. Aufgrund der Komplexität der Implementierung und der damit verbundenen Änderungen aktivieren wir nur die Leistungsvorteile von Retpoline für Windows 10, Version 1809 und spätere Versionen."
Noch ein Nachtrag: Wie Mehmet Iyigun zusätzlich noch twitterte: „Dieses Update verbessert die Leistung überall dort, wo Spectre v2 Abwehrmaßnahmen für die Benutzer-/Kernisolation aktiviert sind. Auf Pre-Skylake- und AMD-Systemen wird der Leistungsvorteil höher sein als bei Skylake+-Systemen, da wir unter Skylake+ nur die Importoptimierung ermöglichen.“ via
Und noch ein Nachtrag: Jetzt hat man auch die Anleitung bekanntgegeben, wie man selbst Retpoline manuell aktivieren kann. Siehe HIER.
Wer mit einem PowerShell Skript prüfen möchte, wie der Rechner abgesichert ist, findet bei uns ein Anleitung, oder bei Microsoft. So sieht es momentan bei mir aus.
Windows 10 Tutorials und Hilfe
In unserem Windows 10 Wiki findet ihr sehr viele hilfreiche Tipps und Tricks. Falls ihr Fragen habt, dann stellt diese ganz einfach bei uns im Forum.
- Installationsmedien: Aktuelle Installationsdateien findet ihr hier immer in der rechten Sidebar.
- Installation:: Windows 10 Clean installieren, Win 10 1903 neu installieren, Win 10 1809 neu installieren, Win 10 1803 neu installieren
- Probleme bei der Installation: Windows 10 1809 Probleme bei der Installation, Win 10 1803 lässt sich nicht installieren
- Reparaturen: Inplace Upgrade Reparatur, Win 10 reparieren über DISM, sfc und weiteres, Windows Update reparieren, Startmenü reparieren, Apps reparieren, Store reparieren, Netzwerk reparieren
- Anmeldung: Win 10 automatische Anmeldung
- Entfernen, Deinstallieren: Cortana deaktivieren, Apps deinstallieren
- Datei Explorer: Ordner unter Dieser PC entfernen, Netzwerk, OneDrive u.a. im Explorer entfernen
- Richtige Nutzung: Startmenü richtig nutzen, Suche richtig nutzen,
- Wichtig: In jedem Tutorial steht, für welche Version es geeignet ist.
Das ist ja alles lobenswert und schön und gut. Nur, wie sieht es dann aus, wenn das Mainboard mittels Bios Updates bereits abgesichert und entsprechend das System verlangsamt wurde ? Hier greift doch zuerst das Bios, und dann wäre es doch uninteressant, was Microsoft wieder rückgängig macht/Retpoline ändert. Oder müssten dann wieder alle Mainboard Hersteller angepasste Versionen ihres Bios rausbringen, um das alles rückgängig zu machen ? Ich bin zwar Hobby PC Freak, aber das ganze übersteigt etwas mein Wissen.
nein…
was win da macht ist ein microcode update…und somit spielt das bios keine rolle.
Kurzum: Nein.
Es gibt zwei voneinander unabhängige Varianten, SpectreV2 zu „verhindern“.
Die eine ist IRBS; für die wird ein Microcode-Update gebraucht.
Die andere ist Retpoline; diese braucht kein Microcode-Update, sondern „nur“ auf Entwickler-Seite einen Compiler, der das unterstüzt.
Wenn kein MC-Update installiert ist, kann IRBS nicht genutzt werden, Retpoline ist davon nicht beeinträchtigt.
Wenn das MC-Update installiert ist, können sowohl IRBS, als auch Retpoline genutzt werden. Was Windows in dem Fall tut, weiß ich gerade nicht (Retpoline wäre klüger, da weniger Performance-Einbußen). In diesem Fall ist komplett egal, welche Microcode-Version gerade läuft.
Um die Verwirrung perfekt zu machen, hat Microsoft aber auch Microcode-Updates released, welche durch den Windows Startmechanismus (ich meine durch winload.exe/winload.efi) vor dem Start des Kernels geladen werden, um nicht auf die Hersteller warten zu müssen.
Somit ergeben sich folgende Konstellationen:
1) Windows 10 1803 und älter / 1809 ohne Retpoline-Patch UND Microcode-Update im BIOS
-> hier wird IRBS verwendet (GESCHÜTZT)
2) Windows 10 1803 und älter / 1809 ohne Retpoline-Patch UND Microcode-Update von MS
-> hier wird IRBS verwendet (GESCHÜTZT)
3) Windows 10 1803 und älter / 1809 ohne Retpoline-Patch UND kein Microcode-Update
-> UNGESCHÜTZT
4) Windows 10 1809 mit Retpoline-Patch UND Microcode-Update im BIOS
-> hier wird entweder IRBS oder Retpoline benutzt (GESCHÜTZT)
5) Windows 10 1809 mit Retpoline-Patch UND Microcode-Update von MS
-> hier wird entweder IRBS oder Retpoline benutzt (GESCHÜTZT)
6) Windows 10 1809 mit Retpoline-Patch UND kein Microcode-Update
-> hier wird Retpoline benutzt (GESCHÜTZT)
Ich hoffe, das verschafft etwas Klarheit.
Viele Grüße
Danke für deine ausführliche Erklärung, es hilft ungemein weiter, aber bezieht sich nur auf Windows.
Ich verstehe es immer noch nicht, was wenn ist, wenn man das Bios bereits auf abgesicherte Version(en) gehieft hat, und was dann weiter ist. Oder bezieht sich dein „Nein“ auch darauf, das mit dem Retpoline Windows Patch, das Mainboard Bios und dessen Massnahmen dahingehend nicht mehr gültig sind ??
Was macht Windows, schert es sich nicht um die Bios Patches wenn es geladen ist ?
Und was ist mit Meltdown, das war doch eigentlich der Leistungskiller, oder ?? Oder hat das mit der Bios Firmware nichts zu tun ?
Irgendwie finde ich das alles mehr als chaotisch.
Das Microcode-Update macht effektiv nichts anderes als zusätzliche Prozessor-Anweisungen (also Kommandos, die die CPU versteht) bereitzustellen. Diese stehen zur Verfügung, sobald das Update geladen wurde (installiert das BIOS / UEFI das MC-Update, stehen die Anweisungen allen Komponenten zur Verfügung, die nach BIOS / UEFI kommen; installiert winload.exe / winload.efi das Update steht es im Rahmen des Windows-Startvorgangs zur Verfügung).
Entscheidend für IRBS ist, dass diese Anweisungen zur Verfügung stehen, wenn der Kernel startet (und diese Voraussetzung ist erfüllt, egal ob BIOS / UEFI oder winload.exe / winload.efi dies tun). Sprich: Egal ob man das BIOS / UEFI oder durch das MC-Update seitens MS abgesichert wird, beide erlauben es dem Kernel IRBS zu verwenden.
Der Kernel prüft nur, ob ihm die erforderlichen Anweisungen zur Verfügung stehen und verwendet dann IRBS.
Ein Kernel mit Retpoline (angenommen Retpoline wird gegenüber IRBS bevorzugt) verwendet eine andere Technik, um SpectreV2 zu umgehen, für die diese Anweisungen nicht erforderlich sind. Das BIOS / UEFI oder winload.exe / winload.efi updaten den Microcode weiterhin, jedoch entscheidet sich der Kernel gegen IRBS und für Retpoline (sprich: das MC-Update wird zwar geladen, die neuen Anweisungen werden jedoch nicht genutzt).
Fazit:
Das MC-Update (wer auch immer es lädt [BIOS / UEFI oder MS]) stellt lediglich die Möglichkeit bereit, IRBS zu verwenden. Die Entscheidung, ob diese Technik (wenn verfügbar) verwendet wird, trifft der Kernel. Falls der Kernel sich entschließt, Retpoline zu verwenden, ist es egal, ob das BIOS / UEFI das MC-Update lädt oder auch nicht.
Somit: Nein, es braucht kein neues BIOS- / UEFI-Update für Retpoline; die zusätzlichen Prozessor-Komandos aus dem Microcode-Update bleiben dann einfach nur „ungenutzt“.
(Ergänzung: nur SpectreV2 bzw. SpectreV3a/V4 erfordern ein BIOS- / UEFI-Update; SpectreV1 und Meltdown (= SpectreV3) werden ausschließlich durch Updates von Windows / Linux / … gelindert).
——————–
Zum Thema Leistungskiller:
Alle Spectre-Updates (Meltdown = SpectreV3) schmälern die Leistung in irgendeiner Form, da Techniken, die zur Beschleunigung des Systems eingebaut wurden, deaktiviert oder unwirksam gemacht werden. Welches der Updates tatsächlich die größten Performance-Einbußen (SpectreV2 oder Meltdown/SpectreV3) hervorruft, habe ich bisher nicht gemessen.
Viele Grüße
@ fre4kyc0de
Super, Danke dir für die ausführliche Erklärung. Jetzt wird mir mehr als einiges klar(er).
„…Oder müssten dann wieder alle Mainboard Hersteller angepasste Versionen ihres Bios rausbringen,…“
Wäre schön wenn das dann auch mal ALLE Hersteller machen würden, ich warte schon seit
die Spectre & Meltown – Problematik bekannt wurde.
Aussage des (Asus) Supports ( da ich einen AMD habe) : „Erst mal sind die Intel dran“
( das war jetzt sinngemäß laut Gedächtnisprotokoll)
– diese Anfrage meinerseits ( per eMail) ist jetzt schon „Ewigkeiten“ her und das Bios / UEFI vom mir ist immer noch „original“ von 0212 2016/07/28
Quanta 30cf F.34 vom 03/22/2011 Bios
und läuft trotzdem
gepostet mit der Deskmodder.de-App
Ingridl, das steht außer Zweifel das der Rechner noch läuft ( auch meiner )
– hatte mit dem Post nur auf die Frage reagiert von Janami25
„…Oder müssten dann wieder alle Mainboard Hersteller angepasste Versionen ihres Bios rausbringen,…“
dafür sind ja dann die Microcode-Updates da von MS
Sorry,war von mir nicht so ganz soo ernst gemeint
gepostet mit der Deskmodder.de-App
Kein Thema

– aber Ernst ist 3 Jahre und geht ab morgen in den Kindergarten
Helau!

ach jaaa – hellblaaauuuu
@Manny,
hellblau ist rausgeschmissenes Geld. Wenn dann richtig blau
meinte mit Hellblau eigentlich NICHT den ZUSTAND
moinmoin, die Sekunden und Minuten sind ja immer noch klein geschrieben
Den Ernst muss ich mir merken.Holodrio!
gepostet mit der Deskmodder.de-App
Mein Asus Mainboard ist ein OEM Board und da gabs seit 2015 keine Bios Updates mehr, ist dass jetzt irgendwie schlimm? Bin nur mal neugierig, weil mein Board wird nie im leben mehr ein Update kriegen.
Es kommt auf den verbauten Prozessor an.
Grundsätzlich hat MS jedoch in letzter Zeit für viele Prozessoren, die nach 2010/2011 erschienen sind, MC-Updates via Windows Update ausgeliefert (erfordert Windows 10 1607 [14393] oder neuer).
Die einfachste Methode ist es, mittels „SpecultaionControl“ (mehrfach auf deskmodder.de beschrieben) zu prüfen, ob alle Spectre-Lücken geschlossen sind.
Viele Grüße
Das Modul SpeculationControl müsste man ggf. mal updaten, oder de- und danach neu installieren.
http://666kb.com/i/e1qt5zvzdqakvhvlf.png
Sollte mit dem Befehl Install-Module SpeculationControl -force die neueste Version installieren
Der Artikel beschreibt dann noch folgendes: „Over the coming months, we will enable Retpoline as part of phased rollout via cloud configuration. Due to the complexity of the implementation and changes involved, we are only enabling Retpoline performance benefits for Windows 10, version 1809 and later releases.“
Das liest sich so, als wäre mit dem Update die ganze Sache noch gar nicht aktiviert und ob und bei wem es aktiviert wird, entscheidet Microsoft irgendwo im stillen Kämmerlein. Oder sehe ich das falsch?
Steht zwar im Artikel, aber ja wird nicht bei jedem aktiviert.
moinsen liebes DModder Forum! kurze frage..
hab bei mir ein recht ähnliches ergebnis wie moinmoin wenn ich Get-SpeculationControlSettings eingebe,
nur hab ich bei den folgenden 2 punkten anstatt True jeweils False stehen
SSBDHardwarePresent : False
SSBDWindowsSupportEnabledSystemWide : False
cpu ist ein 7600k, brett ist ein Asus z170 Pro Gaming mit neuster bios version und MCode 84h, Windows ist mit 1809 voll gepatcht, angemeldet bin ich mit einem offline konto, inSpectre zeigt mir an das beide reg schlüssel aktiv sind.
muss ich mir wegen der beiden False settings gedanken machen bzw kann ich was an deren zustand ändern?
Nein, ändern kannst du da nichts. Gedanken machen im Prinzip auch nicht.
Ok danke! Im Schnitt verliere ich mit aktivem Spectre Schutz knapp 100 Punkte im CpuZ multicore bench. Da ich bei 90% aller von mir gezockten games im Gpu Limit hänge(Asus 1060 Strix oc) sind mir die Leistungseinbussen relativ egal. Sicherheit geht für mich immer vor! Wie sieht’s eigtl mit den Ryzen CPUs aus? angeblich sind die ja auch zum Teil betroffen?!