PR_GET_SPECULATION_CTRL(2const)

NUME
PR_GET_SPECULATION_CTRL - obține starea unei caracteristici greșite a speculației pentru firul apelant

BIBLIOTECA
Biblioteca C standard (libc, -lc)

SINOPSIS
#include <linux/prctl.h>  /* Definirea constantelor PR_* */
#include <sys/prctl.h>

int prctl(PR_GET_SPECULATION_CTRL, long misfeature, 0L, 0L, 0L);

DESCRIERE
Returnează starea caracteristicii greșite a speculației specificate în misfeature.

În prezent, misfeature trebuie să fie una dintre următoarele:

PR_SPEC_STORE_BYPASS
    Obține starea caracteristicii greșite de ocolire a stocării speculative.

PR_SPEC_INDIRECT_BRANCH (începând cu Linux 4.20)
    Obține starea caracteristicii greșite a speculației indirecte a ramurii.

Valoarea de returnare utilizează biții 0-4 cu următoarea semnificație:

PR_SPEC_PRCTL
    Mitigarea poate fi controlată per fir de PR_SET_SPECULATION_CTRL(2const).

PR_SPEC_ENABLE
    Funcția de speculație este activată, funcția de mitigare este dezactivată.

PR_SPEC_DISABLE
    Caracteristica de speculație este activată, mitigarea este dezactivată.

PR_SPEC_FORCE_DISABLE
    La fel ca PR_SPEC_DISABLE, dar nu poate fi anulată.

PR_SPEC_DISABLE_NOEXEC (începând cu Linux 5.1)
    La fel ca PR_SPEC_DISABLE, dar starea va fi eliminată la execve(2).

Dacă toți biții sunt 0, atunci CPU-ul nu este afectat de caracteristica greșită de speculație.

Dacă PR_SPEC_PRCTL este activată, atunci este disponibil controlul per-fir al mitigării. Dacă nu este activată, PR_SET_SPECULATION_CTRL(2const) pentru caracteristica greșită de speculație va eșua.

VALOAREA RETURNATĂ
În caz de succes, PR_GET_SPECULATION_CTRL returnează valoarea nenegativă descrisă mai sus. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

ENODEV
    Nucleul sau CPU-ul nu acceptă speculația solicitată misfeature.

STANDARDE
Linux.

ISTORIC
Linux 4.17.

CONSULTAȚI ȘI
prctl(2), PR_SET_SPECULATION_CTRL(2const)

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.