UPD settings, 01_general_setup.tex

This commit is contained in:
2025-12-19 07:54:45 +01:00
parent 873a3668a4
commit 31a1d2a39a
2 changed files with 34 additions and 3 deletions

View File

@@ -3149,6 +3149,7 @@
"sofern",
"SOFS",
"softing",
"Softirqs",
"Softlimits",
"Softlock",
"softlocking",

View File

@@ -1,5 +1,5 @@
% linux_configuration_01_general_setup.tex
% since Linux 6.16
% since Linux 6.18
\section{General setup \texorpdfstring{$\rightarrow$}{->}}
%1.1
@@ -320,7 +320,7 @@ Die wichtigste Voraussetzung für das Funktionieren von Full-Dynticks ist die Un
Es gibt aber auch noch andere Abhängigkeiten, die erfüllt werden müssen, damit die vollständigen Dynticks funktionieren.\\
Diese Option dient zum Testen, wenn eine Systemarchitektur das Backend für die Benutzerkontextverfolgung implementiert, aber noch nicht alle Anforderungen erfüllt, um die volle Dynticks-Funktion zu ermöglichen.
Ohne die vollständigen Dynticks gibt es keine Möglichkeit, die Unterstützung für die Benutzerkontextverfolgung und die Teilsysteme, die darauf angewiesen sind, zu testen:
RCU Userspace extended quiescent state und tickless cputime accounting.
Erweiterter Ruhezustand im RCU-Benutzerspeicher und tickless cputime accounting.
Diese Option kommt mit dem Fehlen des vollständigen dynticks-Subsystems zurecht, indem sie die Benutzerkontextverfolgung auf allen CPUs im System erzwingt.
Sagen Sie nur dann ja (Y), wenn Sie an der Entwicklung eines Architektur-Backends für die Benutzerkontextverfolgung arbeiten.
@@ -362,6 +362,12 @@ Bereich (Range): 50 -- 1000
The default is based on a half-second clocksource watchdog interval and NTP's maximum frequency drift of 500 parts per million.
If the clocksource is good enough for NTP, it is good enough for the clocksource watchdog!}
\subsubsection{Enable auxiliary POSIX clocks}
CONFIG\_POSIX\_AUX\_CLOCKS [=n] \textbf{[N]}\\
Hilfs-POSIX-Uhren sind Uhren, die unabhängig vom Kernzeitgeber gesteuert werden können, der die MONOTONIC-, REALTIME-, BOOTTIME- und TAI-Uhren steuert.
Sie sind nützlich, um beispielsweise lockless time accessors für unabhängige PTP-Uhren und andere Uhrdomänen bereitzustellen, die nicht mit dem TAI/NTP-Zeitbegriff korrelieren.
\english{Auxiliary POSIX clocks are clocks which can be steered independently of the core timekeeper, which controls the MONOTONIC, REALTIME, BOOTTIME and TAI clocks. They are useful to provide e.g. lockless time accessors to independent PTP clocks and other clock domains, which are not correlated to the TAI/NTP notion of time.}
%1.16 BPF subsystem
\subsection{BPF subsystem \texorpdfstring{$\rightarrow$}{->}}
Berkeley Packet Filter, Firewall-Filtertechnik im Kernel
@@ -408,10 +414,17 @@ Unprivileged BPF could be used to exploit certain potential speculative executio
If you are unsure how to answer this question, answer Y.}
\subsubsection{Preload BPF file system with kernel specific program and map iterators \texorpdfstring{$\rightarrow$}{->}}
BPF\_PRELOAD [=n] \textbf{[N]}\\
CONFIG\_BPF\_PRELOAD [=n] \textbf{[N]}\\
Dadurch wird ein Kernelmodul mit mehreren eingebetteten BPF"=Programmen erstellt, die als für den Menschen lesbare Dateien in den BPF-FS"=Einhängepunkt eingefügt werden, was bei der Fehlersuche und der Untersuchung von BPF"=Programmen und -Maps nützlich ist.
\english{This builds kernel module with several embedded BPF programs that are pinned into BPF FS mount point as human readable files that are useful in debugging and introspection of BPF programs and maps.}
\subsubsection{Enable BPF LSM Instrumentation}
CONFIG\_BPF\_LSM [=y] \textbf{[Y]}\\
Ermöglicht die Instrumentierung der Sicherheits-Hooks mit BPF-Programmen zur Implementierung dynamischer MAC- und Audit-Richtlinien.
Wenn Sie sich bei der Beantwortung dieser Frage unsicher sind, antworten Sie mit N.
\english{Enables instrumentation of the security hooks with BPF programs for implementing dynamic MAC and Audit Policies.
If you are unsure how to answer this question, answer N.}
\paragraph{bpf\_preload kernel module\\}$~$\\
\textit{Dies ist nur sichtbar wenn der übergeordnete Punkt aktiviert ist.}\\
CONFIG\_BPF\_PRELOAD\_UMD [=m] \textbf{[M]}\\*
@@ -478,6 +491,22 @@ Wählen Sie dies, wenn Sie einen Kernel für Systeme erstellen, die Echtzeitgara
This makes the kernel, except for very low level and critical code paths (entry code, scheduler, low level interrupt handling) fully preemptible and brings most execution contexts under scheduler control.\\
Select this if you are building a kernel for systems which require real-time guarantees.}
\subsubsection{Enforce softirq synchronisation on PREEMPT\_RT {\tiny seit 6.18}}
CONFIG\_PREEMPT\_RT\_NEEDS\_BH\_LOCK [=n] \textbf{[N]}\\
Erzwingt die Synchronisation über den Softirqs-Kontext hinweg.
Bei PREEMPT\_RT ist der Softirq präemptiv.
Dadurch wird dieselbe BLK-Semantik pro CPU erzwungen, die auch in Nicht-PREEMPT\_RT-Builds vorhanden ist.
Dies sollte nicht erforderlich sein, da Sperren pro CPU hinzugefügt wurden, um die BKL pro CPU zu vermeiden.
Dieser Schalter bietet das alte Verhalten zu Testzwecken.
Wählen Sie diese Option, wenn Sie einen Fehler bei vorrangigen Softirqs vermuten und das alte synchronisierte Verhalten testen möchten.
\english{Enforce synchronisation across the softirqs context.
On PREEMPT\_RT the softirq is preemptible.
This enforces the same per-CPU BLK semantic non-PREEMPT\_RT builds have.
This should not be needed because per-CPU locks were added to avoid the per-CPU BKL.\\
This switch provides the old behaviour for testing reasons.
Select this if you suspect an error with preemptible softirq and want test the old synchronized behaviour.}
%1.19 Preemption behaviour defined on boot
\subsection{Preemtion behaviour defined on boot}
CONFIG\_PREEMPT\_DYNAMIC \colorbox{yellow!80}{[=y] \textbf{[N]}}\\
@@ -549,6 +578,7 @@ Dies ist die grundlegende tick-basierte Rechenzeitabrechnung, die Statistiken ü
Wenn Sie unsicher sind, sagen Sie Y.
\english{This is the basic tick based cputime accounting that maintains statistics about user, system and idle time spent on per jiffies granularity.\\
If unsure, say Y.}
\note{Diese Auswahl erscheint nur dann, wenn CONFIG\_S390 sowie CONFIG\_NO\_HZ\_FULL abgewählt sind (=N).}
\paragraph{Full dynticks CPU time accounting} $~$\\
CONFIG\_VIRT\_CPU\_ACCOUNTING\_GEN \colorbox{yellow!0}{[=y] \textbf{[Y]}}\\*