Der Hypervisor Xen unterstützt das Raspberry Pi 4-Board

Entwickler des Xen-Projekts haben bekannt gegeben über die Umsetzung der Möglichkeit, den Xen Hypervisor auf Raspberry Pi 4-Platinen zu nutzen. Die Anpassung von Xen für die Verwendung auf früheren Raspberry Pi-Plattformen wurde durch die Verwendung eines nicht standardmäßigen Interrupt-Controllers, der keine Virtualisierung unterstützte, behindert. Auf dem Raspberry Pi 4 wurde ein herkömmlicher GIC-400-Interrupt-Controller verwendet, der in Xen unterstützt wird, und die Entwickler rechneten damit, dass es keine Probleme mit dem Start von Xen geben würde. In der Praxis stellte sich jedoch heraus, dass es nicht so war wie erhofft, und um Xen auf dem Raspberry Pi 4 zum Laufen zu bringen, mussten erhebliche Änderungen am Code zur Speicherverwaltung vorgenommen werden.

Die ersten Versionen der Raspberry Pi 4-Platinen beschränkten den Zugriff nur auf den Adressraum des ersten Gigabytes an Speicher, was für Dom0 nicht ausreichend war. Die erforderlichen Änderungen wurden in der Veröffentlichung von Xen 4.14 vorgenommen, aber sofort tauchte ein weiteres Problem auf: Im Xen-Untermodul für die Umwandlung von virtuellen Adressen in physische wurde der Aufruf virt_to_phys verwendet, der nicht für alle virtuellen Adressen funktionierte, und die Versuche, einige virtuelle Adressen umzuwandeln, endeten mit einem Fehler. Um dieses Problem zu lösen, musste eine andere Funktion zur Adressumwandlung hinzugefügt werden.

Damit endeten die Probleme nicht, und es trat eine Besonderheit in der DMA-Nutzung auf – auf allen zuvor in Xen unterstützten Plattformen (x86, ARM und ARM64) stimmten die DMA-Adressen und die physischen Adressen immer überein, aber beim Raspberry Pi 4 war das nicht der Fall. Eine Lösung für dieses Problem zu finden, erwies sich als die größte Herausforderung und erforderte die Entwicklung von Patches für den Linux-Kernel, die eine Umwandlung zwischen physischen Adressen und DMA-Adressen durchführten.

Die vorbereiteten Lösungen wurden in den Linux-Kernel 5.9 aufgenommen und jetzt wird Xen als bereit für die Virtualisierung auf Raspberry Pi 4-Platinen anerkannt. Unter anderem kann man jetzt auf dem Raspberry Pi 4 auch EVE (Edge Virtualization Engine), eine Engine zur Erstellung und Ausführung cloud-nativer Anwendungen, die Xen nutzt, Linuxkit und Alpine Linux für den Aufbau einer Virtualisierungsinfrastruktur auf tragbaren Geräten.

Zusätzlich kann man die Beseitigung von 10 Sicherheitsanfälligkeiten in Xen erwähnen. Die Sicherheitsanfälligkeiten CVE-2020-25599,
CVE-2020-25603 und
CVE-2020-25595
ermöglichen es potenziell, Privilegien des Host-Umfelds aus einem Gast-System zu erlangen. Die Probleme
CVE-2020-25601, CVE-2020-25600,
CVE-2020-25596,
CVE-2020-25597,
CVE-2020-25604,
CVE-2020-25598 und
CVE-2020-25602
beschränken sich auf die Durchführung von Denial-of-Service-Angriffen.

Quelle: opennet.ru

60GB SSD 8Gb DDR4