diff --git a/documentation/linux_configuration.pdf b/documentation/linux_configuration.pdf index 8ca716c..7c2d3e1 100644 Binary files a/documentation/linux_configuration.pdf and b/documentation/linux_configuration.pdf differ diff --git a/documentation/linux_configuration.tex b/documentation/linux_configuration.tex index 5c1458c..c394ca1 100644 --- a/documentation/linux_configuration.tex +++ b/documentation/linux_configuration.tex @@ -2236,9 +2236,9 @@ des vsyscall-Bereichs als Puffer zur Umgehung von ASLR. \paragraph{None}$~$\\ CONFIG\_LEGACY\_VSYSCALL\_NONE [=n] \textbf{[N]}\\ -Es wird überhaupt keine vsyscall-Zuordnung geben. Dies eliminiert jegliches Risiko einer ASLR-Umgehung aufgrund -der festen vsyscall-Adressen-Zuordnung. Versuche, die vsyscalls zu verwenden, werden an dmesg gemeldet, so dass -entweder alte oder bösartige Userspace-Programme identifiziert werden können. +Es wird überhaupt keine vsyscall-Zu\-ordnung geben. Dies eliminiert jegliches Risiko einer ASLR-Um\-ge\-hung +aufgrund der festen vsyscall-Adressen-Zuordnung. Versuche, die vsyscalls zu verwenden, werden an dmesg gemeldet, +so dass entweder alte oder bösartige Userspace-Programme identifiziert werden können. \subsubsection{Built-in kernel command line} CONFIG\_CMDLINE\_BOOL [=n] \textbf{[N]}\\ @@ -2420,7 +2420,7 @@ von PM-Fehlern, wie z. B. der Suspend-Unterstützung. \paragraph{Extra PM attributes in sysfs for low-level debugging/testing}$~$\\ CONFIG\_PM\_ADVANCED\_DEBUG [=n] \textbf{[N]}\\ -Hinzufügen zusätzlicher sysfs-Attribute, die den Zugriff auf einige Power-Management-Felder von Geräteobjekten aus dem Userspace ermöglichen. +Hinzufügen zusätzlicher sysfs-Attribute, die den Zugriff auf einige Power-Management-Felder von Ge\-rä\-te\-ob\-jek\-ten aus dem Userspace ermöglichen. Wenn Sie kein Kernel-Entwickler sind, der am Debuggen/Testen von Power Management interessiert ist, sagen Sie N für nein. \paragraph{Test suspend/resume and wakealarm during bootup}$~$\\ @@ -2466,4 +2466,259 @@ Phoenix und Toshiba mitentwickelt wurde. Derzeit wird sie von der ACPI Specifica und jedes UEFI-Mitglied kann der ASWG beitreten und zur ACPI-Spezifikation beitragen.\\ Die Spezifikation ist verfügbar unter: \url{https://uefi.org/specifications}. +\subsubsection{AML debugger interface} +CONFIG\_ACPI\_DEBUGGER [=n] \textbf{[N]}\\ +Aktiviert das In-Kernel-Debugging von AML-Funktionen: Statistiken, interner Objekt-Dump, Aus\-füh\-rung von Einzel\-schritt-Kontroll\-methoden. Dies befindet +sich noch in der Entwicklung, derzeit führt die Aktivierung nur zur Kompilierung der ACPICA-Debugger-Dateien. + +\subsubsection{ACPI Serial Port Console Redirection Support} +CONFIG\_ACPI\_SPCR\_TABLE [=y] \textbf{[Y]}\\ +Aktiviert die Unterstützung für die Serial Port Console Redirection (SPCR) Tabelle. Diese Tabelle enthält Informationen über die Konfiguration +der earlycon-Konsole. + +\subsubsection{ACPI Firmware Performance Data Table (FPDT] support} +CONFIG\_ACPI\_FPDT [=y] \textbf{[Y]}\\ +Aktiviert die Unterstützung für die Firmware Performance Data Table (FPDT). Diese Tabelle enthält Informationen über das Timing des Systemstarts, +der S3-Suspend- und S3-Resume-Firmware-Codepfade. + +\subsubsection{Allow supported ACPI revision to be overridden} +CONFIG\_ACPI\_FPDT [=y] \textbf{[Y]}\\ +(Erlaubt das Überschreiben der unterstützten ACPI-Revision)\\ +Die Plattform-Firmware auf einigen Systemen erwartet, dass Linux \glqq 5\grqq{} als unterstützte ACPI-Revision zurückgibt, was dazu führt, dass sie +Systemkonfigurationsinformationen auf eine besondere Weise offenlegt. Basierend darauf, was ACPI als unterstützte Revision exportiert, +konfiguriert beispielsweise das Dell~XPS~13 (2015) sein Audiogerät so, dass es entweder im HDA-Modus oder im I2S-Modus arbeitet, wobei +ersterer unter Linux verwendet werden soll, bis letzterer vollständig unterstützt wird (sowohl im Kernel als auch im Userspace). Diese +Option ermöglicht eine DMI-basierte Besonderheit für den oben genannten Dell-Rechner (so dass HDA-Audio von der Plattform-Firmware dem +Kernel offengelegt wird) und macht es möglich, den Kernel zu zwingen, \glqq 5\grqq{} als unterstützte ACPI-Revision über den +Befehlszeilenschalter \texttt{acpi\_rev\_override} zurückzugeben. + +\subsubsection{EC read/write access through /sys/kernel/debug/ec} +CONFIG\_ACPI\_EC\_DEBUGFS [=m] \textbf{[M]}\\ +Sagen Sie N, um die Schnittstelle Embedded Controller /sys/kernel/debug zu deaktivieren. Beachten Sie, dass die Verwendung dieser Schnittstelle +Ihren Embedded Controller so verwirren kann, dass ein normaler Neustart nicht ausreicht. Sie müssen dann Ihr System ausschalten und den Akku +des Laptops für einige Sekunden entfernen. Ein Embedded Controller ist in der Regel auf Laptops vorhanden und liest Sensorwerte wie +Batteriestatus und Temperatur aus. Der Kernel greift auf den EC über ACPI-geparsten Code zu, der von BIOS-Tabellen bereitgestellt wird. +Diese Option ermöglicht den direkten Zugriff auf den EC, ohne dass ACPI-Code involviert ist.\\ +Somit ist diese Option eine Debug-Option, die beim Schreiben von ACPI-Treibern hilft und zur Identifizierung von ACPI-Code oder +EC-Firmware-Fehlern verwendet werden kann. + +\subsubsection{AC Adapter} +CONFIG\_ACPI\_AC [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt das AC-Adapter-Objekt, das anzeigt, ob ein System mit Wechselstrom betrieben wird oder nicht. +Wenn Sie ein System haben, das zwischen Wechselstrom und Batterie umschalten kann, sagen Sie Y. Um diesen Treiber als Modul +zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{ac} heißen. + +\subsubsection{Battery} +CONFIG\_ACPI\_BATTERY [=y] \textbf{[Y]}\\ +Dieser Treiber bietet Unterstützung für Batterieinformationen über /proc/acpi/battery. Wenn Sie ein mobiles System mit +einer Batterie haben, sagen Sie Y. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: +Das Modul wird \texttt{battery} genannt. + +\subsubsection{Button} +CONFIG\_ACPI\_BUTTON [=y] \textbf{[Y]}\\ +Dieser Treiber verarbeitet Ereignisse für die Tasten Power, Sleep und Deckel. Ein Daemon liest Ereignisse von Eingabegeräten +oder über Netlink und führt benutzerdefinierte Aktionen wie das Herunterfahren des Systems aus. Dies ist für die +softwaregesteuerte Abschaltung erforderlich. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: +Das Modul wird \texttt{button} genannt. + +\subsubsection{Video} +CONFIG\_ACPI\_VIDEO [=m] \textbf{[M]}\\ +Dieser Treiber implementiert die ACPI-Erweiterungen für Display-Adapter für integrierte Grafikgeräte auf dem Motherboard, +wie in der ACPI 2.0-Spezifikation, Anhang B, angegeben. +Er unterstützt grundlegende Vorgänge wie das Definieren des Video-POST-Geräts, das Abrufen von EDID-Informationen und +das Einrichten eines Videoausgangs. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: +Das Modul wird \texttt{video} genannt. + +\subsubsection{Fan} +CONFIG\_ACPI\_FAN [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt ACPI-Lüftergeräte und ermöglicht es Anwendungen im Benutzermodus, grundlegende +Lüftersteuerungen (Ein, Aus, Status) durchzuführen. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: +Das Modul wird \texttt{fan} genannt. + +\subsubsection{ACPI Time and Alarm (TAD) Device Support} +CONFIG\_ACPI\_TAD [=m] \textbf{[N]}\\ +Das ACPI Time and Alarm (TAD) Gerät ist eine Alternative zur Real Time Clock (RTC). Seine Weckzeitgeber ermöglichen es dem System, +nach Ablauf einer bestimmten Zeitspanne vom Zustand S3 (oder optional S4/S5) in den Zustand S0 überzugehen. +Im Vergleich zum RTC-Alarm bietet der TAD eine größere Flexibilität bei den Wake-Timern. +Die Zeitfunktionen des TAD behalten die Tageszeitinformationen bei, auch wenn die Plattform ausgeschaltet ist. + +\subsubsection{Dock} +CONFIG\_ACPI\_DOCK [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt ACPI-gesteuerte Dockingstationen und Wechsellaufwerkseinschübe wie den IBM Ultrabay +und den Dell Module Bay. + +\subsubsection{Processor} +CONFIG\_ACPI\_PROCESSOR [=y] \textbf{[Y]}\\ +Dieser Treiber bietet Unterstützung für das ACPI-Prozessor-Paket. Er wird von mehreren Varianten der cpufreq-Treiber +für den Leistungszustand, die Wärmeentwicklung, die Drosselung und den Leerlauf benötigt. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul heißt dann \texttt{processor}. + +\subsubsection{IPMI} +CONFIG\_ACPI\_IPMI [=m] \textbf{[M]}\\ +Dieser Treiber ermöglicht dem ACPI den Zugriff auf den BMC-Controller. Und er verwendet die IPMI-Anfrage/Antwort-Nachricht +zur Kommunikation mit dem BMC-Controller, der sich auf dem Server befindet. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: +Das Modul wird als \texttt{acpi\_ipmi} aufgerufen. + +\subsubsection{Processor Aggregator} +CONFIG\_ACPI\_PROCESSOR\_AGGREGATOR [=m] \textbf{[M]}\\ +ACPI 4.0 definiert einen Prozessor-Aggregator, der es dem Betriebssystem ermöglicht, eine spezifische Prozessorkonfiguration +und -steuerung durchzuführen, die für alle Prozessoren der Plattform gilt. Derzeit ist nur der logische Leerlauf des Prozessors +definiert, der den Stromverbrauch senken soll. Dieser Treiber unterstützt das neue Gerät. + +\subsubsection{Thermal Zone} +CONFIG\_ACPI\_THERMAL [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt ACPI-Thermozonen. Die meisten mobilen und einige Desktop-Systeme unterstützen ACPI-Wärmezonen. +Es wird DRINGEND empfohlen, diese Option zu aktivieren, da Ihr(e) Prozessor(en) sonst beschädigt werden können. Um diesen Treiber +als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{thermal} genannt. + +\subsubsection{Allow upgrading ACPI tables via initrd} +CONFIG\_ACPI\_TABLE\_UPGRADE [=y] \textbf{[Y]}\\ +Diese Option bietet die Möglichkeit, beliebige ACPI-Tabellen über initrd zu aktualisieren. +Keine funktionale Änderung, wenn keine ACPI-Tabellen über initrd übergeben werden, daher ist es sicher, Y zu sagen. +Siehe Documentation/admin-guide/acpi/initrd\_table\_override.rst für Details + +\subsubsection{Debug Statements} +CONFIG\_ACPI\_DEBUG [=y] \textbf{[Y]}\\ +Das ACPI-Sub\-system kann Debug-Aus\-gaben er\-zeu\-gen. +Die Angabe von Y aktiviert diese Ausgabe und erhöht die Ker\-nel\-grö\-ße um etwa 50K.\\ +Verwenden Sie die Kernel-Befehlszeilen\-parameter \texttt{acpi.debug\_layer} und \texttt{acpi.debug\_level}, die in +Do\-cu\-men\-tation/firmware-guide/acpi/debug.rst und Docu\-men\-tation/admin-guide/kernel-parameters.rst dokumentiert sind, +um die Art und Menge der Debug-Ausgabe zu steuern. + +\subsubsection{PCI slot detection driver} +CONFIG\_ACPI\_PCI\_SLOT [=y] \textbf{[Y]}\\ +Dieser Treiber erstellt Einträge in \texttt{/sys/bus/pci/slots/} für alle PCI-Steckplätze im System. +Dies kann helfen, PCI-Bus-Adressen, d.h. Segment/Bus/Gerät/Funktions-Tupel, mit physischen Steckplätzen im System zu korrelieren.\\ +Wenn Sie unsicher sind, sagen Sie N. + +\subsubsection{Container and Module Devices} +CONFIG\_ACPI\_CONTAINER [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt ACPI-Container- und Modulgeräte (IDs ACPI0004, PNP0A05 und PNP0A06). +Dies hilft, Hotplug von Knoten, CPUs und Speicher zu unterstützen. + +\subsubsection{Memory Hotplug} +CONFIG\_ACPI\_HOTPLUG\_MEMORY [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt ACPI-Speicher-Hotplug. Die Treiberfelder enthalten Benachrichtigungen über +ACPI-Speichergeräte (PNP0C80), die Speicherbereiche darstellen, die zur Laufzeit ein- oder ausgeschaltet +werden können. Wenn Ihre Hardware und Firmware das Hinzufügen oder Entfernen von Speichergeräten zur Laufzeit +nicht unterstützen, müssen Sie diesen Treiber nicht aktivieren. + +\subsubsection{Smart Battery System} +CONFIG\_ACPI\_SBS [=m] \textbf{[N]}\\ +Dieser Treiber unterstützt das Smart Battery System, eine andere Art des Zugriffs auf Batterieinformationen, +die bei einigen Laptops zu finden ist. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Die Module +heißen dann sbs und sbshc. + +\subsubsection{Hardware Error Device} +CONFIG\_ACPI\_HED [=y] \textbf{[Y]}\\ +Dieser Treiber unterstützt das Hardware Error Device (PNP0C33), das dazu dient, einige über SCI gemeldete +Hardwarefehler zu melden, hauptsächlich die korrigierten Fehler. + +\subsubsection{Allow ACPI methods to be inserted/replaced at run time} +CONFIG\_ACPI\_CUSTOM\_METHOD [=m] \textbf{[M]}\\ +Mit dieser Debug-Funktion können ACPI-AML-Methoden eingefügt und/oder ersetzt werden, ohne dass das System +neu gestartet werden muss.\\ +Für Details siehe: Documentation/firmware-guide/acpi/method-customizing.rst.\\ +HINWEIS: Diese Option ist sicherheitsrelevant, da sie es erlaubt, dass root (uid=0) Benutzer in beliebigen +Kernelspeicher schreiben können und so bestimmte Sicherheitsmaßnahmen umgehen können (z.B. wenn es root +nicht erlaubt ist, zusätzliche Kernelmodule nach dem Booten zu laden, kann diese Funktion verwendet werden, +um diese Einschränkung zu umgehen). + +\subsubsection{Boottime Graphics Resource Table support} +CONFIG\_ACPI\_BGRT [=y] \textbf{[Y]}\\ +Dieser Treiber bietet Unterstützung für die ACPI Boottime Graphics Resource Table, die es dem Betriebssystem +ermöglicht, Daten aus dem Firmware-Boot-Splash zu beziehen.\\ +Er erscheint unter \texttt{/sys/firmware/acpi/bgrt/} . + +\subsubsection{ACPI NVDIMM Firmware Interface Table (NFIT)} +CONFIG\_ACPI\_NFIT [=m] \textbf{[M]}\\ +Infrastruktur, um ACPI 6-konforme Plattformen auf NVDIMMs zu untersuchen (NFIT) und einen libnvdimm-Gerätebaum +zu registrieren. Zusätzlich zu den Speichergeräten ermöglicht dies libnvdimm auch die Weitergabe von +ACPI.\_DSM-Nachrichten für die Plattform/Dimm-Konfiguration. Um diesen Treiber als Modul zu kompilieren, +wählen Sie hier M: Das Modul wird \texttt{nfit} genannt. + +\paragraph{Enable debug for NVDIMM security commands}$~$\\ +CONFIG\_NFIT\_SECURITY\_DEBUG [=n] \textbf{[N]}\\ +Einige NVDIMM-Geräte und -Controller unterstützen Verschlüsselung und andere Sicherheitsfunktionen. +Die Nutzdaten für die Befehle, die diese Funktionen aktivieren, können sensibles Sicherheitsmaterial +im Klartext enthalten. Deaktivieren Sie das Debuggen dieser Befehls-Payloads standardmäßig. Wenn Sie ein +Kernel-Entwickler sind, der aktiv an der Aktivierung der NVDIMM-Sicherheit arbeitet, sagen Sie Y, +andernfalls sagen Sie N. + +\subsubsection{NUMA support} +CONFIG\_ACPI\_NUMA [=y] \textbf{[Y]}\\ +\textit{Für diese Option ist keine Hilfe verfügbar.} + +\paragraph{ACPI Heterogeneous Memory Attribute Table Support}$~$\\ +CONFIG\_ACPI\_HMAT [=y] \textbf{[Y]}\\ +Wenn diese Option gesetzt ist, lässt der Kernel die ACPI HMAT (Heterogeneous Memory Attributes Table) +der Plattform auslesen und melden, Speicherinitiatoren mit ihren Zielen registrieren und Leistungsattribute +über das sysfs-Gerät des Knotens exportieren, falls vorhanden. + +\subsubsection{ACPI Platform Error Interface (APEI)} +CONFIG\_ACPI\_APEI [=y] \textbf{[Y]}\\ +APEI ermöglicht es, Fehler (z.B. vom Chipsatz) an das Betriebssystem zu melden. Dies verbessert +insbesondere die NMI-Behandlung. Darüber hinaus unterstützt es Fehlerserialisierung und Fehlerinjektion. + +\paragraph{ACPI Generic Hardware Error Source}$~$\\ +CONFIG\_ACPI\_APEI\_GHES [=y] \textbf{[Y]}\\ +Generic Hardware Error Source bietet eine Möglichkeit, Plattform-Hardware-Fehler (z. B. vom Chipsatz) zu melden. +Sie arbeitet im so genannten \glqq Firmware First\grqq{}-Modus, d. h. Hardwarefehler werden zunächst an die +Firmware gemeldet und dann von der Firmware an Linux weitergeleitet. +Auf diese Weise können einige Nicht-Standard-Hardware-Fehlerregister oder Nicht-Standard-Hardware-Verbindungen +von der Firmware überprüft werden, um wertvollere Hardware-Fehlerinformationen für Linux zu erhalten. + +\paragraph{ACPI PCIe AER logging/recovering support}$~$\\ +CONFIG\_ACPI\_APEI\_PCIEAER [=y] \textbf{[Y]}\\ +PCIe-AER-Fehler können über den APEI-Firmware-First-Modus gemeldet werden. Aktivieren Sie diese Option, +um die entsprechende Unterstützung zu aktivieren. + +\subsubsection{ACPI memory error recovering support} +CONFIG\_ACPI\_APEI\_MEMORY\_FAILURE [=y] \textbf{[Y]}\\ +Speicherfehler können über den APEI-Firmware-First-Modus gemeldet werden. Aktivieren Sie diese Option, +um die Unterstützung für die Speicherwiederherstellung zu aktivieren. + +\subsubsection{APEI Error INJection (EINJ)} +CONFIG\_ACPI\_APEI\_EINJ [=m] \textbf{[M]}\\ +EINJ bietet einen Hardware-Fehlerinjektionsmechanismus, der hauptsächlich zur Fehlersuche und zum Testen +der anderen Teile von APEI und einiger anderer RAS-Funktionen verwendet wird. + +\subsubsection{APEI Error Record Serialization Table (ERST) Debug Support} +CONFIG\_ACPI\_APEI\_ERST\_DEBUG [=m] \textbf{[M]}\\ +ERST ist eine von APEI bereitgestellte Möglichkeit, Hardware-Fehlerinformationen in einem dauerhaften Speicher +zu speichern und von dort abzurufen. Aktivieren Sie dies, wenn Sie die ERST-Kernelunterstützung und +Firmware-Implementierung debuggen und testen wollen. + +\subsubsection{Intel DPTF (Dymnamic Platform and Thermal Framework) Support \texorpdfstring{$\rightarrow$}{->}} +CONFIG\_ACPI\_DPTF [=y] \textbf{[Y]}\\ +Intel Dynamic Platform and Thermal Framework (DPTF) ist eine Hardware-/Softwarelösung auf Plattformebene für +das Energie- und Wärmemanagement. Als Container für mehrere Energie-/Thermotechnologien bietet DPTF einen +koordinierten Ansatz für verschiedene Richtlinien, die den Hardwarezustand eines Systems beeinflussen. + +\paragraph{Platform Power DPTF Participant}$~$\\ +CONFIG\_DPTF\_POWER [=m] \textbf{[M]}\\ +Dieser Treiber bietet Unterstützung für das Dynamic Platform and Thermal Framework (DPTF) Platform Power +Participant Device (INT3407). Dieser Teilnehmer ist für die Offenlegung der Plattformtelemetrie verantwortlich: +\begin{itemize} + \item max\_platform\_power + \item plattform\_leistung\_quelle + \item adapter\_rating + \item battery\_steady\_power + \item ladegerät\_typ +\end{itemize} +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul heißt dann \texttt{dptf\_power}. + +\paragraph{PCH FIVR DPTF Participant}$~$\\ +CONFIG\_DPTF\_PCH\_FIVR [=m] \textbf{[M]}\\ +Dieser Treiber fügt Unterstützung für Dynamic Platform and Thermal Framework (DPTF) PCH FIVR Participant +Device Support hinzu. Dieser Treiber ermöglicht es, die Frequenz des PCH FIVR (Fully Integrated Voltage Regulator) +zu schalten. Dieser Teilnehmer ist für die Bereitstellung verantwortlich: +\begin{itemize} + \item freq\_mhz\_low\_clock + \item freq\_mhz\_high\_clock +\end{itemize} +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: das Modul wird +\texttt{dptf\_pch\_fivr} heißen. + \end{document}