pub unsafe fn raw_syscall(
number: c_long,
a1: c_long,
a2: c_long,
a3: c_long,
a4: c_long,
a5: c_long,
a6: c_long,
) -> c_longExpand description
Exécute un syscall arbitraire : number dans le registre de numéro, a1..a6
dans les six registres d’arguments (ABI System V Linux). Rend la valeur brute du
noyau (une erreur est un -errno dans [-4095, -1] — la conversion en
-1/errno est laissée à l’appelant libc, comme le __syscall_ret de musl).
§⚠️ Escape hatch — cf. en-tête de module (exception à retirer)
§Safety
L’appelant garantit que (number, a1..a6) forment un appel syscall valide : tout
argument interprété par le noyau comme un pointeur doit être valide pour l’accès
(lecture/écriture) qu’implique number, et l’invariant mémoire du syscall visé doit
être respecté. Aucune vérification n’est possible ici (numéro et sémantique opaques).