From 8151b4615c3d424a1091199a3cf858d5fdc1dd74 Mon Sep 17 00:00:00 2001 From: Thomas Kuschel Date: Wed, 6 Aug 2025 16:49:14 +0200 Subject: [PATCH] UPD configuration 04 upto 05 for Linux 6.16 --- .vscode/settings.json | 6 + .../.linux_configuration_hyphenation.sty | 1 + documentation/linux_configuration.pdf | 4 +- documentation/linux_configuration.tex | 12 +- .../linux_configuration_01_general_setup.tex | 2 +- .../linux_configuration_02_64-bit_kernel.tex | 2 +- ...uration_03_processor_type_and_features.tex | 2 +- ...4_mitigations_for_cpu_vulnerabilities.tex} | 226 ++--- ...n_05_power_management_and_acpi_options.tex | 783 ++++++++---------- 9 files changed, 496 insertions(+), 542 deletions(-) rename documentation/{linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities.tex => linux_configuration_04_mitigations_for_cpu_vulnerabilities.tex} (52%) diff --git a/.vscode/settings.json b/.vscode/settings.json index c39fd0c..d7d57ae 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -85,6 +85,7 @@ "Arasan", "arbeiten", "architekturabhängige", + "architekturbasierte", "archlinux", "arcmsr", "arcnet", @@ -413,6 +414,7 @@ "Dateisystemunterstützung", "datenabhängige", "datenbankähnliche", + "Datenleckage", "Davicom", "Dawi", "dccp", @@ -860,6 +862,7 @@ "ICAN", "Icanx", "IDLETIMER", + "idpb", "idpf", "ieee", "ietf", @@ -1493,6 +1496,7 @@ "PARTUUID", "PASIDs", "Passthru", + "Patchen", "Patchram", "Pathwalk", "PCAN", @@ -2253,6 +2257,7 @@ "vmcore", "vmemmap", "Vmemmap", + "vmexit", "vmlinux", "VMOD", "VMWGFX", @@ -2347,6 +2352,7 @@ "yama", "yellowfin", "Yopy", + "zählerbasierten", "Zaptel", "Zaurus", "zbud", diff --git a/documentation/.linux_configuration_hyphenation.sty b/documentation/.linux_configuration_hyphenation.sty index e50e597..b44480f 100644 --- a/documentation/.linux_configuration_hyphenation.sty +++ b/documentation/.linux_configuration_hyphenation.sty @@ -14,6 +14,7 @@ Gast-spei-cher-in-halts In-ter-feren-zen Leistungs-gewinne Le-se-mar-ker +Platt-form-ebene Sicher-heits-modulen Sub-netze Web-ser-ver diff --git a/documentation/linux_configuration.pdf b/documentation/linux_configuration.pdf index 74f56c2..3c5c031 100644 --- a/documentation/linux_configuration.pdf +++ b/documentation/linux_configuration.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b33e2e703fd5328e39235b4277eac76023827698df1e3e0d7637724897675a2f -size 841319 +oid sha256:44714bcb8161dc63a003feeab5a6edc5d156e13a4be4f503587ac370197717a6 +size 449775 diff --git a/documentation/linux_configuration.tex b/documentation/linux_configuration.tex index 330cfac..40e7a79 100644 --- a/documentation/linux_configuration.tex +++ b/documentation/linux_configuration.tex @@ -10,15 +10,15 @@ % pacman -S texlive-mathscience \includeonly{ - linux_configuration_01_general_setup, + %linux_configuration_01_general_setup, linux_configuration_02_64-bit_kernel, - linux_configuration_03_processor_type_and_features, - %linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities, - %linux_configuration_05_power_management_and_acpi_options, + %linux_configuration_03_processor_type_and_features, + linux_configuration_04_mitigations_for_cpu_vulnerabilities, + linux_configuration_05_power_management_and_acpi_options, %linux_configuration_09_general_architecture-dependent_options, %linux_configuration_11_enable_the_block_layer, %linux_configuration_12_executable_file_formats, - linux_configuration_13_memory_management_options, + %linux_configuration_13_memory_management_options, %linux_configuration_14_networking_support, %linux_configuration_15_device_drivers, %linux_configuration_16_file_systems, @@ -208,7 +208,7 @@ Version \version ~an: %3 \include{linux_configuration_03_processor_type_and_features} %4 -\include{linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities} +\include{linux_configuration_04_mitigations_for_cpu_vulnerabilities} %5 \include{linux_configuration_05_power_management_and_acpi_options} %6 diff --git a/documentation/linux_configuration_01_general_setup.tex b/documentation/linux_configuration_01_general_setup.tex index 5c89a54..33055e9 100644 --- a/documentation/linux_configuration_01_general_setup.tex +++ b/documentation/linux_configuration_01_general_setup.tex @@ -1,4 +1,4 @@ -% linux_configuration_01_general_setup +% linux_configuration_01_general_setup.tex % since Linux 6.16 \section{General setup \texorpdfstring{$\rightarrow$}{->}} diff --git a/documentation/linux_configuration_02_64-bit_kernel.tex b/documentation/linux_configuration_02_64-bit_kernel.tex index 495dafb..fd48965 100644 --- a/documentation/linux_configuration_02_64-bit_kernel.tex +++ b/documentation/linux_configuration_02_64-bit_kernel.tex @@ -1,4 +1,4 @@ -% linux_configuration_02_64-bit_kernel +% linux_configuration_02_64-bit_kernel.tex % since Linux 6.16 \section{64-bit kernel} CONFIG\_64BIT [=y] \textbf{[Y]}\\ diff --git a/documentation/linux_configuration_03_processor_type_and_features.tex b/documentation/linux_configuration_03_processor_type_and_features.tex index c25456e..7b13134 100644 --- a/documentation/linux_configuration_03_processor_type_and_features.tex +++ b/documentation/linux_configuration_03_processor_type_and_features.tex @@ -1,4 +1,4 @@ -% linux_configuration_03_processor_type_and_features +% linux_configuration_03_processor_type_and_features.tex % since Linux 6.16 \section{Processor type and features \texorpdfstring{$\rightarrow$}{->}} Prozessortyp und Eigenschaften diff --git a/documentation/linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities.tex b/documentation/linux_configuration_04_mitigations_for_cpu_vulnerabilities.tex similarity index 52% rename from documentation/linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities.tex rename to documentation/linux_configuration_04_mitigations_for_cpu_vulnerabilities.tex index 4a2782b..85d7510 100644 --- a/documentation/linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities.tex +++ b/documentation/linux_configuration_04_mitigations_for_cpu_vulnerabilities.tex @@ -1,95 +1,98 @@ -% linux_configuration_04_mitigations_for_speculative_execution_vulnerabilities +% linux_configuration_04_mitigations_for_cpu_vulnerabilities.tex % since Linux 6.16 -\section{Mitigations for speculative execution vulnerabilities \texorpdfstring{$\rightarrow$}{->}} -CONFIG\_SPECULATION\_MITIGATIONS [=y] \textbf{[Y]}\\ -Sagen Sie hier Y, um Optionen zu aktivieren, die Abhilfemaßnahmen für Hardware-Schwachstellen durch spekulative Ausführung ermöglichen. -Wenn Sie N sagen, werden alle Abhilfemaßnahmen deaktiviert. -Sie sollten wirklich wissen, was Sie tun, um dies anzugeben. +% former: \section{Mitigations for speculative execution vulnerabilities \texorpdfstring{$\rightarrow$}{->}} +\section{Mitigations for CPU vulnerabilities {\tiny{seit 6.9}} \texorpdfstring{$\rightarrow$}{->}} +% CONFIG\_SPECULATION\_MITIGATIONS [=y] \textbf{[Y]}\\ +CONFIG\_CPU\_MITIGATIONS [=y] \textbf{[Y]}\\ +Geben Sie hier Y ein, um Optionen zu aktivieren, die Abhilfemaßnahmen für Hardware-Sicherheitslücken (in der Regel im Zusammenhang mit spekulativer Ausführung) ermöglichen. +Abhilfemaßnahmen können über den Kernel-Parameter \texttt{mitigations} zur Laufzeit deaktiviert oder auf SMT-Systeme beschränkt werden.\\ +Wenn Sie N eingeben, werden alle Abhilfemaßnahmen deaktiviert. +Dies kann zur Laufzeit NICHT überschrieben werden.\\ +Geben Sie Y ein, es sei denn, Sie wissen genau, was Sie tun. \english{Say Y here to enable options which enable mitigations for hardware vulnerabilities (usually related to speculative execution). -Mitigations can be disabled or restricted to SMT systems at runtime via the "mitigations" kernel parameter.\\ +Mitigations can be disabled or restricted to SMT systems at runtime via the ``mitigations'' kernel parameter.\\ If you say N, all mitigations will be disabled. This CANNOT be overridden at runtime.\\ -Say 'Y', unless you really know what you are doing.} +Say `Y', unless you really know what you are doing.} -%4.1 +%4.1 changed from CONFIG\_PAGE\_TABLE\_ISOLATION to CONFIG\_MITIGATION\_PAGE\_TABLE\_ISOLATION seit 6.9 \subsection{Remove the kernel mapping in user mode} -CONFIG\_PAGE\_TABLE\_ISOLATION [=y] \textbf{[Y]}\\ -Diese Funktion reduziert die Anzahl der Hardware-Seitenkanäle, indem sie sicherstellt, dass die meisten -Kernel-Adressen nicht in den Benutzerraum abgebildet werden.\\ +CONFIG\_MITIGATION\_PAGE\_TABLE\_ISOLATION [=y] \textbf{[Y]}\\ +Diese Funktion reduziert die Anzahl der Hardware-Seitenkanäle, indem sie sicherstellt, dass die meisten Kernel-Adressen nicht in den Benutzerraum abgebildet werden.\\ Siehe \texttt{Documentation/arch/x86/pti.rst} für weitere Details. -\english{This feature reduces the number of hardware side channels by ensuring that -the majority of kernel addresses are not mapped into userspace.\\ +\english{This feature reduces the number of hardware side channels by ensuring that the majority of kernel addresses are not mapped into userspace.\\ See Documentation/arch/x86/pti.rst for more details.} -%4.2 +%4.2 changed from CONFIG\_RETPOLINE to CONFIG\_MITIGATION\_RETPOLINE seit 6.9 \subsection{Avoid speculative indirect branches in kernel} -CONFIG\_RETPOLINE [=y] \textbf{[Y]}\\ -Kompilieren Sie den Kernel mit den retpoline Compiler-Optionen, um Datenlecks zwischen Kernel und Benutzer -zu verhindern, indem spekulative indirekte Verzweigungen vermieden werden. Erfordert einen Compiler mit -\texttt{-mindirect-branch=thunk-extern} Unterstützung für vollen Schutz. Der Kernel kann langsamer laufen. -\english{Compile kernel with the retpoline compiler options to guard against kernel-to-user -data leaks by avoiding speculative indirect branches. +CONFIG\_MITIGATION\_RETPOLINE [=y] \textbf{[Y]}\\ +Kompilieren Sie den Kernel mit den retpoline Compiler-Optionen, um Datenlecks zwischen Kernel und Benutzer zu verhindern, indem spekulative indirekte Verzweigungen vermieden werden. +Erfordert einen Compiler mit \texttt{-mindirect-branch=thunk-extern} Unterstützung für vollen Schutz. +Der Kernel kann langsamer laufen. +\english{Compile kernel with the retpoline compiler options to guard against kernel-to-user data leaks by avoiding speculative indirect branches. Requires a compiler with -mindirect-branch=thunk-extern support for full protection. The kernel may run slower.} +%4.2.1 changed from CONFIG\_RETHUNK to CONFIG\_MITIGATION\_RETHUNK seit 6.9 \subsubsection{Enable return-thunks} -CONFIG\_RETHUNK [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit der Compileroption return-thunks, um Datenlecks zwischen Kernel und Benutzer zu -verhindern, indem Rückgabespekulationen vermieden werden. Erfordert einen Compiler mit -\texttt{-mfunction-return=thunk-extern} Unterstützung für vollen Schutz. Der Kernel kann langsamer laufen. -\english{Compile the kernel with the return-thunks compiler option to guard against -kernel-to-user data leaks by avoiding return speculation. +CONFIG\_MITIGATION\_RETHUNK [=y] \textbf{[Y]}\\ +Kompiliere den Kernel mit der Compileroption \texttt{return-thunks}, um Datenlecks zwischen Kernel und Benutzer zu verhindern, indem Rückgabespekulationen vermieden werden. +Erfordert einen Compiler mit \texttt{-mfunction-return=thunk-extern} Unterstützung für vollen Schutz. +Der Kernel kann langsamer laufen. +\english{Compile the kernel with the return-thunks compiler option to guard against kernel-to-user data leaks by avoiding return speculation. Requires a compiler with -mfunction-return=thunk-extern support for full protection. The kernel may run slower.} +%4.2.1.1 changed CONFIG seit 6.9 \paragraph{Enable UNRET on kernel entry}$~$\\ -CONFIG\_CPU\_UNRET\_ENTRY [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=unret}-Abschwächung. +%CONFIG\_CPU\_UNRET\_ENTRY [=y] \textbf{[Y]}\\ +CONFIG\_MITIGATION\_UNRET\_ENTRY [=y] \textbf{[Y]}\\ +Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=unret}"=Abwehrmaßnahme. \english{Compile the kernel with support for the retbleed=unret mitigation.} \note{Wird nur bei AMD-Prozessoren angezeigt.} %4.3 \subsection{Mitigate RSB underflow with call depth tracking} -CONFIG\_CALL\_DEPTH\_TRACKING [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit Call-Depth-Tracking, um das Intel SKL Return-Speculation-Buffer (RSB) Underflow-Problem -zu entschärfen. Die Entschärfung ist standardmäßig ausgeschaltet und muss in der Kernel-Befehlszeile über die -Option \texttt{retbleed=stuff} aktiviert werden. Für nicht betroffene Systeme ist der Overhead dieser Option -marginal, da die Verfolgung der Aufruftiefe zur Laufzeit generierte Call Thunks in einem vom Compiler generierten -Padding-Bereich und Call Patching verwendet. Dies erhöht die Textgröße um $\sim\qty{5}{\percent}$. Bei nicht betroffenen Systemen -ist dieser Platz ungenutzt. Auf betroffenen SKL-Systemen führt dies zu einem erheblichen Leistungsgewinn gegenüber -der IBRS-Abschwächung. -\english{Compile the kernel with call depth tracking to mitigate the -Intel SKL Return-Stack-Buffer (RSB) underflow issue. -The mitigation is off by default and needs to be enabled on the kernel command line via the -retbleed=stuff option. -For non-affected systems the overhead of this option is marginal as the call depth tracking -is using run-time generated call thunks in a compiler generated padding area and call patching. -This increases text size by $\sim$5\%. For non affected systems this space is unused. +%CONFIG\_CALL\_DEPTH\_TRACKING [=y] \textbf{[Y]}\\ +CONFIG\_MITIGATION\_CALL\_DEPTH\_TRACKING [=y] \textbf{[Y]}\\ +Kompiliere den Kernel mit Call-Depth-Tracking, um das Intel SKL Return-Speculation-Buffer (RSB) Underflow"=Problem zu beheben. +Die Abhilfe ist standardmäßig deaktiviert und muss über die Option \texttt{retbleed=stuff} in der Kernel"=Befehlszeile aktiviert werden. +Für nicht betroffene Systeme ist der Overhead dieser Option marginal, da die Verfolgung der Aufruftiefe zur Laufzeit generierte Call Thunks in einem vom Compiler generierten Padding-Bereich und Call Patching verwendet. +Dies erhöht die Textgröße um $\sim\qty{5}{\percent}$. +Bei nicht betroffenen Systemen ist dieser Platz ungenutzt. +Auf betroffenen SKL-Systemen führt dies zu einem erheblichen Leistungsgewinn gegenüber der IBRS-Abschwächung. +\english{Compile the kernel with call depth tracking to mitigate the Intel SKL Return-Stack-Buffer (RSB) underflow issue. +The mitigation is off by default and needs to be enabled on the kernel command line via the retbleed=stuff option. +For non-affected systems the overhead of this option is marginal as the call depth tracking is using run-time generated call thunks in a compiler generated padding area and call patching. +This increases text size by $\sim$5\%. +For non affected systems this space is unused. On affected SKL systems this results in a significant performance gain over the IBRS mitigation.} -\subsubsection{Enable call thunks and call depth tracking debugging} +\subsubsection{Enable call thunks and call depth tracking debugging \tiny{seit 6.2}} CONFIG\_CALL\_THUNKS\_DEBUG [=n] \textbf{[N]}\\ -Aktiviere Call/Ret-Zähler zur Erkennung von Ungleichgewichten und baue ein lautes dmesg über die Erzeugung von -Callthunks und Call-Patching zur Fehlersuche ein. Die Debug-Ausdrucke müssen in der Kernel-Befehlszeile mit -\texttt{debug-callthunks} aktiviert werden. Aktivieren Sie dies nur, wenn Sie Call Thunks debuggen wollen, -da dies einen spürbaren Laufzeit-Overhead erzeugt. Wenn Sie unsicher sind, sagen Sie N. -\english{Enable call/ret counters for imbalance detection and build in a noisy dmesg about -callthunks generation and call patching for trouble shooting. +Aktiviere Anruf-/Rückrufzähler für die Erkennung von Ungleichgewichten und integriere eine laute dmesg"=Meldung über die Generierung von Callthunks und das Patchen von Aufrufen zur Fehlerbehebung. +Die Debug-Ausgaben müssen in der Kernel-Befehlszeile mit \texttt{debug-callthunks} aktiviert werden. +Aktivieren Sie diese Option nur, wenn Sie Call Thunks debuggen wollen, da dies einen spürbaren Laufzeit-Overhead erzeugt. +Wenn Sie unsicher sind, sagen Sie N. +\english{Enable call/ret counters for imbalance detection and build in a noisy dmesg about callthunks generation and call patching for trouble shooting. The debug prints need to be enabled on the kernel command line with 'debug-callthunks'. Only enable this when you are debugging call thunks as this creates a noticeable runtime overhead. If unsure say N.} %4.4 \subsection{Enable IBPB on kernel entry} -CONFIG\_CPU\_IBPB\_ENTRY [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit Unterstützung für die \texttt{retbleed=ibpb}-Abschwächung. -\english{Compile the kernel with support for the retbleed=ibpb and spec\_rstack\_overflow={ibpb,ibpb-vmexit} mitigations.} +%CONFIG\_CPU\_IBPB\_ENTRY [=y] \textbf{[Y]}\\ +CONFIG\_MITIGATION\_IBPB\_ENTRY [=y] \textbf{[Y]}\\ +Kompiliere den Kernel mit Unterstützung für die beiden Abwehrmaßnamen: \texttt{retbleed=idpb} und\\\texttt{spec\_rstack\_overflow=\{ibpb,ibpb-vmexit\}}. +\english{Compile the kernel with support for the retbleed=ibpb and spec\_rstack\_overflow=\{ibpb,ibpb-vmexit\} mitigations.} +\note{Wird nur angezeigt, wenn ein AMD-Prozessor unterstützt wird.} %4.5 \subsection{Enable IBRS on kernel entry} -CONFIG\_CPU\_IBRS\_ENTRY [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit Unterstützung für die \texttt{spectre\_v2=ibrs}-Abschwächung. -Dadurch werden sowohl spectre\_v2 als auch retbleed auf Kosten der Leistung abgeschwächt. +%CONFIG\_CPU\_IBRS\_ENTRY [=y] \textbf{[Y]}\\ +CONFIG\_MITIGATION\_IBRS\_ENTRY [=y] \textbf{[Y]}\\ +Kompiliere den Kernel mit Unterstützung für die \texttt{spectre\_v2=ibrs}"=Abwehrmaßnahme. +Dadurch werden sowohl \texttt{spectre\_v2} als auch \texttt{retbleed} mit erheblichen Leistungseinbußen abgewehrt. \english{Compile the kernel with support for the spectre\_v2=ibrs mitigation. This mitigates both spectre\_v2 and retbleed at great cost to performance.} @@ -98,38 +101,42 @@ This mitigates both spectre\_v2 and retbleed at great cost to performance.} CONFIG\_MITIGATION\_SRSO [=y] \textbf{[N]}\\ Aktiviert die SRSO-Abschwächung, die auf AMD Zen1-4-Maschinen benötigt wird. \english{Enable the SRSO mitigation needed on AMD Zen1-4 machines.} +\note{Wird nur angezeigt, wenn ein AMD-Prozessor unterstützt wird.} %4.7 \subsection{Mitigate Straight-Line-Speculation} CONFIG\_MITIGATION\_SLS [=y] \textbf{[Y]}\\ -Kompiliere den Kernel mit Straight-Line-Speculation-Optionen, um ihn vor Straight-Line-Speculation zu -schützen. Das Kernel-Image könnte etwas größer sein. +Kompiliere den Kernel mit Straight-Line-Speculation-Optionen, um ihn vor Straight-Line-Speculation zu schützen. +Das Kernel-Image könnte etwas größer sein. \english{Compile the kernel with straight-line-speculation options to guard against straight line speculation. The kernel image might be slightly larger.} {\color{gray}{ -\subsection*{Force GDS Mitigation} +\subsection*{Force GDS Mitigation \tiny{bis 6.8}} CONFIG\_GDS\_FORCE\_MITIGATION [=n] \textbf{[N]}\\ -Gather Data Sampling (GDS) ist eine Hardware-Schwachstelle, die unberechtigten spekulativen Zugriff auf -Daten ermöglicht, die zuvor in Vektorregistern gespeichert wurden. Diese Option ist gleichbedeutend mit -der Einstellung \texttt{gather\_data\_sampling=force} in der Befehlszeile. Die Mikrocode-Abschwächung -wird verwendet, falls vorhanden, andernfalls wird AVX als Abschwächung deaktiviert. Auf betroffenen -Systemen, denen der Microcode fehlt, wird jeder Userspace-Code, der AVX bedingungslos verwendet, bei -gesetzter Option abbrechen. Das Setzen dieser Option auf Systemen, die nicht für GDS anfällig sind, hat -keine Auswirkungen.\\ -Im Zweifelsfall sagen Sie N.}} +Gather Data Sampling (GDS) ist eine Hardware-Schwachstelle, die unberechtigten spekulativen Zugriff auf Daten ermöglicht, die zuvor in Vektorregistern gespeichert wurden. +Diese Option ist gleichbedeutend mit der Einstellung \texttt{gather\_data\_sampling=force} in der Befehlszeile. +Die Mikrocode-Abwehrmaßnahme wird verwendet, falls vorhanden, andernfalls wird AVX als Abwehrmaßnahme deaktiviert. +Auf betroffenen Systemen, denen der Microcode fehlt, wird jeder Userspace-Code, der AVX bedingungslos verwendet, bei gesetzter Option abbrechen. +Das Setzen dieser Option auf Systemen, die nicht für GDS anfällig sind, hat keine Auswirkungen.\\ +Im Zweifelsfall sagen Sie N.} +\english{Gather Data Sampling (GDS) is a hardware vulnerability which allows unprivileged speculative access to data which was previously stored in vector registers. +This option is equivalent to setting gather\_data\_sampling=force on the command line. +The microcode mitigation is used if present, otherwise AVX is disabled as a mitigation. +On affected systems that are missing the microcode any userspace code that unconditionally uses AVX will break with this option set. +Setting this option on systems not vulnerable to GDS has no effect. +If in doubt, say N.} +} %4.8 \subsection{Mitigate Gather Data Sampling} CONFIG\_MITIGATION\_GDS [=y] \textbf{[Y]}\\ -Entschärfung für Gather Data Sampling (GDS) aktivieren. -GDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf Daten -ermöglicht, die zuvor in Vektorregistern gespeichert wurden. +Aktivierung der Risikominderung für die Datenerfassung, Gather Data Sampling (GDS). +GDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf Daten ermöglicht, die zuvor in Vektorregistern gespeichert wurden. Der Angreifer verwendet Gather-Anweisungen, um die veralteten Vektorregisterdaten zu ermitteln. \english{Enable mitigation for Gather Data Sampling (GDS). -GDS is a hardware vulnerability which allows unprivileged speculative access to data -which was previously stored in vector registers. +GDS is a hardware vulnerability which allows unprivileged speculative access to data which was previously stored in vector registers. The attacker uses gather instructions to infer the stale vector register data.} %4.9 @@ -141,52 +148,45 @@ Sie ermöglicht unprivilegierten spekulativen Zugriff auf veraltete Daten, die z Siehe auch $<$file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst$>$ \english{Enable mitigation for Register File Data Sampling (RFDS) by default. RFDS is a hardware vulnerability which affects Intel Atom CPUs. -It allows unprivileged speculative access to stale data previously stored in floating point, -vector and integer registers. +It allows unprivileged speculative access to stale data previously stored in floating point, vector and integer registers. See also $<$file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst$>$} %4.10 \subsection{Mitigate Spectre-BHB (Branch History Injection)} CONFIG\_MITIGATION\_SPECTRE\_BHI [=y] \textbf{[Y]}\\ Aktivieren Sie BHI-Abschwächungen. -BHI-Angriffe sind eine Form von Spectre-V2-Angriffen, bei denen der Branch-History-Puffer -vergiftet wird, um indirekte Verzweigungen spekulativ zu steuern. +BHI-Angriffe sind eine Form von Spectre-V2-Angriffen, bei denen der Branch-History-Puffer vergiftet wird, um indirekte Verzweigungen spekulativ zu steuern. Siehe $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$ -\english{Enable BHI mitigations. BHI attacks are a form of Spectre V2 attacks -where the branch history buffer is poisoned to speculatively steer indirect branches. +\english{Enable BHI mitigations. +BHI attacks are a form of Spectre V2 attacks where the branch history buffer is poisoned to speculatively steer indirect branches. See $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$} %4.11 \subsection{Mitigate Microarchitectural Data Sampling (MDS) hardware bug} CONFIG\_MITIGATION\_MDS [=y] \textbf{[Y]}\\* -Aktiviert die Abschwächung für Microarchitectural Data Sampling (MDS). -MDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff -auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind.\\ +Aktivierung der Abhilfemaßnahmen für Microarchitectural Data Sampling (MDS). +MDS ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind.\\ Siehe auch $<$file:Documentation/admin-guide/hw-vuln/mds.rst$>$ \english{Enable mitigation for Microarchitectural Data Sampling (MDS). -MDS is a hardware vulnerability which allows unprivileged speculative access -to data which is available in various CPU internal buffers.\\ +MDS is a hardware vulnerability which allows unprivileged speculative access to data which is available in various CPU internal buffers.\\ See also $<$file:Documentation/admin-guide/hw-vuln/mds.rst$>$} %4.12 \subsection{Mitigate TSX Asynchronous Abort (TAA) hardware bug} CONFIG\_MITIGATION\_TAA [=y] \textbf{[Y]}\\* Aktivieren Sie die Schadensbegrenzung für TSX Asynchronous Abort (TAA). -TAA ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff -auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind, -indem asynchrone Abbrüche innerhalb einer Intel TSX-Transaktionsregion verwendet werden. +TAA ist eine Hardware-Schwachstelle, die unprivilegierten spekulativen Zugriff auf Daten ermöglicht, die in verschiedenen CPU-internen Puffern verfügbar sind, indem asynchrone Abbrüche innerhalb einer Intel TSX-Transaktionsregion verwendet werden. Siehe auch $<$file:Documentation/admin-guide/hw-vuln/tsx\_async\_abort.rst$>$ \english{Enable mitigation for TSX Asynchronous Abort (TAA). -TAA is a hardware vulnerability that allows unprivileged speculative access to data which is available in various -CPU internal buffers by using asynchronous aborts within an Intel TSX transactional region. +TAA is a hardware vulnerability that allows unprivileged speculative access to data which is available in various CPU internal buffers by using asynchronous aborts within an Intel TSX transactional region. See also $<$file:Documentation/admin-guide/hw-vuln/tsx\_async\_abort.rst$>$} %4.13 \subsection{Mitigate MMIO Stale Data hardware bug} CONFIG\_MITIGATION\_MMIO\_STALE\_DATA [=y] \textbf{[Y]}\\* -Entschärfung von MMIO Stale Data-Hardwarefehlern aktivieren. -MMIO Stale Data-Schwachstellen in Prozessoren sind eine Klasse von Memory-Mapped I/O (MMIO)-Schwachstellen, die Daten preisgeben können. -Die Schwachstellen erfordern, dass der Angreifer Zugriff auf MMIO.\\ +Aktivierung der Fehlerbehebung für MMIO-Hardwarefehler aufgrund veralteter Daten. +Prozessor-MMIO-Sicherheitslücken aufgrund veralteter Daten sind eine Klasse von MMIO-Sicherheitslücken (Memory-Mapped I/O), durch die Daten offengelegt werden können. +Die Sicherheitslücken setzen voraus, dass der Angreifer Zugriff auf MMIO hat.\\ Siehe auch \texttt{file:Documentation/admin-guide/hw-vuln/processor\_mmio\_stale\_data.rst} \english{Enable mitigation for MMIO Stale Data hardware bugs. Processor MMIO Stale Data Vulnerabilities are a class of memory-mapped I/O (MMIO) vulnerabilities that can expose data. @@ -208,12 +208,10 @@ See $<$file:Documentation/admin-guide/hw-vuln/l1tf.rst} CONFIG\_MITIGATION\_RETBLEED [=y] \textbf{[Y]}\\* Aktivieren Sie Entschärfung für die RETBleed-Schwachstelle (Arbitrary Speculative Code Execution with Return Instructions). RETBleed ist ein spekulativer Ausführungsangriff, der das mikroarchitektonische Verhalten in vielen modernen Mikroprozessoren ausnutzt, ähnlich wie bei Spectre v2. -Ein unprivilegierter Angreifer kann diese Schwachstellen nutzen, um herkömmliche Speichersicherheitsbeschränkungen zu umgehen und Lesezugriff auf -privilegierten Speicher zu erlangen, der ansonsten unzugänglich wäre. +Ein unprivilegierter Angreifer kann diese Schwachstellen nutzen, um herkömmliche Speichersicherheitsbeschränkungen zu umgehen und Lesezugriff auf privilegierten Speicher zu erlangen, der ansonsten unzugänglich wäre. \english{Enable mitigation for RETBleed (Arbitrary Speculative Code Execution with Return Instructions) vulnerability. RETBleed is a speculative execution attack which takes advantage of microarchitectural behavior in many modern microprocessors, similar to Spectre v2. -An unprivileged attacker can use these flaws to bypass conventional memory security restrictions to gain read access to privileged memory -that would otherwise be inaccessible.} +An unprivileged attacker can use these flaws to bypass conventional memory security restrictions to gain read access to privileged memory that would otherwise be inaccessible.} %4.16 \subsection{Mitigate SPECTRE V1 hardware bug} @@ -222,8 +220,7 @@ Aktiviert die Schadensbegrenzung für Spectre V1 (Bounds Check Bypass). Spectre V1 ist eine Klasse von Seitenkanalangriffen, die sich die spekulative Ausführung zunutze macht, indem sie bedingte Verzweigungsanweisungen umgeht, die für die Überprüfung der Speicherzugriffsgrenzen verwendet werden. Siehe auch \texttt{file:Documentation/admin-guide/hw-vuln/spectre.rst} \english{Enable mitigation for Spectre V1 (Bounds Check Bypass). -Spectre V1 is a class of side channel attacks that takes advantage of speculative execution that bypasses conditional -branch instructions used for memory access bounds check.\\ +Spectre V1 is a class of side channel attacks that takes advantage of speculative execution that bypasses conditional branch instructions used for memory access bounds check.\\ See also $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$} %4.17 @@ -231,23 +228,19 @@ See also $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$} CONFIG\_MITIGATION\_SPECTRE\_V2 [=y] \textbf{[Y]}\\* Aktivierung der Schadensbegrenzung für Spectre V2 (Branch Target Injection). Spectre V2 ist eine Klasse von Seitenkanalangriffen, die indirekte Verzweigungsvorhersagen innerhalb des Prozessors ausnutzen. -Bei Angriffen der Spectre-Variante 2 kann der Angreifer spekulative indirekte Verzweigungen im Opfer zu Gadget-Code lenken, indem er -den Verzweigungszielpuffer einer CPU vergiftet, der für die Vorhersage indirekter Verzweigungsadressen verwendet wird.\\ +Bei Angriffen der Spectre-Variante 2 kann der Angreifer spekulative indirekte Verzweigungen im Opfer zu Gadget-Code lenken, indem er den Verzweigungszielpuffer einer CPU vergiftet, der für die Vorhersage indirekter Verzweigungsadressen verwendet wird.\\ Siehe auch $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$ \english{Enable mitigation for Spectre V2 (Branch Target Injection). Spectre V2 is a class of side channel attacks that takes advantage of indirect branch predictors inside the processor. -In Spectre variant 2 attacks, the attacker can steer speculative indirect branches in the victim to gadget code by poisoning -the branch target buffer of a CPU used for predicting indirect branch addresses.\\ +In Spectre variant 2 attacks, the attacker can steer speculative indirect branches in the victim to gadget code by poisoning the branch target buffer of a CPU used for predicting indirect branch addresses.\\ See also $<$file:Documentation/admin-guide/hw-vuln/spectre.rst$>$} %4.18 \subsection{Mitigate Special Register Buffer Data Sampling (SRBDS) hardware bug} CONFIG\_MITIGATION\_SRBDS [=y] \textbf{[Y]}\\* Aktivierung der Schadensbegrenzung für Special Register Buffer Data Sampling (SRBDS). -SRBDS ist eine Hardware-Schwachstelle, die es MDS-Techniken (Microarchitectural Data Sampling) ermöglicht, -von Spezialregisterzugriffen zurückgegebene Werte abzuleiten. -Ein nicht privilegierter Benutzer kann mithilfe von MDS-Techniken Werte extrahieren, die von RDRAND und RDSEED zurückgegeben werden, -die auf einem anderen Kern oder Geschwister-Thread ausgeführt werden.\\ +SRBDS ist eine Hardware-Schwachstelle, die es MDS-Techniken (Microarchitectural Data Sampling) ermöglicht, von Spezialregisterzugriffen zurückgegebene Werte abzuleiten. +Ein nicht privilegierter Benutzer kann mithilfe von MDS-Techniken Werte extrahieren, die von RDRAND und RDSEED zurückgegeben werden, die auf einem anderen Kern oder Geschwister-Thread ausgeführt werden.\\ Siehe \texttt{file:Documentation/admin-guide/hw-vuln/special-register-buffer-data-sampling.rst} \english{Enable mitigation for Special Register Buffer Data Sampling (SRBDS). SRBDS is a hardware vulnerability that allows Microarchitectural Data Sampling (MDS) techniques to infer values returned from special register accesses. @@ -260,5 +253,22 @@ CONFIG\_MITITGATION\_SSB [=y] \textbf{[Y]}\\* Aktivierung der Schadensbegrenzung für Speculative Store Bypass (SSB). SSB ist eine Hardware-Sicherheitslücke, deren Ausnutzung die spekulative Ausführung ähnlich wie bei den Sicherheitslücken Meltdown und Spectre ausnutzt. \english{Enable mitigation for Speculative Store Bypass (SSB). -SSB is a hardware security vulnerability and its exploitation takes advantage -of speculative execution in a similar way to the Meltdown and Spectre security vulnerabilities.} +SSB is a hardware security vulnerability and its exploitation takes advantage of speculative execution in a similar way to the Meltdown and Spectre security vulnerabilities.} + +%4.20 +\subsection{Enable Indirect Target Selection mitigation \tiny{seit 6.15}} +CONFIG\_MITIGATION\_ITS [=y] \textbf{[Y]}\\* +Aktivierung der ITS-Abwehrmaßnahme (Indirect Target Selection). +ITS ist ein Fehler in der BPU einiger Intel-CPUs, der Angriffe vom Typ Spectre V2 ermöglichen kann. +Wenn diese Funktion deaktiviert ist, kann die Abwehrmaßnahme nicht über die Befehlszeile aktiviert werden.\\ +Siehe $<$file:Documentation/admin-guide/hw-vuln/indirect-target-selection.rst$>$ +\english{Enable Indirect Target Selection (ITS) mitigation. ITS is a bug in BPU on some Intel CPUs that may allow Spectre V2 style attacks. If disabled, mitigation cannot be enabled via cmdline.\\ +See $<$file:Documentation/admin-guide/hw-vuln/indirect-target-selection.rst$>$} + +%4.21 Mitigate Transient Scheduler Attacks +\subsection{Mitigate Transient Scheduler Attacks \tiny{seit 6.16}} +CONFIG\_MITIGATION\_TSA [=y] \textbf{[Y]}\\* +Abwehrmaßnahmen für Transient Scheduler Attacks aktivieren. +TSA ist eine Hardware-Sicherheitslücke in AMD-CPUs, die dazu führen kann, dass ungültige Informationen an nachfolgende Befehle weitergeleitet werden, wodurch deren Timing beeinträchtigt wird und somit eine Datenleckage verursacht werden kann. +\english{Enable mitigation for Transient Scheduler Attacks. +TSA is a hardware security vulnerability on AMD CPUs which can lead to forwarding of invalid info to subsequent instructions and thus can affect their timing and thereby cause a leakage.} diff --git a/documentation/linux_configuration_05_power_management_and_acpi_options.tex b/documentation/linux_configuration_05_power_management_and_acpi_options.tex index 899eae4..70bdc29 100644 --- a/documentation/linux_configuration_05_power_management_and_acpi_options.tex +++ b/documentation/linux_configuration_05_power_management_and_acpi_options.tex @@ -1,24 +1,22 @@ % linux_configuration_05_power_management_and_acpi_options.tex -% Linux 6.14 +% since Linux 6.16 -%5.1 \section{Power management and ACPI options \texorpdfstring{$\rightarrow$}{->}} Energieverwaltung und ACPI-Optionen +%5.1 \subsection{Suspend to RAM and standby} CONFIG\_SUSPEND [=y] \textbf{[Y]}\\ -Ermöglicht dem System, in Ruhezustände einzutreten, in denen der Hauptspeicher mit Strom versorgt wird und -somit sein Inhalt erhalten bleibt, wie z.\,B. der Suspend-to-RAM-Zustand (z.\,B. der ACPI S3-Zustand). -\english{Allow the system to enter sleep states in which main memory is powered and thus its contents are preserved, such as the -suspend-to-RAM state (e.g. the ACPI S3 state).} +Ermöglicht dem System, in Ruhezustände einzutreten, in denen der Hauptspeicher mit Strom versorgt wird und somit sein Inhalt erhalten bleibt, wie z.\,B. der Suspend-to-RAM"=Zustand (z.\,B. der ACPI S3-Zustand). +\english{Allow the system to enter sleep states in which main memory is powered and thus its contents are preserved, such as the suspend-to-RAM state (e.g. the ACPI S3 state).} \subsubsection{Skip kernel's sys\_sync() on suspend to RAM/standby} CONFIG\_SUSPEND\_SKIP\_SYNC [=n] \textbf{[N]}\\ -Überspringen Sie das Kernel sys\_sync(), bevor Sie Benutzerprozesse einfrieren. Einige Systeme ziehen es vor, -diese Kosten nicht bei jedem Aufruf von suspend zu zahlen, oder sie begnügen sich mit dem Aufruf von sync() aus dem User-Space vor dem Aufruf von suspend. +Überspringen Sie die Kernel-Funktion sys\_sync() vor dem Einfrieren von Benutzerprozessen. +Einige Systeme ziehen es vor, diese Kosten nicht bei jedem Aufruf von suspend zu zahlen, oder sie begnügen sich damit, \texttt{sync()} aus dem Benutzerbereich aufzurufen, bevor sie \texttt{suspend} aufrufen. Es gibt einen Laufzeitschalter unter \texttt{/sys/power/sync\_on\_suspend}, um dieses Verhalten zu konfigurieren. -Diese Einstellung ändert die Voreinstellung für den Laufzeitschalter. -Sagen Sie Y, um die Voreinstellung zu ändern und den Kernel \texttt{sys\_sync()} zu deaktivieren. +Diese Einstellung ändert die Standardeinstellung für den Laufzeitschalter. +Sagen Sie Y, um die Standardeinstellung zu ändern und den Kernel \texttt{sys\_sync()} zu deaktivieren. \english{Skip the kernel sys\_sync() before freezing user processes. Some systems prefer not to pay this cost on every invocation of suspend, or they are content with invoking sync() from user-space before invoking suspend. There's a run-time switch at `/sys/power/sync\_on\_suspend' to configure this behaviour. @@ -28,27 +26,21 @@ Say Y to change the default to disable the kernel sys\_sync().} %5.2 \subsection{Hibernation (aka `suspend to disk')} CONFIG\_HIBERNATION [=y] \textbf{[Y]}\\ -Aktiviert die Funktion \glqq Suspend to Disk\grqq{} (STD), -die in den Benutzeroberflächen gewöhnlich als \glqq Ruhezustand\grqq{} -bezeichnet wird. STD setzt das System an einen Haltepunkt und schaltet es aus; beim Neustart wird dieser Haltepunkt -wiederhergestellt. Sie können Ihren Rechner mit \texttt{echo disk > /sys/power/state} in den Ruhezustand versetzen, -nachdem Sie \texttt{resume=/dev/swappartition} in der Kernel-Befehlszeile in der Konfigurationsdatei Ihres Bootloaders -angegeben haben. Alternativ können Sie auch die zusätzlichen Userland-Tools verwenden, die unter -\url{http://suspend.sf.net} verfügbar sind. Im Prinzip sind weder ACPI noch APM erforderlich, obwohl beispielsweise -ACPI für die letzten Schritte verwendet wird, wenn es verfügbar ist. Einer der Gründe für die Verwendung von -Software-Suspend ist, dass die Firmware-Hooks für Suspend-Zustände wie Suspend-to-RAM (STR) oft nicht sehr gut mit -Linux funktionieren. Es wird ein Abbild erstellt, das in der aktiven Auslagerungsdatei gespeichert wird. -Beim nächsten Start übergeben Sie dem Kernel das Argument \texttt{resume=/dev/swappartition}, damit er das gespeicherte -Abbild erkennt, den Speicherstatus daraus wiederherstellt und wie zuvor weiterarbeitet. -Wenn Sie nicht wollen, dass der vorherige Zustand wiederhergestellt wird, verwenden Sie das Kernel-Befehlszeilenargument -\texttt{noresume}. Beachten Sie jedoch, dass fsck auf Ihren Dateisystemen ausgeführt wird und Sie mkswap auf der -Swap-Partition ausführen müssen, die für den Suspend verwendet wird. In begrenztem Umfang funktioniert es auch mit -Swap-Dateien (für Details siehe $<$file:Documentation/power/swsusp-and-swap-files.rst$>$). -Sie können jetzt booten, ohne den Vorgang fortzusetzen, und ihn später fortsetzen, aber in der Zwischenzeit können Sie -die Swap-Partition(en)/Datei(en), die am Suspendieren beteiligt waren, nicht verwenden. In diesem Fall dürfen Sie auch -nicht die Dateisysteme verwenden, die vor dem Suspendieren gemountet waren. Insbesondere dürfen Sie keine -journalisierten Dateisysteme mounten, die vor dem Suspending gemountet wurden, da diese sonst auf unschöne Weise -beschädigt werden. Weitere Informationen finden Sie in \texttt{file:Documentation/power/swsusp.rst}. +Aktiviert die Funktion \glqq Suspend to Disk\grqq{} (STD), die in den Benutzeroberflächen gewöhnlich als \glqq Ruhezustand\grqq{} bezeichnet wird. +STD setzt das System an einen Haltepunkt und schaltet es aus; beim Neustart wird dieser Haltepunkt wiederhergestellt. +Sie können Ihren Rechner mit \texttt{echo disk > /sys/power/state} in den Ruhezustand versetzen, nachdem Sie \texttt{resume=/dev/swappartition} in der Kernel-Befehlszeile in der Konfigurationsdatei Ihres Bootloaders angegeben haben. +Alternativ können Sie auch die zusätzlichen Userland-Tools verwenden, die unter \url{http://suspend.sf.net} verfügbar sind. +Im Prinzip sind weder ACPI noch APM erforderlich, obwohl beispielsweise ACPI für die letzten Schritte verwendet wird, wenn es verfügbar ist. +Einer der Gründe für die Verwendung von Software-Suspend ist, dass die Firmware-Hooks für Suspend-Zustände wie Suspend-to-RAM (STR) oft nicht sehr gut mit Linux funktionieren. +Es wird ein Abbild erstellt, das in der aktiven Auslagerungsdatei gespeichert wird. +Beim nächsten Start übergeben Sie dem Kernel das Argument \texttt{resume=/dev/swappartition}, damit er das gespeicherte Abbild erkennt, den Speicherstatus daraus wiederherstellt und wie zuvor weiterarbeitet. +Wenn Sie nicht wollen, dass der vorherige Zustand wiederhergestellt wird, verwenden Sie das Kernel-Befehlszeilenargument \texttt{noresume}. +Beachten Sie jedoch, dass fsck auf Ihren Dateisystemen ausgeführt wird und Sie mkswap auf der Swap-Partition ausführen müssen, die für den Suspend verwendet wird. +In begrenztem Umfang funktioniert es auch mit Swap-Dateien (für Details siehe $<$file:Documentation/power/swsusp-and-swap-files.rst$>$). +Sie können jetzt booten, ohne den Vorgang fortzusetzen, und ihn später fortsetzen, aber in der Zwischenzeit können Sie die Swap-Partition(en)/Datei(en), die am Suspendieren beteiligt waren, nicht verwenden. +In diesem Fall dürfen Sie auch nicht die Dateisysteme verwenden, die vor dem Suspendieren gemountet waren. +Insbesondere dürfen Sie keine journalisierten Dateisysteme mounten, die vor dem Suspending gemountet wurden, da diese sonst auf unschöne Weise beschädigt werden. +Weitere Informationen finden Sie in \texttt{file:Documentation/power/swsusp.rst}. \english{Enable the suspend to disk (STD) functionality, which is usually called ``hibernation'' in user interfaces. STD checkpoints the system and powers it off; and restores that checkpoint on reboot.\\ You can suspend your machine with `echo disk $>$ /sys/power/state' after placing resume=/dev/swappartition on the kernel command line in your bootloader's configuration file.\\ @@ -65,11 +57,11 @@ Also in this case you must not use the filesystems that were mounted before the In particular, you MUST NOT MOUNT any journaled filesystems mounted before the suspend or they will get corrupted in a nasty way.\\ For more information take a look at $<$file:Documentation/power/swsusp.rst$>$} - \subsubsection{Userspace snapshot device} CONFIG\_HIBERNATION\_SNAPSHOT\_DEV [=y] \textbf{[Y]}\\ -Gerät, das von den uswsusp-Werkzeugen verwendet wird. Sagen Sie N, wenn kein Snapshotting aus dem Userspace benötigt -wird, dies reduziert auch die Angriffsfläche des Kernels. Im Zweifelsfall sagen Sie Y. +Gerät, das von den uswsusp-Werkzeugen verwendet wird. +Sagen Sie N, wenn kein Snapshotting aus dem Userspace benötigt wird, dies reduziert auch die Angriffsfläche des Kernels. +Im Zweifelsfall sagen Sie Y. \english{Device used by the uswsusp tools.\\ Say N if no snapshotting from userspace is needed, this also reduces the attack surface of the kernel.\\ If in doubt, say Y.} @@ -89,20 +81,18 @@ Für diese Option gibt es keine Hilfe. \subsubsection{Default resume partition} CONFIG\_PM\_STD\_PARTITION [=] \textbf{[~]}\\ -Die Standard-Wiederaufnahmepartition ist die Partition, auf der die Suspend-to-Disk-Implementierung nach einem -Suspend-Disk-Image suchen wird. Die hier angegebene Partition wird für fast jeden Benutzer anders sein. Es sollte eine -gültige Swap-Partition sein (zumindest im Moment), die vor dem Suspendieren eingeschaltet wird. Die angegebene -Partition kann durch die Angabe von:\\ -\texttt{resume=/dev/}\\ -überschrieben werden, wodurch die Partition für die Wiederaufnahme auf das angegebene Gerät gesetzt wird. -Beachten Sie, dass es derzeit keine Möglichkeit gibt, das Gerät anzugeben, auf dem das suspendierte Image -gespeichert werden soll. Es wird einfach das erste verfügbare Swap-Gerät ausgewählt. +Die Standard-Wiederaufnahmepartition ist die Partition, auf der die Suspend-to-Disk-Implementierung nach einem Suspend-Disk-Image suchen wird. +Die hier angegebene Partition wird für fast jeden Benutzer anders sein. +Es sollte eine gültige Swap-Partition sein (zumindest im Moment), die vor dem Suspendieren eingeschaltet wird. +Die angegebene Partition kann durch die Angabe von:\\ +\texttt{resume=/dev/}\\überschrieben werden, wodurch die Partition für die Wiederaufnahme auf das angegebene Gerät gesetzt wird. +Beachten Sie, dass es derzeit keine Möglichkeit gibt, das Gerät anzugeben, auf dem das suspendierte Image gespeichert werden soll. +Es wird einfach das erste verfügbare Swap-Gerät ausgewählt. \english{The default resume partition is the partition that the suspend-to-disk implementation will look for a suspended disk image.\\ The partition specified here will be different for almost every user. It should be a valid swap partition (at least for now) that is turned on before suspending.\\ The partition specified can be overridden by specifying:\\ -resume=/dev/$<$other device$>$\\ -which will set the resume partition to the device specified.\\ +resume=/dev/$<$other device$>$\\which will set the resume partition to the device specified.\\ Note there is currently not a way to specify which device to save the suspended image to. It will simply pick the first available swap device.} @@ -112,15 +102,16 @@ CONFIG\_PM\_AUTOSLEEP [=n] \textbf{[N]}\\ Ermöglicht es dem Kernel, automatisch einen Systemübergang in einen globalen Ruhezustand auszulösen, wenn es keine aktiven Weckquellen gibt. \english{Allow the kernel to trigger a system transition into a global sleep state automatically whenever there are no active wakeup sources.} +%5.4 \subsection{Userspace opportunistic sleep} CONFIG\_PM\_USERSPACE\_AUTOSLEEP [=n] \textbf{[N]}\\ -Benachrichtigt den Kernel über eine aggressive Benutzerraum-Energieverwaltungspolitik für den automatischen Schlaf. Diese Option -ändert das Verhalten verschiedener schlafempfindlicher Codes, um mit häufigen, vom Benutzer initiierten Übergängen in einen -globalen Schlafzustand umzugehen. Wenn Sie hier Y sagen, werden Codepfade deaktiviert, die die meisten Benutzer wirklich aktiviert -lassen sollten. Aktivieren Sie dies nur, wenn es sehr häufig vorkommt, dass man für sehr kurze Zeiträume ($<= 2$~Sekunden) schläft/wach -ist. Nur Plattformen, wie z.\,B. Android, die opportunistischen Ruhezustand von einem Userspace-Energieverwaltungsdienst implementieren, -sollten diese Option aktivieren, nicht aber andere Maschinen. Daher sollten Sie hier N sagen, es sei denn, Sie sind sich sehr sicher, -dass Sie dies wollen. Die Option hat andernfalls schlechte, unerwünschte Auswirkungen und sollte nicht nur zum Spaß aktiviert werden. +Benachrichtigt den Kernel über eine aggressive Benutzerraum-Energieverwaltungspolitik für den automatischen Schlaf. +Diese Option ändert das Verhalten verschiedener schlafempfindlicher Codes, um mit häufigen, vom Benutzer initiierten Übergängen in einen globalen Schlafzustand umzugehen. +Wenn Sie hier Y sagen, werden Codepfade deaktiviert, die die meisten Benutzer wirklich aktiviert lassen sollten. +Aktivieren Sie dies nur, wenn es sehr häufig vorkommt, dass man für sehr kurze Zeiträume ($<= 2$~Sekunden) schläft/wach ist. +Nur Plattformen, wie z.\,B. Android, die opportunistischen Ruhezustand von einem Userspace-Energieverwaltungsdienst implementieren, sollten diese Option aktivieren, nicht aber andere Maschinen. +Daher sollten Sie hier N sagen, es sei denn, Sie sind sich sehr sicher, dass Sie dies wollen. +Die Option hat andernfalls schlechte, unerwünschte Auswirkungen und sollte nicht nur zum Spaß aktiviert werden. \english{Notify kernel of aggressive userspace autosleep power management policy.\\ This option changes the behavior of various sleep-sensitive code to deal with frequent userspace-initiated transitions into a global sleep state.\\ Saying Y here, disables code paths that most users really should keep enabled. @@ -138,48 +129,49 @@ Ermöglicht es dem Benutzer, Wakeup-Quellobjekte mit Hilfe einer sysfs-basierten %5.6 \subsection{Device power management core functionality} CONFIG\_PM\_WAKELOCKS [=y] \textbf{[Y]}\\ -Aktivierung von Funktionen, die es ermöglichen, E/A-Geräte in einen energiesparenden (stromsparenden) Zustand zu versetzen, z.\,B. nach einer -bestimmten Zeit der Inaktivität (autosuspended), und sie als Reaktion auf ein von der Hardware erzeugtes Wake-up-Ereignis oder eine Anforderung -des Treibers aufzuwecken. Damit diese Funktion funktioniert, ist in der Regel eine Hardwareunterstützung erforderlich, und die Bustreiber der -Busse, an denen die Geräte angeschlossen sind, sind für die tatsächliche Handhabung von Suspendierungsanforderungen und Weckereignissen zuständig. -\english{Enable functionality allowing I/O devices to be put into energy-saving (low power) states, for example after a specified period of inactivity -(autosuspended), and woken up in response to a hardware-generated wake-up event or a driver's request.\\ -Hardware support is generally required for this functionality to work and the bus type drivers of the buses the devices are on -are responsible for the actual handling of device suspend requests and wake-up events.} +Aktivierung von Funktionen, die es ermöglichen, E/A-Geräte in einen energiesparenden (stromsparenden) Zustand zu versetzen, z.\,B. nach einer bestimmten Zeit der Inaktivität (autosuspended), und sie als Reaktion auf ein von der Hardware erzeugtes Wake-up-Ereignis oder eine Anforderung des Treibers aufzuwecken. +Damit diese Funktion funktioniert, ist in der Regel eine Hardwareunterstützung erforderlich, und die Bustreiber der Busse, an denen die Geräte angeschlossen sind, sind für die tatsächliche Handhabung von Suspendierungsanforderungen und Weckereignissen zuständig. +\english{Enable functionality allowing I/O devices to be put into energy-saving (low power) states, for example after a specified period of inactivity (autosuspended), and woken up in response to a hardware-generated wake-up event or a driver's request.\\ +Hardware support is generally required for this functionality to work and the bus type drivers of the buses the devices are on are responsible for the actual handling of device suspend requests and wake-up events.} \subsubsection{Power Management Debug Support} CONFIG\_PM\_DEBUG [=y] \textbf{[Y]}\\ -Diese Option aktiviert verschiedene Debugging-Funktionen im Power-Management-Code. Dies ist hilfreich bei der Fehlersuche und der Meldung -von PM-Fehlern, wie z.\,B. der Suspend-Unterstützung. +Diese Option aktiviert verschiedene Debugging-Funktionen im Power-Management-Code. +Dies ist hilfreich bei der Fehlersuche und der Meldung von PM-Fehlern, wie z.\,B. der Suspend-Unterstützung. \english{This option enables various debugging support in the Power Management code. This is helpful when debugging and reporting PM bugs, like suspend support.} \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 Ge\-rä\-te\-ob\-jek\-ten aus dem Userspace ermöglichen. +Hinzufügen zusätzlicher sysfs-Attribute, die den Zugriff auf einige Power-Management-Felder von Geräteobjekten 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. \english{Add extra sysfs attributes allowing one to access some Power Management fields of device objects from user space. If you are not a kernel developer interested in debugging/testing Power Management, say ``no''.} \paragraph{Test suspend/resume and wakealarm during bootup}$~$\\ CONFIG\_PM\_TEST\_SUSPEND [=n] \textbf{[N]}\\ -Mit dieser Option können Sie Ihren Rechner während des Bootvorgangs in den Ruhezustand versetzen und ihn einige Sekunden später mit einem -RTC-Weckalarm aufwecken. Aktivieren Sie dies mit einem Kernelparameter wie \texttt{test\_suspend=mem}. Wahrscheinlich sollten Sie -den RTC-Treiber Ihres Systems statisch einbinden, um sicherzustellen, dass er verfügbar ist, wenn dieser Test läuft. +Mit dieser Option können Sie Ihren Rechner während des Bootvorgangs in den Ruhezustand versetzen und ihn einige Sekunden später mit einem RTC-Weckalarm aufwecken. +Aktivieren Sie dies mit einem Kernelparameter wie \texttt{test\_suspend=mem}. +Wahrscheinlich sollten Sie den RTC-Treiber Ihres Systems statisch einbinden, um sicherzustellen, dass er verfügbar ist, wenn dieser Test läuft. \english{This option will let you suspend your machine during bootup, and make it wake up a few seconds later using an RTC wakeup alarm. Enable this with a kernel parameter like ``test\_suspend=mem''.\\ You probably want to have your system's RTC driver statically linked, ensuring that it's available when this test runs.} +\paragraph{Device suspend/resume watchdog}$~$\\ +CONFIG\_DPM\_WATCHDOG [=n] \textbf{[N]}\\ +Richtet einen Watchdog-Timer ein, um Treiber zu erfassen, die beim Versuch, ein Gerät anzuhalten/fortzusetzen, blockiert sind. +Eine erkannte Blockierung löst eine Systempanik mit einer Meldung aus, die zur Überprüfung in der nachfolgenden Boot-Sitzung im pstore-Gerät erfasst wird. +\english{Sets up a watchdog timer to capture drivers that are locked up attempting to suspend/resume a device. +A detected lockup causes system panic with message captured in pstore device for inspection in subsequent boot session.} + %5.7 \subsection{Suspend/resume event tracing} CONFIG\_PM\_TRACE\_RTC [=y] \textbf{[Y]}\\ -Dies ermöglicht es, den letzten PM-Ereignispunkt in der RTC über Neustarts hinweg zu speichern, so dass Sie einen Rechner, der während des -Suspendierens (oder häufiger während des Wiederaufnehmens) einfach hängen bleibt, debuggen können. Um diese Debugging-Funktion zu nutzen, -sollten Sie versuchen, den Rechner in den Suspend-Modus zu versetzen, ihn neu zu starten und dann Folgendes auszuführen\\[.5em] +Dies ermöglicht es, den letzten PM-Ereignispunkt in der RTC über Neustarts hinweg zu speichern, so dass Sie einen Rechner, der während des Suspendierens (oder häufiger während des Wiederaufnehmens) einfach hängen bleibt, debuggen können. +Um diese Debugging-Funktion zu nutzen, sollten Sie versuchen, den Rechner in den Suspend-Modus zu versetzen, ihn neu zu starten und dann Folgendes auszuführen\\[.5em] \texttt{dmesg -s 1000000 | grep 'hash matches'}\\[.5em] ACHTUNG: Diese Option führt dazu, dass die Echtzeituhr Ihres Rechners nach einem Neustart auf eine ungültige Zeit gesetzt wird. -\english{This enables some cheesy code to save the last PM event point in the RTC across reboots, so that you can debug a machine -that just hangs during suspend (or more commonly, during resume).\\ +\english{This enables some cheesy code to save the last PM event point in the RTC across reboots, so that you can debug a machine that just hangs during suspend (or more commonly, during resume).\\ To use this debugging feature you should attempt to suspend the machine, reboot it and then run\\ \indent dmesg -s 1000000 | grep 'hash matches'\\ CAUTION: this option will cause your machine's real-time clock to be set to an invalid time after a resume.} @@ -187,66 +179,59 @@ CAUTION: this option will cause your machine's real-time clock to be set to an i %5.8 \subsection{Enable workqueue power-efficient mode by default} CONFIG\_WQ\_POWER\_EFFICIENT\_DEFAULT [=y] \textbf{[Y]}\\ -Pro-CPU-Workqueues werden im Allgemeinen bevorzugt, da sie dank der Cache-Lokalität eine bessere Leistung aufweisen; leider neigen -Pro-CPU-Workqueues dazu, mehr Strom zu verbrauchen als ungebundene Workqueues. Durch die Aktivierung des Kernelparameters -\texttt{workqueue.power\_efficient} werden die Pro-CPU-Workqueues, die nachweislich erheblich zum Stromverbrauch beitragen, -ungebunden, was zu einem messbar geringeren Stromverbrauch auf Kosten eines geringen Leistungsoverheads führt. Diese Konfigurationsoption -legt fest, ob \texttt{workqueue.power\_efficient} standardmäßig aktiviert ist.\\ +Pro-CPU-Workqueues werden im Allgemeinen bevorzugt, da sie dank der Cache-Lokalität eine bessere Leistung aufweisen; leider neigen Pro-CPU-Workqueues dazu, mehr Strom zu verbrauchen als ungebundene Workqueues. +Durch die Aktivierung des Kernelparameters \texttt{workqueue.power\_efficient} werden die Pro-CPU-Workqueues, die nachweislich erheblich zum Stromverbrauch beitragen, ungebunden, was zu einem messbar geringeren Stromverbrauch auf Kosten eines geringen Leistungsoverheads führt. +Diese Konfigurationsoption legt fest, ob \texttt{workqueue.power\_efficient} standardmäßig aktiviert ist.\\ Im Zweifelsfall sagen Sie N. \english{Per-cpu workqueues are generally preferred because they show better performance thanks to cache locality; unfortunately, per-cpu workqueues tend to be more power hungry than unbound workqueues.\\ -Enabling workqueue.power\_efficient kernel parameter makes the per-cpu workqueues which were observed to contribute significantly to power consumption unbound, -leading to measurably lower power usage at the cost of small performance overhead.\\ +Enabling workqueue.power\_efficient kernel parameter makes the per-cpu workqueues which were observed to contribute significantly to power consumption unbound, leading to measurably lower power usage at the cost of small performance overhead.\\ This config option determines whether workqueue.power\_efficient is enabled by default.\\ If in doubt, say N.} +%5.9 \subsection{Energy Model for devices with DVFS (CPUs, GPUs, etc)} CONFIG\_ENERGY\_MODEL [=y] \textbf{[Y]}\\ -Mehrere Teilsysteme (z.\,B. das thermische System und/oder der Aufgabenplaner) können Informationen über den Energieverbrauch von Geräten -nutzen, um intelligentere Entscheidungen zu treffen. Diese Konfigurationsoption aktiviert den Rahmen, von dem aus die Subsysteme auf die -Energiemodelle zugreifen können. Die genaue Verwendung des Energiemodells ist subsystemabhängig.\\ +Mehrere Teilsysteme (z.\,B. das thermische System und/oder der Aufgabenplaner) können Informationen über den Energieverbrauch von Geräten nutzen, um intelligentere Entscheidungen zu treffen. +Diese Konfigurationsoption aktiviert den Rahmen, von dem aus die Subsysteme auf die Energiemodelle zugreifen können. +Die genaue Verwendung des Energiemodells ist subsystemabhängig.\\ Im Zweifelsfall sagen Sie N. \english{Several subsystems (thermal and/or the task scheduler for example) can leverage information about the energy consumed by devices to make smarter decisions. This config option enables the framework from which subsystems can access the energy models.\\ The exact usage of the energy model is subsystem-dependent.\\ If in doubt, say N.} +%5.10 \subsection{ACPI (Advanced Configuration and Power Interface) Support \texorpdfstring{$\rightarrow$}{->}} CONFIG\_ACPI [=y] \textbf{[Y]}\\ -Die Unterstützung von ACPI (Advanced Configuration and Power Interface) für Linux erfordert eine ACPI-kompatible Plattform (Hardware/Firmware) -und setzt das Vorhandensein von OS-directed configuration and power management (OSPM) Software voraus. Mit dieser Option wird Ihr Kernel um -etwa 70K erweitert. Linux ACPI bietet einen robusten funktionalen Ersatz für mehrere ältere Konfigurations- und Energieverwaltungsschnittstellen, -einschließlich der Plug-and-Play-BIOS-Spezifikation (PnP BIOS), der MultiProzessor-Spezifikation (MPS) und der Advanced Power Management (APM)-Spezifikation. +Die Unterstützung von ACPI (Advanced Configuration and Power Interface) für Linux erfordert eine ACPI-kompatible Plattform (Hardware/Firmware) und setzt das Vorhandensein von OS-directed configuration and power management (OSPM) Software voraus. +Mit dieser Option wird Ihr Kernel um etwa \qty{70}{\kilo\byte} erweitert. +Linux ACPI bietet einen robusten funktionalen Ersatz für mehrere ältere Konfigurations- und Energieverwaltungsschnittstellen, einschließlich der Plug-and-Play-BIOS-Spezifikation (PnP BIOS), der MultiProzessor-Spezifikation (MPS) und der Advanced Power Management (APM)-Spezifikation. Wenn sowohl ACPI- als auch APM-Unterstützung konfiguriert sind, wird ACPI verwendet. -Die Linux-Unterstützung für ACPI basiert auf der ACPI Component Architecture (ACPI CA) der Intel Corporation. Weitere Informationen über die ACPI~CA -finden Sie unter: \url{https://acpica.org/} ACPI ist eine offene Industriespezifikation, die ursprünglich von Hewlett-Packard, Intel, Microsoft, -Phoenix und Toshiba mitentwickelt wurde. Derzeit wird sie von der ACPI Specification Working Group (ASWG) im Rahmen des UEFI-Forums entwickelt, -und jedes UEFI-Mitglied kann der ASWG beitreten und zur ACPI-Spezifikation beitragen.\\ +Die Linux-Unterstützung für ACPI basiert auf der ACPI Component Architecture (ACPI CA) der Intel Corporation. +Weitere Informationen über die ACPI~CA finden Sie unter: \url{https://acpica.org/} ACPI ist eine offene Industriespezifikation, die ursprünglich von Hewlett-Packard, Intel, Microsoft, Phoenix und Toshiba mitentwickelt wurde. +Derzeit wird sie von der ACPI Specification Working Group (ASWG) im Rahmen des UEFI-Forums entwickelt, und jedes UEFI-Mitglied kann der ASWG beitreten und zur ACPI-Spezifikation beitragen.\\ Die Spezifikation ist verfügbar unter: \url{https://uefi.org/specifications}. -\english{Advanced Configuration and Power Interface (ACPI) support for Linux requires an ACPI-compliant platform (hardware/firmware), -and assumes the presence of OS-directed configuration and power management (OSPM) software. +\english{Advanced Configuration and Power Interface (ACPI) support for Linux requires an ACPI-compliant platform (hardware/firmware), and assumes the presence of OS-directed configuration and power management (OSPM) software. This option will enlarge your kernel by about 70K.\\ -Linux ACPI provides a robust functional replacement for several legacy configuration and power management interfaces, including -the Plug-and-Play BIOS specification (PnP BIOS), the MultiProcessor Specification (MPS), and the Advanced Power Management (APM) specification. +Linux ACPI provides a robust functional replacement for several legacy configuration and power management interfaces, including the Plug-and-Play BIOS specification (PnP BIOS), the MultiProcessor Specification (MPS), and the Advanced Power Management (APM) specification. If both ACPI and APM support are configured, ACPI is used.\\ Linux support for ACPI is based on Intel Corporation's ACPI Component Architecture (ACPI CA). -For more information on the ACPI CA, see: \url{https://acpica.org/} -ACPI is an open industry specification originally co-developed by Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba. +For more information on the ACPI CA, see: \url{https://acpica.org/} ACPI is an open industry specification originally co-developed by Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba. Currently, it is developed by the ACPI Specification Working Group (ASWG) under the UEFI Forum and any UEFI member can join the ASWG and contribute to the ACPI specification. -The specification is available at: -\url{https://uefi.org/specifications}} +The specification is available at: \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. +Aktiviert das In-Kernel-Debugging von AML-Funktionen: Statistiken, interner Objekt-Dump, Ausführung von Einzelschritt"=Kontrollmethoden. +Dies befindet sich noch in der Entwicklung, derzeit führt die Aktivierung nur zur Kompilierung der ACPICA-Debugger-Dateien. \english{Enable in-kernel debugging of AML facilities: statistics, internal object dump, single step control method execution. This is still under development, currently enabling this only results in the compilation of the ACPICA debugger files.} \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. +Aktiviert die Unterstützung für die Serial Port Console Redirection (SPCR) Tabelle. +Diese Tabelle enthält Informationen über die Konfiguration der earlycon-Konsole. \english{Enable support for Serial Port Console Redirection (SPCR) Table. This table provides information about the configuration of the earlycon console.} @@ -260,19 +245,12 @@ This table provides information on the timing of the system boot, S3 suspend and \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. -\english{The platform firmware on some systems expects Linux to return ``5'' as the supported ACPI revision which makes -it expose system configuration information in a special way.\\ -For example, based on what ACPI exports as the supported revision, Dell XPS 13 (2015) configures its audio device to either work in HDA mode or in I2S mode, -where the former is supposed to be used on Linux until the latter is fully supported (in the kernel as well as in user space).\\ -This option enables a DMI-based quirk for the above Dell machine (so that HDA audio is exposed by the platform firmware to the kernel) and -makes it possible to force the kernel to return ``5'' as the supported ACPI revision via the ``acpi\_rev\_override'' command line switch.} +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. +\english{The platform firmware on some systems expects Linux to return ``5'' as the supported ACPI revision which makes it expose system configuration information in a special way.\\ +For example, based on what ACPI exports as the supported revision, Dell XPS 13 (2015) configures its audio device to either work in HDA mode or in I2S mode, where the former is supposed to be used on Linux until the latter is fully supported (in the kernel as well as in user space).\\ +This option enables a DMI-based quirk for the above Dell machine (so that HDA audio is exposed by the platform firmware to the kernel) and makes it possible to force the kernel to return ``5'' as the supported ACPI revision via the ``acpi\_rev\_override'' command line switch.} \subsubsection{Embedded Controller \tiny{seit 6.13}} CONFIG\_ACPI\_EC [=y] \textbf{[Y]}\\* @@ -282,13 +260,13 @@ Dieser Treiber übernimmt die Kommunikation mit dem Mikrocontroller auf vielen x \paragraph{EC read/write access through /sys/kernel/debug/ec}\mbox{}\\ 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. +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. +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. \english{Say N to disable Embedded Controller /sys/kernel/debug interface\\ Be aware that using this interface can confuse your Embedded Controller in a way that a normal reboot is not enough. You then have to power off your system, and remove the laptop battery for some seconds. @@ -300,27 +278,27 @@ Thus this option is a debug option that helps to write ACPI drivers and can be u \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. +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. \english{This driver supports the AC Adapter object, which indicates whether a system is on AC or not. If you have a system that can switch between A/C and battery, say Y.\\ To compile this driver as a module, choose M here: the module will be called \texttt{ac}.} \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. +Dieser Treiber bietet Unterstützung für Batterieinformationen über \texttt{/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. \english{This driver adds support for battery information through /proc/acpi/battery. If you have a mobile system with a battery, say Y.\\ To compile this driver as a module, choose M here: the module will be called \texttt{battery}.} \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. +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. \english{This driver handles events on the power, sleep, and lid buttons. A daemon reads events from input devices or via netlink and performs user-defined actions such as shutting down the system. This is necessary for software-controlled poweroff.\\ @@ -328,27 +306,24 @@ To compile this driver as a module, choose M here: the module will be called \te \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. +Dieser Treiber implementiert die ACPI-Erweiterungen für Display-Adapter für integrierte Grafikgeräte auf dem Motherboard, wie in der Spezifikation ACPI 2.0, 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. \english{This driver implements the ACPI Extensions For Display Adapters for integrated graphics devices on motherboard, as specified in ACPI 2.0 Specification, Appendix B. This supports basic operations such as defining the video POST device, retrieving EDID information, and setting up a video output.\\ To compile this driver as a module, choose M here: the module will be called \texttt{video}.} \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. +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. \english{This driver supports ACPI fan devices, allowing user-mode applications to perform basic fan control (on, off, status).\\ To compile this driver as a module, choose M here: the module will be called \texttt{fan}.} \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. +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. \english{The ACPI Time and Alarm (TAD) device is an alternative to the Real Time Clock (RTC). @@ -358,14 +333,13 @@ The time capabilities of the TAD maintain the time of day information across pla \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. +Dieser Treiber unterstützt ACPI-gesteuerte Dockingstationen und Wechsellaufwerkseinschübe wie den IBM Ultrabay und den Dell Module Bay. \english{This driver supports ACPI-controlled docking stations and removable drive bays such as the IBM Ultrabay and the 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. +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}. \english{This driver adds support for the ACPI Processor package. It is required by several flavors of cpufreq performance-state, thermal, throttling and idle drivers.\\ @@ -373,28 +347,27 @@ To compile this driver as a module, choose M here: the module will be called \te \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. +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. \english{This driver enables the ACPI to access the BMC controller. And it uses the IPMI request/response message to communicate with BMC controller, which can be found on the server.\\ To compile this driver as a module, choose M here: the module will be called as \texttt{acpi\_ipmi}.} \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. +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. \english{ACPI 4.0 defines processor Aggregator, which enables OS to perform specific processor configuration and control that applies to all processors in the platform. Currently only logical processor idling is defined, which is to reduce power consumption. This driver supports the new device.} \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. +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. \english{This driver supports ACPI thermal zones. Most mobile and some desktop systems support ACPI thermal zones. It is HIGHLY recommended that this option be enabled, as your processor(s) may be damaged without it.\\ @@ -404,22 +377,19 @@ To compile this driver as a module, choose M here: the module will be called \te 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 +Siehe Documentation/admin-guide/acpi/initrd\_table\_override.rst für Details. \english{This option provides functionality to upgrade arbitrary ACPI tables via initrd. No functional change if no ACPI tables are passed via initrd, therefore it's safe to say Y. See Documentation/admin-guide/acpi/initrd\_table\_override.rst for 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 -Documentation/firmware-guide/acpi/debug.rst und Documentation/admin-guide/kernel-parameters.rst dokumentiert sind, -um die Art und Menge der Debug-Ausgabe zu steuern. +Das ACPI-Subsystem kann Debug-Ausgaben erzeugen. +Die Angabe von Y aktiviert diese Ausgabe und erhöht die Kernelgröße um etwa \qty{50}{\kilo\byte}.\\ +Verwenden Sie die Kernel"=Befehlszeilenparameter \texttt{acpi.debug\_layer} und \texttt{acpi.debug\_level}, die in Documentation/firmware-guide/acpi/debug.rst und Documentation/admin-guide/kernel-parameters.rst dokumentiert sind, um die Art und Menge der Debug-Ausgabe zu steuern. \english{The ACPI subsystem can produce debug output. Saying Y enables this output and increases the kernel size by around 50K. -Use the acpi.debug\_layer and acpi.debug\_level kernel command-line parameters documented in Documentation/firmware-guide/acpi/debug.rst and -Documentation/admin-guide/kernel-parameters.rst to control the type and amount of debug output.} +Use the acpi.debug\_layer and acpi.debug\_level kernel command-line parameters documented in Documentation/firmware-guide/acpi/debug.rst and Documentation/admin-guide/kernel-parameters.rst to control the type and amount of debug output.} \subsubsection{PCI slot detection driver} CONFIG\_ACPI\_PCI\_SLOT [=y] \textbf{[Y]}\\ @@ -439,59 +409,57 @@ This helps support hotplug of nodes, CPUs, and memory.} \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. +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. \english{This driver supports ACPI memory hotplug. The driver fields notifications on ACPI memory devices (PNP0C80), which represent memory ranges that may be onlined or offlined during runtime.\\ If your hardware and firmware do not support adding or removing memory devices at runtime, you need not enable this driver.} \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 \texttt{sbs} und \texttt{sbshc}. +CONFIG\_ACPI\_SBS [=m] \textbf{[M]}\\ +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 \texttt{sbs} und \texttt{sbshc}. \english{This driver supports the Smart Battery System, another type of access to battery information, found on some laptops.\\ To compile this driver as a module, choose M here: the modules will be called \texttt{sbs} and \texttt{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. -\english{This driver supports the Hardware Error Device (PNP0C33), which is used to report some hardware errors notified via SCI, -mainly the corrected errors.} +Dieser Treiber unterstützt das Hardware Error Device (PNP0C33), das dazu dient, einige über SCI gemeldete Hardwarefehler zu melden, hauptsächlich die korrigierten Fehler. +\english{This driver supports the Hardware Error Device (PNP0C33), which is used to report some hardware errors notified via SCI, mainly the corrected errors.} {\color{gray}\subsubsection*{Allow ACPI methods to be inserted/replaced at run time \tiny{bis 6.8}} 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.\\ +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). +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). \english{This debug facility allows ACPI AML methods to be inserted and/or replaced without rebooting the system. For details refer to: Documentation/firmware-guide/acpi/method-customizing.rst. -NOTE: This option is security sensitive, because it allows arbitrary kernel memory to be written to by root (uid=0) users, -allowing them to bypass certain security measures (e.g. if root is not allowed to load additional kernel modules after boot, -this feature may be used to override that restriction).}} +NOTE: This option is security sensitive, because it allows arbitrary kernel memory to be written to by root (uid=0) users, allowing them to bypass certain security measures (e.g. if root is not allowed to load additional kernel modules after boot, this feature may be used to override that restriction).}} \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/} . -\english{This driver adds support for exposing the ACPI Boottime Graphics Resource Table, which allows the operating system to obtain -data from the firmware boot splash. +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/}. +\english{This driver adds support for exposing the ACPI Boottime Graphics Resource Table, which allows the operating system to obtain data from the firmware boot splash. It will appear under /sys/firmware/acpi/bgrt/ .} +\subsubsection{Hardware-reduced ACPI support only} +CONFIG\_ACPI\_REDUCED\_HARDWARE\_ONLY [=n] \textbf{[N]}\\ +Dieser Konfigurationspunkt ändert die Art und Weise, wie der ACPI-Code erstellt wird. +Wenn diese Option ausgewählt ist, verwendet der Kernel eine spezielle Version von ACPICA, die NUR den ACPI-Modus „reduzierte Hardware” unterstützt. +Der resultierende Kernel ist kleiner, kann jedoch NUR im ACPI-Modus „reduzierte Hardware” ausgeführt werden. +Wenn Sie sich nicht sicher sind, was Sie tun sollen, aktivieren Sie diese Option nicht. +\english{This config item changes the way the ACPI code is built. +When this option is selected, the kernel will use a specialized version of ACPICA that ONLY supports the ACPI ``reduced hardware'' mode. +The resulting kernel will be smaller but it will also be restricted to running in ACPI reduced hardware mode ONLY. +If you are unsure what to do, do not enable this option.} + \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. +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. \english{Infrastructure to probe ACPI 6 compliant platforms for NVDIMMs (NFIT) and register a libnvdimm device tree. In addition to storage devices this also enables libnvdimm to pass ACPI.\_DSM messages for platform/dimm configuration.\\ To compile this driver as a module, choose M here: the module will be called \texttt{nfit}.} @@ -499,10 +467,9 @@ To compile this driver as a module, choose M here: the module will be called \te \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. +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. \english{Some NVDIMM devices and controllers support encryption and other security features. The payloads for the commands that enable those features may contain sensitive clear-text security material. Disable debug of those command payloads by default. @@ -513,20 +480,19 @@ If you are a kernel developer actively working on NVDIMM security enabling say Y CONFIG\_ACPI\_NUMA [=y] \textbf{[Y]}\\ \textit{Für diese Option ist keine Hilfe verfügbar.}} -\paragraph{ACPI Heterogeneous Memory Attribute Table Support}$~$\\ +\subsubsection{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. -\english{If set, this option has the kernel parse and report the platform's ACPI HMAT (Heterogeneous Memory Attributes Table), -register memory initiators with their targets, and export performance attributes through the node's sysfs device if provided.} +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. +\english{If set, this option has the kernel parse and report the platform's ACPI HMAT (Heterogeneous Memory Attributes Table), register memory initiators with their targets, and export performance attributes through the node's sysfs device if provided.} \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. +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. \english{APEI allows to report errors (for example from the chipset) to the operating system. -This improves NMI handling especially. In addition it supports error serialization and error injection.} +This improves NMI handling especially. +In addition it supports error serialization and error injection.} \paragraph{ACPI Generic Hardware Error Source}$~$\\ CONFIG\_ACPI\_APEI\_GHES [=y] \textbf{[Y]}\\ @@ -537,27 +503,25 @@ Auf diese Weise können einige Nicht-Standard-Hardware-Fehlerregister oder Nicht von der Firmware überprüft werden, um wertvollere Hardware-Fehlerinformationen für Linux zu erhalten. \english{Generic Hardware Error Source provides a way to report platform hardware errors (such as that from chipset). It works in so called ``Firmware First'' mode, that is, hardware errors are reported to firmware firstly, then reported to Linux by firmware. -This way, some non-standard hardware error registers or non-standard hardware link can be checked by firmware to produce -more valuable hardware error information for Linux.} +This way, some non-standard hardware error registers or non-standard hardware link can be checked by firmware to produce more valuable hardware error information for Linux.} \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. +PCIe-AER-Fehler können über den APEI-Firmware-First-Modus gemeldet werden. +Aktivieren Sie diese Option, um die entsprechende Unterstützung zu aktivieren. \english{PCIe AER errors may be reported via APEI firmware first mode. Turn on this option to enable the corresponding support.} \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. +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. \english{Memory errors may be reported via APEI firmware first mode. Turn on this option to enable the memory recovering support.} \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. +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. \english{EINJ provides a hardware error injection mechanism, it is mainly used for debugging and testing the other parts of APEI and some other RAS features.} \paragraph{CXL Error INJection Support \tiny{seit 6.9}}\mbox{}\\ @@ -573,24 +537,22 @@ If unsure say `n'} \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. +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. \english{ERST is a way provided by APEI to save and retrieve hardware error information to and from a persistent store. Enable this if you want to debugging and testing the ERST kernel support and firmware implementation.} \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-/Thermo\-tech\-no\-lo\-gi\-en bietet DPTF einen -koordinierten Ansatz für verschiedene Richtlinien, die den Hardwarezustand eines Systems beeinflussen. +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. \english{Intel Dynamic Platform and Thermal Framework (DPTF) is a platform level hardware/software solution for power and thermal management.\\ As a container for multiple power/thermal technologies, DPTF provides a coordinated approach for different policies to effect the hardware state of a system.} \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: +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 (max. Plattformleistung) \item platform\_power\_source (Plattformstromquelle) @@ -600,21 +562,19 @@ Participant Device (INT3407). Dieser Teilnehmer ist für die Offenlegung der Pla \end{itemize} Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul heißt dann \texttt{dptf\_power}. \english{This driver adds support for Dynamic Platform and Thermal Framework (DPTF) Platform Power Participant device (INT3407) support. -This participant is responsible for exposing platform telemetry: \texttt{max\_platform\_power platform\_power\_source adapter\_rating -battery\_steady\_power charger\_type}\\ +This participant is responsible for exposing platform telemetry: \texttt{max\_platform\_power platform\_power\_source adapter\_rating battery\_steady\_power charger\_type}\\ To compile this driver as a module, choose M here: the module will be called \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: +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. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{dptf\_pch\_fivr} heißen. \english{This driver adds support for Dynamic Platform and Thermal Framework (DPTF) PCH FIVR Participant device support. This driver allows to switch the PCH FIVR (Fully Integrated Voltage Regulator) frequency. This participant is responsible for exposing: \texttt{freq\_mhz\_low\_clock freq\_mhz\_high\_clock}\\ @@ -622,16 +582,13 @@ To compile this driver as a module, choose M here: the module will be called \te \subsubsection{Extended Error Log support} CONFIG\_ACPI\_EXTLOG [=m] \textbf{[M]}\\ -Bestimmte Anwendungen wie die vorausschauende Fehleranalyse (Predictive Failure Analysis, PFA) erfordern mehr Informationen -über den Fehler, als in den Prüfbänken der Prozessormaschine beschrieben werden können. Die meisten Server-Prozessoren -protokollieren zusätzliche Informationen über den Fehler in Prozessor-Uncore-Registern. Da die Adressen und das Layout -dieser Register von einem Prozessor zum anderen sehr unterschiedlich sind, kann die Systemsoftware sie nicht ohne weiteres -nutzen. Erschwerend kommt hinzu, dass einige der zusätzlichen Fehlerinformationen nicht ohne detaillierte Kenntnisse der -Plattformtopologie erstellt werden können. Die erweiterte MCA-Protokollierung ermöglicht es der Firmware, der Systemsoftware -synchron mit MCE oder CMCI zusätzliche Fehlerinformationen zu liefern. Dieser Treiber unterstützt diese Funktionalität mit -einem entsprechenden Tracepoint, der diese Informationen an den Userspace weiterleitet. -\english{Certain usages such as Predictive Failure Analysis (PFA) require more information about the error -than what can be described in processor machine check banks. +Bestimmte Anwendungen wie die vorausschauende Fehleranalyse (Predictive Failure Analysis, PFA) erfordern mehr Informationen über den Fehler, als in den Prüfbänken der Prozessormaschine beschrieben werden können. +Die meisten Server-Prozessoren protokollieren zusätzliche Informationen über den Fehler in Prozessor-Uncore-Registern. +Da die Adressen und das Layout dieser Register von einem Prozessor zum anderen sehr unterschiedlich sind, kann die Systemsoftware sie nicht ohne weiteres nutzen. +Erschwerend kommt hinzu, dass einige der zusätzlichen Fehlerinformationen nicht ohne detaillierte Kenntnisse der Plattformtopologie erstellt werden können. +Die erweiterte MCA-Protokollierung ermöglicht es der Firmware, der Systemsoftware synchron mit MCE oder CMCI zusätzliche Fehlerinformationen zu liefern. +Dieser Treiber unterstützt diese Funktionalität mit einem entsprechenden Tracepoint, der diese Informationen an den Userspace weiterleitet. +\english{Certain usages such as Predictive Failure Analysis (PFA) require more information about the error than what can be described in processor machine check banks. Most server processors log additional information about the error in processor uncore registers. Since the addresses and layout of these registers vary widely from one processor to another, system software cannot readily make use of them. To complicate matters further, some of the additional error information cannot be constructed without detailed knowledge about platform topology.\\ @@ -640,37 +597,30 @@ This driver adds support for that functionality with corresponding tracepoint wh \subsubsection{ACPI configfs support} CONFIG\_ACPI\_CONFIGFS [=m] \textbf{[M]}\\ -Wählen Sie diese Option, um die Unterstützung für die ACPI-Konfiguration aus dem Userspace zu aktivieren. Die konfigurierbaren -ACPI-Gruppen sind dann unter \texttt{/config/acpi} sichtbar, vorausgesetzt, configfs ist unter \texttt{/config} eingebunden. +Wählen Sie diese Option, um die Unterstützung für die ACPI-Konfiguration aus dem Userspace zu aktivieren. +Die konfigurierbaren ACPI-Gruppen sind dann unter \texttt{/config/acpi} sichtbar, vorausgesetzt, configfs ist unter \texttt{/config} eingebunden. \english{Select this option to enable support for ACPI configuration from userspace. The configurable ACPI groups will be visible under \texttt{/config/acpi}, assuming configfs is mounted under \texttt{/config}.} \subsubsection{ACPI Platform Firmware Runtime Update and Telemetry} CONFIG\_ACPI\_PFRUT [=m] \textbf{[M]}\\ -Dieser Mechanismus ermöglicht es, bestimmte Teile der Plattform-Firmware während des laufenden Betriebs (Laufzeit) zu -aktualisieren, ohne dass ein Neustart erforderlich ist. Dies ist von entscheidender Bedeutung, wenn das System zu -100~\% verfügbar sein muss und sich die mit einem Neustart verbundene Ausfallzeit nicht leisten kann, oder wenn die vom -System ausgeführte Arbeit besonders wichtig ist, so dass sie nicht unterbrochen werden kann und es nicht sinnvoll ist, -zu warten, bis sie abgeschlossen ist. Der bestehende Firmware-Code kann geändert (Treiber-Update) oder durch Hinzufügen -neuen Codes zur Firmware erweitert werden (Code-Injektion). Außerdem ermöglicht der Telemetrietreiber dem Benutzer, mit -Hilfe der Plattform-Firmware-Laufzeit-Telemetrieschnittstelle Telemetriedaten aus der Firmware abzurufen. Um die Treiber -als Module zu kompilieren, wählen Sie hier M: die Module heißen dann \texttt{pfr\_update} und \texttt{pfr\_telemetry}. -\english{This mechanism allows certain pieces of the platform firmware to be updated on the fly while the system is running (runtime) -without the need to restart it, which is key in the cases when the system needs to be available 100\% of the time and it cannot -afford the downtime related to restarting it, or when the work carried out by the system is particularly important, so it cannot -be interrupted, and it is not practical to wait until it is complete.\\ +Dieser Mechanismus ermöglicht es, bestimmte Teile der Plattform-Firmware während des laufenden Betriebs (Laufzeit) zu aktualisieren, ohne dass ein Neustart erforderlich ist. +Dies ist von entscheidender Bedeutung, wenn das System zu \qty{100}{\percent} verfügbar sein muss und sich die mit einem Neustart verbundene Ausfallzeit nicht leisten kann, oder wenn die vom System ausgeführte Arbeit besonders wichtig ist, so dass sie nicht unterbrochen werden kann und es nicht sinnvoll ist, zu warten, bis sie abgeschlossen ist. +Der bestehende Firmware-Code kann geändert (Treiber-Update) oder durch Hinzufügen neuen Codes zur Firmware erweitert werden (Code-Injektion). +Außerdem ermöglicht der Telemetrietreiber dem Benutzer, mit Hilfe der Plattform-Firmware-Laufzeit-Telemetrieschnittstelle Telemetriedaten aus der Firmware abzurufen. +Um die Treiber als Module zu kompilieren, wählen Sie hier M: die Module heißen dann \texttt{pfr\_update} und \texttt{pfr\_telemetry}. +\english{This mechanism allows certain pieces of the platform firmware to be updated on the fly while the system is running (runtime) without the need to restart it, which is key in the cases when the system needs to be available 100\% of the time and it cannot afford the downtime related to restarting it, or when the work carried out by the system is particularly important, so it cannot be interrupted, and it is not practical to wait until it is complete.\\ The existing firmware code can be modified (driver update) or extended by adding new code to the firmware (code injection).\\ Besides, the telemetry driver allows user space to fetch telemetry data from the firmware with the help of the Platform Firmware Runtime Telemetry interface.\\ To compile the drivers as modules, choose M here: the modules will be called \texttt{pfr\_update} and \texttt{pfr\_telemetry}.} \subsubsection{ACPI PCC Address Space} CONFIG\_ACPI\_PCC [=y] \textbf{[Y]}\\ -Der PCC-Adressraum, der auch als PCC-Operationsbereich bezeichnet wird, bezieht sich auf den Bereich des PCC-Unterraums, -der auf die PCC-Signatur folgt. Die PCC Operation Region arbeitet mit der PCC Table (Platform Communications Channel Table) -zusammen. PCC-Unterräume, die für die Verwendung als PCC Operation Region markiert sind, dürfen nicht als PCC-Unterräume -für die Standard-ACPI-Funktionen wie CPPC, RASF, PDTT und MPST verwendet werden. Diese Standardfunktionen müssen stattdessen -immer die PCC-Tabelle verwenden. Aktivieren Sie diese Funktion, wenn Sie den PCC Address Space Handler einrichten und -installieren möchten, um PCC OpRegion in der Firmware zu behandeln. +Der PCC-Adressraum, der auch als PCC-Operationsbereich bezeichnet wird, bezieht sich auf den Bereich des PCC-Unterraums, der auf die PCC-Signatur folgt. +Die PCC Operation Region arbeitet mit der PCC Table (Platform Communications Channel Table) zusammen. +PCC-Unterräume, die für die Verwendung als PCC Operation Region markiert sind, dürfen nicht als PCC-Unterräume für die Standard-ACPI-Funktionen wie CPPC, RASF, PDTT und MPST verwendet werden. +Diese Standardfunktionen müssen stattdessen immer die PCC-Tabelle verwenden. +Aktivieren Sie diese Funktion, wenn Sie den PCC Address Space Handler einrichten und installieren möchten, um PCC OpRegion in der Firmware zu behandeln. \english{The PCC Address Space also referred as PCC Operation Region pertains to the region of PCC subspace that succeeds the PCC signature.\\ The PCC Operation Region works in conjunction with the PCC Table (Platform Communications Channel Table). PCC subspaces that are marked for use as PCC Operation Regions must not be used as PCC subspaces for the standard ACPI features such as CPPC, RASF, PDTT and MPST. @@ -679,16 +629,15 @@ Enable this feature if you want to set up and install the PCC Address Space hand \subsubsection{ACPI FFH Address Space} CONFIG\_ACPI\_FFH [=y] \textbf{[Y]}\\ -Der FFH (Fixed Function Hardware) Adressraum, auch FFH Operation Region genannt, erlaubt es, plattformspezifische OpRegions -zu definieren. Aktivieren Sie diese Funktion, wenn Sie den FFH-Adressraum-Handler einrichten und installieren möchten, -um die FFH-OpRegion in der Firmware zu behandeln. +Der FFH (Fixed Function Hardware) Adressraum, auch FFH Operation Region genannt, erlaubt es, plattformspezifische OpRegions zu definieren. +Aktivieren Sie diese Funktion, wenn Sie den FFH-Adressraum-Handler einrichten und installieren möchten, um die FFH-OpRegion in der Firmware zu behandeln. \english{The FFH(Fixed Function Hardware) Address Space also referred as FFH Operation Region allows to define platform specific opregion.\\ Enable this feature if you want to set up and install the FFH Address Space handler to handle FFH OpRegion in the firmware.} \subsubsection{PMIC (Power Management Integrated Circuit) operation region support \texorpdfstring{$\rightarrow$}{->}} CONFIG\_PMIC\_OPREGION [=y] \textbf{[Y]}\\* -Wählen Sie diese Option, um die Unterstützung für den ACPI-Betriebsbereich des PMIC-Chips zu aktivieren. Der Betriebsbereich -kann zur Steuerung von Stromschienen und zum Lesen/Schreiben von Sensoren auf dem PMIC-Chip verwendet werden. +Wählen Sie diese Option, um die Unterstützung für den ACPI-Betriebsbereich des PMIC-Chips zu aktivieren. +Der Betriebsbereich kann zur Steuerung von Stromschienen und zum Lesen/Schreiben von Sensoren auf dem PMIC-Chip verwendet werden. \english{Select this option to enable support for ACPI operation region of the PMIC chip. The operation region can be used to control power rails and sensor reading/writing on the PMIC chip.} @@ -717,7 +666,6 @@ CONFIG\_CHT\_WC\_PMIC\_OPREGION [=y] \textbf{[Y]}\\* Diese Konfiguration fügt ACPI-Betriebsbereich-Unterstützung für CHT Whiskey Cove PMIC hinzu. \english{This config adds ACPI operation region support for CHT Whiskey Cove PMIC.} - \paragraph{ACPI operation region support for Dollar Cove TI PMIC}\mbox{}\\ CONFIG\_CHT\_DC\_TI\_PMIC\_OPREGION [=y] \textbf{[Y]}\\* Diese Konfiguration fügt ACPI-Betriebsbereich-Unterstützung für Dollar Cove TI PMIC hinzu. @@ -725,48 +673,44 @@ Diese Konfiguration fügt ACPI-Betriebsbereich-Unterstützung für Dollar Cove T \subsubsection{ACPI operation region support for TPS68470 PMIC} CONFIG\_TPS68470\_PMIC\_OPREGION [=y] \textbf{[Y]}\\ -Diese Konfiguration fügt ACPI-Betriebsbereich-Unterstützung für TI TPS68470 PMIC hinzu. Der Baustein TPS68470 ist eine -fortschrittliche Energieverwaltungseinheit, die ein Kompaktkameramodul (CCM) mit Strom versorgt, Takte für Bildsensoren -erzeugt, eine Dual-LED für den Blitz ansteuert und zwei LED-Treiber für allgemeine Anzeigen enthält. +Diese Konfiguration fügt ACPI-Betriebsbereich-Unterstützung für TI TPS68470 PMIC hinzu. +Der Baustein TPS68470 ist eine fortschrittliche Energieverwaltungseinheit, die ein Kompaktkameramodul (CCM) mit Strom versorgt, Takte für Bildsensoren erzeugt, eine Dual-LED für den Blitz ansteuert und zwei LED-Treiber für allgemeine Anzeigen enthält. Dieser Treiber ermöglicht die Unterstützung der ACPI-Betriebsregion für die Steuerung von Spannungsreglern und Taktgebern. -Bei dieser Option handelt es sich um ein bool, da sie eine ACPI-Betriebsregion bereitstellt, die verfügbar sein muss, -bevor eines der Geräte, die diese Option verwenden, getestet wird. +Bei dieser Option handelt es sich um ein bool, da sie eine ACPI-Betriebsregion bereitstellt, die verfügbar sein muss, bevor eines der Geräte, die diese Option verwenden, getestet wird. \english{This config adds ACPI operation region support for TI TPS68470 PMIC. -TPS68470 device is an advanced power management unit that powers a Compact Camera Module (CCM), generates clocks for image sensors, -drives a dual LED for flash and incorporates two LED drivers for general purpose indicators. +TPS68470 device is an advanced power management unit that powers a Compact Camera Module (CCM), generates clocks for image sensors, drives a dual LED for flash and incorporates two LED drivers for general purpose indicators. This driver enables ACPI operation region support control voltage regulators and clocks.\\ This option is a bool as it provides an ACPI operation region, which must be available before any of the devices using this, are probed.} \subsubsection{Platform Runtime Mechanism Support} CONFIG\_ACPI\_PRMT [=y] \textbf{[Y]}\\ -Der Plattform-Laufzeit-Mechanismus (Platform Runtime Mechanism, PRM) ist eine Firmware-Schnitt\-stelle, die eine Reihe von -ausführbaren Binärdateien bereitstellt, die vom AML-Interpreter oder direkt von Gerätetreibern aufgerufen werden können. -Sagen Sie Y, um den AML-Interpreter für die Ausführung des PRM-Codes zu aktivieren. Während diese Funktion im Prinzip -optional ist, kann das Weglassen dieser Funktion den Rechenaufwand für die Initialisierung einiger Serversysteme erheblich -erhöhen. -\english{Platform Runtime Mechanism (PRM) is a firmware interface exposing a set of binary executables that can be called from the AML interpreter -or directly from device drivers.\\ +Der Plattform-Laufzeit-Mechanismus (Platform Runtime Mechanism, PRM) ist eine Firmware"=Schnittstelle, die eine Reihe von ausführbaren Binärdateien bereitstellt, die vom AML-Interpreter oder direkt von Gerätetreibern aufgerufen werden können. +Sagen Sie Y, um den AML-Interpreter für die Ausführung des PRM-Codes zu aktivieren. +Während diese Funktion im Prinzip optional ist, kann das Weglassen dieser Funktion den Rechenaufwand für die Initialisierung einiger Serversysteme erheblich erhöhen. +\english{Platform Runtime Mechanism (PRM) is a firmware interface exposing a set of binary executables that can be called from the AML interpreter or directly from device drivers.\\ Say Y to enable the AML interpreter to execute the PRM code.\\ While this feature is optional in principle, leaving it out may substantially increase computational overhead related to the initialization of some server systems.} \subsection{Power Management Timer Support} CONFIG\_X86\_PM\_TIMER [=y] \textbf{[Y]}\\* -Der Power Management Timer ist auf allen ACPI-fähigen Systemen verfügbar, in den meisten Fällen auch dann, wenn ACPI unbrauchbar ist oder -auf der schwarzen Liste steht. -Diese Zeitquelle wird nicht von Energieverwaltungsfunktionen wie aggressivem Leerlauf des Prozessors, Drosselung, Frequenz- und/oder -Spannungsskalierung beeinflusst, im Gegensatz zu der häufig verwendeten Zeitquelle Time Stamp Counter (TSC). +Der Power Management Timer ist auf allen ACPI-fähigen Systemen verfügbar, in den meisten Fällen auch dann, wenn ACPI unbrauchbar ist oder auf der schwarzen Liste steht. +Diese Zeitquelle wird nicht von Energieverwaltungsfunktionen wie aggressivem Leerlauf des Prozessors, Drosselung, Frequenz- und/oder Spannungsskalierung beeinflusst, im Gegensatz zu der häufig verwendeten Zeitquelle Time Stamp Counter (TSC). Sie sollten hier fast immer Y angeben, da viele moderne Systeme diesen Timer benötigen. \english{The Power Management Timer is available on all ACPI-capable, in most cases even if ACPI is unusable or blacklisted.\\ -This timing source is not affected by power management features like aggressive processor idling, throttling, frequency and/or -voltage scaling, unlike the commonly used Time Stamp Counter (TSC) timing source.\\ +This timing source is not affected by power management features like aggressive processor idling, throttling, frequency and/or voltage scaling, unlike the commonly used Time Stamp Counter (TSC) timing source.\\ You should nearly always say Y here because many modern systems require this timer.} +%5.12 \subsection{CPU Frequency scaling \texorpdfstring{$\rightarrow$}{->}} +Für diese Option ist keine Hilfe verfügbar. +\english{There is no help available for this option.} + +\subsubsection{CPU Frequency scaling} CONFIG\_CPU\_FREQ [=y] \textbf{[Y]}\\ -Mit der CPU-Frequenzskalierung können Sie die Taktfrequenz von CPUs im laufenden Betrieb ändern. Dies ist eine gute Methode, -um Strom zu sparen, denn je niedriger die CPU-Taktfrequenz, desto weniger Strom verbraucht die CPU. Beachten Sie, dass -dieser Treiber die CPU-Taktfrequenz nicht automatisch ändert. Sie müssen entweder einen dynamischen cpufreq-Governor -(siehe unten) nach dem Booten aktivieren oder ein Userspace-Tool verwenden.\\ +Mit der CPU-Frequenzskalierung können Sie die Taktfrequenz von CPUs im laufenden Betrieb ändern. +Dies ist eine gute Methode, um Strom zu sparen, denn je niedriger die CPU-Taktfrequenz, desto weniger Strom verbraucht die CPU. +Beachten Sie, dass dieser Treiber die CPU-Taktfrequenz nicht automatisch ändert. +Sie müssen entweder einen dynamischen cpufreq-Governor (siehe unten) nach dem Booten aktivieren oder ein Userspace-Tool verwenden.\\ Details finden Sie in $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$. Im Zweifelsfall sagen Sie N. \english{CPU Frequency scaling allows you to change the clock speed of CPUs on the fly. This is a nice method to save power, because the lower the CPU clock speed, the less power the CPU consumes.\\ @@ -774,84 +718,84 @@ Note that this driver doesn't automatically change the CPU clock speed, you need For details, take a look at $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$.\\ If in doubt, say N.} -\subsubsection{CPU frequency transition statistics} +\paragraph{CPU frequency transition statistics}$~$\\ CONFIG\_CPU\_FREQ\_STAT [=y] \textbf{[Y]}\\ -Exportieren Sie CPU-Häufigkeitsstatistiken über sysfs. Im Zweifelsfall sagen Sie N. -\english{Export CPU frequency statistics information through sysfs.\\If in doubt, say N.} +Exportieren Sie CPU-Häufigkeitsstatistiken über sysfs. +Im Zweifelsfall sagen Sie N. +\english{Export CPU frequency statistics information through sysfs. +If in doubt, say N.} -\subsubsection{Default CPUFreq governor () \texorpdfstring{$\rightarrow$}{->}} +\paragraph{Default CPUFreq governor () \texorpdfstring{$\rightarrow$}{->}}$~$\\ Diese Option legt fest, welcher CPUFreq-Governor beim Start geladen werden soll. Im Zweifelsfall ist die Standardeinstellung zu verwenden. -\english{This option sets which CPUFreq governor shall be loaded at startup. If in doubt, use the default setting.} +\english{This option sets which CPUFreq governor shall be loaded at startup. +If in doubt, use the default setting.} -\paragraph{performance}$~$\\ +\subparagraph{performance}$~$\\ CONFIG\_CPU\_FREQ\_DEFAULT\_GOV\_PERFORMANCE [=n] \textbf{[N]}\\ -Verwenden Sie den CPUFreq-Governor \glq performance\grq{} als Standard. Damit wird die Frequenz statisch auf die höchste von -der CPU unterstützte Frequenz eingestellt. +Verwenden Sie den CPUFreq-Governor \glq performance\grq{} als Standard. +Damit wird die Frequenz statisch auf die höchste von der CPU unterstützte Frequenz eingestellt. \english{Use the CPUFreq governor `performance' as default. This sets the frequency statically to the highest frequency supported by the CPU.} -\paragraph{powersave}$~$\\ +\subparagraph{powersave}$~$\\ CONFIG\_CPU\_FREQ\_DEFAULT\_GOV\_POWERSAVE [=n] \textbf{[N]}\\ -Verwenden Sie den CPUFreq-Governor \glq powersave\grq{} als Standard. Damit wird die Frequenz statisch auf die niedrigste -von der CPU unterstützte Frequenz eingestellt. +Verwenden Sie den CPUFreq-Governor \glq powersave\grq{} als Standard. +Damit wird die Frequenz statisch auf die niedrigste von der CPU unterstützte Frequenz eingestellt. \english{Use the CPUFreq governor `powersave' as default. This sets the frequency statically to the lowest frequency supported by the CPU.} -\paragraph{userspace}$~$\\ +\subparagraph{userspace}$~$\\ CONFIG\_CPU\_FREQ\_DEFAULT\_GOV\_USERSPACE [=n] \textbf{[N]}\\ -Verwenden Sie den CPUFreq-Governor \glq userspace\grq{} als Standard. Damit können Sie die CPU-Frequenz manuell einstellen -oder ein Userspace-Programm soll die CPU dynamisch einstellen können, ohne den Userspace-Governor manuell -aktivieren zu müssen. +Verwenden Sie den CPUFreq-Governor \glq userspace\grq{} als Standard. +Damit können Sie die CPU-Frequenz manuell einstellen oder ein Userspace-Programm soll die CPU dynamisch einstellen können, ohne den Userspace-Governor manuell aktivieren zu müssen. \english{Use the CPUFreq governor `userspace' as default. -This allows you to set the CPU frequency manually or when a userspace program shall be able to set the CPU dynamically -without having to enable the userspace governor manually.} +This allows you to set the CPU frequency manually or when a userspace program shall be able to set the CPU dynamically without having to enable the userspace governor manually.} -\paragraph{schedutil}$~$\\ +\subparagraph{schedutil}$~$\\ CONFIG\_CPU\_FREQ\_DEFAULT\_GOV\_SCHEDUTIL [=y] \textbf{[Y]}\\ -Verwenden Sie standardmäßig den CPUFreq-Governor \glq schedutil\grq{}. Wenn Sie sich nicht sicher sind, sehen Sie in -der Hilfe zu diesem Gouverneur nach. Der Fallback-Regler ist \glqq performance\grqq{}. +Verwenden Sie standardmäßig den CPUFreq-Governor \glq schedutil\grq{}. +Wenn Sie sich nicht sicher sind, sehen Sie in der Hilfe zu diesem Gouverneur nach. +Der Fallback-Regler ist \glqq performance\grqq{}. \english{Use the `schedutil' CPUFreq governor by default. If unsure, have a look at the help section of that governor. The fallback governor will be `performance'.} -\subsubsection{`performance' governor} +\paragraph{`performance' governor}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_PERFORMANCE [=y] \textbf{[Y]}\\ -Dieser cpufreq-Regler setzt die Frequenz statisch auf die höchste verfügbare CPU-Frequenz. Um diesen Treiber -als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_performance} heißen. +Dieser cpufreq-Regler setzt die Frequenz statisch auf die höchste verfügbare CPU-Frequenz. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_performance} heißen. Im Zweifelsfall sagen Sie Y. \english{This cpufreq governor sets the frequency statically to the highest available CPU frequency.\\ To compile this driver as a module, choose M here: the module will be called \texttt{cpufreq\_performance}.\\ If in doubt, say Y.} -\subsubsection{`powersave' governor} +\paragraph{`powersave' governor}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_POWERSAVE [=y] \textbf{[Y]}\\ -Dieser cpufreq-Regler setzt die Frequenz statisch auf die niedrigste verfügbare CPU-Frequenz. Um diesen Treiber -als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_powersave} heißen. +Dieser cpufreq-Regler setzt die Frequenz statisch auf die niedrigste verfügbare CPU-Frequenz. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_powersave} heißen. Im Zweifelsfall wählen Sie Y. \english{This cpufreq governor sets the frequency statically to the lowest available CPU frequency.\\ To compile this driver as a module, choose M here: the module will be called \texttt{cpufrequ\_powersave}.\\ If in doubt, say Y.} -\subsubsection{`userspace' governor for userspace frequency scaling} +\paragraph{`userspace' governor for userspace frequency scaling}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_USERSPACE [=y] \textbf{[Y]}\\ -Aktivieren Sie diesen cpufreq-Governor, wenn Sie die CPU-Frequenz entweder manuell einstellen wollen oder wenn -ein Userspace-Programm in der Lage sein soll, die CPU dynamisch einzustellen, wie bei -LART \url{http://www.lartmaker.nl/}. Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{cpufreq\_userspace} heißen. Im Zweifelsfall sagen Sie Y. -\english{Enable this cpufreq governor when you either want to set the CPU frequency manually or when -a userspace program shall be able to set the CPU dynamically, like on LART \url{http://www.lartmaker.nl/}.\\ +Aktivieren Sie diesen cpufreq-Governor, wenn Sie die CPU-Frequenz entweder manuell einstellen wollen oder wenn ein Userspace-Programm in der Lage sein soll, die CPU dynamisch einzustellen, wie bei LART \url{http://www.lartmaker.nl/}. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_userspace} heißen. +Im Zweifelsfall sagen Sie Y. +\english{Enable this cpufreq governor when you either want to set the CPU frequency manually or when a userspace program shall be able to set the CPU dynamically, like on LART \url{http://www.lartmaker.nl/}.\\ To compile this driver as a module, choose M here: the module will be called \texttt{cpufreq\_userspace}. If in doubt, say Y.} -\subsubsection{`ondemand' cpufreq policy governor} +\paragraph{`ondemand' cpufreq policy governor}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_ONDEMAND [=y] \textbf{[Y]}\\ `ondemand' -- Dieser Treiber fügt einen dynamischen cpufreq policy governor hinzu. Der Gouverneur führt eine periodische Abfrage durch und ändert die Frequenz auf der Grundlage der CPU-Auslastung. -Die Unterstützung für diesen Gouverneur hängt von der Fähigkeit der CPU ab, schnelle Frequenzwechsel durchzuführen -(d.\,h. Frequenzübergänge mit sehr geringer Latenzzeit). Um diesen Treiber als Modul zu kompilieren, -wählen Sie hier M: Das Modul wird \texttt{cpufreq\_ondemand} heißen. -Details finden Sie in $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$. Im Zweifelsfall sagen Sie N. +Die Unterstützung für diesen Gouverneur hängt von der Fähigkeit der CPU ab, schnelle Frequenzwechsel durchzuführen (d.\,h. Frequenzübergänge mit sehr geringer Latenzzeit). +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_ondemand} heißen. +Details finden Sie in $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$. +Im Zweifelsfall sagen Sie N. \english{`ondemand' -- This driver adds a dynamic cpufreq policy governor. The governor does a periodic polling and changes frequency based on the CPU utilization. The support for this governor depends on CPU capability to do fast frequency switching (i.e, very low latency frequency transitions).\\ @@ -859,33 +803,29 @@ To compile this driver as a module, choose M here: the module will be called \te For details, take a look at $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$.\\ If in doubt, say N.} -\subsubsection{`conservative' cpufreq governor} +\paragraph{`conservative' cpufreq governor}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_CONSERVATIVE [=y] \textbf{[Y]}\\ -`konservativ' -- dieser Treiber ähnelt dem \glqq On-Demand\grqq{}-Regler sowohl in seinem Quellcode als auch in -seinem Zweck, der Unterschied besteht in seiner Optimierung für eine bessere Eignung in einer batteriebetriebenen -Umgebung. Die Frequenz wird sanft erhöht und gesenkt, anstatt auf 100~\% zu springen, wenn die Geschwindigkeit -erforderlich ist. Wenn Sie einen Desktop-Rechner haben, sollten Sie stattdessen den \glqq On-Demand\grqq{}-Regler -in Betracht ziehen. Wenn Sie jedoch einen Laptop, einen PDA oder sogar einen AMD64-basierten Computer verwenden -(wegen der inakzeptablen schrittweisen Latenzprobleme zwischen den minimalen und maximalen Frequenzübergängen in -der CPU), werden Sie wahrscheinlich diesen Regler verwenden wollen. Um diesen Treiber als Modul zu kompilieren, -wählen Sie hier M: Das Modul wird \texttt{cpufreq\_conservative} heißen.\\ -Einzelheiten finden Sie in $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$.\\Im Zweifelsfall sagen Sie N. -\english{`conservative' -- this driver is rather similar to the `ondemand' governor both in its source code and its purpose, -the difference is its optimisation for better suitability in a battery powered environment. +`konservativ' -- dieser Treiber ähnelt dem \glqq On-Demand\grqq{}-Regler sowohl in seinem Quellcode als auch in seinem Zweck, der Unterschied besteht in seiner Optimierung für eine bessere Eignung in einer batteriebetriebenen Umgebung. +Die Frequenz wird sanft erhöht und gesenkt, anstatt auf \qty{100}{\percent} zu springen, wenn die Geschwindigkeit erforderlich ist. +Wenn Sie einen Desktop-Rechner haben, sollten Sie stattdessen den \glqq On-Demand\grqq{}-Regler in Betracht ziehen. +Wenn Sie jedoch einen Laptop, einen PDA oder sogar einen AMD64-basierten Computer verwenden (wegen der inakzeptablen schrittweisen Latenzprobleme zwischen den minimalen und maximalen Frequenzübergängen in der CPU), werden Sie wahrscheinlich diesen Regler verwenden wollen. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{cpufreq\_conservative} heißen.\\ +Einzelheiten finden Sie in $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$.\\ +Im Zweifelsfall sagen Sie N. +\english{`conservative' -- this driver is rather similar to the `ondemand' governor both in its source code and its purpose, the difference is its optimisation for better suitability in a battery powered environment. The frequency is gracefully increased and decreased rather than jumping to 100\% when speed is required.\\ -If you have a desktop machine then you should really be considering the `ondemand' governor instead, -however if you are using a laptop, PDA or even an AMD64 based computer (due to the unacceptable step-by-step latency issues -between the minimum and maximum frequency transitions in the CPU) you will probably want to use this governor.\\ +If you have a desktop machine then you should really be considering the `ondemand' governor instead, however if you are using a laptop, PDA or even an AMD64 based computer (due to the unacceptable step-by-step latency issues between the minimum and maximum frequency transitions in the CPU) you will probably want to use this governor.\\ To compile this driver as a module, choose M here: the module will be called \texttt{cpufreq\_conservative}. -For details, take a look at $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$. If in doubt, say N.} +For details, take a look at $<$file:Documentation/admin-guide/pm/cpufreq.rst$>$. +If in doubt, say N.} -\subsubsection{`schedutil' cpufreq policy governor} +\paragraph{`schedutil' cpufreq policy governor}$~$\\ CONFIG\_CPU\_FREQ\_GOV\_SCHEDUTIL [=y] \textbf{[Y]}\\ Dieser Gouverneur trifft seine Entscheidungen auf der Grundlage der vom Scheduler bereitgestellten Nutzungsdaten. -Er stellt die CPU-Frequenz so ein, dass sie proportional zu dem vom Scheduler gelieferten Verhältnis zwischen -Auslastung und Kapazität ist. Wenn die Auslastung frequenzinvariant ist, ist die neue Frequenz auch proportional -zur maximal verfügbaren Frequenz. Wenn dies nicht der Fall ist, ist sie proportional zur aktuellen Frequenz der CPU. -Der Kipppunkt der Frequenz liegt in beiden Fällen bei einer Auslastung/Kapazität von 80~\%.\\ +Er stellt die CPU-Frequenz so ein, dass sie proportional zu dem vom Scheduler gelieferten Verhältnis zwischen Auslastung und Kapazität ist. +Wenn die Auslastung frequenzinvariant ist, ist die neue Frequenz auch proportional zur maximal verfügbaren Frequenz. +Wenn dies nicht der Fall ist, ist sie proportional zur aktuellen Frequenz der CPU. +Der Kipppunkt der Frequenz liegt in beiden Fällen bei einer Auslastung/Kapazität von \qty{80}{\percent}.\\ Im Zweifelsfall sagen Sie N. \english{This governor makes decisions based on the utilization data provided by the scheduler. It sets the CPU frequency to be proportional to the utilization/capacity ratio coming from the scheduler. @@ -893,13 +833,14 @@ If the utilization is frequency-invariant, the new frequency is also proportiona If that is not the case, it is proportional to the current frequency of the CPU. The frequency tipping point is at utilization/capacity equal to 80\% in both cases. If in doubt, say N.} -\subsubsection*{*** CPU frequency scaling drivers ***} + +\paragraph*{*** CPU frequency scaling drivers ***}$~$\\ \textit{Treiber zur Skalierung der CPU-Frequenz} -\subsubsection{Intel P state control} +\paragraph{Intel P state control}$~$\\ CONFIG\_X86\_INTEL\_PSTATE [=y] \textbf{[Y]}\\ -Dieser Treiber bietet einen P-Status für Intel-Core-Prozessoren. Der Treiber implementiert einen internen -Gouverneur und wird der Skalierungstreiber und Gouverneur für Sandy-Bridge-Prozessoren werden. +Dieser Treiber bietet einen P-Status für Intel-Core-Prozessoren. +Der Treiber implementiert einen internen Gouverneur und wird der Skalierungstreiber und Gouverneur für Sandy-Bridge-Prozessoren werden. Wenn dieser Treiber aktiviert ist, wird er der bevorzugte Skalierungstreiber für Sandy-Bridge-Prozessoren.\\ Im Zweifelsfall sagen Sie N. \english{This driver provides a P state for Intel core processors. @@ -907,29 +848,29 @@ The driver implements an internal governor and will become the scaling driver an When this driver is enabled it will become the preferred scaling driver for Sandy bridge processors.\\ If in doubt, say N.} -\subsubsection{Processor Clocking Control interface driver} -CONFIG\_X86\_PCC\_CPUFREQ [=y] \textbf{[Y]}\\ -Dieser Treiber bietet Unterstützung für die PCC-Schnittstelle. Einzelheiten finden Sie unter:\\ -$<$file:Documentation/admin-guide/pm/cpufreq\_drivers.rst$>$. Um diesen Treiber als Modul zu kompilieren, -wählen Sie hier M: -Das Modul wird \texttt{pcc-cpufreq} heißen. Im Zweifelsfall sagen Sie N. +\paragraph{Processor Clocking Control interface driver}$~$\\ +CONFIG\_X86\_PCC\_CPUFREQ [=m] \textbf{[M]}\\ +Dieser Treiber bietet Unterstützung für die PCC-Schnittstelle. +Einzelheiten finden Sie unter:\\$<$file:Documentation/admin-guide/pm/cpufreq\_drivers.rst$>$. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{pcc-cpufreq} heißen. +Im Zweifelsfall sagen Sie N. \english{This driver adds support for the PCC interface.\\ For details, take a look at: $<$file:Documentation/admin-guide/pm/cpufreq\_drivers.rst$>$. To compile this driver as a module, choose M here: the module will be called \texttt{pcc-cpufreq}. If in doubt, say N.} -\subsubsection{AMD Processor P-State driver} +\paragraph{AMD Processor P-State driver}$~$\\ CONFIG\_X86\_AMD\_PSTATE [=y] \textbf{[Y]}\\ -Dieser Treiber fügt einen CPUFreq-Treiber hinzu, der einen feinkörnigen Frequenzsteuerungsbereich für die -Prozessorleistung anstelle der alten Leistungsstufen verwendet. In den ACPI-Tabellen des Systems muss -\_CPC vorhanden sein.\\ +Dieser Treiber fügt einen CPUFreq-Treiber hinzu, der einen feinkörnigen Frequenzsteuerungsbereich für die Prozessorleistung anstelle der alten Leistungsstufen verwendet. +In den ACPI-Tabellen des Systems muss \_CPC vorhanden sein.\\ Details finden Sie unter: $<$file:Documentation/admin-guide/pm/amd-pstate.rst$>$. Im Zweifelsfall sagen Sie N. \english{This driver adds a CPUFreq driver which utilizes a fine grain processor performance frequency control range instead of legacy performance levels. \_CPC needs to be present in the ACPI tables of the system.\\ -For details, take a look at: $<$file:Documentation/admin-guide/pm/amd-pstate.rst$>$. If in doubt, say N.} +For details, take a look at: $<$file:Documentation/admin-guide/pm/amd-pstate.rst$>$. +If in doubt, say N.} -\paragraph{AMD Processor P-State default mode}$~$\\ +\subparagraph{AMD Processor P-State default mode}$~$\\ CONFIG\_X86\_AMD\_PSTATE\_DEFAULT\_MODE [=3] \textbf{[3]}\\ Wählen Sie den Standardmodus, den der amd-pstate-Treiber auf unterstützter Hardware verwenden soll. Der eingestellte Wert hat die folgenden Bedeutungen: @@ -951,99 +892,94 @@ The value set has the following meanings:\\ \indent 4 $->$ Guided\\ For details, take a look at: $<$file:Documentation/admin-guide/pm/amd-pstate.rst$>$.} -\subsubsection{selftest for AMD Processor P-State driver} +\subparagraph{selftest for AMD Processor P-State driver}$~$\\ CONFIG\_X86\_AMD\_PSTATE\_UT [=m] \textbf{[M]}\\ Dieses Kernelmodul wird für Tests verwendet. Hier kann man mit Sicherheit M sagen. -Es kann auch ohne aktiviertes X86\_AMD\_PSTATE eingebaut werden. Derzeit werden nur Tests für amd-pstate -unterstützt. Wenn X86\_AMD\_PSTATE deaktiviert ist, kann es den Benutzern sagen, dass der Test nur auf dem -amd-pstate Treiber laufen kann, bitte setzen Sie X86\_AMD\_PSTATE aktiviert. -In der Zukunft werden Vergleichstests hinzugefügt werden. Es kann amd-pstate deaktiviert und acpi-cpufreq -aktiviert werden, um Testfälle auszuführen und dann die Testergebnisse zu vergleichen. -\english{This kernel module is used for testing. It's safe to say M here.\\ +Es kann auch ohne aktiviertes X86\_AMD\_PSTATE eingebaut werden. +Derzeit werden nur Tests für amd-pstate unterstützt. +Wenn X86\_AMD\_PSTATE deaktiviert ist, kann es den Benutzern sagen, dass der Test nur auf dem amd-pstate Treiber laufen kann, bitte setzen Sie X86\_AMD\_PSTATE aktiv. +In der Zukunft werden Vergleichstests hinzugefügt werden. +Es kann amd-pstate deaktiviert und acpi-cpufreq aktiviert werden, um Testfälle auszuführen und dann die Testergebnisse zu vergleichen. +\english{This kernel module is used for testing. +It's safe to say M here.\\ It can also be built-in without X86\_AMD\_PSTATE enabled. Currently, only tests for amd-pstate are supported. If X86\_AMD\_PSTATE is set disabled, it can tell the users test can only run on amd-pstate driver, please set X86\_AMD\_PSTATE enabled. In the future, comparison tests will be added. It can set amd-pstate disabled and set acpi-cpufreq enabled to run test cases, then compare the test results.} -\subsubsection{ACPI Processor P-State driver} +\paragraph{ACPI Processor P-States driver}$~$\\ CONFIG\_X86\_ACPI\_CPUFREQ [=m] \textbf{[M]}\\ Dieser Treiber fügt einen CPUFreq-Treiber hinzu, der die ACPI Processor Performance States nutzt. -Dieser Treiber unterstützt auch Intel Enhanced Speedstep und neuere AMD-CPUs. Um diesen Treiber als Modul -zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{acpi-cpufreq} heißen.\\ -Details finden Sie unter $<$file:Documentation/cpu-freq/$>$. Im Zweifelsfall sagen Sie N. +Dieser Treiber unterstützt auch Intel Enhanced Speedstep und neuere AMD-CPUs. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{acpi-cpufreq} heißen.\\ +Details finden Sie unter $<$file:Documentation/cpu-freq/$>$. +Im Zweifelsfall sagen Sie N. \english{This driver adds a CPUFreq driver which utilizes the ACPI Processor Performance States. This driver also supports Intel Enhanced Speedstep and newer AMD CPUs.\\ To compile this driver as a module, choose M here: the module will be called acpi-cpufreq. For details, take a look at $<$file:Documentation/cpu-freq/$>$.\\ If in doubt, say N.} -\paragraph{Legacy cpb sysfs knob support for AMD CPUs}$~$\\ +\subparagraph{Legacy cpb sysfs knob support for AMD CPUs}$~$\\ CONFIG\_X86\_ACPI\_CPUFREQ\_CPB [=y] \textbf{[Y]}\\ -Der powernow-k8-Treiber stellte früher einen sysfs-Regler namens \texttt{cpb} zur Verfügung, -um die Core Performance Boosting-Funktion von AMD-CPUs zu deaktivieren. Diese Datei wurde nun durch den -allgemeineren \glqq boost\grqq{}-Eintrag abgelöst. -Wenn Sie diese Option aktivieren, stellt der acpi\_cpufreq-Treiber aus Kompatibilitätsgründen den alten -Eintrag zusätzlich zum neuen \glqq boost\grqq{}-Eintrag bereit. -\english{The powernow-k8 driver used to provide a sysfs knob called ``cpb'' -to disable the Core Performance Boosting feature of AMD CPUs. +Der powernow-k8-Treiber stellte früher einen sysfs-Regler namens \texttt{cpb} zur Verfügung, um die Core Performance Boosting-Funktion von AMD-CPUs zu deaktivieren. +Diese Datei wurde nun durch den allgemeineren \glqq boost\grqq{}-Eintrag abgelöst. +Wenn Sie diese Option aktivieren, stellt der acpi\_cpufreq-Treiber aus Kompatibilitätsgründen den alten Eintrag zusätzlich zum neuen \glqq boost\grqq{}-Eintrag bereit. +\english{The powernow-k8 driver used to provide a sysfs knob called ``cpb'' to disable the Core Performance Boosting feature of AMD CPUs. This file has now been superseded by the more generic ``boost'' entry.\\ By enabling this option the acpi\_cpufreq driver provides the old entry in addition to the new boost ones, for compatibility reasons.} -\subsubsection{AMD Opteron/Athlon64 PowerNow!} +\paragraph{AMD Opteron/Athlon64 PowerNow!}$~$\\ CONFIG\_X86\_POWERNOW\_K8 [=m] \textbf{[M]}\\ -Dies fügt den CPUFreq-Treiber für K8/frühe Opteron/Athlon64-Prozessoren hinzu. Unterstützung für K10 und -neuere Prozessoren ist jetzt in acpi-cpufreq enthalten. Um diesen Treiber als Modul zu kompilieren, -wählen Sie hier M: Das Modul wird \texttt{powernow-k8} heißen.\\ +Dies fügt den CPUFreq-Treiber für K8/frühe Opteron/Athlon64-Prozessoren hinzu. +Unterstützung für K10 und neuere Prozessoren ist jetzt in acpi-cpufreq enthalten. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{powernow-k8} heißen.\\ Details finden Sie in $<$file:Documentation/cpu-freq/$>$. \english{This adds the CPUFreq driver for K8/early Opteron/Athlon64 processors. Support for K10 and newer processors is now in acpi-cpufreq.\\ To compile this driver as a module, choose M here: the module will be called \texttt{powernow-k8}.\\ For details, take a look at $<$file:Documentation/cpu-freq/$>$.} -\subsubsection{AMD frequency sensitivity feedback powersave bias} +\paragraph{AMD frequency sensitivity feedback powersave bias}$~$\\ CONFIG\_X86\_AMD\_FREQ\_SENSITIVITY [=m] \textbf{[M]}\\ -Dies fügt dem On-Demand-Governor eine AMD-spezifische Powersave-Bias-Funktion hinzu, die es ihm ermöglicht, -auf der Grundlage von Rückmeldungen der Hardware energiebewusstere Entscheidungen über Frequenzänderungen -zu treffen (verfügbar ab AMD-Familie 16h). Durch das Hardware-Feedback erfährt die Software, wie -\glqq empfindlich\grqq{} die Arbeitslasten der CPUs gegenüber Frequenzänderungen sind. +Dies fügt dem On-Demand-Governor eine AMD-spezifische Powersave-Bias-Funktion hinzu, die es ihm ermöglicht, auf der Grundlage von Rückmeldungen der Hardware energiebewusstere Entscheidungen über Frequenzänderungen zu treffen (verfügbar ab AMD-Familie 16h). +Durch das Hardware-Feedback erfährt die Software, wie \glqq empfindlich\grqq{} die Arbeitslasten der CPUs gegenüber Frequenzänderungen sind. CPU-gebundene Arbeitslasten sind empfindlicher, d.\,h. sie werden bei einer Frequenzerhöhung besser funktionieren. -Speicher-/IO-gebundene Arbeitslasten reagieren weniger empfindlich, d.\,h. sie werden nicht unbedingt besser, -wenn die Frequenz erhöht wird.\\ +Speicher-/IO-gebundene Arbeitslasten reagieren weniger empfindlich, d.\,h. sie werden nicht unbedingt besser, wenn die Frequenz erhöht wird.\\ Im Zweifelsfall sagen Sie N. -\english{This adds AMD-specific powersave bias function to the ondemand governor, which allows it to make more -power-conscious frequency change decisions based on feedback from hardware (available on AMD Family 16h and above).\\ +\english{This adds AMD-specific powersave bias function to the ondemand governor, which allows it to make more power-conscious frequency change decisions based on feedback from hardware (available on AMD Family 16h and above).\\ Hardware feedback tells software how ``sensitive'' to frequency changes the CPUs' workloads are. CPU-bound workloads will be more sensitive -- they will perform better as frequency increases. Memory/IO-bound workloads will be less sensitive -- they will not necessarily perform better as frequency increases.\\ If in doubt, say N.} -\subsubsection{Intel Enhanced SpeedStep (deprecated)} +\paragraph{Intel Enhanced SpeedStep (deprecated)}$~$\\ CONFIG\_X86\_SPEEDSTEP\_CENTRINO [=n] \textbf{[N]}\\ Dies ist veraltet und diese Funktionalität ist nun in acpi\_cpufreq (X86\_ACPI\_CPUFREQ) integriert. Verwenden Sie diesen Treiber anstelle von speedstep\_centrino. Dies fügt den CPUFreq-Treiber für Enhanced SpeedStep-fähige mobile CPUs hinzu. -Dies bedeutet Intel Pentium M (Centrino) CPUs oder 64bit-fähige Intel Xeons. Um diesen Treiber als Modul -zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{speedstep-centrino} heißen.\\ -Details finden Sie unter $<$file:Documentation/cpu-freq/$>$. Im Zweifelsfall wählen Sie N. +Dies bedeutet Intel Pentium M (Centrino) CPUs oder 64bit-fähige Intel Xeons. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{speedstep-centrino} heißen.\\ +Details finden Sie unter $<$file:Documentation/cpu-freq/$>$. +Im Zweifelsfall wählen Sie N. \english{This is deprecated and this functionality is now merged into acpi\_cpufreq (X86\_ACPI\_CPUFREQ). Use that driver instead of speedstep\_centrino. This adds the CPUFreq driver for Enhanced SpeedStep enabled mobile CPUs. This means Intel Pentium M (Centrino) CPUs or 64bit enabled Intel Xeons.\\ To compile this driver as a module, choose M here: the module will be called \texttt{speedstep-centrino}.\\ -For details, take a look at $<$file:Documentation/cpu-freq/$>$. If in doubt, say N.} +For details, take a look at $<$file:Documentation/cpu-freq/$>$. +If in doubt, say N.} -\subsubsection{Intel Pentium 4 clock modulation} +\paragraph{Intel Pentium 4 clock modulation}$~$\\ CONFIG\_X86\_P4\_CLOCKMOD \colorbox{yellow!80}{[=m] \textbf{[N]}}\\ -Dies fügt den CPUFreq-Treiber für Intel Pentium 4 / XEON Prozessoren hinzu. Wenn er aktiviert ist, -senkt er die CPU-Temperatur durch Überspringen von Takten. Dieser Treiber sollte nur in Ausnahmefällen -verwendet werden, wenn eine sehr niedrige Leistung benötigt wird, da er starke Verlangsamungen und spürbare -Latenzen verursacht. Normalerweise sollte stattdessen Speedstep verwendet werden. -Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{p4-clockmod} genannt.\\ -Für Details werfen Sie einen Blick auf $<$file:Documentation/cpu-freq/$>$. Wenn Sie sich nicht absolut -sicher sind, wählen Sie N. +Dies fügt den CPUFreq-Treiber für Intel Pentium 4 / XEON Prozessoren hinzu. +Wenn er aktiviert ist, senkt er die CPU-Temperatur durch Überspringen von Takten. +Dieser Treiber sollte nur in Ausnahmefällen verwendet werden, wenn eine sehr niedrige Leistung benötigt wird, da er starke Verlangsamungen und spürbare Latenzen verursacht. +Normalerweise sollte stattdessen Speedstep verwendet werden. +Um diesen Treiber als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{p4-clockmod} genannt.\\ +Für Details werfen Sie einen Blick auf $<$file:Documentation/cpu-freq/$>$. +Wenn Sie sich nicht absolut sicher sind, wählen Sie N. \english{This adds the CPUFreq driver for Intel Pentium 4 / XEON processors. When enabled it will lower CPU temperature by skipping clocks.\\ This driver should be only used in exceptional circumstances when very low power is needed because it causes severe slowdowns and noticeable latencies. @@ -1051,9 +987,15 @@ Normally Speedstep should be used instead.\\ To compile this driver as a module, choose M here: the module will be called \texttt{p4-clockmod}.\\ For details, take a look at $<$file:Documentation/cpu-freq/$>$. Unless you are absolutely sure say N.} -\subsubsection*{*** shared options ***} +\paragraph*{*** shared options ***}$~$\\ \textit{gemeinsame Optionen} +\paragraph{Current frequency derived from HW provided feedback}$~$\\ +CONFIG\_CPUFREQ\_ARCH\_CUR\_FREQ [=y] \textbf{[Y]}\\ +Dies bestimmt, ob das sysfs-Attribut „scaling\_cur\_freq“ die zuletzt angeforderte Frequenz oder einen genaueren Wert basierend auf dem Feedback der Hardware (als architekturbasierte Zähler) zurückgibt. +Da nun über das Attribut „cpuinfo\_avg\_freq“ eine genauere Frequenz bereitgestellt werden kann, behält „scaling\_cur\_freq“ aus Kompatibilitätsgründen die Bereitstellung einer zählerbasierten Frequenz bei, wenn diese Option aktiviert ist. +\english{This determines whether the scaling\_cur\_freq sysfs attribute returns the last requested frequency or a more precise value based on hardware provided feedback (as architected counters). Given that a more precise frequency can now be provided via the cpuinfo\_avg\_freq attribute, by enabling this option, scaling\_cur\_freq maintains the provision of a counter based frequency, for compatibility reasons.} + \subsection{CPU Idle \texorpdfstring{$\rightarrow$}{->}} \textit{CPU im Leerlauf} @@ -1079,8 +1021,7 @@ Für diese Option gibt es keine Hilfe. \paragraph{Timer events oriented (TEO) governor (for tickless systems)}$~$\\ CONFIG\_CPU\_IDLE\_GOV\_TEO [=y] \textbf{[Y]}\\ -Dieser Gouverneur implementiert eine vereinfachte Methode zur Auswahl des Ruhezustands, die sich auf -Timer-Ereignisse konzentriert und keine Steigerung der Interaktivität bewirkt. +Dieser Gouverneur implementiert eine vereinfachte Methode zur Auswahl des Ruhezustands, die sich auf Timer-Ereignisse konzentriert und keine Steigerung der Interaktivität bewirkt. Einige Arbeitslasten profitieren davon, und es sollte im Allgemeinen sicher zu verwenden sein.\\ Sagen Sie hier Y, wenn Sie mit den Alternativen nicht zufrieden sind. \english{This governor implements a simplified idle state selection method focused on timer events and does not do any interactivity boosting.\\ @@ -1089,24 +1030,20 @@ Say Y here if you are not happy with the alternatives.} \paragraph{Haltpoll governor (for virtualized systems)}$~$\\ CONFIG\_CPU\_IDLE\_GOV\_HALTPOLL [=y] \textbf{[Y]}\\ -Dieser Gouverneur implementiert die Auswahl des Leerlaufzustands von haltpoll, der in Verbindung mit -dem haltpoll cpuidle-Treiber verwendet wird und es ermöglicht, eine bestimmte Zeit lang zu pollen, -bevor der Leerlaufzustand erreicht wird. Einige virtualisierte Arbeitslasten profitieren von dieser Funktion. -\english{This governor implements haltpoll idle state selection, to be used in conjunction with the haltpoll cpuidle driver, -allowing for polling for a certain amount of time before entering idle state.\\ +Dieser Gouverneur implementiert die Auswahl des Leerlaufzustands von haltpoll, der in Verbindung mit dem haltpoll cpuidle-Treiber verwendet wird und es ermöglicht, eine bestimmte Zeit lang zu pollen, bevor der Leerlaufzustand erreicht wird. +Einige virtualisierte Arbeitslasten profitieren von dieser Funktion. +\english{This governor implements haltpoll idle state selection, to be used in conjunction with the haltpoll cpuidle driver, allowing for polling for a certain amount of time before entering idle state.\\ Some virtualized workloads benefit from using it.} \paragraph{Halt poll cpuidle driver}$~$\\ CONFIG\_HALTPOLL\_CPUIDLE \colorbox{yellow!80}{[=m] \textbf{[N]}}\\ -Diese Option aktiviert den \glqq halt poll cpuidle\grqq{}-Treiber, der eine Abfrage vor dem Anhalten -im Gast ermöglicht (effizienter als die Abfrage im Host über halt\_poll\_ns für einige Szenarien). -\english{This option enables halt poll cpuidle driver, which allows to poll before halting in the guest -(more efficient than polling in the host via halt\_poll\_ns for some scenarios).} +Diese Option aktiviert den \glqq halt poll cpuidle\grqq{}-Treiber, der eine Abfrage vor dem Anhalten im Gast ermöglicht (effizienter als die Abfrage im Host über halt\_poll\_ns für einige Szenarien). +\english{This option enables halt poll cpuidle driver, which allows to poll before halting in the guest (more efficient than polling in the host via halt\_poll\_ns for some scenarios).} +%5.14 \subsection{CPUidle Driver for Intel Processors} CONFIG\_INTEL\_IDLE [=y] \textbf{[Y]}\\ -Aktivieren Sie intel\_idle, einen cpuidle-Treiber, der das Wissen über native Intel-Hardware-Idle-Funk\-tio\-nen enthält. -Der acpi\_idle-Treiber kann zur gleichen Zeit konfiguriert werden, um Prozessoren zu behandeln, -die intel\_idle nicht unterstützt. +Aktivieren Sie intel\_idle, einen cpuidle-Treiber, der das Wissen über native Intel-Hardware-Idle"=Funktionen enthält. +Der acpi\_idle-Treiber kann zur gleichen Zeit konfiguriert werden, um Prozessoren zu behandeln, die intel\_idle nicht unterstützt. \english{Enable intel\_idle, a cpuidle driver that includes knowledge of native Intel hardware idle features. The acpi\_idle driver can be configured at the same time, in order to handle processors intel\_idle does not support.} \ No newline at end of file