s390_sthyi(2)

NUME
s390_sthyi - emulează instrucțiunea STHYI

BIBLIOTECA
Biblioteca C standard (libc, -lc)

SINOPSIS
#include <asm/sthyi.h>        /* Definiția constantelor STHYI_* */
#include <sys/syscall.h>      /* Definiția constantelor SYS_* */
#include <unistd.h>

int syscall(SYS_s390_sthyi, unsigned long function_code,
            void *resp_buffer, uint64_t *return_code,
            unsigned long flags);

Notă: glibc nu oferă nicio funcție învăluitoare pentru s390_sthyi(), fiind necesară utilizarea syscall(2).

DESCRIERE
Apelul de sistem s390_sthyi() emulează instrucțiunea STHYI (Store Hypervisor Information). Aceasta furnizează informații despre resursele hardware pentru mașină și nivelurile de virtualizare ale acesteia. Acestea includ tipul și capacitatea procesorului, precum și modelul mașinii și alți parametri.

Argumentul function_code indică ce funcție trebuie executată. Sunt acceptate următoarele coduri:

STHYI_FC_CP_IFL_CAP
    Returnează informații despre capacitatea CP (Central Processor) și IFL (Integrated Facility for Linux).

Argumentul resp_buffer specifică adresa unei memorii tampon de răspuns. Atunci când function_code este STHYI_FC_CP_IFL_CAP, memoria tampon trebuie să aibă dimensiunea unei pagini (4K). Dacă apelul de sistem returnează 0, memoria tampon de răspuns va fi umplută cu informații privind capacitatea CPU. În caz contrar, conținutul memoriei tampon de răspuns rămâne neschimbat.

Argumentul return_code stochează codul de returnare al instrucțiunii STHYI, utilizând una dintre următoarele valori:

0   Succes.

4   Cod de funcție neacceptat.

Pentru mai multe detalii despre return_code, function_code și resp_buffer, a se vedea referințele date în secțiunea NOTE.

Argumentul flags este furnizat pentru a permite extinderi viitoare și în prezent trebuie să fie stabilit la 0.

VALOAREA RETURNATĂ
În caz de succes (adică: emulare reușită), valoarea de întoarcere a s390_sthyi() corespunde codului de condiție al instrucțiunilor STHYI, care este o valoare în intervalul [0..3]. O valoare de retur de 0 indică faptul că informațiile privind capacitatea CPU sunt stocate în *resp_buffer. O valoare de returnare de 3 indică „cod de funcție neacceptat”, iar conținutul lui *resp_buffer rămâne neschimbat. Valorile de returnare 1 și 2 sunt rezervate.

În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

EFAULT
    Valoarea specificată în resp_buffer sau return_code nu este o adresă validă.

EINVAL
    Valoarea specificată în flags este diferită de zero.

ENOMEM
    A eșuat alocarea memoriei pentru gestionarea informațiilor privind capacitatea CPU.

EOPNOTSUPP
    Valoarea specificată în function_code nu este valabilă.

STANDARDE
Linux pe s390.

ISTORIC
Linux 4.15.

NOTE
Pentru detalii despre instrucțiunea STHYI, consultați pagina de documentație (https://www.ibm.com/support/knowledgecenter/SSB27U_6.3.0/com.ibm.zvm.v630.hcpb4/hcpb4sth.htm).

Atunci când se utilizează interfața de apel de sistem, memoria tampon de răspuns nu trebuie să îndeplinească toate cerințele de aliniere descrise în definiția instrucțiunii STHYI.

Nucleul memorează răspunsul (până la o secundă, începând cu Linux 4.16). Invocările ulterioare ale apelurilor de sistem pot returna răspunsul memorat în spațiul de prestocare (cache) al nucleului.

CONSULTAȚI ȘI
syscall(2)

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.