From 6714bee53bbe6cdc3943e59f30ec7765907e80b0 Mon Sep 17 00:00:00 2001 From: Ian Lewis Date: Wed, 3 Jul 2019 00:38:04 -0400 Subject: Add generate-syscall-docs command. Adds a new command to automatically generate the syscall compatibility docs from runsc. --- content/docs/user_guide/compatibility/amd64.md | 713 --------------------- .../docs/user_guide/compatibility/linux/.gitignore | 1 + 2 files changed, 1 insertion(+), 713 deletions(-) delete mode 100644 content/docs/user_guide/compatibility/amd64.md create mode 100644 content/docs/user_guide/compatibility/linux/.gitignore (limited to 'content') diff --git a/content/docs/user_guide/compatibility/amd64.md b/content/docs/user_guide/compatibility/amd64.md deleted file mode 100644 index b9500bcc6..000000000 --- a/content/docs/user_guide/compatibility/amd64.md +++ /dev/null @@ -1,713 +0,0 @@ -+++ -title = "AMD64" -description = "Syscall Compatibility Reference Documentation for AMD64" -weight = 10 -+++ - -This table is a reference of Linux syscalls for the AMD64 architecture and -their compatibility status in gVisor. gVisor does not support all syscalls and -some syscalls may have a partial implementation. - -Of 329 syscalls, 47 syscalls have a full or partial -implementation. There are currently 51 unimplemented -syscalls. 231 syscalls are not yet documented. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#NameSupportGitHub IssueNotes
68msggetUnimplementedReturns ENOSYS
69msgsndUnimplementedReturns ENOSYS
70msgrcvUnimplementedReturns ENOSYS
71msgctlUnimplementedReturns ENOSYS
122setfsuidUnimplementedReturns ENOSYS
123setfsgidUnimplementedReturns ENOSYS
134uselibUnimplementedReturns ENOSYS; Obsolete
135personalityPartialReturns EINVAL; Unable to change personality
136ustatUnimplementedReturns ENOSYS; Needs filesystem support
139sysfsUnimplementedReturns ENOSYS
142sched_setparamPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_nice; ENOSYS otherwise
148sched_rr_get_intervalPartialReturns EPERM
153vhangupPartialReturns EPERM
154modify_ldtPartialReturns EPERM
155pivot_rootPartialReturns EPERM
156sysctlPartialReturns EPERM
159adjtimexPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_time; ENOSYS otherwise
163acctPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_pacct; ENOSYS otherwise
164settimeofdayPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_time; ENOSYS otherwise
167swaponPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
168swapoffPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
169rebootPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_boot; ENOSYS otherwise
172ioplPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_rawio; ENOSYS otherwise
173iopermPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_rawio; ENOSYS otherwise
174create_modulePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_module; ENOSYS otherwise
175init_modulePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_module; ENOSYS otherwise
176delete_modulePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_module; ENOSYS otherwise
177get_kernel_symsUnimplementedReturns ENOSYS; Not supported in > 2.6
178query_moduleUnimplementedReturns ENOSYS; Not supported in > 2.6
179quotactlPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
180nfsservctlUnimplementedReturns ENOSYS; Does not exist > 3.1
181getpmsgUnimplementedReturns ENOSYS; Not implemented in Linux
182putpmsgUnimplementedReturns ENOSYS; Not implemented in Linux
183afs_syscallUnimplementedReturns ENOSYS; Not implemented in Linux
184tuxcallUnimplementedReturns ENOSYS; Not implemented in Linux
185securityUnimplementedReturns ENOSYS; Not implemented in Linux
187readaheadUnimplementedReturns ENOSYS
188setxattrPartialReturns ENOTSUP; Requires filesystem support
189lsetxattrPartialReturns ENOTSUP; Requires filesystem support
190fsetxattrPartialReturns ENOTSUP; Requires filesystem support
191getxattrPartialReturns ENOTSUP; Requires filesystem support
192lgetxattrPartialReturns ENOTSUP; Requires filesystem support
193fgetxattrPartialReturns ENOTSUP; Requires filesystem support
194listxattrPartialReturns ENOTSUP; Requires filesystem support
195llistxattrPartialReturns ENOTSUP; Requires filesystem support
196flistxattrPartialReturns ENOTSUP; Requires filesystem support
197removexattrPartialReturns ENOTSUP; Requires filesystem support
198lremovexattrPartialReturns ENOTSUP; Requires filesystem support
199fremovexattrPartialReturns ENOTSUP; Requires filesystem support
205set_thread_areaUnimplementedReturns ENOSYS; Expected to return ENOSYS on 64-bit
211get_thread_areaUnimplementedReturns ENOSYS; Expected to return ENOSYS on 64-bit
212lookup_dcookiePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
214epoll_ctl_oldUnimplementedReturns ENOSYS; Deprecated
215epoll_wait_oldUnimplementedReturns ENOSYS; Deprecated
216remap_file_pagesUnimplementedReturns ENOSYS; Deprecated
220semtimedopUnimplementedReturns ENOSYS
236vserverUnimplementedReturns ENOSYS; Not implemented by Linux
237mbindPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_nice; ENOSYS otherwise
240mq_openUnimplementedReturns ENOSYS
241mq_unlinkUnimplementedReturns ENOSYS
242mq_timedsendUnimplementedReturns ENOSYS
243mq_timedreceiveUnimplementedReturns ENOSYS
244mq_notifyUnimplementedReturns ENOSYS
245mq_getsetattrUnimplementedReturns ENOSYS
248add_keyPartialReturns EACCES; Not available to user
249request_keyPartialReturns EACCES; Not available to user
250keyctlPartialReturns EACCES; Not available to user
251ioprio_setPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
252ioprio_getPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_admin; ENOSYS otherwise
256migrate_pagesPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_nice; ENOSYS otherwise
273set_robust_listUnimplementedReturns ENOSYS; Obsolete
274get_robust_listUnimplementedReturns ENOSYS; Obsolete
275spliceUnimplementedReturns ENOSYS
276teeUnimplementedReturns ENOSYS
278vmspliceUnimplementedReturns ENOSYS
279move_pagesPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_nice; ENOSYS otherwise
282signalfdUnimplementedReturns ENOSYS
289signalfd4UnimplementedReturns ENOSYS
298perf_event_openPartialReturns ENODEV; No support for perf counters
300fanotify_initUnimplementedReturns ENOSYS; Needs CONFIG_FANOTIFY
301fanotify_markUnimplementedReturns ENOSYS; Needs CONFIG_FANOTIFY
303name_to_handle_atPartialReturns EOPNOTSUPP; Needs filesystem support
304open_by_handle_atPartialReturns EOPNOTSUPP; Needs filesystem support
305clock_adjtimePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_module; ENOSYS otherwise
308setnsUnimplementedReturns ENOSYS
310process_vm_readvUnimplementedReturns ENOSYS
311process_vm_writevUnimplementedReturns ENOSYS
312kcmpPartialReturns EPERM or ENOSYS; Requires cap_sys_ptrace
313finit_modulePartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_module; ENOSYS otherwise
314sched_setattrUnimplementedReturns ENOSYS
315sched_getattrUnimplementedReturns ENOSYS
316renameat2UnimplementedReturns ENOSYS
319memfd_createUnimplementedReturns ENOSYS
321bpfPartialReturns EPERM or ENOSYS; Returns EPERM if the process does not have cap_sys_boot; ENOSYS otherwise
322execveatUnimplementedReturns ENOSYS
323userfaultfdUnimplementedReturns ENOSYS
324membarrierUnimplementedReturns ENOSYS
326copy_file_rangeUnimplementedReturns ENOSYS
diff --git a/content/docs/user_guide/compatibility/linux/.gitignore b/content/docs/user_guide/compatibility/linux/.gitignore new file mode 100644 index 000000000..97958c35e --- /dev/null +++ b/content/docs/user_guide/compatibility/linux/.gitignore @@ -0,0 +1 @@ +amd64.md -- cgit v1.2.3