github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/freebsd/amd64.txt (about) 1 # Copyright 2021 syzkaller project authors. All rights reserved. 2 # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. 3 4 include <x86/include/sysarch.h> 5 6 sysarch$I386_GET_LDT(cmd const[I386_GET_LDT], args ptr[out, i386_ldt_args]) 7 sysarch$I386_SET_LDT(cmd const[I386_SET_LDT], args ptr[in, i386_ldt_args]) 8 sysarch$I386_GET_IOPERM(cmd const[I386_GET_IOPERM], args ptr[out, i386_ioperm_args]) 9 sysarch$I386_SET_IOPERM(cmd const[I386_SET_IOPERM], args ptr[in, i386_ioperm_args]) 10 sysarch$I386_GET_FSBASE(cmd const[I386_GET_FSBASE], args ptr[out, int32]) 11 sysarch$I386_SET_FSBASE(cmd const[I386_SET_FSBASE], args ptr[in, int32]) 12 sysarch$I386_GET_GSBASE(cmd const[I386_GET_GSBASE], args ptr[out, int32]) 13 sysarch$I386_SET_GSBASE(cmd const[I386_SET_GSBASE], args ptr[in, int32]) 14 sysarch$I386_GET_XFPUSTATE(cmd const[I386_GET_XFPUSTATE], args ptr[out, i386_get_xfpustate]) 15 sysarch$I386_SET_PKRU(cmd const[I386_SET_PKRU], args ptr[in, i386_set_pkru]) 16 sysarch$I386_CLEAR_PKRU(cmd const[I386_CLEAR_PKRU], args ptr[in, i386_set_pkru]) 17 18 sysarch$AMD64_GET_FSBASE(cmd const[AMD64_GET_FSBASE], args ptr[in, int64]) 19 sysarch$AMD64_SET_FSBASE(cmd const[AMD64_SET_FSBASE], args ptr[out, int64]) 20 sysarch$AMD64_GET_GSBASE(cmd const[AMD64_GET_GSBASE], args ptr[in, int64]) 21 sysarch$AMD64_SET_GSBASE(cmd const[AMD64_SET_GSBASE], args ptr[out, int64]) 22 sysarch$AMD64_GET_XFPUSTATE(cmd const[AMD64_GET_XFPUSTATE], args ptr[out, amd64_get_xfpustate]) 23 sysarch$AMD64_SET_PKRU(cmd const[AMD64_SET_PKRU], args ptr[in, amd64_set_pkru]) 24 sysarch$AMD64_CLEAR_PKRU(cmd const[AMD64_CLEAR_PKRU], args ptr[in, amd64_set_pkru]) 25 26 user_segment_descriptor { 27 fields int64 28 } 29 30 i386_ldt_args { 31 start int32 32 descs ptr[inout, array[user_segment_descriptor]] 33 num len[descs, int32] 34 } 35 36 i386_ioperm_args { 37 start int32 38 length int32 39 enable int32 40 } 41 42 i386_get_xfpustate { 43 addr int32 44 len int32 45 } 46 47 i386_set_pkru { 48 addr int32 49 len int32 50 keyidx int32 51 flags int32 52 } 53 54 amd64_get_xfpustate { 55 addr buffer[inout] 56 len len[addr, int32] 57 } 58 59 amd64_set_pkru { 60 addr buffer[in] 61 len len[addr, int32] 62 keyidx int32 63 flags flags[pkru_flags, int32] 64 } 65 66 pkru_flags = 0, AMD64_PKRU_EXCL, AMD64_PKRU_PERSIST