Ist es sicher, angepasste CFLAGS für den Linux-Kernel zu verwenden, z. B. mmx sse-Anweisungen?

Ist es sicher, angepasste CFLAGS für den Linux-Kernel zu verwenden, z. B. mmx sse-Anweisungen?

Ist es sicher, beim Kompilieren des Linux-Kernels angepasste CFLAGS zu verwenden, z. B. SSE- und MMX-Anweisungen zu aktivieren? Ist das ein Problem?

Antwort1

Wenn Sie einen benutzerdefinierten Kernel erstellen, spielen Sie bereits mit Funktionen, die je nach GCC-Version (wie von GillieS erwähnt) und anderen Faktoren funktionieren können oder nicht. Die Entscheidung, SSE, MMX usw. zu aktivieren, birgt daher wahrscheinlich kein zusätzliches „Risiko“. Im Grunde müssen Sie Ihren benutzerdefinierten Kernel sowieso ausführlich testen, es hängt also davon ab, was Sie als „sicher“ bezeichnen.

Wenn Sie Module (Gerätetreiber) für einen vorhandenen Kernel erstellen, müssen Sie wirklich denselben GCC wie der Kernel und die von den entsprechenden Makefiles ausgewählten CFLAGS verwenden, sonst bekommen Sie Probleme.

Antwort2

Die Processor type and features-> Processor familyKernelkonfigurationseinstellung richtet bereits entsprechende CFLAGS für Sie ein.

Es stellt außerdem sicher, dass alle handgeschriebenen Assemblersegmente im Kernel gleichzeitig durch SSE/MMX/was auch immer geeignete optimierte Versionen ersetzt werden (falls erforderlich). Das alleinige Ändern von CFLAGS reicht dafür nicht aus.

verwandte Informationen