Merge remote-tracking branch 'strace/master' into HEAD
diff --git a/.gitignore b/.gitignore
index 2c1e8d8..13b6afc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,6 +5,7 @@
.version
.*.swp
*.gdb
+core
.gdbinit
.gdb_history
@@ -16,6 +17,7 @@
/aclocal.m4
/autom4te.cache
+/compile
/config.guess
/config.h
/config.h.in
@@ -29,12 +31,14 @@
/stamp-h1
/*.gdb
-/ioctls.h
-/ioctldefs.h
-/ioctlsort
/strace
/test-driver
-/linux/ioctlent.h
+/ioctlent[012].h
+/ioctls_all[012].h
+/ioctlsort[012]
/strace-*.tar.xz
+
+/tests-m32
+/tests-mx32
diff --git a/HACKING-scripts b/HACKING-scripts
index ae4fabc..1220fdd 100644
--- a/HACKING-scripts
+++ b/HACKING-scripts
@@ -14,7 +14,7 @@
different system or architecture as your circumstances apply.
ksrc=/usr/src/linux
-asrc=$ksrc/arch/blackfin/include/asm
+asrc=$ksrc/arch/blackfin/include
To use the errnoent.sh script, give it all the headers that might contain
appropriate errno values. Excessive headers are not a problem. The resulting
@@ -22,30 +22,30 @@
sh ./errnoent.sh \
$ksrc/include/linux/*errno*.h \
$ksrc/include/asm-generic/*errno*.h \
- $asrc/*errno*.h \
+ $asrc/asm/*errno*.h \
> errnoent.h
-To use the ioctlent.sh script, give it all the base include directories. The
+To use the ioctls_gen.sh script, give it all the base include directories. The
script will crawl all the headers and try to discover appropriate ioctls.
Unlike the other scripts, this one creates files for further processing. This
-is because ioctls tend to have a lot of define indirection, and the ioctlent.h
+is because ioctls tend to have a lot of define indirection, and the ioctlent0.h
header needs to be fully expanded into numeric form and sorted properly. So
-first we process all of the ioctls with the ioctlent.sh into ioctldefs.h and
-ioctls.h, and then we compile them into ioctlsort.c. The resulting output,
-while directly usable, only contains definitions that match exactly the current
-kernel version that the script ran against. That means older/newer ioctl
-defines that might be present in the existing ioctlent.h header will be lost if
-things are copied directly. A little creative use of `diff` and manual merging
-should be used to produce the final ioctlent.h header.
- sh ./linux/ioctlent.sh $ksrc/include $asrc
- gcc -Wall -I. linux/ioctlsort.c -o ioctlsort
- ./ioctlsort > ioctlent.h
+first we process all of the ioctls with the ioctls_gen.sh into ioctls_inc.h and
+ioctls_arch.h, and then we compile them into ioctlsort.c. The resulting
+output, while directly usable, only contains definitions that match exactly the
+current kernel version that the script ran against. That means older/newer
+ioctl defines that might be present in the existing ioctlent0.h header will be
+lost if things are copied directly. A little creative use of `diff` and manual
+merging should be used to produce the final ioctlent0.h header.
+ sh ./maint/ioctls_gen.sh $ksrc/include $asrc
+ gcc -Wall -I. ioctlsort.c -o ioctlsort
+ ./ioctlsort > ioctlent0.h
To use the signalent.sh script, give it all the headers that might contain
appropriate signal values. Excessive headers are not a problem. The resulting
output should be directly usable without modification.
sh ./signalent.sh \
- $asrc/signal.h \
+ $asrc/asm/signal.h \
> signalent.h
To use the syscallent.sh script, give it the header with the list of your
@@ -54,5 +54,5 @@
name. It has no way of knowing the number of arguments or strace flags for
decoding them (yet?).
sh ./syscallent.sh \
- $asrc/unistd.h \
+ $asrc/asm/unistd.h \
> syscallent.h
diff --git a/Makefile.am b/Makefile.am
index 5a852b8..48fe1d7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,12 @@
# Automake input for strace.
-SUBDIRS = tests
+if HAVE_M32_RUNTIME
+TESTS_M32 = tests-m32
+endif
+if HAVE_MX32_RUNTIME
+TESTS_MX32 = tests-mx32
+endif
+SUBDIRS = tests $(TESTS_M32) $(TESTS_MX32)
bin_PROGRAMS = strace
man_MANS = strace.1
@@ -12,7 +18,10 @@
ACLOCAL_AMFLAGS = -I m4
AM_CFLAGS = $(WARN_CFLAGS)
-AM_CPPFLAGS = -I$(srcdir)/$(OS)/$(ARCH) -I$(srcdir)/$(OS) -I$(builddir)/$(OS)
+AM_CPPFLAGS = -I$(builddir)/$(OS)/$(ARCH) \
+ -I$(srcdir)/$(OS)/$(ARCH) \
+ -I$(builddir)/$(OS) \
+ -I$(srcdir)/$(OS)
include xlat/Makemodule.am
@@ -24,12 +33,15 @@
block.c \
cacheflush.c \
capability.c \
+ caps0.h \
+ caps1.h \
chdir.c \
chmod.c \
clone.c \
count.c \
desc.c \
dirent.c \
+ evdev.c \
execve.c \
exit.c \
fadvise.c \
@@ -41,6 +53,7 @@
get_robust_list.c \
getcpu.c \
getcwd.c \
+ getrandom.c \
hostname.c \
inotify.c \
io.c \
@@ -64,18 +77,23 @@
personality.c \
prctl.c \
printmode.c \
+ printstat.h \
process.c \
process_vm.c \
ptp.c \
+ ptrace.h \
quota.c \
readahead.c \
readlink.c \
reboot.c \
+ regs.h \
renameat.c \
resource.c \
sched.c \
scsi.c \
+ seccomp.c \
signal.c \
+ sigreturn.c \
sock.c \
socketutils.c \
sram_alloc.c \
@@ -125,7 +143,6 @@
CREDITS \
ChangeLog \
ChangeLog-CVS \
- README-linux \
README-linux-ptrace \
debian/changelog \
debian/compat \
@@ -143,62 +160,81 @@
debian/watch \
errnoent.sh \
ioctlsort.c \
+ linux/32/ioctls_inc.h \
+ linux/32/syscallent.h \
+ linux/64/ioctls_inc.h \
+ linux/64/syscallent.h \
+ linux/aarch64/arch_regs.h \
linux/aarch64/errnoent1.h \
- linux/aarch64/ioctlent.h.in \
- linux/aarch64/ioctlent1.h \
+ linux/aarch64/ioctls_arch0.h \
+ linux/aarch64/ioctls_arch1.h \
+ linux/aarch64/ioctls_inc0.h \
+ linux/aarch64/ioctls_inc1.h \
linux/aarch64/signalent1.h \
linux/aarch64/syscallent.h \
linux/aarch64/syscallent1.h \
+ linux/alpha/arch_regs.h \
linux/alpha/errnoent.h \
- linux/alpha/ioctlent.h.in \
+ linux/alpha/ioctls_arch0.h \
+ linux/alpha/ioctls_inc0.h \
linux/alpha/signalent.h \
linux/alpha/syscallent.h \
linux/alpha/userent.h \
- linux/arc/ioctlent.h.in \
+ linux/arc/ioctls_arch0.h \
+ linux/arc/ioctls_inc0.h \
linux/arc/syscallent.h \
- linux/arm/ioctlent.h.in \
+ linux/arch_regs.h \
+ linux/arm/arch_regs.h \
+ linux/arm/ioctls_arch0.h \
+ linux/arm/ioctls_inc0.h \
linux/arm/syscallent.h \
linux/arm/userent.h \
- linux/avr32/ioctlent.h.in \
+ linux/avr32/ioctls_arch0.h \
+ linux/avr32/ioctls_inc0.h \
linux/avr32/syscallent.h \
linux/avr32/userent.h \
- linux/bfin/ioctlent.h.in \
+ linux/bfin/ioctls_arch0.h \
+ linux/bfin/ioctls_inc0.h \
linux/bfin/syscallent.h \
linux/bfin/userent.h \
linux/crisv10/userent.h \
linux/crisv32/userent.h \
linux/dummy.h \
linux/errnoent.h \
- linux/fanotify.h \
+ linux/hppa/arch_regs.h \
linux/hppa/errnoent.h \
- linux/hppa/ioctlent.h.in \
+ linux/hppa/ioctls_arch0.h \
+ linux/hppa/ioctls_inc0.h \
linux/hppa/signalent.h \
linux/hppa/syscallent.h \
- linux/i386/ioctlent.h.in \
+ linux/i386/arch_regs.h \
+ linux/i386/ioctls_arch0.h \
+ linux/i386/ioctls_inc0.h \
linux/i386/syscallent.h \
linux/i386/userent.h \
linux/i386/userent0.h \
- linux/ia64/ioctlent.h.in \
- linux/ia64/signalent.h \
+ linux/ia64/arch_regs.h \
+ linux/ia64/ioctls_arch0.h \
+ linux/ia64/ioctls_inc0.h \
linux/ia64/syscallent.h \
linux/ia64/userent.h \
linux/inet_diag.h \
- linux/inotify.h \
- linux/ioctlent.h.in \
- linux/ioctlent.sh \
- linux/kexec.h \
- linux/keyctl.h \
- linux/m68k/ioctlent.h.in \
+ linux/m68k/ioctls_arch0.h \
+ linux/m68k/ioctls_inc0.h \
linux/m68k/syscallent.h \
linux/m68k/userent.h \
- linux/metag/ioctlent.h.in \
+ linux/metag/ioctls_arch0.h \
+ linux/metag/ioctls_inc0.h \
linux/metag/syscallent.h \
- linux/microblaze/ioctlent.h.in \
+ linux/microblaze/ioctls_arch0.h \
+ linux/microblaze/ioctls_inc0.h \
linux/microblaze/syscallent.h \
linux/microblaze/userent.h \
+ linux/mips/arch_regs.h \
linux/mips/errnoent.h \
- linux/mips/ioctlent.h.in \
- linux/mips/ioctlent.sh \
+ linux/mips/genstub.sh \
+ linux/mips/ioctls_arch0.h \
+ linux/mips/ioctls_inc0.h \
linux/mips/signalent.h \
linux/mips/syscallent-compat.h \
linux/mips/syscallent-n32.h \
@@ -207,55 +243,77 @@
linux/mips/syscallent.h \
linux/mips/userent.h \
linux/mtd-abi.h \
- linux/or1k/ioctlent.h.in \
+ linux/or1k/ioctls_arch0.h \
+ linux/or1k/ioctls_inc0.h \
linux/or1k/syscallent.h \
linux/or1k/userent.h \
linux/personality.h \
- linux/powerpc/errnoent1.h \
- linux/powerpc/ioctlent.h.in \
- linux/powerpc/ioctlent1.h \
- linux/powerpc/signalent1.h \
+ linux/powerpc/arch_regs.h \
+ linux/powerpc/errnoent.h \
+ linux/powerpc/ioctls_arch0.h \
+ linux/powerpc/ioctls_inc0.h \
linux/powerpc/syscallent.h \
- linux/powerpc/syscallent1.h \
linux/powerpc/userent.h \
+ linux/powerpc64/arch_regs.h \
+ linux/powerpc64/errnoent.h \
+ linux/powerpc64/errnoent1.h \
+ linux/powerpc64/ioctls_arch0.h \
+ linux/powerpc64/ioctls_arch1.h \
+ linux/powerpc64/ioctls_inc0.h \
+ linux/powerpc64/ioctls_inc1.h \
+ linux/powerpc64/signalent1.h \
+ linux/powerpc64/syscallent.h \
+ linux/powerpc64/syscallent1.h \
+ linux/powerpc64/userent.h \
linux/ptp_clock.h \
- linux/reboot.h \
- linux/s390/ioctlent.h.in \
+ linux/s390/arch_regs.h \
+ linux/s390/ioctls_arch0.h \
+ linux/s390/ioctls_inc0.h \
linux/s390/syscallent.h \
linux/s390/userent.h \
linux/s390/userent0.h \
linux/s390/userent1.h \
- linux/s390x/ioctlent.h.in \
+ linux/s390x/arch_regs.h \
+ linux/s390x/ioctls_arch0.h \
+ linux/s390x/ioctls_inc0.h \
linux/s390x/syscallent.h \
linux/s390x/userent.h \
- linux/sh/ioctlent.h.in \
+ linux/sh/ioctls_arch0.h \
+ linux/sh/ioctls_inc0.h \
linux/sh/syscallent.h \
linux/sh/userent.h \
linux/sh/userent0.h \
- linux/sh64/ioctlent.h.in \
+ linux/sh64/arch_regs.h \
+ linux/sh64/ioctls_arch0.h \
+ linux/sh64/ioctls_inc0.h \
linux/sh64/syscallent.h \
linux/sh64/userent.h \
linux/signalent.h \
linux/sock_diag.h \
+ linux/sparc/arch_regs.h \
linux/sparc/dummy2.h \
linux/sparc/errnoent.h \
linux/sparc/errnoent1.h \
linux/sparc/gen.pl \
- linux/sparc/ioctlent.h.in \
linux/sparc/ioctlent1.h \
+ linux/sparc/ioctls_arch0.h \
+ linux/sparc/ioctls_inc0.h \
linux/sparc/signalent.h \
linux/sparc/signalent1.h \
linux/sparc/syscall1.h \
linux/sparc/syscallent.h \
linux/sparc/syscallent1.h \
linux/sparc/userent.h \
+ linux/sparc64/arch_regs.h \
linux/sparc64/dummy2.h \
linux/sparc64/errnoent.h \
linux/sparc64/errnoent1.h \
linux/sparc64/errnoent2.h \
- linux/sparc64/ioctlent.h.in \
linux/sparc64/ioctlent1.h \
- linux/sparc64/ioctlent2.h \
+ linux/sparc64/ioctls_arch0.h \
+ linux/sparc64/ioctls_arch2.h \
+ linux/sparc64/ioctls_inc0.h \
+ linux/sparc64/ioctls_inc2.h \
linux/sparc64/signalent.h \
linux/sparc64/signalent1.h \
linux/sparc64/signalent2.h \
@@ -266,40 +324,54 @@
linux/sparc64/userent.h \
linux/subcall.h \
linux/syscall.h \
+ linux/tile/arch_regs.h \
linux/tile/errnoent1.h \
- linux/tile/ioctlent.h.in \
- linux/tile/ioctlent1.h \
+ linux/tile/ioctls_arch0.h \
+ linux/tile/ioctls_arch1.h \
+ linux/tile/ioctls_inc0.h \
+ linux/tile/ioctls_inc1.h \
linux/tile/signalent1.h \
linux/tile/syscallent.h \
linux/tile/syscallent1.h \
linux/tile/userent.h \
linux/ubi-user.h \
+ linux/unix_diag.h \
linux/userent.h \
linux/userent0.h \
- linux/x32/errnoent.h \
+ linux/x32/arch_regs.h \
linux/x32/errnoent1.h \
- linux/x32/ioctlent.h.in \
- linux/x32/ioctlent1.h \
- linux/x32/signalent.h \
+ linux/x32/ioctls_arch0.h \
+ linux/x32/ioctls_arch1.h \
+ linux/x32/ioctls_inc0.h \
+ linux/x32/ioctls_inc1.h \
linux/x32/signalent1.h \
linux/x32/syscallent.h \
linux/x32/syscallent1.h \
linux/x32/userent.h \
+ linux/x86_64/arch_regs.h \
linux/x86_64/errnoent1.h \
linux/x86_64/errnoent2.h \
linux/x86_64/gentab.pl \
- linux/x86_64/ioctlent.h.in \
- linux/x86_64/ioctlent1.h \
- linux/x86_64/ioctlent2.h \
+ linux/x86_64/ioctls_arch0.h \
+ linux/x86_64/ioctls_arch1.h \
+ linux/x86_64/ioctls_arch2.h \
+ linux/x86_64/ioctls_inc0.h \
+ linux/x86_64/ioctls_inc1.h \
+ linux/x86_64/ioctls_inc2.h \
linux/x86_64/signalent1.h \
linux/x86_64/signalent2.h \
linux/x86_64/syscallent.h \
linux/x86_64/syscallent1.h \
linux/x86_64/syscallent2.h \
linux/x86_64/userent.h \
- linux/xtensa/ioctlent.h.in \
+ linux/xtensa/ioctls_arch0.h \
+ linux/xtensa/ioctls_inc0.h \
linux/xtensa/syscallent.h \
linux/xtensa/userent.h \
+ maint/ioctls_gen.sh \
+ maint/ioctls_hex.sh \
+ maint/ioctls_sym.sh \
+ maint/print_ioctlent.c \
signalent.sh \
strace-graph \
strace-log-merge \
@@ -335,16 +407,29 @@
exit 1; \
fi
-ioctlent_h = $(builddir)/$(OS)/ioctlent.h
+ioctlsort_CC = $(CC_FOR_BUILD)
+ioctlsort_DEFS = $(DEFS)
+ioctlsort_INCLUDES = $(DEFAULT_INCLUDES) $(INCLUDES)
+ioctlsort_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_FOR_BUILD)
+ioctlsort_CFLAGS = $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
+ioctlsort_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD)
+
+ioctls_inc_h = $(wildcard $(srcdir)/$(OS)/$(ARCH)/ioctls_inc*.h)
+ioctlent_h = $(patsubst $(srcdir)/$(OS)/$(ARCH)/ioctls_inc%,ioctlent%,$(ioctls_inc_h))
BUILT_SOURCES += $(ioctlent_h)
CLEANFILES = $(ioctlent_h)
-ioctlent_h_deps = $(srcdir)/$(OS)/ioctlent.h.in $(srcdir)/$(OS)/$(ARCH)/ioctlent.h.in
-$(ioctlent_h): $(top_builddir)/config.status $(ioctlent_h_deps)
- $(MKDIR_P) $(builddir)/$(OS)
- cat $(ioctlent_h_deps) | \
- $(COMPILE) -E -P - | \
- sed 's/^\([[:space:]]*{\)"[^"]\+",[[:space:]]*/\1/' | \
- LC_ALL=C sort -u -k2,2 -k1,1 > $@
+
+ioctlent%.h: ioctlsort%
+ ./$< > $@
+
+ioctlsort%$(BUILD_EXEEXT): ioctlsort%.o
+ $(ioctlsort_CC) $(ioctlsort_CFLAGS) $(ioctlsort_LDFLAGS) $< -o $@
+
+ioctlsort%.o: ioctls_all%.h $(srcdir)/ioctlsort.c
+ $(ioctlsort_CC) $(ioctlsort_DEFS) $(ioctlsort_INCLUDES) $(ioctlsort_CPPFLAGS) $(ioctlsort_CFLAGS) -DIOCTLSORT_INC=\"$<\" -c -o $@ $(srcdir)/ioctlsort.c
+
+ioctls_all%.h: $(srcdir)/$(OS)/$(ARCH)/ioctls_inc%.h $(srcdir)/$(OS)/$(ARCH)/ioctls_arch%.h
+ cat $^ > $@
if MAINTAINER_MODE
@@ -374,28 +459,4 @@
export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner --mode=go-w,go+rX
-INCLUDEDIR = /usr/include
-KERNEL_RELEASE = $(shell uname -r)
-# Candidates for the kernel headers tree.
-KERNEL_INCLUDE = \
- /lib/modules/$(KERNEL_RELEASE)/build/include \
- /usr/src/linux-$(KERNEL_RELEASE)/include \
- $(INCLUDEDIR)
-IOCTLDIR = $(shell find $(KERNEL_INCLUDE) -maxdepth 0 -type d -print -quit 2>/dev/null)
-IOCTLASM = $(INCLUDEDIR)/asm
-
-noinst_PROGRAMS = ioctlsort
-ioctlsort_SOURCES = ioctlsort.c
-nodist_ioctlsort_SOURCES = ioctls.h ioctldefs.h
-CLEANFILES += $(nodist_ioctlsort_SOURCES)
-ioctlsort.$(OBJEXT): $(nodist_ioctlsort_SOURCES)
-ioctls.h: $(srcdir)/linux/ioctlent.sh
- $(SHELL) $< $(IOCTLDIR) $(IOCTLASM)
-ioctldefs.h: ioctls.h ;
-
-ioctlent_h_in = linux/ioctlent.h.in
-BUILT_SOURCES += $(ioctlent_h_in)
-$(srcdir)/$(ioctlent_h_in): ioctlsort
- $(<D)/$(<F) > $@
-
endif
diff --git a/NEWS b/NEWS
index 33e0ba1..034bf1a 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,81 @@
-Noteworthy changes in release ?.? (????-??-??)
-==============================================
+Noteworthy changes in release ?.?? (????-??-??)
+===============================================
+
+Noteworthy changes in release 4.10 (2015-03-06)
+===============================================
+
+* Improvements
+ * Added -yy option to print protocol and address information associated with
+ socket descriptors.
+ * Extended "-e read=set" and "-e write=set" options to cover sendmsg,
+ recvmsg, sendmmsg, and recvmmsg syscalls.
+ * Implemented full 32-bit decoding of ioctl commands
+ (addresses Debian bug #692913 and Fedora bug #902788).
+ * Implemented PTRACE_GETREGS API support on ia64.
+ * Implemented PTRACE_GETREGS API support on mips.
+ * Implemented PTRACE_GETREGSET API support on s390/s390x.
+ * Implemented decoding of getrandom and seccomp syscalls.
+ * Implemented full decoding of 64-bit capability sets.
+ * Implemented decoding of all prctl commands.
+ * Implemented decoding of parametrized ioctl commands.
+ * Implemented decoding of evdev ioctl commands.
+ * Implemented decoding of v4l ioctl commands.
+ * Implemented decoding of SG_IO v4 ioctl commands.
+ * Implemented decoding of FIFREEZE/FITHAW/FITRIM ioctl commands.
+ * Implemented decoding of FALLOC_FL_* fallocate flags.
+ * Implemented decoding of rt_sigreturn signal mask on aarch64,
+ x32, and x86_64.
+ * Enhanced socket decoder to support bluetooth sockets.
+ * Enhanced decoding of unlisted ioctl commands.
+ * Enhanced decoding of getsockopt and setsockopt syscall.
+ * Enhanced decoding of sysinfo syscall.
+ * Enhanced decoding of struct cmsghdr.
+ * Enhanced decoding of wait status.
+ * Enhanced aio support on non-x86 architectures by using external libaio.h.
+ * Added O_TMPFILE to the list of recognized open mode flags.
+ * Updated the list of filesystem type constants that is used in decoding
+ statfs family syscalls.
+ * Updated lists of CAP_*, PR_*, PTRACE_*, SCHED_*, SO_*, SOL_*, SWAP_FLAG_*,
+ and TFD_* constants.
+ * Updated lists of signal constants from Linux 3.19.
+ * Updated lists of errno constants from Linux 3.19.
+ * Updated lists of ioctl commands from Linux 3.9.
+ * Added new syscall entries to match Linux 3.19.
+
+* Bug fixes
+ * Fixed various errors in mapping between syscall numbers and associated
+ information like the number of syscall arguments, the name of syscall,
+ and syscall decoder.
+ * Fixed quoting issues in printing descriptors, filenames, network interface
+ names, struct utsname members, device/volume names of BLK* ioctl commands.
+ * Fixed uid_t/git_t decoding.
+ * Fixed potential out-of-bounds read issues in getdents/getdents64 decoders.
+ * Fixed potential open flags truncation on some architectures.
+ * Fixed decoding of struct ifreq.ifr_name.
+ * Fixed decoding of SIOCSIFNAME ioctl command.
+ * Fixed decoding of RENAME_* renameat2 flags.
+ * Fixed decoding of UTIME_NOW/UTIME_OMIT timeval structures.
+ * Fixed decoding of indirect ipc subcalls on some architectures.
+ * Fixed decoding of fanotify_mark syscall on 32-bit architectures.
+ * Fixed decoding of 32-bit stat structures on 64-bit architectures.
+ * Fixed decoding of 32-bit struct cmsghdr on 64-bit architectures.
+ * Fixed decoding of 32-bit preadv/pwritev offset on 64-bit architectures.
+ * Fixed decoding of sigreturn/rt_sigreturn signal mask on ia64, ppc, ppc64,
+ sparc, sparc64, mips, and s390.
+ * Fixed instruction pointer output (-i option) on architectures that support
+ several personalities.
+ * Fixed behaviour of "-e read=set" and "-e write=set" when read and write
+ sets intersect.
+ * Fixed build on systems where struct sigaction has no sa_restorer member.
+ * Fixed build with uclibc and musl libc.
+
+* Portability
+ * Linux kernel >= 2.5.46 is required.
+ Older versions without a decent PTRACE_SETOPTIONS support will not work.
+ * On mips, linux kernel >= 2.6.15 is required.
+ Older versions without a decent PTRACE_GETREGS support will not work.
+ * On s390 and s390x, linux kernel >= 2.6.27 is required.
+ Older versions without a decent PTRACE_GETREGSET support will not work.
Noteworthy changes in release 4.9 (2014-08-15)
==============================================
diff --git a/README-hacking b/README-hacking
index d2dfdd3..16d12c0 100644
--- a/README-hacking
+++ b/README-hacking
@@ -2,8 +2,9 @@
============
If you use the GIT version of strace there will be some files missing
that you need to build strace. These files are generated by tools from
-the GNU Autoconf and Automake packages. You need recent versions, which
-provide the `autoreconf -i' command that will do everything you need.
+the GNU Autoconf and Automake packages.
+
+Note: rather than run `autoreconf' directly, use the `./bootstrap' script.
No more ChangeLog file
diff --git a/README-linux b/README-linux
deleted file mode 100644
index 62df258..0000000
--- a/README-linux
+++ /dev/null
@@ -1,31 +0,0 @@
-
-Strace has been ported by Branko Lankester <branko@hacktic.nl>
-to run on Linux systems. Since then it has been greatly modified
-by various other people.
-
-If you want to compile strace on a Linux system please make sure that
-you use recent kernel headers. Strace needs those to get the proper data
-structures and constatns used by the kernel, since these can be
-different from the structures that the C library uses. Currently you
-will need at least a 2.2.7 or newer kernel.
-
-To complicate things a bit further strace might not compile if you are
-using development kernels. These tend to have headers that conflict with
-the headers from libc which makes it impossible to use them.
-
-There are three ways to compile strace with other kernel headers:
-* Specify the location in CFLAGS when running configure
-
- CFLAGS=-I/usr/src/linux/include ./configure
-
-* you can tell make where your kernel sources are. For example if you
- have your kernelsource in /usr/src/linux, you can invoke make like
- this:
-
- make CFLAGS="\$CFLAGS -I/usr/src/linux/include"
-
- (the extra \$CFLAGS is there to make sure we don't override any CFLAGS
- settings that configure has found).
-
-* you can link /usr/include/linux and /usr/include/asm to the
- corresponding directories in your kernel source-tree.
diff --git a/bjm.c b/bjm.c
index b34c6ed..c8d72a3 100644
--- a/bjm.c
+++ b/bjm.c
@@ -34,7 +34,6 @@
#include <sys/wait.h>
#include <sys/resource.h>
#include <sys/utsname.h>
-#include <sys/user.h>
/* Bits of module.flags. */
diff --git a/block.c b/block.c
index b62e436..a84b1e3 100644
--- a/block.c
+++ b/block.c
@@ -94,16 +94,20 @@
if (umove(tcp, (long) blkpg->data, &p) < 0)
tprintf("%#lx}", (long) blkpg->data);
- else
- tprintf("{start=%lld, length=%lld, pno=%d, "
- "devname=\"%.*s\", volname=\"%.*s\"}}",
- p.start, p.length, p.pno,
- (int) sizeof(p.devname), p.devname,
- (int) sizeof(p.volname), p.volname);
+ else {
+ tprintf("{start=%lld, length=%lld, pno=%d, devname=",
+ p.start, p.length, p.pno);
+ print_quoted_string(p.devname, sizeof(p.devname),
+ QUOTE_0_TERMINATED);
+ tprints(", volname=");
+ print_quoted_string(p.volname, sizeof(p.volname),
+ QUOTE_0_TERMINATED);
+ tprints("}}");
+ }
}
int
-block_ioctl(struct tcb *tcp, long code, long arg)
+block_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
switch (code) {
/* take arg as a value, not as a pointer */
@@ -262,9 +266,12 @@
struct blk_user_trace_setup buts;
if (syserror(tcp) || umove(tcp, arg, &buts) < 0)
tprintf(", %#lx", arg);
- else
- tprintf(", {name=\"%.*s\"}",
- (int) sizeof(buts.name), buts.name);
+ else {
+ tprints(", {name=");
+ print_quoted_string(buts.name, sizeof(buts.name),
+ QUOTE_0_TERMINATED);
+ tprints("}");
+ }
}
break;
diff --git a/bootstrap b/bootstrap
index 91d1a8f..9288479 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1,3 +1,18 @@
-#!/bin/sh
+#!/bin/sh -eu
+
+for m in -m32 -mx32; do
+ mkdir -p tests$m
+ find tests$m -type l -delete
+ sed "s/^AM_CFLAGS[[:space:]]*=.*/& $m/" \
+ tests/Makefile.am > tests$m/Makefile.am
+ for f in tests/*; do
+ case "${f##*/}" in
+ Makefile*) continue;;
+ esac
+ ln -s ../"$f" tests$m/
+ done
+done
+
./xlat/gen.sh
+
exec autoreconf -f -i "$@"
diff --git a/capability.c b/capability.c
index af4dffe..bbd5544 100644
--- a/capability.c
+++ b/capability.c
@@ -2,53 +2,17 @@
/* these constants are the same as in <linux/capability.h> */
enum {
- CAP_CHOWN,
- CAP_DAC_OVERRIDE,
- CAP_DAC_READ_SEARCH,
- CAP_FOWNER,
- CAP_FSETID,
- CAP_KILL,
- CAP_SETGID,
- CAP_SETUID,
- CAP_SETPCAP,
- CAP_LINUX_IMMUTABLE,
- CAP_NET_BIND_SERVICE,
- CAP_NET_BROADCAST,
- CAP_NET_ADMIN,
- CAP_NET_RAW,
- CAP_IPC_LOCK,
- CAP_IPC_OWNER,
- CAP_SYS_MODULE,
- CAP_SYS_RAWIO,
- CAP_SYS_CHROOT,
- CAP_SYS_PTRACE,
- CAP_SYS_PACCT,
- CAP_SYS_ADMIN,
- CAP_SYS_BOOT,
- CAP_SYS_NICE,
- CAP_SYS_RESOURCE,
- CAP_SYS_TIME,
- CAP_SYS_TTY_CONFIG,
- CAP_MKNOD,
- CAP_LEASE,
- CAP_AUDIT_WRITE,
- CAP_AUDIT_CONTROL,
- CAP_SETFCAP
+#include "caps0.h"
};
-#include "xlat/capabilities.h"
+#include "xlat/cap_mask0.h"
/* these constants are CAP_TO_INDEX'ed constants from <linux/capability.h> */
enum {
- CAP_MAC_OVERRIDE,
- CAP_MAC_ADMIN,
- CAP_SYSLOG,
- CAP_WAKE_ALARM,
- CAP_BLOCK_SUSPEND,
- CAP_AUDIT_READ
+#include "caps1.h"
};
-#include "xlat/capabilities1.h"
+#include "xlat/cap_mask1.h"
/* these constants are the same as in <linux/capability.h> */
enum {
@@ -107,12 +71,12 @@
print_cap_bits(const uint32_t lo, const uint32_t hi)
{
if (lo || !hi)
- printflags(capabilities, lo, "CAP_???");
+ printflags(cap_mask0, lo, "CAP_???");
if (hi) {
if (lo)
tprints("|");
- printflags(capabilities1, hi, "CAP_???");
+ printflags(cap_mask1, hi, "CAP_???");
}
}
diff --git a/caps0.h b/caps0.h
new file mode 100644
index 0000000..ad206ff
--- /dev/null
+++ b/caps0.h
@@ -0,0 +1,32 @@
+CAP_CHOWN,
+CAP_DAC_OVERRIDE,
+CAP_DAC_READ_SEARCH,
+CAP_FOWNER,
+CAP_FSETID,
+CAP_KILL,
+CAP_SETGID,
+CAP_SETUID,
+CAP_SETPCAP,
+CAP_LINUX_IMMUTABLE,
+CAP_NET_BIND_SERVICE,
+CAP_NET_BROADCAST,
+CAP_NET_ADMIN,
+CAP_NET_RAW,
+CAP_IPC_LOCK,
+CAP_IPC_OWNER,
+CAP_SYS_MODULE,
+CAP_SYS_RAWIO,
+CAP_SYS_CHROOT,
+CAP_SYS_PTRACE,
+CAP_SYS_PACCT,
+CAP_SYS_ADMIN,
+CAP_SYS_BOOT,
+CAP_SYS_NICE,
+CAP_SYS_RESOURCE,
+CAP_SYS_TIME,
+CAP_SYS_TTY_CONFIG,
+CAP_MKNOD,
+CAP_LEASE,
+CAP_AUDIT_WRITE,
+CAP_AUDIT_CONTROL,
+CAP_SETFCAP,
diff --git a/caps1.h b/caps1.h
new file mode 100644
index 0000000..d8fa6f4
--- /dev/null
+++ b/caps1.h
@@ -0,0 +1,6 @@
+CAP_MAC_OVERRIDE,
+CAP_MAC_ADMIN,
+CAP_SYSLOG,
+CAP_WAKE_ALARM,
+CAP_BLOCK_SUSPEND,
+CAP_AUDIT_READ,
diff --git a/configure.ac b/configure.ac
index fbd8a83..e73958c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -11,6 +11,7 @@
AC_CANONICAL_HOST
AC_PROG_CC
+AX_PROG_CC_FOR_BUILD
AC_USE_SYSTEM_EXTENSIONS
AC_MSG_CHECKING([for supported architecture])
@@ -52,13 +53,12 @@
AC_DEFINE([ALPHA], 1, [Define for the Alpha architecture.])
;;
powerpc*)
- arch=powerpc
AC_DEFINE([POWERPC], 1, [Define for the PowerPC architecture.])
AC_TRY_COMPILE(
[#ifndef __LP64__
# error 32 bit
-#endif], [], ppc_bits=64, ppc_bits=32)
- if test "$ppc_bits" = "64"; then
+#endif], [], arch=powerpc64, arch=powerpc)
+ if test "$arch" = "powerpc64"; then
AC_DEFINE([POWERPC64], 1, [Define for the PowerPC64 architecture.])
fi
;;
@@ -144,11 +144,28 @@
AC_SUBST(arch)
-AM_CONDITIONAL([I386], [test x$arch = xi386])
-AM_CONDITIONAL([X86_64], [test x$arch = xx86_64])
-AM_CONDITIONAL([X32], [test x$arch = xx32])
-
-AC_INCLUDEDIR
+if test "$arch" = mips; then
+ AC_CACHE_CHECK([for MIPS ABI], [ac_cv_mips_abi],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_ABI32 ? 1 : - 1];]])],
+ [ac_cv_mips_abi=o32],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_NABI32 ? 1 : - 1];]])],
+ [ac_cv_mips_abi=n32],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_ABI64 ? 1 : - 1];]])],
+ [ac_cv_mips_abi=n64],
+ [ac_cv_mips_abi=unknown])])])])
+ case "$ac_cv_mips_abi" in
+ o32) AC_DEFINE([LINUX_MIPSO32], [1], [Define for _MIPS_SIM_ABI32.]);;
+ n32) AC_DEFINE([LINUX_MIPSN32], [1], [Define for _MIPS_SIM_NABI32.]);;
+ n64) AC_DEFINE([LINUX_MIPSN64], [1], [Define for _MIPS_SIM_ABI64.]);;
+ *) AC_MSG_ERROR([Unsupported _MIPS_SIM]);;
+ esac
+fi
AC_ARG_ENABLE([arm-oabi],
[AS_HELP_STRING([--enable-arm-oabi],
@@ -184,24 +201,20 @@
AC_HEADER_DIRENT
AC_HEADER_STAT
AC_CHECK_MEMBERS(m4_normalize([
- struct stat.st_aclcnt,
struct stat.st_blksize,
struct stat.st_blocks,
struct stat.st_flags,
struct stat.st_fstype,
struct stat.st_gen,
- struct stat.st_level,
struct stat.st_rdev
]))
-AC_STAT64
-AC_STATFS64
AC_TYPE_SIGNAL
AC_TYPE_UID_T
AC_TYPE_MODE_T
AC_TYPE_GETGROUPS
AC_HEADER_MAJOR
-AC_CHECK_TYPES([sig_atomic_t, siginfo_t],,, [#include <signal.h>])
+AC_CHECK_TYPES([sig_atomic_t],,, [#include <signal.h>])
AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,
[#include <sys/types.h>
#include <sys/socket.h>
@@ -209,6 +222,7 @@
AC_LITTLE_ENDIAN_LONG_LONG
AC_CHECK_FUNCS(m4_normalize([
+ fanotify_mark
fopen64
fork
fputs_unlocked
@@ -232,9 +246,14 @@
elf.h
inttypes.h
ioctls.h
+ linux/bsg.h
linux/falloc.h
+ linux/filter.h
+ linux/hiddev.h
+ linux/mmtimer.h
linux/perf_event.h
- linux/ptrace.h
+ linux/seccomp.h
+ linux/securebits.h
linux/utsname.h
mqueue.h
netinet/sctp.h
@@ -243,10 +262,10 @@
stropts.h
sys/conf.h
sys/epoll.h
+ sys/fanotify.h
sys/filio.h
sys/ioctl.h
sys/poll.h
- sys/ptrace.h
sys/reg.h
sys/vfs.h
sys/xattr.h
@@ -262,7 +281,10 @@
AC_CHECK_TYPES([struct mmsghdr],,, [#include <sys/socket.h>])
AC_CHECK_MEMBERS([struct msghdr.msg_control],,, [#include <sys/socket.h>])
+AC_CHECK_TYPES([struct stat64],,, [#include <sys/types.h>
+#include <asm/stat.h>])
AC_CHECK_TYPES([struct __old_kernel_stat],,, [#include <asm/stat.h>])
+AC_CHECK_TYPES([struct statfs64],,, [#include <sys/vfs.h>])
AC_CHECK_TYPES([struct pt_all_user_regs, struct ia64_fpreg, struct ptrace_peeksiginfo_args],,,
[#include <sys/ptrace.h>])
@@ -271,7 +293,9 @@
AC_CHECK_MEMBERS([struct sigevent._sigev_un._pad,
struct sigevent.__pad,
- siginfo_t.si_syscall],,, [#include <signal.h>])
+ siginfo_t.si_syscall,
+ siginfo_t.si_timerid,
+ siginfo_t.si_overrun],,, [#include <signal.h>])
AC_CHECK_MEMBERS([struct sysinfo.totalhigh,
struct sysinfo.freehigh,
@@ -284,25 +308,14 @@
AC_CHECK_DECLS([IO_CMD_PWRITE, IO_CMD_PWRITEV],,, [#include <libaio.h>])
])
+AC_CHECK_HEADERS([linux/input.h], [
+ AC_CHECK_MEMBERS([struct input_absinfo.resolution],,, [#include <linux/input.h>])
+])
+
AC_CHECK_DECLS([sys_errlist])
AC_CHECK_DECLS(m4_normalize([
- PTRACE_EVENT_CLONE,
- PTRACE_EVENT_EXEC,
- PTRACE_EVENT_EXIT,
- PTRACE_EVENT_FORK,
- PTRACE_EVENT_VFORK,
- PTRACE_EVENT_VFORK_DONE,
- PTRACE_GETEVENTMSG,
- PTRACE_GETSIGINFO,
- PTRACE_O_TRACECLONE,
- PTRACE_O_TRACEEXEC,
- PTRACE_O_TRACEEXIT,
- PTRACE_O_TRACEFORK,
- PTRACE_O_TRACESYSGOOD,
- PTRACE_O_TRACEVFORK,
PTRACE_PEEKUSER,
- PTRACE_POKEUSER,
- PTRACE_SETOPTIONS
+ PTRACE_POKEUSER
]),,, [#include <sys/ptrace.h>])
AC_CHECK_DECLS(m4_normalize([
@@ -698,13 +711,22 @@
AC_CHECK_SIZEOF([long long])
AC_CHECK_SIZEOF([off_t],,[#include <sys/types.h>])
-AC_CACHE_CHECK([for SA_RESTORER], [st_cv_sa_restorer],
- [st_cv_sa_restorer="$(echo SA_RESTORER |
+AC_CACHE_CHECK([for SIGRTMIN], [st_cv_SIGRTMIN],
+ [[st_cv_SIGRTMIN="$(echo SIGRTMIN |
+ $CPP $CPPFLAGS -P -imacros asm/signal.h - |
+ grep '^[0-9]')"
+ test -n "$st_cv_SIGRTMIN" || st_cv_SIGRTMIN=no]])
+if test "x$st_cv_SIGRTMIN" != xno; then
+ AC_DEFINE_UNQUOTED([ASM_SIGRTMIN], [$st_cv_SIGRTMIN],
+ [SIGRTMIN defined in <asm/signal.h>])
+fi
+AC_CACHE_CHECK([for SA_RESTORER], [st_cv_SA_RESTORER],
+ [st_cv_SA_RESTORER="$(echo SA_RESTORER |
$CPP $CPPFLAGS -P -imacros asm/signal.h - |
grep ^0x)"
- test -n "$st_cv_sa_restorer" || st_cv_sa_restorer=no])
-if test "x$st_cv_sa_restorer" != xno; then
- AC_DEFINE_UNQUOTED([ASM_SA_RESTORER], [$st_cv_sa_restorer],
+ test -n "$st_cv_SA_RESTORER" || st_cv_SA_RESTORER=no])
+if test "x$st_cv_SA_RESTORER" != xno; then
+ AC_DEFINE_UNQUOTED([ASM_SA_RESTORER], [$st_cv_SA_RESTORER],
[SA_RESTORER defined in <asm/signal.h>])
fi
@@ -717,6 +739,12 @@
[Define to 1 if the system provides __builtin_popcount function])
fi
+AC_CHECK_LIB([dl], [dladdr], [dl_LIBS='-ldl'], [dl_LIBS=])
+if test "x$ac_cv_lib_dl_dladdr" = xyes; then
+ AC_DEFINE([HAVE_DLADDR], [1], [Define to 1 if the system provides dladdr])
+fi
+AC_SUBST(dl_LIBS)
+
AC_PATH_PROG([PERL], [perl])
dnl stack trace with libunwind
@@ -808,5 +836,42 @@
AM_CONDITIONAL([USE_LIBUNWIND], [test "x$use_libunwind" = xyes])
AC_MSG_RESULT([$use_libunwind])
-AC_CONFIG_FILES([Makefile tests/Makefile])
+if test "$arch" = mips && test "$no_create" != yes; then
+ mkdir -p linux/mips
+ if $srcdir/linux/mips/genstub.sh linux/mips; then
+ AC_MSG_RESULT([Generated MIPS syscallent stubs])
+ else
+ AC_MSG_FAILURE([Failed to generate syscallent stubs])
+ fi
+fi
+
+have_m32=no
+case "$arch" in
+ aarch64|powerpc64|sparc64|tile|x32|x86_64)
+ AC_MSG_CHECKING([for -m32 runtime support])
+ saved_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -m32"
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 0;}]])],
+ [have_m32=yes],[have_m32=no],[have_m32=no])
+ CFLAGS="$saved_CFLAGS"
+ AC_MSG_RESULT($have_m32)
+ ;;
+esac
+AM_CONDITIONAL([HAVE_M32_RUNTIME], [test "$have_m32" = yes])
+
+have_mx32=no
+case "$arch" in
+ x86_64)
+ AC_MSG_CHECKING([for -mx32 runtime support])
+ saved_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -mx32"
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 0;}]])],
+ [have_mx32=yes],[have_mx32=no],[have_mx32=no])
+ CFLAGS="$saved_CFLAGS"
+ AC_MSG_RESULT($have_mx32)
+ ;;
+esac
+AM_CONDITIONAL([HAVE_MX32_RUNTIME], [test "$have_mx32" = yes])
+
+AC_CONFIG_FILES([Makefile tests/Makefile tests-m32/Makefile tests-mx32/Makefile])
AC_OUTPUT
diff --git a/debian/changelog b/debian/changelog
index 52845b2..74392ed 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,13 +1,35 @@
-strace (4.9-1) experimental; urgency=low
+strace (4.10-1) experimental; urgency=low
* New upstream version.
+ + enhanced ioctl decoding, closes: #692913
+ + enabled mips64el build, closes: #773375
+ + updated signal and errno numbers, closes: #768642
+ + updated generic and added arch-specific PTRACE_* constants,
+ closes: #734554
+
+ -- Dmitry V. Levin <ldv@altlinux.org> Fri, 06 Mar 2015 13:14:15 +0000
+
+strace (4.9-2) unstable; urgency=medium
+
+ * Turn on support for ppc64el, code is already in upstream.
+ Closes: #744121.
+
+ -- Steve McIntyre <93sam@debian.org> Wed, 20 Aug 2014 18:00:20 +0100
+
+strace (4.9-1) unstable; urgency=medium
+
+ [ Dmitry V. Levin ]
+ * New upstream version.
+ added -w option to produce stats on syscall latency, closes: #457497
+ applied miscellaneous corrections to the manpage, closes: #725987
+ fixed a typo in package description, closes: #697625
+ enabled or1k build, closes: #742235
+ enabled maximum security hardening, thanks to Markus <waldeck@gmx.de>
- -- Dmitry V. Levin <ldv@altlinux.org> Fri, 15 Aug 2014 13:14:15 +0000
+ [ Steve McIntyre ]
+ * New maintainer. Thanks to Frederik for all his prior work!
+
+ -- Steve McIntyre <93sam@debian.org> Wed, 20 Aug 2014 15:11:36 +0100
strace (4.8-1.1) unstable; urgency=low
diff --git a/debian/control b/debian/control
index 3673d2e..5a44dcf 100644
--- a/debian/control
+++ b/debian/control
@@ -1,5 +1,5 @@
Source: strace
-Maintainer: Frederik Schüler <fs@debian.org>
+Maintainer: Steve McIntyre <93sam@debian.org>
Section: utils
Priority: optional
Build-Depends: libc6-dev (>= 2.2.2) [!alpha !ia64], libc6.1-dev (>= 2.2.2) [alpha ia64], gcc-multilib [i386 powerpc s390 sparc], debhelper (>= 7.0.0)
@@ -7,7 +7,7 @@
Homepage: http://sourceforge.net/projects/strace/
Package: strace
-Architecture: alpha amd64 arm64 armeb armel armhf hppa i386 ia64 m68k mips mipsel or1k powerpc powerpcspe ppc64 s390 s390x sh4 sparc sparc64 x32
+Architecture: alpha amd64 arm64 armeb armel armhf hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 s390x sh4 sparc sparc64 x32
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: System call tracer
strace is a system call tracer, i.e. a debugging tool which prints out
@@ -40,7 +40,7 @@
Section: debian-installer
XC-Package-Type: udeb
Priority: extra
-Architecture: alpha amd64 arm64 armeb armel armhf hppa i386 ia64 m68k mips mipsel or1k powerpc powerpcspe ppc64 s390 sh4 sparc sparc64 x32
+Architecture: alpha amd64 arm64 armeb armel armhf hppa i386 ia64 m68k mips mipsel mips64 mips64el or1k powerpc powerpcspe ppc64 ppc64el s390 sh4 sparc sparc64 x32
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: System call tracer
strace is a system call tracer, i.e. a debugging tool which prints out
diff --git a/defs.h b/defs.h
index c865110..dad4fe8 100644
--- a/defs.h
+++ b/defs.h
@@ -31,19 +31,6 @@
# include "config.h"
#endif
-#ifdef MIPS
-# include <sgidefs.h>
-# if _MIPS_SIM == _MIPS_SIM_ABI64
-# define LINUX_MIPSN64
-# elif _MIPS_SIM == _MIPS_SIM_NABI32
-# define LINUX_MIPSN32
-# elif _MIPS_SIM == _MIPS_SIM_ABI32
-# define LINUX_MIPSO32
-# else
-# error Unsupported _MIPS_SIM
-# endif
-#endif
-
#include <features.h>
#ifdef HAVE_STDBOOL_H
# include <stdbool.h>
@@ -150,23 +137,6 @@
*/
#define USE_CUSTOM_PRINTF 0
-#ifdef NEED_PTRACE_PROTOTYPE_WORKAROUND
-# define ptrace xptrace
-# include <sys/ptrace.h>
-# undef ptrace
-extern long ptrace(int, int, char *, long);
-#else
-# include <sys/ptrace.h>
-#endif
-
-#if defined(POWERPC)
-# include <asm/ptrace.h>
-#endif
-
-#if defined(TILE)
-# include <asm/ptrace.h> /* struct pt_regs */
-#endif
-
#ifndef ERESTARTSYS
# define ERESTARTSYS 512
#endif
@@ -180,145 +150,13 @@
# define ERESTART_RESTARTBLOCK 516
#endif
-#if !HAVE_DECL_PTRACE_SETOPTIONS
-# define PTRACE_SETOPTIONS 0x4200
-#endif
-#if !HAVE_DECL_PTRACE_GETEVENTMSG
-# define PTRACE_GETEVENTMSG 0x4201
-#endif
-#if !HAVE_DECL_PTRACE_GETSIGINFO
-# define PTRACE_GETSIGINFO 0x4202
-#endif
-
-#if !HAVE_DECL_PTRACE_O_TRACESYSGOOD
-# define PTRACE_O_TRACESYSGOOD 0x00000001
-#endif
-#if !HAVE_DECL_PTRACE_O_TRACEFORK
-# define PTRACE_O_TRACEFORK 0x00000002
-#endif
-#if !HAVE_DECL_PTRACE_O_TRACEVFORK
-# define PTRACE_O_TRACEVFORK 0x00000004
-#endif
-#if !HAVE_DECL_PTRACE_O_TRACECLONE
-# define PTRACE_O_TRACECLONE 0x00000008
-#endif
-#if !HAVE_DECL_PTRACE_O_TRACEEXEC
-# define PTRACE_O_TRACEEXEC 0x00000010
-#endif
-#if !HAVE_DECL_PTRACE_O_TRACEEXIT
-# define PTRACE_O_TRACEEXIT 0x00000040
-#endif
-
-#if !HAVE_DECL_PTRACE_EVENT_FORK
-# define PTRACE_EVENT_FORK 1
-#endif
-#if !HAVE_DECL_PTRACE_EVENT_VFORK
-# define PTRACE_EVENT_VFORK 2
-#endif
-#if !HAVE_DECL_PTRACE_EVENT_CLONE
-# define PTRACE_EVENT_CLONE 3
-#endif
-#if !HAVE_DECL_PTRACE_EVENT_EXEC
-# define PTRACE_EVENT_EXEC 4
-#endif
-#if !HAVE_DECL_PTRACE_EVENT_VFORK_DONE
-# define PTRACE_EVENT_VFORK_DONE 5
-#endif
-#if !HAVE_DECL_PTRACE_EVENT_EXIT
-# define PTRACE_EVENT_EXIT 6
-#endif
-
-#if !HAVE_DECL_PTRACE_PEEKUSER
-# define PTRACE_PEEKUSER PTRACE_PEEKUSR
-#endif
-#if !HAVE_DECL_PTRACE_POKEUSER
-# define PTRACE_POKEUSER PTRACE_POKEUSR
-#endif
-
-#undef PTRACE_SEIZE
-#define PTRACE_SEIZE 0x4206
-#undef PTRACE_INTERRUPT
-#define PTRACE_INTERRUPT 0x4207
-#undef PTRACE_LISTEN
-#define PTRACE_LISTEN 0x4208
-#undef PTRACE_EVENT_STOP
-#define PTRACE_EVENT_STOP 128
-
-#ifdef ALPHA
-# define REG_R0 0
-# define REG_A0 16
-# define REG_A3 19
-# define REG_FP 30
-# define REG_PC 64
-#endif /* ALPHA */
-#ifdef MIPS
-# define REG_V0 2
-# define REG_A0 4
-# define REG_A3 7
-# define REG_SP 29
-# define REG_EPC 64
-#endif /* MIPS */
-#ifdef HPPA
-# define PT_GR20 (20*4)
-# define PT_GR26 (26*4)
-# define PT_GR28 (28*4)
-# define PT_IAOQ0 (106*4)
-# define PT_IAOQ1 (107*4)
-#endif /* HPPA */
-#ifdef SH64
- /* SH64 Linux - this code assumes the following kernel API for system calls:
- PC Offset 0
- System Call Offset 16 (actually, (syscall no.) | (0x1n << 16),
- where n = no. of parameters.
- Other regs Offset 24+
-
- On entry: R2-7 = parameters 1-6 (as many as necessary)
- On return: R9 = result. */
-
- /* Offset for peeks of registers */
-# define REG_OFFSET (24)
-# define REG_GENERAL(x) (8*(x)+REG_OFFSET)
-# define REG_PC (0*8)
-# define REG_SYSCALL (2*8)
-#endif /* SH64 */
-#ifdef AARCH64
-struct arm_pt_regs {
- int uregs[18];
-};
-# define ARM_cpsr uregs[16]
-# define ARM_pc uregs[15]
-# define ARM_lr uregs[14]
-# define ARM_sp uregs[13]
-# define ARM_ip uregs[12]
-# define ARM_fp uregs[11]
-# define ARM_r10 uregs[10]
-# define ARM_r9 uregs[9]
-# define ARM_r8 uregs[8]
-# define ARM_r7 uregs[7]
-# define ARM_r6 uregs[6]
-# define ARM_r5 uregs[5]
-# define ARM_r4 uregs[4]
-# define ARM_r3 uregs[3]
-# define ARM_r2 uregs[2]
-# define ARM_r1 uregs[1]
-# define ARM_r0 uregs[0]
-# define ARM_ORIG_r0 uregs[17]
-#endif /* AARCH64 */
-
#if defined(SPARC) || defined(SPARC64)
-/* Indexes into the pt_regs.u_reg[] array -- UREG_XX from kernel are all off
- * by 1 and use Ix instead of Ox. These work for both 32 and 64 bit Linux. */
-# define U_REG_G1 0
-# define U_REG_O0 7
-# define U_REG_O1 8
# define PERSONALITY0_WORDSIZE 4
# define PERSONALITY1_WORDSIZE 4
# if defined(SPARC64)
-# include <asm/psrcompat.h>
# define SUPPORTED_PERSONALITIES 3
# define PERSONALITY2_WORDSIZE 8
# else
-# include <asm/psr.h>
# define SUPPORTED_PERSONALITIES 2
# endif /* SPARC64 */
#endif /* SPARC[64] */
@@ -373,20 +211,6 @@
# define PERSONALITY0_WORDSIZE SIZEOF_LONG
#endif
-#if defined(I386) || defined(X86_64)
-extern uint32_t *const i386_esp_ptr;
-#elif defined(IA64)
-extern bool ia64_ia32mode;
-#elif defined(SPARC) || defined(SPARC64)
-extern struct pt_regs sparc_regs;
-#elif defined(ARM)
-extern struct pt_regs arm_regs;
-#elif defined(TILE)
-extern struct pt_regs tile_regs;
-#elif defined(POWERPC)
-extern struct pt_regs ppc_regs;
-#endif
-
typedef struct sysent {
unsigned nargs;
int sys_flags;
@@ -396,7 +220,7 @@
typedef struct ioctlent {
const char *symbol;
- unsigned long code;
+ unsigned int code;
} struct_ioctlent;
/* Trace Control Block */
@@ -450,41 +274,13 @@
* are limited to trace(), this condition is never observed in trace_syscall()
* and below.
* The bit is cleared after all syscall exit processing is done.
- * User-generated SIGTRAPs and post-execve SIGTRAP make it necessary
- * to be very careful and NOT set TCB_INSYSCALL bit when they are encountered.
- * TCB_WAITEXECVE bit is used for this purpose (see below).
*
* Use entering(tcp) / exiting(tcp) to check this bit to make code more readable.
*/
#define TCB_INSYSCALL 0x04
#define TCB_ATTACHED 0x08 /* We attached to it already */
-#define TCB_BPTSET 0x10 /* "Breakpoint" set after fork(2) */
-#define TCB_REPRINT 0x20 /* We should reprint this syscall on exit */
-#define TCB_FILTERED 0x40 /* This system call has been filtered out */
-/*
- * x86 does not need TCB_WAITEXECVE.
- * It can detect post-execve SIGTRAP by looking at eax/rax.
- * See "not a syscall entry (eax = %ld)\n" message.
- *
- * Note! On new kernels (about 2.5.46+), we use PTRACE_O_TRACEEXEC, which
- * suppresses post-execve SIGTRAP. If you are adding a new arch which is
- * only supported by newer kernels, you most likely don't need to define
- * TCB_WAITEXECVE!
- */
-#if defined(ALPHA) \
- || defined(SPARC) || defined(SPARC64) \
- || defined(POWERPC) \
- || defined(IA64) \
- || defined(HPPA) \
- || defined(SH) || defined(SH64) \
- || defined(S390) || defined(S390X) \
- || defined(ARM) \
- || defined(MIPS)
-/* This tracee has entered into execve syscall. Expect post-execve SIGTRAP
- * to happen. (When it is detected, tracee is continued and this bit is cleared.)
- */
-# define TCB_WAITEXECVE 0x80
-#endif
+#define TCB_REPRINT 0x10 /* We should reprint this syscall on exit */
+#define TCB_FILTERED 0x20 /* This system call has been filtered out */
/* qualifier flags */
#define QUAL_TRACE 0x001 /* this system call should be traced */
@@ -548,9 +344,11 @@
#define SYSCALL_NEVER_FAILS 0200 /* Syscall is always successful. */
#define STACKTRACE_INVALIDATE_CACHE 0400 /* Trigger proc/maps cache updating */
#define STACKTRACE_CAPTURE_ON_ENTER 01000 /* Capture stacktrace on "entering" stage */
+#define TRACE_INDIRECT_SUBCALL 02000 /* Syscall is an indirect socket/ipc subcall. */
#if defined(ARM) || defined(AARCH64) \
|| defined(I386) || defined(X32) || defined(X86_64) \
+ || defined(IA64) \
|| defined(BFIN) \
|| defined(M68K) \
|| defined(MICROBLAZE) \
@@ -580,7 +378,6 @@
/* are we filtering traces based on paths? */
extern const char **paths_selected;
#define tracing_paths (paths_selected != NULL)
-extern bool need_fork_exec_workarounds;
extern unsigned xflag;
extern unsigned followfork;
#ifdef USE_LIBUNWIND
@@ -619,41 +416,17 @@
extern void count_syscall(struct tcb *, const struct timeval *);
extern void call_summary(FILE *);
-#if defined(AVR32) \
- || defined(I386) \
- || defined(X86_64) || defined(X32) \
- || defined(AARCH64) \
- || defined(ARM) \
- || defined(SPARC) || defined(SPARC64) \
- || defined(TILE) \
- || defined(OR1K) \
- || defined(METAG) \
- || defined(ARC) \
- || defined(POWERPC)
-extern long get_regs_error;
-# define clear_regs() (get_regs_error = -1)
+extern void clear_regs(void);
extern void get_regs(pid_t pid);
-#else
-# define get_regs_error 0
-# define clear_regs() ((void)0)
-# define get_regs(pid) ((void)0)
-#endif
-extern int umoven(struct tcb *, long, int, char *);
+
+extern int umoven(struct tcb *, long, unsigned int, char *);
#define umove(pid, addr, objp) \
umoven((pid), (addr), sizeof(*(objp)), (char *) (objp))
-extern int umovestr(struct tcb *, long, int, char *);
+extern int umovestr(struct tcb *, long, unsigned int, char *);
extern int upeek(int pid, long, long *);
#if defined(SPARC) || defined(SPARC64) || defined(IA64) || defined(SH)
extern long getrval2(struct tcb *);
#endif
-/*
- * On Linux, "setbpt" is a misnomer: we don't set a breakpoint
- * (IOW: no poking in user's text segment),
- * instead we change fork/vfork/clone into clone(CLONE_PTRACE).
- * On newer kernels, we use PTRACE_O_TRACECLONE/TRACE[V]FORK instead.
- */
-extern int setbpt(struct tcb *);
-extern int clearbpt(struct tcb *);
extern const char *signame(const int);
extern void pathtrace_select(const char *);
@@ -664,9 +437,13 @@
extern const char *xlat_search(const struct xlat *, const size_t, const unsigned int);
extern int string_to_uint(const char *str);
-extern int string_quote(const char *, char *, long, int);
extern int next_set_bit(const void *bit_array, unsigned cur_bit, unsigned size_bits);
+#define QUOTE_0_TERMINATED 0x01
+#define QUOTE_OMIT_LEADING_TRAILING_QUOTES 0x02
+
+extern int print_quoted_string(const char *, unsigned int, unsigned int);
+
/* a refers to the lower numbered u_arg,
* b refers to the higher numbered u_arg
*/
@@ -677,7 +454,9 @@
# define LONG_LONG(a,b) \
((long long)((unsigned long long)(unsigned)(b) | ((unsigned long long)(a)<<32)))
#endif
-extern int printllval(struct tcb *, const char *, int);
+extern int getllval(struct tcb *, unsigned long long *, int);
+extern int printllval(struct tcb *, const char *, int)
+ __attribute__ ((format (printf, 2, 0)));
extern void printxval(const struct xlat *, const unsigned int, const char *);
extern int printargs(struct tcb *);
@@ -693,8 +472,10 @@
extern void dumpiov(struct tcb *, int, long);
extern void dumpstr(struct tcb *, long, int);
extern void printstr(struct tcb *, long, long);
-extern void printnum(struct tcb *, long, const char *);
-extern void printnum_int(struct tcb *, long, const char *);
+extern void printnum_int(struct tcb *, long, const char *)
+ __attribute__ ((format (printf, 3, 0)));
+extern void printnum_long(struct tcb *, long, const char *)
+ __attribute__ ((format (printf, 3, 0)));
extern void printpath(struct tcb *, long);
extern void printpathn(struct tcb *, long, unsigned int);
#define TIMESPEC_TEXT_BUFSIZE (sizeof(long)*3 * 2 + sizeof("{%u, %u}"))
@@ -707,10 +488,8 @@
extern char *sprinttv(char *, struct tcb *, long, enum bitness_t, int special);
extern void print_timespec(struct tcb *, long);
extern void sprint_timespec(char *, struct tcb *, long);
-#ifdef HAVE_SIGINFO_T
-extern void printsiginfo(siginfo_t *, int);
+extern void printsiginfo(const siginfo_t *, int);
extern void printsiginfo_at(struct tcb *tcp, long addr);
-#endif
extern void printfd(struct tcb *, int);
extern bool print_sockaddr_by_inode(const unsigned long, const char *);
extern void print_dirfd(struct tcb *, int);
@@ -722,27 +501,33 @@
#endif
extern void printuid(const char *, const unsigned int);
extern void print_sigset_addr_len(struct tcb *, long, long);
+extern const char *sprintsigmask_n(const char *, const void *, unsigned int);
+#define tprintsigmask_addr(prefix, mask) \
+ tprints(sprintsigmask_n((prefix), (mask), sizeof(mask)))
extern void printsignal(int);
extern void tprint_iov(struct tcb *, unsigned long, unsigned long, int decode_iov);
extern void tprint_iov_upto(struct tcb *, unsigned long, unsigned long, int decode_iov, unsigned long);
extern void tprint_open_modes(int);
extern const char *sprint_open_modes(int);
extern void print_loff_t(struct tcb *, long);
+extern void print_seccomp_filter(struct tcb *tcp, unsigned long);
-extern const struct_ioctlent *ioctl_lookup(unsigned long);
+extern const struct_ioctlent *ioctl_lookup(const unsigned int);
extern const struct_ioctlent *ioctl_next_match(const struct_ioctlent *);
-extern int ioctl_decode(struct tcb *, long, long);
-extern int term_ioctl(struct tcb *, long, long);
-extern int sock_ioctl(struct tcb *, long, long);
-extern int proc_ioctl(struct tcb *, int, int);
-extern int rtc_ioctl(struct tcb *, long, long);
-extern int scsi_ioctl(struct tcb *, long, long);
-extern int block_ioctl(struct tcb *, long, long);
-extern int v4l2_ioctl(struct tcb *, unsigned long, long);
-extern int mtd_ioctl(struct tcb *, long, long);
-extern int ubi_ioctl(struct tcb *, long, long);
-extern int loop_ioctl(struct tcb *, long, long);
-extern int ptp_ioctl(struct tcb *, long, long);
+extern void ioctl_print_code(const unsigned int);
+extern int ioctl_decode(struct tcb *, const unsigned int, long);
+extern int ioctl_decode_command_number(const unsigned int);
+extern int block_ioctl(struct tcb *, const unsigned int, long);
+extern int evdev_ioctl(struct tcb *, const unsigned int, long);
+extern int loop_ioctl(struct tcb *, const unsigned int, long);
+extern int mtd_ioctl(struct tcb *, const unsigned int, long);
+extern int ptp_ioctl(struct tcb *, const unsigned int, long);
+extern int rtc_ioctl(struct tcb *, const unsigned int, long);
+extern int scsi_ioctl(struct tcb *, const unsigned int, long);
+extern int sock_ioctl(struct tcb *, const unsigned int, long);
+extern int term_ioctl(struct tcb *, const unsigned int, long);
+extern int ubi_ioctl(struct tcb *, const unsigned int, long);
+extern int v4l2_ioctl(struct tcb *, const unsigned int, long);
extern int tv_nz(const struct timeval *);
extern int tv_cmp(const struct timeval *, const struct timeval *);
diff --git a/desc.c b/desc.c
index 491e9ba..24de51d 100644
--- a/desc.c
+++ b/desc.c
@@ -338,7 +338,7 @@
if (entering(tcp)) {
tprintf("%d", (int) args[0]);
- if (fdsize > 0) {
+ if (verbose(tcp) && fdsize > 0) {
fds = malloc(fdsize);
if (!fds)
die_out_of_memory();
@@ -349,7 +349,7 @@
tprints(", NULL");
continue;
}
- if (!verbose(tcp) || !fds) {
+ if (!fds) {
tprintf(", %#lx", arg);
continue;
}
diff --git a/dirent.c b/dirent.c
index cbebdb7..d30e0d2 100644
--- a/dirent.c
+++ b/dirent.c
@@ -1,6 +1,8 @@
#include "defs.h"
#include <dirent.h>
+#define D_NAME_LEN_MAX 256
+
struct kernel_dirent {
unsigned long d_ino;
unsigned long d_off;
@@ -28,12 +30,12 @@
return;
}
- tprintf("{d_ino=%lu, d_off=%lu, d_reclen=%u, d_name=\"",
+ tprintf("{d_ino=%lu, d_off=%lu, d_reclen=%u, d_name=",
(unsigned long) d.d_ino, (unsigned long) d.d_off, d.d_reclen);
- if (d.d_reclen > 256)
- d.d_reclen = 256;
+ if (d.d_reclen > D_NAME_LEN_MAX)
+ d.d_reclen = D_NAME_LEN_MAX;
printpathn(tcp, addr + offsetof(old_dirent_t, d_name), d.d_reclen);
- tprints("\"}");
+ tprints("}");
}
int
@@ -103,11 +105,18 @@
i + d->d_reclen - 1 >= len;
int d_name_len = oob ? len - i : d->d_reclen;
d_name_len -= offsetof(struct kernel_dirent, d_name) + 1;
+ if (d_name_len > D_NAME_LEN_MAX)
+ d_name_len = D_NAME_LEN_MAX;
- tprintf("%s{d_ino=%lu, d_off=%lu, ",
- i ? " " : "", d->d_ino, d->d_off);
- tprintf("d_reclen=%u, d_name=\"%.*s\", d_type=",
- d->d_reclen, d_name_len, d->d_name);
+ tprintf("%s{d_ino=%lu, d_off=%lu, d_reclen=%u, d_name=",
+ i ? " " : "", d->d_ino, d->d_off, d->d_reclen);
+
+ if (print_quoted_string(d->d_name, d_name_len,
+ QUOTE_0_TERMINATED) > 0) {
+ tprints("...");
+ }
+
+ tprints(", d_type=");
if (oob)
tprints("?");
else
@@ -182,6 +191,8 @@
} else {
d_name_len = len - i - d_name_offset;
}
+ if (d_name_len > D_NAME_LEN_MAX)
+ d_name_len = D_NAME_LEN_MAX;
tprintf("%s{d_ino=%" PRIu64 ", d_off=%" PRId64
", d_reclen=%u, d_type=",
@@ -190,8 +201,14 @@
d->d_off,
d->d_reclen);
printxval(direnttypes, d->d_type, "DT_???");
- tprintf(", d_name=\"%.*s\"}",
- d_name_len, d->d_name);
+
+ tprints(", d_name=");
+ if (print_quoted_string(d->d_name, d_name_len,
+ QUOTE_0_TERMINATED) > 0) {
+ tprints("...");
+ }
+
+ tprints("}");
}
if (d->d_reclen < d_name_offset) {
tprints("/* d_reclen < offsetof(struct dirent64, d_name) */");
diff --git a/errnoent.sh b/errnoent.sh
index a82fc04..0b1b06a 100755
--- a/errnoent.sh
+++ b/errnoent.sh
@@ -25,16 +25,14 @@
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
awk '
-/^#define[ ]+E[A-Z0-9_]+[ ]+[0-9]+/ {
+$1 == "#define" && $2 ~ /^E[A-Z0-9_]+$/ && $3 ~ /^[0-9]+$/ {
errno[$3] = $2
if ($3 > max)
max = $3
}
END {
- for (i = 0; i <= max; i++) {
- if (!errno[i])
- errno[i] = "ERRNO_" i
- printf "\t\"%s\", /* %d */\n", errno[i], i
- }
+ for (i = 0; i <= max; i++)
+ if (errno[i])
+ printf("[%3d] = \"%s\",\n", i, errno[i])
}
-' $*
+' "$@"
diff --git a/evdev.c b/evdev.c
new file mode 100644
index 0000000..9a7430d
--- /dev/null
+++ b/evdev.c
@@ -0,0 +1,480 @@
+/*
+ * Copyright (c) 2015 Etienne Gemsa <etienne.gemsa@lse.epita.fr>
+ * Copyright (c) 2015 Dmitry V. Levin <ldv@altlinux.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "defs.h"
+
+#ifdef HAVE_LINUX_INPUT_H
+#include <linux/input.h>
+#include "xlat/evdev_abs.h"
+#include "xlat/evdev_autorepeat.h"
+#include "xlat/evdev_ff_status.h"
+#include "xlat/evdev_ff_types.h"
+#include "xlat/evdev_keycode.h"
+#include "xlat/evdev_leds.h"
+#include "xlat/evdev_misc.h"
+#include "xlat/evdev_mtslots.h"
+#include "xlat/evdev_prop.h"
+#include "xlat/evdev_relative_axes.h"
+#include "xlat/evdev_snd.h"
+#include "xlat/evdev_switch.h"
+#include "xlat/evdev_sync.h"
+
+#ifndef SYN_MAX
+# define SYN_MAX 0xf
+#endif
+
+static void
+decode_envelope(struct ff_envelope *envelope)
+{
+ tprintf(", envelope={attack_length=%" PRIu16 ", attack_level=%" PRIu16
+ ", fade_length=%" PRIu16 ", fade_level=%" PRIx32 "}",
+ envelope->attack_length,
+ envelope->attack_level,
+ envelope->fade_length,
+ envelope->fade_level);
+}
+
+static int
+ff_effect_ioctl(struct tcb *tcp, long arg)
+{
+ struct ff_effect ffe;
+
+ if (!verbose(tcp) || umove(tcp, arg, &ffe) < 0)
+ return 0;
+
+ tprints(", {type=");
+ printxval(evdev_ff_types, ffe.type, "FF_???");
+ tprintf(", id=%" PRIu16 ", direction=%" PRIu16,
+ ffe.id, ffe.direction);
+
+ if (!abbrev(tcp)) {
+ tprintf(", trigger={button=%" PRIu16 ", interval=%" PRIu16 "}",
+ ffe.trigger.button, ffe.trigger.interval);
+ tprintf(", replay={lenght=%" PRIu16 ", delay=%" PRIu16 "}",
+ ffe.replay.length, ffe.replay.delay);
+ switch (ffe.type) {
+ case FF_CONSTANT:
+ tprintf(", constant_ef={%" PRIi16,
+ ffe.u.constant.level);
+ decode_envelope(&ffe.u.constant.envelope);
+ tprints("}");
+ return 1;
+ case FF_RAMP:
+ tprintf(", ramp={start_level=%" PRIi16
+ ", end_level=%" PRIi16,
+ ffe.u.ramp.start_level,
+ ffe.u.ramp.end_level);
+ decode_envelope(&ffe.u.ramp.envelope);
+ tprints("}");
+ return 1;
+ case FF_PERIODIC:
+ tprintf(", periodic_ef={waveform=%" PRIu16
+ ", period=%" PRIu16
+ ", magnitude=%" PRIi16
+ ", offset=%" PRIi16
+ ", phase=%" PRIu16,
+ ffe.u.periodic.waveform,
+ ffe.u.periodic.period,
+ ffe.u.periodic.magnitude,
+ ffe.u.periodic.offset,
+ ffe.u.periodic.phase);
+ decode_envelope(&ffe.u.periodic.envelope);
+ tprintf(", custom_len=%" PRIu32
+ ", *custom_data=%#lx}",
+ ffe.u.periodic.custom_len,
+ (unsigned long)ffe.u.periodic.custom_data);
+ return 1;
+ case FF_RUMBLE:
+ tprintf(", rumble={strong_magnitude=%" PRIu16
+ ", weak_magnitude=%" PRIu16 "}",
+ ffe.u.rumble.strong_magnitude,
+ ffe.u.rumble.weak_magnitude);
+ return 1;
+ case FF_SPRING:
+ case FF_FRICTION:
+ case FF_DAMPER:
+ case FF_INERTIA:
+ case FF_CUSTOM:
+ break;
+ default :
+ break;
+ }
+ }
+
+ tprints(", ...}");
+ return 1;
+}
+
+static int
+abs_ioctl(struct tcb *tcp, long arg)
+{
+ struct input_absinfo absinfo;
+
+ if (!verbose(tcp) || umove(tcp, arg, &absinfo) < 0)
+ return 0;
+
+ tprintf(", {value=%" PRIu32 ", minimum=%" PRIu32,
+ absinfo.value, absinfo.minimum);
+ if (!abbrev(tcp)) {
+ tprintf(", maximum=%" PRIu32 ", fuzz=%" PRIu32,
+ absinfo.maximum, absinfo.fuzz);
+ tprintf(", flat=%" PRIu32, absinfo.flat);
+#ifdef HAVE_STRUCT_INPUT_ABSINFO_RESOLUTION
+ tprintf(", resolution=%" PRIu32, absinfo.resolution);
+#endif
+ tprints("}");
+ } else {
+ tprints(", ...}");
+ }
+ return 1;
+}
+
+static int
+keycode_ioctl(struct tcb *tcp, long arg)
+{
+ unsigned int keycode[2];
+
+ if (!arg) {
+ tprints(", NULL");
+ return 1;
+ }
+
+ if (!verbose(tcp) || umove(tcp, arg, &keycode) < 0)
+ return 0;
+
+ tprintf(", [%u, ", keycode[0]);
+ printxval(evdev_keycode, keycode[1], "KEY_???");
+ tprints("]");
+ return 1;
+}
+
+#ifdef EVIOCGKEYCODE_V2
+static int
+keycode_V2_ioctl(struct tcb *tcp, long arg)
+{
+ struct input_keymap_entry ike;
+
+ if (!arg) {
+ tprints(", NULL");
+ return 1;
+ }
+
+ if (!verbose(tcp) || umove(tcp, arg, &ike) < 0)
+ return 0;
+
+ tprintf(", {flags=%" PRIu8 ", len=%" PRIu8, ike.flags, ike.len);
+ if (!abbrev(tcp)) {
+ unsigned int i;
+
+ tprintf(", index=%" PRIu16 ", keycode=", ike.index);
+ printxval(evdev_keycode, ike.keycode, "KEY_???");
+ tprints(", scancode=[");
+ for (i = 0; i < ARRAY_SIZE(ike.scancode); i++) {
+ if (i > 0)
+ tprints(", ");
+ tprintf("%" PRIx8, ike.scancode[i]);
+ }
+ tprints("]}");
+ } else {
+ tprints(", ...}");
+ }
+ return 1;
+}
+#endif /* EVIOCGKEYCODE_V2 */
+
+static int
+getid_ioctl(struct tcb *tcp, long arg)
+{
+ struct input_id id;
+
+ if (!verbose(tcp) || umove(tcp, arg, &id) < 0)
+ return 0;
+
+ tprintf(", {ID_BUS=%" PRIu16 ", ID_VENDOR=%" PRIu16,
+ id.bustype, id.vendor);
+ if (!abbrev(tcp)) {
+ tprintf(", ID_PRODUCT=%" PRIu16 ", ID_VERSION=%" PRIu16 "}",
+ id.product, id.version);
+ } else {
+ tprints(", ...}");
+ }
+ return 1;
+}
+
+static int
+decode_bitset(struct tcb *tcp, long arg, const struct xlat decode_nr[],
+ const unsigned int max_nr, const char *dflt)
+{
+ if (!verbose(tcp))
+ return 0;
+
+ unsigned int size;
+ if ((unsigned long) tcp->u_rval > max_nr)
+ size = max_nr;
+ else
+ size = tcp->u_rval;
+ char decoded_arg[size];
+
+ if (umoven(tcp, arg, size, decoded_arg) < 0)
+ return 0;
+
+ tprints(", [");
+
+ int bit_displayed = 0;
+ int i = next_set_bit(decoded_arg, 0, size);
+ if (i < 0) {
+ tprints(" 0 ");
+ } else {
+ printxval(decode_nr, i, dflt);
+
+ while ((i = next_set_bit(decoded_arg, i + 1, size)) > 0) {
+ if (abbrev(tcp) && bit_displayed >= 3) {
+ tprints(", ...");
+ break;
+ }
+ tprints(", ");
+ printxval(decode_nr, i, dflt);
+ bit_displayed++;
+ }
+ }
+
+ tprints("]");
+
+ return 1;
+}
+
+#ifdef EVIOCGMTSLOTS
+static int
+mtslots_ioctl(struct tcb *tcp, const unsigned int code, long arg)
+{
+ const size_t size = _IOC_SIZE(code) / sizeof(int32_t);
+ if (!size)
+ return 0;
+
+ int32_t buffer[size];
+
+ if (!verbose(tcp) || umove(tcp, arg, &buffer) < 0)
+ return 0;
+
+ tprints(", {code=");
+ printxval(evdev_mtslots, buffer[0], "ABS_MT_???");
+
+ unsigned int i;
+ tprints(", values=[");
+
+ for (i = 1; i < ARRAY_SIZE(buffer); i++)
+ tprintf("%s%d", i > 1 ? ", " : "", buffer[i]);
+
+ tprints("]}");
+ return 1;
+}
+#endif /* EVIOCGMTSLOTS */
+
+#ifdef EVIOCGREP
+static int
+repeat_ioctl(struct tcb *tcp, long arg)
+{
+ unsigned int val[2];
+
+ if (!verbose(tcp) || umove(tcp, arg, &val) < 0)
+ return 0;
+
+ tprintf(", [%" PRIu32 " %" PRIu32 "]", val[0], val[1]);
+ return 1;
+}
+#endif /* EVIOCGREP */
+
+static int
+evdev_read_ioctl(struct tcb *tcp, const unsigned int code, long arg)
+{
+ if (entering(tcp))
+ return 1;
+
+ if (syserror(tcp))
+ return 0;
+
+ if ((_IOC_NR(code) & ~EV_MAX) == _IOC_NR(EVIOCGBIT(0, 0))) {
+ switch (_IOC_NR(code) - 0x20) {
+ case EV_SYN:
+ return decode_bitset(tcp, arg, evdev_sync,
+ SYN_MAX, "SYN_???");
+ case EV_KEY:
+ return decode_bitset(tcp, arg, evdev_keycode,
+ KEY_MAX, "KEY_???");
+ case EV_REL:
+ return decode_bitset(tcp, arg, evdev_relative_axes,
+ REL_MAX, "REL_???");
+ case EV_ABS:
+ return decode_bitset(tcp, arg,
+ evdev_abs, ABS_MAX, "ABS_???");
+ case EV_MSC:
+ return decode_bitset(tcp, arg,
+ evdev_misc, MSC_MAX, "MSC_???");
+#ifdef EV_SW
+ case EV_SW:
+ return decode_bitset(tcp, arg,
+ evdev_switch, SW_MAX, "SW_???");
+#endif
+ case EV_LED:
+ return decode_bitset(tcp, arg,
+ evdev_leds, LED_MAX, "LED_???");
+ case EV_SND:
+ return decode_bitset(tcp, arg,
+ evdev_snd, SND_MAX, "SND_???");
+ case EV_REP:
+ return decode_bitset(tcp, arg, evdev_autorepeat,
+ REP_MAX, "REP_???");
+ case EV_FF:
+ return decode_bitset(tcp, arg, evdev_ff_types,
+ FF_MAX, "FF_???");
+ case EV_PWR:
+ printnum_int(tcp, arg, "%d");
+ return 1;
+ case EV_FF_STATUS:
+ return decode_bitset(tcp, arg, evdev_ff_status,
+ FF_STATUS_MAX, "FF_STATUS_???");
+ default:
+ return 0;
+ }
+ }
+
+ if ((_IOC_NR(code) & ~ABS_MAX) == _IOC_NR(EVIOCGABS(0)))
+ return abs_ioctl(tcp, arg);
+
+ switch (code) {
+ case EVIOCGVERSION:
+ tprints(", ");
+ printnum_int(tcp, arg, "%" PRIx32);
+ return 1;
+ case EVIOCGEFFECTS:
+ tprints(", ");
+ printnum_int(tcp, arg, "%" PRIu32);
+ return 1;
+ case EVIOCGID:
+ return getid_ioctl(tcp, arg);
+#ifdef EVIOCGREP
+ case EVIOCGREP:
+ return repeat_ioctl(tcp, arg);;
+#endif
+ case EVIOCGKEYCODE:
+ return keycode_ioctl(tcp, arg);
+#ifdef EVIOCGKEYCODE_V2
+ case EVIOCGKEYCODE_V2:
+ return keycode_V2_ioctl(tcp, arg);
+#endif
+ }
+
+ switch (_IOC_NR(code)) {
+#ifdef EVIOCGMTSLOTS
+ case _IOC_NR(EVIOCGMTSLOTS(0)):
+ return mtslots_ioctl(tcp, code, arg);
+#endif
+ case _IOC_NR(EVIOCGNAME(0)):
+ case _IOC_NR(EVIOCGPHYS(0)):
+ case _IOC_NR(EVIOCGUNIQ(0)):
+ tprints(", ");
+ printstr(tcp, arg, tcp->u_rval - 1);
+ return 1;
+#ifdef EVIOCGPROP
+ case _IOC_NR(EVIOCGPROP(0)):
+ return decode_bitset(tcp, arg,
+ evdev_prop, INPUT_PROP_MAX, "PROP_???");
+#endif
+ case _IOC_NR(EVIOCGSND(0)):
+ return decode_bitset(tcp, arg,
+ evdev_snd, SND_MAX, "SND_???");
+#ifdef EVIOCGSW
+ case _IOC_NR(EVIOCGSW(0)):
+ return decode_bitset(tcp, arg,
+ evdev_switch, SW_MAX, "SW_???");
+#endif
+ case _IOC_NR(EVIOCGKEY(0)):
+ return decode_bitset(tcp, arg,
+ evdev_keycode, KEY_MAX, "KEY_???");
+ case _IOC_NR(EVIOCGLED(0)):
+ return decode_bitset(tcp, arg,
+ evdev_leds, LED_MAX, "LED_???");
+ default:
+ return 0;
+ }
+}
+
+static int
+evdev_write_ioctl(struct tcb *tcp, const unsigned int code, long arg)
+{
+ if (exiting(tcp))
+ return 1;
+
+ if ((_IOC_NR(code) & ~ABS_MAX) == _IOC_NR(EVIOCSABS(0)))
+ return abs_ioctl(tcp, arg);
+
+ switch (code) {
+#ifdef EVIOCSREP
+ case EVIOCSREP:
+ return repeat_ioctl(tcp, arg);
+#endif
+ case EVIOCSKEYCODE:
+ return keycode_ioctl(tcp, arg);
+#ifdef EVIOCSKEYCODE_V2
+ case EVIOCSKEYCODE_V2:
+ return keycode_V2_ioctl(tcp, arg);
+#endif
+ case EVIOCSFF:
+ return ff_effect_ioctl(tcp, arg);
+ case EVIOCRMFF:
+#ifdef EVIOCSCLOCKID
+ case EVIOCSCLOCKID:
+#endif
+ case EVIOCGRAB:
+#ifdef EVIOCREVOKE
+ case EVIOCREVOKE:
+#endif
+ tprints(", ");
+ printnum_int(tcp, arg, "%u");
+ return 1;
+ default:
+ return 0;
+ }
+}
+
+int
+evdev_ioctl(struct tcb *tcp, const unsigned int code, long arg)
+{
+ switch(_IOC_DIR(code)) {
+ case _IOC_READ:
+ return evdev_read_ioctl(tcp, code, arg);
+ case _IOC_WRITE:
+ if (!evdev_write_ioctl(tcp, code, arg))
+ tprintf(", %lx", arg);
+ return 1;
+ default:
+ return 0;
+ }
+}
+
+#endif /* HAVE_LINUX_INPUT_H */
diff --git a/fanotify.c b/fanotify.c
index 32a3667..63816b8 100644
--- a/fanotify.c
+++ b/fanotify.c
@@ -1,9 +1,15 @@
#include "defs.h"
-#include <linux/fanotify.h>
#include "xlat/fan_classes.h"
#include "xlat/fan_init_flags.h"
+#ifndef FAN_ALL_CLASS_BITS
+# define FAN_ALL_CLASS_BITS (FAN_CLASS_NOTIF | FAN_CLASS_CONTENT | FAN_CLASS_PRE_CONTENT)
+#endif
+#ifndef FAN_NOFD
+# define FAN_NOFD -1
+#endif
+
int
sys_fanotify_init(struct tcb *tcp)
{
@@ -31,6 +37,9 @@
int
sys_fanotify_mark(struct tcb *tcp)
{
+ unsigned long long mask = 0;
+ int argn;
+
if (exiting(tcp))
return 0;
@@ -38,13 +47,22 @@
tprints(", ");
printflags(fan_mark_flags, (unsigned) tcp->u_arg[1], "FAN_MARK_???");
tprints(", ");
- printflags(fan_event_flags, tcp->u_arg[2], "FAN_???");
+ /*
+ * the mask argument is defined as 64-bit,
+ * but kernel uses the lower 32 bits only.
+ */
+ argn = getllval(tcp, &mask, 2);
+#ifdef HPPA
+ /* Parsic is weird. See arch/parisc/kernel/sys_parisc32.c. */
+ mask = (mask << 32) | (mask >> 32);
+#endif
+ printflags(fan_event_flags, mask, "FAN_???");
tprints(", ");
- if ((int) tcp->u_arg[3] == FAN_NOFD)
+ if ((int) tcp->u_arg[argn] == FAN_NOFD)
tprints("FAN_NOFD, ");
else
- print_dirfd(tcp, tcp->u_arg[3]);
- printpath(tcp, tcp->u_arg[4]);
+ print_dirfd(tcp, tcp->u_arg[argn]);
+ printpath(tcp, tcp->u_arg[argn + 1]);
return 0;
}
diff --git a/file.c b/file.c
index 69e72b3..ae74d5a 100644
--- a/file.c
+++ b/file.c
@@ -30,145 +30,43 @@
#include "defs.h"
-#if defined(SPARC) || defined(SPARC64)
-struct stat {
- unsigned short st_dev;
- unsigned int st_ino;
- unsigned short st_mode;
- short st_nlink;
- unsigned short st_uid;
- unsigned short st_gid;
- unsigned short st_rdev;
- unsigned int st_size;
- int st_atime;
- unsigned int __unused1;
- int st_mtime;
- unsigned int __unused2;
- int st_ctime;
- unsigned int __unused3;
- int st_blksize;
- int st_blocks;
- unsigned int __unused4[2];
-};
-# if defined(SPARC64)
-struct stat_sparc64 {
- unsigned int st_dev;
- unsigned long st_ino;
- unsigned int st_mode;
- unsigned int st_nlink;
- unsigned int st_uid;
- unsigned int st_gid;
- unsigned int st_rdev;
- long st_size;
- long st_atime;
- long st_mtime;
- long st_ctime;
- long st_blksize;
- long st_blocks;
- unsigned long __unused4[2];
-};
-# endif /* SPARC64 */
-# define stat kernel_stat
-# include <asm/stat.h>
-# undef stat
-#elif defined(X32)
-struct stat {
- unsigned long long st_dev;
- unsigned long long st_ino;
- unsigned long long st_nlink;
+#undef dev_t
+#undef ino_t
+#undef mode_t
+#undef nlink_t
+#undef uid_t
+#undef gid_t
+#undef off_t
+#undef loff_t
+#define dev_t __kernel_dev_t
+#define ino_t __kernel_ino_t
+#define mode_t __kernel_mode_t
+#define nlink_t __kernel_nlink_t
+#define uid_t __kernel_uid_t
+#define gid_t __kernel_gid_t
+#define off_t __kernel_off_t
+#define loff_t __kernel_loff_t
- unsigned int st_mode;
- unsigned int st_uid;
- unsigned int st_gid;
- unsigned int __pad0;
- unsigned long long st_rdev;
- long long st_size;
- long long st_blksize;
- long long st_blocks;
+#include <asm/stat.h>
- unsigned long long st_atime;
- unsigned long long st_atime_nsec;
- unsigned long long st_mtime;
- unsigned long long st_mtime_nsec;
- unsigned long long st_ctime;
- unsigned long long st_ctime_nsec;
- long long __unused[3];
-};
+#undef dev_t
+#undef ino_t
+#undef mode_t
+#undef nlink_t
+#undef uid_t
+#undef gid_t
+#undef off_t
+#undef loff_t
+#define dev_t dev_t
+#define ino_t ino_t
+#define mode_t mode_t
+#define nlink_t nlink_t
+#define uid_t uid_t
+#define gid_t gid_t
+#define off_t off_t
+#define loff_t loff_t
-struct stat64 {
- unsigned long long st_dev;
- unsigned char __pad0[4];
- unsigned long __st_ino;
- unsigned int st_mode;
- unsigned int st_nlink;
- unsigned long st_uid;
- unsigned long st_gid;
- unsigned long long st_rdev;
- unsigned char __pad3[4];
- long long st_size;
- unsigned long st_blksize;
- unsigned long long st_blocks;
- unsigned long st_atime;
- unsigned long st_atime_nsec;
- unsigned long st_mtime;
- unsigned int st_mtime_nsec;
- unsigned long st_ctime;
- unsigned long st_ctime_nsec;
- unsigned long long st_ino;
-} __attribute__((packed));
-# define HAVE_STAT64 1
-
-struct __old_kernel_stat {
- unsigned short st_dev;
- unsigned short st_ino;
- unsigned short st_mode;
- unsigned short st_nlink;
- unsigned short st_uid;
- unsigned short st_gid;
- unsigned short st_rdev;
- unsigned int st_size;
- unsigned int st_atime;
- unsigned int st_mtime;
- unsigned int st_ctime;
-};
-#else
-# undef dev_t
-# undef ino_t
-# undef mode_t
-# undef nlink_t
-# undef uid_t
-# undef gid_t
-# undef off_t
-# undef loff_t
-# define dev_t __kernel_dev_t
-# define ino_t __kernel_ino_t
-# define mode_t __kernel_mode_t
-# define nlink_t __kernel_nlink_t
-# define uid_t __kernel_uid_t
-# define gid_t __kernel_gid_t
-# define off_t __kernel_off_t
-# define loff_t __kernel_loff_t
-
-# include <asm/stat.h>
-
-# undef dev_t
-# undef ino_t
-# undef mode_t
-# undef nlink_t
-# undef uid_t
-# undef gid_t
-# undef off_t
-# undef loff_t
-# define dev_t dev_t
-# define ino_t ino_t
-# define mode_t mode_t
-# define nlink_t nlink_t
-# define uid_t uid_t
-# define gid_t gid_t
-# define off_t off_t
-# define loff_t loff_t
-#endif
-
+/* for S_IFMT */
#define stat libc_stat
#define stat64 libc_stat64
#include <sys/stat.h>
@@ -179,137 +77,46 @@
#undef st_mtime
#undef st_ctime
-#ifdef MAJOR_IN_SYSMACROS
+#if defined MAJOR_IN_SYSMACROS
# include <sys/sysmacros.h>
-#endif
-
-#ifdef MAJOR_IN_MKDEV
+#elif defined MAJOR_IN_MKDEV
# include <sys/mkdev.h>
#endif
/* several stats */
-#if defined(SPARC) || defined(SPARC64)
-typedef struct {
- int tv_sec;
- int tv_nsec;
-} timestruct_t;
+#include "printstat.h"
-struct solstat {
- unsigned st_dev;
- int st_pad1[3]; /* network id */
- unsigned st_ino;
- unsigned st_mode;
- unsigned st_nlink;
- unsigned st_uid;
- unsigned st_gid;
- unsigned st_rdev;
- int st_pad2[2];
- int st_size;
- int st_pad3; /* st_size, off_t expansion */
- timestruct_t st_atime;
- timestruct_t st_mtime;
- timestruct_t st_ctime;
- int st_blksize;
- int st_blocks;
- char st_fstype[16];
- int st_pad4[8]; /* expansion area */
+#undef STAT32_PERSONALITY
+#if SUPPORTED_PERSONALITIES > 1
+# if defined AARCH64 || defined X86_64 || defined X32
+struct stat32 {
+ unsigned int st_dev;
+ unsigned int st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+ unsigned int st_rdev;
+ unsigned int st_size;
+ unsigned int st_blksize;
+ unsigned int st_blocks;
+ unsigned int st_atime;
+ unsigned int st_atime_nsec;
+ unsigned int st_mtime;
+ unsigned int st_mtime_nsec;
+ unsigned int st_ctime;
+ unsigned int st_ctime_nsec;
+ unsigned int __unused4;
+ unsigned int __unused5;
};
-
-static void
-printstatsol(struct tcb *tcp, long addr)
-{
- struct solstat statbuf;
-
- if (umove(tcp, addr, &statbuf) < 0) {
- tprints("{...}");
- return;
- }
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%lu, %lu), st_ino=%lu, st_mode=%s, ",
- (unsigned long) ((statbuf.st_dev >> 18) & 0x3fff),
- (unsigned long) (statbuf.st_dev & 0x3ffff),
- (unsigned long) statbuf.st_ino,
- sprintmode(statbuf.st_mode));
- tprintf("st_nlink=%lu, st_uid=%lu, st_gid=%lu, ",
- (unsigned long) statbuf.st_nlink,
- (unsigned long) statbuf.st_uid,
- (unsigned long) statbuf.st_gid);
- tprintf("st_blksize=%lu, ", (unsigned long) statbuf.st_blksize);
- tprintf("st_blocks=%lu, ", (unsigned long) statbuf.st_blocks);
- }
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode));
- switch (statbuf.st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) ((statbuf.st_rdev >> 18) & 0x3fff),
- (unsigned long) (statbuf.st_rdev & 0x3ffff));
- break;
- default:
- tprintf("st_size=%u, ", statbuf.st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime.tv_sec));
- tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime.tv_sec));
- tprintf("st_ctime=%s}", sprinttime(statbuf.st_ctime.tv_sec));
- }
- else
- tprints("...}");
-}
-
-# if defined(SPARC64)
-static void
-printstat_sparc64(struct tcb *tcp, long addr)
-{
- struct stat_sparc64 statbuf;
-
- if (umove(tcp, addr, &statbuf) < 0) {
- tprints("{...}");
- return;
- }
-
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%lu, %lu), st_ino=%lu, st_mode=%s, ",
- (unsigned long) major(statbuf.st_dev),
- (unsigned long) minor(statbuf.st_dev),
- (unsigned long) statbuf.st_ino,
- sprintmode(statbuf.st_mode));
- tprintf("st_nlink=%lu, st_uid=%lu, st_gid=%lu, ",
- (unsigned long) statbuf.st_nlink,
- (unsigned long) statbuf.st_uid,
- (unsigned long) statbuf.st_gid);
- tprintf("st_blksize=%lu, ",
- (unsigned long) statbuf.st_blksize);
- tprintf("st_blocks=%lu, ",
- (unsigned long) statbuf.st_blocks);
- }
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode));
- switch (statbuf.st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf.st_rdev),
- (unsigned long) minor(statbuf.st_rdev));
- break;
- default:
- tprintf("st_size=%lu, ", statbuf.st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime));
- tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime));
- tprintf("st_ctime=%s}", sprinttime(statbuf.st_ctime));
- }
- else
- tprints("...}");
-}
-# endif /* SPARC64 */
-#endif /* SPARC[64] */
-
-#if defined POWERPC64
-struct stat_powerpc32 {
+# ifdef AARCH64
+# define STAT32_PERSONALITY 0
+# else
+# define STAT32_PERSONALITY 1
+# endif
+# elif defined POWERPC64
+struct stat32 {
unsigned int st_dev;
unsigned int st_ino;
unsigned int st_mode;
@@ -329,117 +136,109 @@
unsigned int __unused4;
unsigned int __unused5;
};
+# define STAT32_PERSONALITY 1
+# elif defined SPARC64
+struct stat32 {
+ unsigned short st_dev;
+ unsigned int st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+ unsigned short st_rdev;
+ unsigned int st_size;
+ unsigned int st_atime;
+ unsigned int st_atime_nsec;
+ unsigned int st_mtime;
+ unsigned int st_mtime_nsec;
+ unsigned int st_ctime;
+ unsigned int st_ctime_nsec;
+ unsigned int st_blksize;
+ unsigned int st_blocks;
+ unsigned int __unused4[2];
+};
+# define STAT32_PERSONALITY 0
+# elif defined SPARC
+# /* no 64-bit personalities */
+# elif defined TILE
+# /* no 32-bit stat */
+# else
+# warning FIXME: check whether struct stat32 definition is needed for this architecture!
+# endif /* X86_64 || X32 || POWERPC64 */
+#endif /* SUPPORTED_PERSONALITIES > 1 */
+
+#ifdef STAT32_PERSONALITY
+# define DO_PRINTSTAT do_printstat32
+# define STRUCT_STAT struct stat32
+# undef HAVE_STRUCT_STAT_ST_FLAGS
+# undef HAVE_STRUCT_STAT_ST_FSTYPE
+# undef HAVE_STRUCT_STAT_ST_GEN
+# include "printstat.h"
static void
-printstat_powerpc32(struct tcb *tcp, long addr)
+printstat32(struct tcb *tcp, long addr)
{
- struct stat_powerpc32 statbuf;
+ struct stat32 statbuf;
if (umove(tcp, addr, &statbuf) < 0) {
tprints("{...}");
return;
}
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%u, %u), st_ino=%u, st_mode=%s, ",
- major(statbuf.st_dev), minor(statbuf.st_dev),
- statbuf.st_ino,
- sprintmode(statbuf.st_mode));
- tprintf("st_nlink=%u, st_uid=%u, st_gid=%u, ",
- statbuf.st_nlink, statbuf.st_uid, statbuf.st_gid);
- tprintf("st_blksize=%u, ", statbuf.st_blksize);
- tprintf("st_blocks=%u, ", statbuf.st_blocks);
- }
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode));
- switch (statbuf.st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf.st_rdev),
- (unsigned long) minor(statbuf.st_rdev));
- break;
- default:
- tprintf("st_size=%u, ", statbuf.st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime));
- tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime));
- tprintf("st_ctime=%s}", sprinttime(statbuf.st_ctime));
- }
- else
- tprints("...}");
+ do_printstat32(tcp, &statbuf);
}
-#endif /* POWERPC64 */
+#endif /* STAT32_PERSONALITY */
-#include "xlat/fileflags.h"
+#if defined(SPARC) || defined(SPARC64)
+
+struct solstat {
+ unsigned st_dev;
+ unsigned int st_pad1[3]; /* network id */
+ unsigned st_ino;
+ unsigned st_mode;
+ unsigned st_nlink;
+ unsigned st_uid;
+ unsigned st_gid;
+ unsigned st_rdev;
+ unsigned int st_pad2[2];
+ unsigned int st_size;
+ unsigned int st_pad3; /* st_size, off_t expansion */
+ unsigned int st_atime;
+ unsigned int st_atime_nsec;
+ unsigned int st_mtime;
+ unsigned int st_mtime_nsec;
+ unsigned int st_ctime;
+ unsigned int st_ctime_nsec;
+ unsigned int st_blksize;
+ unsigned int st_blocks;
+ char st_fstype[16];
+ unsigned int st_pad4[8]; /* expansion area */
+};
+
+# define DO_PRINTSTAT do_printstat_sol
+# define STRUCT_STAT struct solstat
+# define STAT_MAJOR(x) (((x) >> 18) & 0x3fff)
+# define STAT_MINOR(x) ((x) & 0x3ffff)
+# undef HAVE_STRUCT_STAT_ST_FLAGS
+# undef HAVE_STRUCT_STAT_ST_FSTYPE
+# undef HAVE_STRUCT_STAT_ST_GEN
+# include "printstat.h"
static void
-realprintstat(struct tcb *tcp, struct stat *statbuf)
+printstatsol(struct tcb *tcp, long addr)
{
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%lu, %lu), st_ino=%lu, st_mode=%s, ",
- (unsigned long) major(statbuf->st_dev),
- (unsigned long) minor(statbuf->st_dev),
- (unsigned long) statbuf->st_ino,
- sprintmode(statbuf->st_mode));
- tprintf("st_nlink=%lu, st_uid=%lu, st_gid=%lu, ",
- (unsigned long) statbuf->st_nlink,
- (unsigned long) statbuf->st_uid,
- (unsigned long) statbuf->st_gid);
-#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE
- tprintf("st_blksize=%lu, ", (unsigned long) statbuf->st_blksize);
-#endif
-#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
- tprintf("st_blocks=%lu, ", (unsigned long) statbuf->st_blocks);
-#endif
+ struct solstat statbuf;
+
+ if (umove(tcp, addr, &statbuf) < 0) {
+ tprints("{...}");
+ return;
}
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf->st_mode));
- switch (statbuf->st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
-#ifdef HAVE_STRUCT_STAT_ST_RDEV
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf->st_rdev),
- (unsigned long) minor(statbuf->st_rdev));
-#else /* !HAVE_STRUCT_STAT_ST_RDEV */
- tprintf("st_size=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf->st_size),
- (unsigned long) minor(statbuf->st_size));
-#endif /* !HAVE_STRUCT_STAT_ST_RDEV */
- break;
- default:
- tprintf("st_size=%lu, ", (unsigned long) statbuf->st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf->st_atime));
- tprintf("st_mtime=%s, ", sprinttime(statbuf->st_mtime));
- tprintf("st_ctime=%s", sprinttime(statbuf->st_ctime));
-#if HAVE_STRUCT_STAT_ST_FLAGS
- tprints(", st_flags=");
- printflags(fileflags, statbuf->st_flags, "UF_???");
-#endif
-#if HAVE_STRUCT_STAT_ST_ACLCNT
- tprintf(", st_aclcnt=%d", statbuf->st_aclcnt);
-#endif
-#if HAVE_STRUCT_STAT_ST_LEVEL
- tprintf(", st_level=%ld", statbuf->st_level);
-#endif
-#if HAVE_STRUCT_STAT_ST_FSTYPE
- tprintf(", st_fstype=%.*s",
- (int) sizeof statbuf->st_fstype, statbuf->st_fstype);
-#endif
-#if HAVE_STRUCT_STAT_ST_GEN
- tprintf(", st_gen=%u", statbuf->st_gen);
-#endif
- tprints("}");
- }
- else
- tprints("...}");
+
+ do_printstat_sol(tcp, &statbuf);
}
-#ifndef X32
+#endif /* SPARC || SPARC64 */
+
static void
printstat(struct tcb *tcp, long addr)
{
@@ -454,47 +253,62 @@
return;
}
+#ifdef STAT32_PERSONALITY
+ if (current_personality == STAT32_PERSONALITY) {
+ printstat32(tcp, addr);
+ return;
+ }
+#endif
+
#if defined(SPARC) || defined(SPARC64)
if (current_personality == 1) {
printstatsol(tcp, addr);
return;
}
-#ifdef SPARC64
- else if (current_personality == 2) {
- printstat_sparc64(tcp, addr);
- return;
- }
-#endif
-#endif /* SPARC[64] */
-
-#if defined POWERPC64
- if (current_personality == 1) {
- printstat_powerpc32(tcp, addr);
- return;
- }
-#endif
+#endif /* SPARC || SPARC64 */
if (umove(tcp, addr, &statbuf) < 0) {
tprints("{...}");
return;
}
- realprintstat(tcp, &statbuf);
+ do_printstat(tcp, &statbuf);
}
-#else /* X32 */
-# define printstat printstat64
-#endif
-#if !defined HAVE_STAT64 && (defined AARCH64 || defined X86_64)
+int
+sys_stat(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ printpath(tcp, tcp->u_arg[0]);
+ tprints(", ");
+ } else {
+ printstat(tcp, tcp->u_arg[1]);
+ }
+ return 0;
+}
+
+int
+sys_fstat(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ printfd(tcp, tcp->u_arg[0]);
+ tprints(", ");
+ } else {
+ printstat(tcp, tcp->u_arg[1]);
+ }
+ return 0;
+}
+
+#if defined STAT32_PERSONALITY && !defined HAVE_STRUCT_STAT64
+# if defined AARCH64 || defined X86_64 || defined X32
/*
- * Linux x86_64 has unified `struct stat' but its i386 biarch needs
- * `struct stat64'. Its <asm-i386/stat.h> definition expects 32-bit `long'.
- * <linux/include/asm-x86_64/ia32.h> is not in the public includes set.
+ * Linux x86_64 and x32 have unified `struct stat' but their i386 personality
+ * needs `struct stat64'.
+ * linux/arch/x86/include/uapi/asm/stat.h defines `struct stat64' only for i386.
* __GNUC__ is needed for the required __attribute__ below.
*
* Similarly, aarch64 has a unified `struct stat' but its arm personality
- * needs `struct stat64' (which also expects a 32-bit `long' but which
- * shouldn't be packed).
+ * needs `struct stat64' (unlike x86, it shouldn't be packed).
*/
struct stat64 {
unsigned long long st_dev;
@@ -517,29 +331,36 @@
unsigned int st_ctime_nsec;
unsigned long long st_ino;
}
-# if defined X86_64
- __attribute__((packed))
-# define STAT64_SIZE 96
-#else
-# define STAT64_SIZE 104
-# endif
+# if defined X86_64 || defined X32
+ __attribute__((packed))
+# define STAT64_SIZE 96
+# else
+# define STAT64_SIZE 104
+# endif
;
-# define HAVE_STAT64 1
-#endif
+# define HAVE_STRUCT_STAT64 1
+# else /* !(AARCH64 || X86_64 || X32) */
+# warning FIXME: check whether struct stat64 definition is needed for this architecture!
+# endif
+#endif /* STAT32_PERSONALITY && !HAVE_STRUCT_STAT64 */
-#ifdef HAVE_STAT64
+#ifdef HAVE_STRUCT_STAT64
+
+# define DO_PRINTSTAT do_printstat64
+# define STRUCT_STAT struct stat64
+# undef HAVE_STRUCT_STAT_ST_FLAGS
+# undef HAVE_STRUCT_STAT_ST_FSTYPE
+# undef HAVE_STRUCT_STAT_ST_GEN
+# include "printstat.h"
+
static void
printstat64(struct tcb *tcp, long addr)
{
-#ifdef X32
- struct stat statbuf;
-#else
struct stat64 statbuf;
-#endif
-#ifdef STAT64_SIZE
+# ifdef STAT64_SIZE
(void) sizeof(char[sizeof statbuf == STAT64_SIZE ? 1 : -1]);
-#endif
+# endif
if (!addr) {
tprints("NULL");
@@ -550,105 +371,91 @@
return;
}
-#if defined(SPARC) || defined(SPARC64)
- if (current_personality == 1) {
- printstatsol(tcp, addr);
- return;
- }
-# ifdef SPARC64
- else if (current_personality == 2) {
- printstat_sparc64(tcp, addr);
- return;
- }
-# endif
-#endif /* SPARC[64] */
-
-#if defined AARCH64
- if (current_personality != 0) {
+# ifdef STAT32_PERSONALITY
+ if (current_personality != STAT32_PERSONALITY) {
printstat(tcp, addr);
return;
}
-#endif
-#if defined X86_64
- if (current_personality != 1) {
- printstat(tcp, addr);
- return;
- }
-#endif
+# endif /* STAT32_PERSONALITY */
if (umove(tcp, addr, &statbuf) < 0) {
tprints("{...}");
return;
}
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%lu, %lu), st_ino=%llu, st_mode=%s, ",
- (unsigned long) major(statbuf.st_dev),
- (unsigned long) minor(statbuf.st_dev),
- (unsigned long long) statbuf.st_ino,
- sprintmode(statbuf.st_mode));
- tprintf("st_nlink=%lu, st_uid=%lu, st_gid=%lu, ",
- (unsigned long) statbuf.st_nlink,
- (unsigned long) statbuf.st_uid,
- (unsigned long) statbuf.st_gid);
-#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE
- tprintf("st_blksize=%lu, ",
- (unsigned long) statbuf.st_blksize);
-#endif /* HAVE_STRUCT_STAT_ST_BLKSIZE */
-#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
- tprintf("st_blocks=%lu, ", (unsigned long) statbuf.st_blocks);
-#endif /* HAVE_STRUCT_STAT_ST_BLOCKS */
- }
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode));
- switch (statbuf.st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
-#ifdef HAVE_STRUCT_STAT_ST_RDEV
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf.st_rdev),
- (unsigned long) minor(statbuf.st_rdev));
-#else /* !HAVE_STRUCT_STAT_ST_RDEV */
- tprintf("st_size=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf.st_size),
- (unsigned long) minor(statbuf.st_size));
-#endif /* !HAVE_STRUCT_STAT_ST_RDEV */
- break;
- default:
- tprintf("st_size=%llu, ", (unsigned long long) statbuf.st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime));
- tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime));
- tprintf("st_ctime=%s", sprinttime(statbuf.st_ctime));
-#if HAVE_STRUCT_STAT_ST_FLAGS
- tprints(", st_flags=");
- printflags(fileflags, statbuf.st_flags, "UF_???");
-#endif
-#if HAVE_STRUCT_STAT_ST_ACLCNT
- tprintf(", st_aclcnt=%d", statbuf.st_aclcnt);
-#endif
-#if HAVE_STRUCT_STAT_ST_LEVEL
- tprintf(", st_level=%ld", statbuf.st_level);
-#endif
-#if HAVE_STRUCT_STAT_ST_FSTYPE
- tprintf(", st_fstype=%.*s",
- (int) sizeof statbuf.st_fstype, statbuf.st_fstype);
-#endif
-#if HAVE_STRUCT_STAT_ST_GEN
- tprintf(", st_gen=%u", statbuf.st_gen);
-#endif
- tprints("}");
- }
- else
- tprints("...}");
+ do_printstat64(tcp, &statbuf);
}
-#endif /* HAVE_STAT64 */
+
+int
+sys_stat64(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ printpath(tcp, tcp->u_arg[0]);
+ tprints(", ");
+ } else {
+ printstat64(tcp, tcp->u_arg[1]);
+ }
+ return 0;
+}
+
+int
+sys_fstat64(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ printfd(tcp, tcp->u_arg[0]);
+ tprints(", ");
+ } else {
+ printstat64(tcp, tcp->u_arg[1]);
+ }
+ return 0;
+}
+
+#else
+
+int
+sys_stat64(struct tcb *tcp)
+{
+ return sys_stat(tcp);
+}
+
+int
+sys_fstat64(struct tcb *tcp)
+{
+ return sys_fstat(tcp);
+}
+
+#endif /* HAVE_STRUCT_STAT64 */
+
+int
+sys_newfstatat(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ print_dirfd(tcp, tcp->u_arg[0]);
+ printpath(tcp, tcp->u_arg[1]);
+ tprints(", ");
+ } else {
+#if defined STAT32_PERSONALITY
+ if (current_personality == STAT32_PERSONALITY)
+ printstat64(tcp, tcp->u_arg[2]);
+ else
+ printstat(tcp, tcp->u_arg[2]);
+#elif defined HAVE_STRUCT_STAT64
+ printstat64(tcp, tcp->u_arg[2]);
+#else
+ printstat(tcp, tcp->u_arg[2]);
+#endif /* STAT32_PERSONALITY || HAVE_STRUCT_STAT64 */
+ tprints(", ");
+ printflags(at_flags, tcp->u_arg[3], "AT_???");
+ }
+ return 0;
+}
#if defined(HAVE_STRUCT___OLD_KERNEL_STAT)
+
static void
convertoldstat(const struct __old_kernel_stat *oldbuf, struct stat *newbuf)
{
+ memset(newbuf, 0, sizeof(*newbuf));
newbuf->st_dev = oldbuf->st_dev;
newbuf->st_ino = oldbuf->st_ino;
newbuf->st_mode = oldbuf->st_mode;
@@ -660,8 +467,6 @@
newbuf->st_atime = oldbuf->st_atime;
newbuf->st_mtime = oldbuf->st_mtime;
newbuf->st_ctime = oldbuf->st_ctime;
- newbuf->st_blksize = 0; /* not supported in old_stat */
- newbuf->st_blocks = 0; /* not supported in old_stat */
}
static void
@@ -692,124 +497,9 @@
}
convertoldstat(&statbuf, &newstatbuf);
- realprintstat(tcp, &newstatbuf);
-}
-#endif
-
-int
-sys_stat(struct tcb *tcp)
-{
- if (entering(tcp)) {
- printpath(tcp, tcp->u_arg[0]);
- tprints(", ");
- } else {
- printstat(tcp, tcp->u_arg[1]);
- }
- return 0;
+ do_printstat(tcp, &newstatbuf);
}
-#ifdef X32
-static void
-printstat64_x32(struct tcb *tcp, long addr)
-{
- struct stat64 statbuf;
-
- if (!addr) {
- tprints("NULL");
- return;
- }
- if (syserror(tcp) || !verbose(tcp)) {
- tprintf("%#lx", addr);
- return;
- }
-
- if (umove(tcp, addr, &statbuf) < 0) {
- tprints("{...}");
- return;
- }
-
- if (!abbrev(tcp)) {
- tprintf("{st_dev=makedev(%lu, %lu), st_ino=%llu, st_mode=%s, ",
- (unsigned long) major(statbuf.st_dev),
- (unsigned long) minor(statbuf.st_dev),
- (unsigned long long) statbuf.st_ino,
- sprintmode(statbuf.st_mode));
- tprintf("st_nlink=%lu, st_uid=%lu, st_gid=%lu, ",
- (unsigned long) statbuf.st_nlink,
- (unsigned long) statbuf.st_uid,
- (unsigned long) statbuf.st_gid);
- tprintf("st_blksize=%lu, ",
- (unsigned long) statbuf.st_blksize);
- tprintf("st_blocks=%lu, ", (unsigned long) statbuf.st_blocks);
- }
- else
- tprintf("{st_mode=%s, ", sprintmode(statbuf.st_mode));
- switch (statbuf.st_mode & S_IFMT) {
- case S_IFCHR: case S_IFBLK:
- tprintf("st_rdev=makedev(%lu, %lu), ",
- (unsigned long) major(statbuf.st_rdev),
- (unsigned long) minor(statbuf.st_rdev));
- break;
- default:
- tprintf("st_size=%llu, ", (unsigned long long) statbuf.st_size);
- break;
- }
- if (!abbrev(tcp)) {
- tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime));
- tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime));
- tprintf("st_ctime=%s", sprinttime(statbuf.st_ctime));
- tprints("}");
- }
- else
- tprints("...}");
-}
-#endif /* X32 */
-
-int
-sys_stat64(struct tcb *tcp)
-{
-#ifdef HAVE_STAT64
- if (entering(tcp)) {
- printpath(tcp, tcp->u_arg[0]);
- tprints(", ");
- } else {
-# ifdef X32
- printstat64_x32(tcp, tcp->u_arg[1]);
-# else
- printstat64(tcp, tcp->u_arg[1]);
-# endif
- }
- return 0;
-#else
- return printargs(tcp);
-#endif
-}
-
-int
-sys_newfstatat(struct tcb *tcp)
-{
- if (entering(tcp)) {
- print_dirfd(tcp, tcp->u_arg[0]);
- printpath(tcp, tcp->u_arg[1]);
- tprints(", ");
- } else {
-#ifdef POWERPC64
- if (current_personality == 0)
- printstat(tcp, tcp->u_arg[2]);
- else
- printstat64(tcp, tcp->u_arg[2]);
-#elif defined HAVE_STAT64
- printstat64(tcp, tcp->u_arg[2]);
-#else
- printstat(tcp, tcp->u_arg[2]);
-#endif
- tprints(", ");
- printflags(at_flags, tcp->u_arg[3], "AT_???");
- }
- return 0;
-}
-
-#if defined(HAVE_STRUCT___OLD_KERNEL_STAT)
int
sys_oldstat(struct tcb *tcp)
{
@@ -821,42 +511,8 @@
}
return 0;
}
-#endif
int
-sys_fstat(struct tcb *tcp)
-{
- if (entering(tcp)) {
- printfd(tcp, tcp->u_arg[0]);
- tprints(", ");
- } else {
- printstat(tcp, tcp->u_arg[1]);
- }
- return 0;
-}
-
-int
-sys_fstat64(struct tcb *tcp)
-{
-#ifdef HAVE_STAT64
- if (entering(tcp)) {
- printfd(tcp, tcp->u_arg[0]);
- tprints(", ");
- } else {
-# ifdef X32
- printstat64_x32(tcp, tcp->u_arg[1]);
-# else
- printstat64(tcp, tcp->u_arg[1]);
-# endif
- }
- return 0;
-#else
- return printargs(tcp);
-#endif
-}
-
-#if defined(HAVE_STRUCT___OLD_KERNEL_STAT)
-int
sys_oldfstat(struct tcb *tcp)
{
if (entering(tcp)) {
@@ -867,7 +523,8 @@
}
return 0;
}
-#endif
+
+#endif /* HAVE_STRUCT___OLD_KERNEL_STAT */
#if defined(SPARC) || defined(SPARC64)
diff --git a/getrandom.c b/getrandom.c
new file mode 100644
index 0000000..068b2e6
--- /dev/null
+++ b/getrandom.c
@@ -0,0 +1,16 @@
+#include "defs.h"
+#include "xlat/getrandom_flags.h"
+
+int
+sys_getrandom(struct tcb *tcp)
+{
+ if (exiting(tcp)) {
+ if (syserror(tcp))
+ tprintf("%#lx", tcp->u_arg[0]);
+ else
+ printstr(tcp, tcp->u_arg[0], tcp->u_rval);
+ tprintf(", %lu, ", tcp->u_arg[1]);
+ printflags(getrandom_flags, tcp->u_arg[2], "GRND_???");
+ }
+ return 0;
+}
diff --git a/git-set-file-times b/git-set-file-times
index 85d854e..077ac0e 100755
--- a/git-set-file-times
+++ b/git-set-file-times
@@ -1,5 +1,6 @@
-#!/usr/bin/perl -w
+#!/usr/bin/perl
use strict;
+use warnings;
# Sets mtime and atime of files to the latest commit time in git.
#
diff --git a/git-version-gen b/git-version-gen
index 8fee74e..3de5365 100755
--- a/git-version-gen
+++ b/git-version-gen
@@ -1,8 +1,8 @@
#!/bin/sh
# Print a version string.
-scriptversion=2012-12-31.23; # UTC
+scriptversion=2014-12-02.19; # UTC
-# Copyright (C) 2007-2013 Free Software Foundation, Inc.
+# Copyright (C) 2007-2014 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -85,8 +85,9 @@
Options:
- --prefix prefix of git tags (default 'v')
- --fallback fallback version to use if \"git --version\" fails
+ --prefix PREFIX prefix of git tags (default 'v')
+ --fallback VERSION
+ fallback version to use if \"git --version\" fails
--help display this help and exit
--version output version information and exit
@@ -214,7 +215,7 @@
fi
# Omit the trailing newline, so that m4_esyscmd can use the result directly.
-echo "$v" | tr -d "$nl"
+printf %s "$v"
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/gitlog-to-changelog b/gitlog-to-changelog
index 4612d38..190f7b5 100755
--- a/gitlog-to-changelog
+++ b/gitlog-to-changelog
@@ -3,13 +3,13 @@
if 0;
# Convert git log output to ChangeLog format.
-my $VERSION = '2011-10-31 16:06'; # UTC
+my $VERSION = '2014-11-20 17:25'; # UTC
# The definition above must lie within the first 8 lines in order
# for the Emacs time-stamp write hook (at end) to update it.
# If you change this file with Emacs, please let the write hook
# do its job. Otherwise, update this string manually.
-# Copyright (C) 2008-2011 Free Software Foundation, Inc.
+# Copyright (C) 2008-2014 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -47,7 +47,7 @@
my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR);
if ($exit_code != 0)
{
- print $STREAM "Try `$ME --help' for more information.\n";
+ print $STREAM "Try '$ME --help' for more information.\n";
}
else
{
@@ -60,14 +60,26 @@
OPTIONS:
+ --amend=FILE FILE maps from an SHA1 to perl code (i.e., s/old/new/) that
+ makes a change to SHA1's commit log text or metadata.
+ --append-dot append a dot to the first line of each commit message if
+ there is no other punctuation or blank at the end.
+ --no-cluster never cluster commit messages under the same date/author
+ header; the default is to cluster adjacent commit messages
+ if their headers are the same and neither commit message
+ contains multiple paragraphs.
+ --srcdir=DIR the root of the source tree, from which the .git/
+ directory can be derived.
--since=DATE convert only the logs since DATE;
the default is to convert all log entries.
+ --until=DATE convert only the logs older than DATE.
--format=FMT set format string for commit subject and body;
see 'man git-log' for the list of format metacharacters;
the default is '%s%n%b%n'
- --append-dot append a dot to the first line of each commit message if
- there is no other punctuation or blank at the end.
-
+ --strip-tab remove one additional leading TAB from commit message lines.
+ --strip-cherry-pick remove data inserted by "git cherry-pick";
+ this includes the "cherry picked from commit ..." line,
+ and the possible final "Conflicts:" paragraph.
--help display this help and exit
--version output version information and exit
@@ -76,6 +88,38 @@
$ME --since=2008-01-01 > ChangeLog
$ME -- -n 5 foo > last-5-commits-to-branch-foo
+SPECIAL SYNTAX:
+
+The following types of strings are interpreted specially when they appear
+at the beginning of a log message line. They are not copied to the output.
+
+ Copyright-paperwork-exempt: Yes
+ Append the "(tiny change)" notation to the usual "date name email"
+ ChangeLog header to mark a change that does not require a copyright
+ assignment.
+ Co-authored-by: Joe User <user\@example.com>
+ List the specified name and email address on a second
+ ChangeLog header, denoting a co-author.
+ Signed-off-by: Joe User <user\@example.com>
+ These lines are simply elided.
+
+In a FILE specified via --amend, comment lines (starting with "#") are ignored.
+FILE must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1 (alone on
+a line) referring to a commit in the current project, and CODE refers to one
+or more consecutive lines of Perl code. Pairs must be separated by one or
+more blank line.
+
+Here is sample input for use with --amend=FILE, from coreutils:
+
+3a169f4c5d9159283548178668d2fae6fced3030
+# fix typo in title:
+s/all tile types/all file types/
+
+1379ed974f1fa39b12e2ffab18b3f7a607082202
+# Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself.
+# Change the author to be Paul. Note the escaped "@":
+s,Jim .*>,Paul Eggert <eggert\\\@cs.ucla.edu>,
+
EOF
}
exit $exit_code;
@@ -101,29 +145,125 @@
return join (' ', map {shell_quote $_} @_);
}
+# Parse file F.
+# Comment lines (starting with "#") are ignored.
+# F must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1
+# (alone on a line) referring to a commit in the current project, and
+# CODE refers to one or more consecutive lines of Perl code.
+# Pairs must be separated by one or more blank line.
+sub parse_amend_file($)
+{
+ my ($f) = @_;
+
+ open F, '<', $f
+ or die "$ME: $f: failed to open for reading: $!\n";
+
+ my $fail;
+ my $h = {};
+ my $in_code = 0;
+ my $sha;
+ while (defined (my $line = <F>))
+ {
+ $line =~ /^\#/
+ and next;
+ chomp $line;
+ $line eq ''
+ and $in_code = 0, next;
+
+ if (!$in_code)
+ {
+ $line =~ /^([0-9a-fA-F]{40})$/
+ or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"),
+ $fail = 1, next;
+ $sha = lc $1;
+ $in_code = 1;
+ exists $h->{$sha}
+ and (warn "$ME: $f:$.: duplicate SHA1\n"),
+ $fail = 1, next;
+ }
+ else
+ {
+ $h->{$sha} ||= '';
+ $h->{$sha} .= "$line\n";
+ }
+ }
+ close F;
+
+ $fail
+ and exit 1;
+
+ return $h;
+}
+
+# git_dir_option $SRCDIR
+#
+# From $SRCDIR, the --git-dir option to pass to git (none if $SRCDIR
+# is undef). Return as a list (0 or 1 element).
+sub git_dir_option($)
+{
+ my ($srcdir) = @_;
+ my @res = ();
+ if (defined $srcdir)
+ {
+ my $qdir = shell_quote $srcdir;
+ my $cmd = "cd $qdir && git rev-parse --show-toplevel";
+ my $qcmd = shell_quote $cmd;
+ my $git_dir = qx($cmd);
+ defined $git_dir
+ or die "$ME: cannot run $qcmd: $!\n";
+ $? == 0
+ or die "$ME: $qcmd had unexpected exit code or signal ($?)\n";
+ chomp $git_dir;
+ push @res, "--git-dir=$git_dir/.git";
+ }
+ @res;
+}
+
{
my $since_date;
+ my $until_date;
my $format_string = '%s%n%b%n';
+ my $amend_file;
my $append_dot = 0;
+ my $cluster = 1;
+ my $strip_tab = 0;
+ my $strip_cherry_pick = 0;
+ my $srcdir;
GetOptions
(
help => sub { usage 0 },
version => sub { print "$ME version $VERSION\n"; exit },
'since=s' => \$since_date,
+ 'until=s' => \$until_date,
'format=s' => \$format_string,
+ 'amend=s' => \$amend_file,
'append-dot' => \$append_dot,
+ 'cluster!' => \$cluster,
+ 'strip-tab' => \$strip_tab,
+ 'strip-cherry-pick' => \$strip_cherry_pick,
+ 'srcdir=s' => \$srcdir,
) or usage 1;
defined $since_date
and unshift @ARGV, "--since=$since_date";
+ defined $until_date
+ and unshift @ARGV, "--until=$until_date";
- my @cmd = (qw (git log --log-size),
- '--pretty=format:%ct %an <%ae>%n%n'.$format_string, @ARGV);
+ # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/)
+ # that makes a correction in the log or attribution of that commit.
+ my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {};
+
+ my @cmd = ('git',
+ git_dir_option $srcdir,
+ qw(log --log-size),
+ '--pretty=format:%H:%ct %an <%ae>%n%n'.$format_string, @ARGV);
open PIPE, '-|', @cmd
- or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n"
+ or die ("$ME: failed to run '". quoted_cmd (@cmd) ."': $!\n"
. "(Is your Git too old? Version 1.5.1 or later is required.)\n");
+ my $prev_multi_paragraph;
my $prev_date_line = '';
+ my @prev_coauthors = ();
while (1)
{
defined (my $in = <PIPE>)
@@ -137,7 +277,41 @@
$n_read == $log_nbytes
or die "$ME:$.: unexpected EOF\n";
- my @line = split "\n", $log;
+ # Extract leading hash.
+ my ($sha, $rest) = split ':', $log, 2;
+ defined $sha
+ or die "$ME:$.: malformed log entry\n";
+ $sha =~ /^[0-9a-fA-F]{40}$/
+ or die "$ME:$.: invalid SHA1: $sha\n";
+
+ # If this commit's log requires any transformation, do it now.
+ my $code = $amend_code->{$sha};
+ if (defined $code)
+ {
+ eval 'use Safe';
+ my $s = new Safe;
+ # Put the unpreprocessed entry into "$_".
+ $_ = $rest;
+
+ # Let $code operate on it, safely.
+ my $r = $s->reval("$code")
+ or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n";
+
+ # Note that we've used this entry.
+ delete $amend_code->{$sha};
+
+ # Update $rest upon success.
+ $rest = $_;
+ }
+
+ # Remove lines inserted by "git cherry-pick".
+ if ($strip_cherry_pick)
+ {
+ $rest =~ s/^\s*Conflicts:\n.*//sm;
+ $rest =~ s/^\s*\(cherry picked from commit [\da-f]+\)\n//m;
+ }
+
+ my @line = split "\n", $rest;
my $author_line = shift @line;
defined $author_line
or die "$ME:$.: unexpected EOF\n";
@@ -145,19 +319,20 @@
or die "$ME:$.: Invalid line "
. "(expected date/author/email):\n$author_line\n";
- my $date_line = sprintf "%s $2\n", strftime ("%F", localtime ($1));
- # If this line would be the same as the previous date/name/email
- # line, then arrange not to print it.
- if ($date_line ne $prev_date_line)
- {
- $prev_date_line eq ''
- or print "\n";
- print $date_line;
- }
- $prev_date_line = $date_line;
+ # Format 'Copyright-paperwork-exempt: Yes' as a standard ChangeLog
+ # `(tiny change)' annotation.
+ my $tiny = (grep (/^Copyright-paperwork-exempt:\s+[Yy]es$/, @line)
+ ? ' (tiny change)' : '');
- # Omit "Signed-off-by..." lines.
- @line = grep !/^Signed-off-by: .*>$/, @line;
+ my $date_line = sprintf "%s %s$tiny\n",
+ strftime ("%F", localtime ($1)), $2;
+
+ my @coauthors = grep /^Co-authored-by:.*$/, @line;
+ # Omit meta-data lines we've already interpreted.
+ @line = grep !/^(?:Signed-off-by:[ ].*>$
+ |Co-authored-by:[ ]
+ |Copyright-paperwork-exempt:[ ]
+ )/x, @line;
# Remove leading and trailing blank lines.
if (@line)
@@ -166,6 +341,41 @@
while ($line[$#line] =~ /^\s*$/) { pop @line; }
}
+ # Record whether there are two or more paragraphs.
+ my $multi_paragraph = grep /^\s*$/, @line;
+
+ # Format 'Co-authored-by: A U Thor <email@example.com>' lines in
+ # standard multi-author ChangeLog format.
+ for (@coauthors)
+ {
+ s/^Co-authored-by:\s*/\t /;
+ s/\s*</ </;
+
+ /<.*?@.*\..*>/
+ or warn "$ME: warning: missing email address for "
+ . substr ($_, 5) . "\n";
+ }
+
+ # If clustering of commit messages has been disabled, if this header
+ # would be different from the previous date/name/email/coauthors header,
+ # or if this or the previous entry consists of two or more paragraphs,
+ # then print the header.
+ if ( ! $cluster
+ || $date_line ne $prev_date_line
+ || "@coauthors" ne "@prev_coauthors"
+ || $multi_paragraph
+ || $prev_multi_paragraph)
+ {
+ $prev_date_line eq ''
+ or print "\n";
+ print $date_line;
+ @coauthors
+ and print join ("\n", @coauthors), "\n";
+ }
+ $prev_date_line = $date_line;
+ @prev_coauthors = @coauthors;
+ $prev_multi_paragraph = $multi_paragraph;
+
# If there were any lines
if (@line == 0)
{
@@ -185,6 +395,10 @@
}
}
+ # Remove one additional leading TAB from each line.
+ $strip_tab
+ and map { s/^\t// } @line;
+
# Prefix each non-empty line with a TAB.
@line = map { length $_ ? "\t$_" : '' } @line;
@@ -200,6 +414,16 @@
close PIPE
or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n";
# FIXME-someday: include $PROCESS_STATUS in the diagnostic
+
+ # Complain about any unused entry in the --amend=F specified file.
+ my $fail = 0;
+ foreach my $sha (keys %$amend_code)
+ {
+ warn "$ME:$amend_file: unused entry: $sha\n";
+ $fail = 1;
+ }
+
+ exit $fail;
}
# Local Variables:
diff --git a/inotify.c b/inotify.c
index 32f6b31..81c8c5d 100644
--- a/inotify.c
+++ b/inotify.c
@@ -1,6 +1,5 @@
#include "defs.h"
#include <fcntl.h>
-#include <linux/inotify.h>
#include "xlat/inotify_flags.h"
#include "xlat/inotify_init_flags.h"
diff --git a/io.c b/io.c
index 87bdbba..3626c77 100644
--- a/io.c
+++ b/io.c
@@ -217,9 +217,16 @@
print_llu_from_low_high_val(struct tcb *tcp, int arg)
{
#if SIZEOF_LONG == SIZEOF_LONG_LONG
- tprintf("%lu", (unsigned long) tcp->u_arg[arg]);
-#elif defined(LINUX_MIPSN32)
- tprintf("%llu", (unsigned long long) tcp->ext_arg[arg]);
+# if SUPPORTED_PERSONALITIES > 1
+ if (current_wordsize == sizeof(long))
+# endif
+ tprintf("%lu", (unsigned long) tcp->u_arg[arg]);
+# if SUPPORTED_PERSONALITIES > 1
+ else
+ tprintf("%lu",
+ ((unsigned long) tcp->u_arg[arg + 1] << current_wordsize * 8)
+ | (unsigned long) tcp->u_arg[arg]);
+# endif
#else
# ifdef X32
if (current_personality == 0)
@@ -398,13 +405,16 @@
if (entering(tcp)) {
printfd(tcp, tcp->u_arg[0]);
tprints(", ");
- iop = ioctl_lookup(tcp->u_arg[1]);
- if (iop) {
- tprints(iop->symbol);
- while ((iop = ioctl_next_match(iop)))
- tprintf(" or %s", iop->symbol);
- } else
- tprintf("%#lx", tcp->u_arg[1]);
+ if (!ioctl_decode_command_number(tcp->u_arg[1])) {
+ iop = ioctl_lookup(tcp->u_arg[1]);
+ if (iop) {
+ tprints(iop->symbol);
+ while ((iop = ioctl_next_match(iop)))
+ tprintf(" or %s", iop->symbol);
+ } else {
+ ioctl_print_code(tcp->u_arg[1]);
+ }
+ }
ioctl_decode(tcp, tcp->u_arg[1], tcp->u_arg[2]);
}
else {
diff --git a/ioctl.c b/ioctl.c
index cfd5a24..46f8334 100644
--- a/ioctl.c
+++ b/ioctl.c
@@ -30,22 +30,29 @@
#include "defs.h"
#include <asm/ioctl.h>
+#include "xlat/ioctl_dirs.h"
+
+#ifdef HAVE_LINUX_INPUT_H
+# include <linux/input.h>
+#endif
+
+#include "xlat/evdev_abs.h"
+#include "xlat/evdev_ev.h"
static int
compare(const void *a, const void *b)
{
- unsigned long code1 = (unsigned long) a;
- unsigned long code2 = ((struct_ioctlent *) b)->code;
+ const unsigned int code1 = (const unsigned long) a;
+ const unsigned int code2 = ((struct_ioctlent *) b)->code;
return (code1 > code2) ? 1 : (code1 < code2) ? -1 : 0;
}
const struct_ioctlent *
-ioctl_lookup(unsigned long code)
+ioctl_lookup(const unsigned int code)
{
struct_ioctlent *iop;
- code &= (_IOC_NRMASK<<_IOC_NRSHIFT) | (_IOC_TYPEMASK<<_IOC_TYPESHIFT);
- iop = bsearch((void*)code, ioctlent,
+ iop = bsearch((const void *) (const unsigned long) code, ioctlent,
nioctlents, sizeof(ioctlent[0]), compare);
while (iop > ioctlent) {
iop--;
@@ -60,19 +67,164 @@
const struct_ioctlent *
ioctl_next_match(const struct_ioctlent *iop)
{
- unsigned long code;
-
- code = iop->code;
+ const unsigned int code = iop->code;
iop++;
if (iop < ioctlent + nioctlents && iop->code == code)
return iop;
return NULL;
}
-int
-ioctl_decode(struct tcb *tcp, long code, long arg)
+void
+ioctl_print_code(const unsigned int code)
{
- switch ((code >> 8) & 0xff) {
+ tprints("_IOC(");
+ printflags(ioctl_dirs, _IOC_DIR(code), "_IOC_???");
+ tprintf(", 0x%02x, 0x%02x, 0x%02x)",
+ _IOC_TYPE(code), _IOC_NR(code), _IOC_SIZE(code));
+}
+
+static int
+evdev_decode_number(unsigned int arg)
+{
+ unsigned int nr = _IOC_NR(arg);
+
+ if (_IOC_DIR(arg) == _IOC_WRITE) {
+ if (nr >= 0xc0 && nr <= 0xc0 + 0x3f) {
+ tprints("EVIOCSABS(");
+ printxval(evdev_abs, nr - 0xc0, "EV_???");
+ tprints(")");
+ return 1;
+ }
+ }
+
+ if (_IOC_DIR(arg) != _IOC_READ)
+ return 0;
+
+ if (nr >= 0x20 && nr <= 0x20 + 0x1f) {
+ tprints("EVIOCGBIT(");
+ printxval(evdev_ev, nr - 0x20, "EV_???");
+ tprintf(", %u)", _IOC_SIZE(arg));
+ return 1;
+ } else if (nr >= 0x40 && nr <= 0x40 + 0x3f) {
+ tprints("EVIOCGABS(");
+ printxval(evdev_abs, nr - 0x40, "ABS_???");
+ tprints(")");
+ return 1;
+ }
+
+ switch (_IOC_NR(nr)) {
+ case 0x06:
+ tprintf("EVIOCGNAME(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x07:
+ tprintf("EVIOCGPHYS(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x08:
+ tprintf("EVIOCGUNIQ(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x09:
+ tprintf("EVIOCGPROP(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x0a:
+ tprintf("EVIOCGMTSLOTS(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x18:
+ tprintf("EVIOCGKEY(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x19:
+ tprintf("EVIOCGLED(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x1a:
+ tprintf("EVIOCGSND(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x1b:
+ tprintf("EVIOCGSW(%u)", _IOC_SIZE(arg));
+ return 1;
+ default:
+ return 0;
+ }
+}
+
+static int
+hiddev_decode_number(unsigned int arg)
+{
+ if (_IOC_DIR(arg) == _IOC_READ) {
+ switch (_IOC_NR(arg)) {
+ case 0x04:
+ tprintf("HIDIOCGRAWNAME(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x05:
+ tprintf("HIDIOCGRAWPHYS(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x06:
+ tprintf("HIDIOCSFEATURE(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x12:
+ tprintf("HIDIOCGPHYS(%u)", _IOC_SIZE(arg));
+ return 1;
+ default:
+ return 0;
+ }
+ } else if (_IOC_DIR(arg) == (_IOC_READ | _IOC_WRITE)) {
+ switch (_IOC_NR(arg)) {
+ case 0x06:
+ tprintf("HIDIOCSFEATURE(%u)", _IOC_SIZE(arg));
+ return 1;
+ case 0x07:
+ tprintf("HIDIOCGFEATURE(%u)", _IOC_SIZE(arg));
+ return 1;
+ default:
+ return 0;
+ }
+ }
+
+ return 0;
+}
+
+int
+ioctl_decode_command_number(unsigned int arg)
+{
+ switch (_IOC_TYPE(arg)) {
+ case 'E':
+ return evdev_decode_number(arg);
+ case 'H':
+ return hiddev_decode_number(arg);
+ case 'M':
+ if (_IOC_DIR(arg) == _IOC_WRITE) {
+ tprintf("MIXER_WRITE(%u)", _IOC_NR(arg));
+ return 1;
+ } else if (_IOC_DIR(arg) == _IOC_READ) {
+ tprintf("MIXER_READ(%u)", _IOC_NR(arg));
+ return 1;
+ }
+ return 0;
+ case 'U':
+ if (_IOC_DIR(arg) == _IOC_READ && _IOC_NR(arg) == 0x2c) {
+ tprintf("UI_GET_SYSNAME(%u)", _IOC_SIZE(arg));
+ return 1;
+ }
+ return 0;
+ case 'j':
+ if (_IOC_DIR(arg) == _IOC_READ && _IOC_NR(arg) == 0x13) {
+ tprintf("JSIOCGNAME(%u)", _IOC_SIZE(arg));
+ return 1;
+ }
+ return 0;
+ case 'k':
+ if (_IOC_DIR(arg) == _IOC_WRITE && _IOC_NR(arg) == 0) {
+ tprintf("SPI_IOC_MESSAGE(%u)", _IOC_SIZE(arg));
+ return 1;
+ }
+ return 0;
+ default:
+ return 0;
+ }
+}
+
+int
+ioctl_decode(struct tcb *tcp, unsigned int code, long arg)
+{
+ switch (_IOC_TYPE(code)) {
#if defined(ALPHA) || defined(POWERPC)
case 'f': case 't': case 'T':
#else /* !ALPHA */
@@ -102,6 +254,10 @@
return v4l2_ioctl(tcp, code, arg);
case '=':
return ptp_ioctl(tcp, code, arg);
+#ifdef HAVE_LINUX_INPUT_H
+ case 'E':
+ return evdev_ioctl(tcp, code, arg);
+#endif
default:
break;
}
diff --git a/ioctlsort.c b/ioctlsort.c
index 393b534..333556c 100644
--- a/ioctlsort.c
+++ b/ioctlsort.c
@@ -1,58 +1,163 @@
+/*
+ * Copyright (c) 2001 Wichert Akkerman <wichert@cistron.nl>
+ * Copyright (c) 2004-2015 Dmitry V. Levin <ldv@altlinux.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <sys/types.h>
-#include <stdint.h>
-
#include <asm/ioctl.h>
-#include <linux/types.h>
-
-#include "ioctldefs.h"
-#include <linux/atmioc.h>
struct ioctlent {
- const char* header;
- const char* name;
- unsigned long code;
+ const char *info;
+ const char *name;
+ unsigned int dir;
+ unsigned int type_nr;
+ unsigned int size;
};
-struct ioctlent ioctls[] = {
-#include "ioctls.h"
-};
-
-int nioctls = sizeof(ioctls) / sizeof(ioctls[0]);
-
-int compare(const void* a, const void* b) {
- unsigned long code1 = ((struct ioctlent *) a)->code;
- unsigned long code2 = ((struct ioctlent *) b)->code;
- const char *name1 = ((struct ioctlent *) a)->name;
- const char *name2 = ((struct ioctlent *) b)->name;
- return (code1 > code2) ? 1 : (code1 < code2) ? -1 : strcmp(name1, name2);
-}
-
-static int is_not_prefix(const char *s1, const char *s2) {
+static int
+is_prefix(const char *s1, const char *s2)
+{
size_t len = strlen(s1);
if (len > strlen(s2))
- return 1;
- return memcmp(s1, s2, len);
+ return 0;
+ return !memcmp(s1, s2, len);
}
-int main(int argc, char** argv) {
- int i;
+static int
+compare_name_info(const void* a, const void* b)
+{
+ int rc;
- /* ioctl_lookup() only looks at the NR and TYPE bits atm. */
- for (i = 0; i < nioctls; i++)
- ioctls[i].code &= (_IOC_NRMASK << _IOC_NRSHIFT) |
- (_IOC_TYPEMASK << _IOC_TYPESHIFT);
+ const char *name1 = ((struct ioctlent *) a)->name;
+ const char *name2 = ((struct ioctlent *) b)->name;
+ const char *info1 = ((struct ioctlent *) a)->info;
+ const char *info2 = ((struct ioctlent *) b)->info;
- qsort(ioctls, nioctls, sizeof(ioctls[0]), compare);
- puts("\t/* Generated by ioctlsort */");
- for (i = 0; i < nioctls; i++)
- if (i == 0 || ioctls[i-1].code != ioctls[i].code ||
- is_not_prefix(ioctls[i-1].name, ioctls[i].name))
- printf("\t{\"%s\",\t\"%s\",\t%#06lx},\n",
- ioctls[i].header, ioctls[i].name, ioctls[i].code);
+ rc = strcmp(name1, name2);
+ if (rc)
+ return rc;
+ /*
+ * exception from lexicographical order:
+ * "asm/" < "asm-generic/"
+ */
+ if (is_prefix("asm/", info1) &&
+ is_prefix("asm-generic/", info2))
+ return -1;
+
+ if (is_prefix("asm/", info2) &&
+ is_prefix("asm-generic/", info1))
+ return 1;
+
+ return strcmp(info1, info2);
+}
+
+static unsigned int
+code(const struct ioctlent *e)
+{
+ return e->type_nr |
+ (e->size << _IOC_SIZESHIFT) |
+ (e->dir << _IOC_DIRSHIFT);
+}
+
+static int
+compare_code_name(const void* a, const void* b)
+{
+ unsigned int code1 = code((struct ioctlent *) a);
+ unsigned int code2 = code((struct ioctlent *) b);
+ const char *name1 = ((struct ioctlent *) a)->name;
+ const char *name2 = ((struct ioctlent *) b)->name;
+ return (code1 > code2) ?
+ 1 : (code1 < code2) ? -1 : strcmp(name1, name2);
+}
+
+static void
+ioctlsort(struct ioctlent *ioctls, size_t nioctls)
+{
+ size_t i;
+
+ qsort(ioctls, nioctls, sizeof(ioctls[0]), compare_name_info);
+
+ for (i = 1; i < nioctls; ++i)
+ if (!strcmp(ioctls[i-1].name, ioctls[i].name)) {
+ /*
+ * If there are multiple definitions for the same
+ * name, keep the first one and mark all the rest
+ * for deletion.
+ */
+ ioctls[i].info = NULL;
+ }
+
+ for (i = 1; i < nioctls; ++i)
+ if (!ioctls[i].info) {
+ /*
+ * Change ioctl code of marked elements
+ * to make them sorted to the end of array.
+ */
+ ioctls[i].dir =
+ ioctls[i].type_nr =
+ ioctls[i].size = 0xffffffffu;
+ }
+
+ qsort(ioctls, nioctls, sizeof(ioctls[0]), compare_code_name);
+
+ puts("/* Generated by ioctlsort. */");
+ for (i = 0; i < nioctls; ++i) {
+ if (!ioctls[i].info) {
+ /*
+ * We've reached the first element marked for deletion.
+ */
+ break;
+ }
+ if (i == 0 || code(&ioctls[i-1]) != code(&ioctls[i]) ||
+ !is_prefix(ioctls[i-1].name, ioctls[i].name))
+ printf("{ \"%s\", %#010x },\n",
+ ioctls[i].name, code(ioctls+i));
+ }
+}
+
+static struct ioctlent ioctls[] = {
+#ifdef IOCTLSORT_INC
+# include IOCTLSORT_INC
+#else
+# include "ioctls_arch.h"
+# include "ioctls_inc.h"
+#endif
+};
+
+int
+main(void)
+{
+ ioctlsort(ioctls, sizeof(ioctls) / sizeof(ioctls[0]));
return 0;
}
diff --git a/ipc.c b/ipc.c
index e04a618..a94f572 100644
--- a/ipc.c
+++ b/ipc.c
@@ -97,16 +97,7 @@
static int
indirect_ipccall(struct tcb *tcp)
{
-#ifdef X86_64
- return current_personality == 1;
-#endif
-#if defined IA64
- return tcp->scno < 1024; /* ia32 emulation syscalls are low */
-#endif
-#if defined(ALPHA) || defined(MIPS) || defined(HPPA) || defined(__ARM_EABI__) || defined(AARCH64)
- return 0;
-#endif
- return 1;
+ return tcp->s_ent->sys_flags & TRACE_INDIRECT_SUBCALL;
}
int sys_msgctl(struct tcb *tcp)
@@ -290,7 +281,16 @@
if (entering(tcp)) {
tprintf("%lu, %lu, ", tcp->u_arg[0], tcp->u_arg[1]);
PRINTCTL(semctl_flags, tcp->u_arg[2], "SEM_???");
- tprintf(", %#lx", tcp->u_arg[3]);
+ tprints(", ");
+ if (indirect_ipccall(tcp)) {
+ if (current_wordsize == sizeof(int)) {
+ printnum_int(tcp, tcp->u_arg[3], "%#x");
+ } else {
+ printnum_long(tcp, tcp->u_arg[3], "%#lx");
+ }
+ } else {
+ tprintf("%#lx", tcp->u_arg[3]);
+ }
}
return 0;
}
diff --git a/kexec.c b/kexec.c
index f95bea2..e277668 100644
--- a/kexec.c
+++ b/kexec.c
@@ -1,8 +1,14 @@
#include "defs.h"
-#include <linux/kexec.h>
+#include "xlat/kexec_load_flags.h"
#include "xlat/kexec_arch_values.h"
-#include "xlat/kexec_flags.h"
+
+#ifndef KEXEC_ARCH_MASK
+# define KEXEC_ARCH_MASK 0xffff0000
+#endif
+#ifndef KEXEC_SEGMENT_MAX
+# define KEXEC_SEGMENT_MAX 16
+#endif
static void
print_kexec_segments(struct tcb *tcp, unsigned long addr, unsigned long len)
@@ -23,7 +29,12 @@
# define seg_memsz \
(current_wordsize == 4 ? (uint64_t) seg.seg32.memsz : seg.seg64.memsz)
#else
- struct kexec_segment seg;
+ struct {
+ void *buf;
+ size_t bufsz;
+ void *mem;
+ size_t memsz;
+ } seg;
# define sizeof_seg sizeof(seg)
# define seg_buf seg.buf
# define seg_bufsz seg.bufsz
@@ -83,7 +94,7 @@
n &= ~KEXEC_ARCH_MASK;
if (n) {
tprints("|");
- printflags(kexec_flags, n, "KEXEC_???");
+ printflags(kexec_load_flags, n, "KEXEC_???");
}
return 0;
diff --git a/keyctl.c b/keyctl.c
index a12bd54..e77557e 100644
--- a/keyctl.c
+++ b/keyctl.c
@@ -1,5 +1,4 @@
#include "defs.h"
-#include <linux/keyctl.h>
typedef int32_t key_serial_t;
@@ -236,35 +235,6 @@
return 0;
}
-#define KEY_POS_VIEW 0x01000000
-#define KEY_POS_READ 0x02000000
-#define KEY_POS_WRITE 0x04000000
-#define KEY_POS_SEARCH 0x08000000
-#define KEY_POS_LINK 0x10000000
-#define KEY_POS_SETATTR 0x20000000
-#define KEY_POS_ALL 0x3f000000
-#define KEY_USR_VIEW 0x00010000
-#define KEY_USR_READ 0x00020000
-#define KEY_USR_WRITE 0x00040000
-#define KEY_USR_SEARCH 0x00080000
-#define KEY_USR_LINK 0x00100000
-#define KEY_USR_SETATTR 0x00200000
-#define KEY_USR_ALL 0x003f0000
-#define KEY_GRP_VIEW 0x00000100
-#define KEY_GRP_READ 0x00000200
-#define KEY_GRP_WRITE 0x00000400
-#define KEY_GRP_SEARCH 0x00000800
-#define KEY_GRP_LINK 0x00001000
-#define KEY_GRP_SETATTR 0x00002000
-#define KEY_GRP_ALL 0x00003f00
-#define KEY_OTH_VIEW 0x00000001
-#define KEY_OTH_READ 0x00000002
-#define KEY_OTH_WRITE 0x00000004
-#define KEY_OTH_SEARCH 0x00000008
-#define KEY_OTH_LINK 0x00000010
-#define KEY_OTH_SETATTR 0x00000020
-#define KEY_OTH_ALL 0x0000003f
-
#include "xlat/key_perms.h"
static int
diff --git a/linux/32/ioctls_inc.h b/linux/32/ioctls_inc.h
new file mode 100644
index 0000000..a7a281d
--- /dev/null
+++ b/linux/32/ioctls_inc.h
@@ -0,0 +1,2617 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/include/ tree. */
+{ "acpi/apei.h", "APEI_ERST_CLEAR_RECORD", _IOC_WRITE, 0x4501, 0x08 },
+{ "acpi/apei.h", "APEI_ERST_GET_RECORD_COUNT", _IOC_READ, 0x4502, 0x04 },
+{ "asm-generic/ioctls.h", "FIOASYNC", 0, 0x5452, 0 },
+{ "asm-generic/ioctls.h", "FIOCLEX", 0, 0x5451, 0 },
+{ "asm-generic/ioctls.h", "FIONBIO", 0, 0x5421, 0 },
+{ "asm-generic/ioctls.h", "FIONCLEX", 0, 0x5450, 0 },
+{ "asm-generic/ioctls.h", "FIONREAD", 0, 0x541B, 0 },
+{ "asm-generic/ioctls.h", "FIOQSIZE", 0, 0x5460, 0 },
+{ "asm-generic/ioctls.h", "TCFLSH", 0, 0x540B, 0 },
+{ "asm-generic/ioctls.h", "TCGETA", 0, 0x5405, 0 },
+{ "asm-generic/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm-generic/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm-generic/ioctls.h", "TCGETX", 0, 0x5432, 0 },
+{ "asm-generic/ioctls.h", "TCSBRK", 0, 0x5409, 0 },
+{ "asm-generic/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm-generic/ioctls.h", "TCSETA", 0, 0x5406, 0 },
+{ "asm-generic/ioctls.h", "TCSETAF", 0, 0x5408, 0 },
+{ "asm-generic/ioctls.h", "TCSETAW", 0, 0x5407, 0 },
+{ "asm-generic/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm-generic/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm-generic/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm-generic/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETX", 0, 0x5433, 0 },
+{ "asm-generic/ioctls.h", "TCSETXF", 0, 0x5434, 0 },
+{ "asm-generic/ioctls.h", "TCSETXW", 0, 0x5435, 0 },
+{ "asm-generic/ioctls.h", "TCXONC", 0, 0x540A, 0 },
+{ "asm-generic/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm-generic/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm-generic/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm-generic/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm-generic/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm-generic/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPGRP", 0, 0x540F, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGRS485", 0, 0x542E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSID", 0, 0x5429, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm-generic/ioctls.h", "TIOCGWINSZ", 0, 0x5413, 0 },
+{ "asm-generic/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm-generic/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm-generic/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm-generic/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm-generic/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm-generic/ioctls.h", "TIOCOUTQ", 0, 0x5411, 0 },
+{ "asm-generic/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm-generic/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm-generic/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm-generic/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm-generic/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPGRP", 0, 0x5410, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSRS485", 0, 0x542F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm-generic/ioctls.h", "TIOCSWINSZ", 0, 0x5414, 0 },
+{ "asm-generic/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm-generic/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm-generic/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm-generic/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm-generic/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm-generic/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_BUFS", _IOC_READ|_IOC_WRITE, 0x6416, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_CTX", _IOC_READ|_IOC_WRITE, 0x6420, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_DRAW", _IOC_READ|_IOC_WRITE, 0x6427, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_MAP", _IOC_READ|_IOC_WRITE, 0x6415, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ACQUIRE", _IOC_NONE, 0x6430, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6434, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_BIND", _IOC_WRITE, 0x6436, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ENABLE", _IOC_WRITE, 0x6432, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_FREE", _IOC_WRITE, 0x6435, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_INFO", _IOC_READ, 0x6433, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_RELEASE", _IOC_NONE, 0x6431, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_UNBIND", _IOC_WRITE, 0x6437, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_AUTH_MAGIC", _IOC_WRITE, 0x6411, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_BLOCK", _IOC_READ|_IOC_WRITE, 0x6412, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_CONTROL", _IOC_WRITE, 0x6414, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_DMA", _IOC_READ|_IOC_WRITE, 0x6429, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_DROP_MASTER", _IOC_NONE, 0x641f, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_FINISH", _IOC_WRITE, 0x642c, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_FREE_BUFS", _IOC_WRITE, 0x641a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_CLOSE", _IOC_WRITE, 0x6409, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_FLINK", _IOC_READ|_IOC_WRITE, 0x640a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_OPEN", _IOC_READ|_IOC_WRITE, 0x640b, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CAP", _IOC_READ|_IOC_WRITE, 0x640c, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CLIENT", _IOC_READ|_IOC_WRITE, 0x6405, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CTX", _IOC_READ|_IOC_WRITE, 0x6423, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAGIC", _IOC_READ, 0x6402, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAP", _IOC_READ|_IOC_WRITE, 0x6404, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_GET_SAREA_CTX", _IOC_READ|_IOC_WRITE, 0x641d, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GET_STATS", _IOC_READ, 0x6406, 0x7c },
+{ "drm/drm.h", "DRM_IOCTL_GET_UNIQUE", _IOC_READ|_IOC_WRITE, 0x6401, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_INFO_BUFS", _IOC_READ|_IOC_WRITE, 0x6418, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_IRQ_BUSID", _IOC_READ|_IOC_WRITE, 0x6403, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_LOCK", _IOC_WRITE, 0x642a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MAP_BUFS", _IOC_READ|_IOC_WRITE, 0x6419, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_MARK_BUFS", _IOC_WRITE, 0x6417, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODESET_CTL", _IOC_WRITE, 0x6408, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB", _IOC_READ|_IOC_WRITE, 0x64ae, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB2", _IOC_READ|_IOC_WRITE, 0x64b8, 0x44 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ATTACHMODE", _IOC_READ|_IOC_WRITE, 0x64a8, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CREATE_DUMB", _IOC_READ|_IOC_WRITE, 0x64b2, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR", _IOC_READ|_IOC_WRITE, 0x64a3, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR2", _IOC_READ|_IOC_WRITE, 0x64bb, 0x24 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DESTROY_DUMB", _IOC_READ|_IOC_WRITE, 0x64b4, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DETACHMODE", _IOC_READ|_IOC_WRITE, 0x64a9, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DIRTYFB", _IOC_READ|_IOC_WRITE, 0x64b1, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCONNECTOR", _IOC_READ|_IOC_WRITE, 0x64a7, 0x50 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCRTC", _IOC_READ|_IOC_WRITE, 0x64a1, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETENCODER", _IOC_READ|_IOC_WRITE, 0x64a6, 0x14 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETFB", _IOC_READ|_IOC_WRITE, 0x64ad, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a4, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANE", _IOC_READ|_IOC_WRITE, 0x64b6, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANERESOURCES", _IOC_READ|_IOC_WRITE, 0x64b5, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPBLOB", _IOC_READ|_IOC_WRITE, 0x64ac, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64aa, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETRESOURCES", _IOC_READ|_IOC_WRITE, 0x64a0, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_MAP_DUMB", _IOC_READ|_IOC_WRITE, 0x64b3, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_GETPROPERTIES", _IOC_READ|_IOC_WRITE, 0x64b9, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ba, 0x14 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_PAGE_FLIP", _IOC_READ|_IOC_WRITE, 0x64b0, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_RMFB", _IOC_READ|_IOC_WRITE, 0x64af, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETCRTC", _IOC_READ|_IOC_WRITE, 0x64a2, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a5, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPLANE", _IOC_READ|_IOC_WRITE, 0x64b7, 0x30 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ab, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MOD_CTX", _IOC_WRITE, 0x6422, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_NEW_CTX", _IOC_WRITE, 0x6425, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_FD_TO_HANDLE", _IOC_READ|_IOC_WRITE, 0x642e, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_HANDLE_TO_FD", _IOC_READ|_IOC_WRITE, 0x642d, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_RES_CTX", _IOC_READ|_IOC_WRITE, 0x6426, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_RM_CTX", _IOC_READ|_IOC_WRITE, 0x6421, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_RM_DRAW", _IOC_READ|_IOC_WRITE, 0x6428, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_RM_MAP", _IOC_WRITE, 0x641b, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_SET_CLIENT_CAP", _IOC_WRITE, 0x640d, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SET_MASTER", _IOC_NONE, 0x641e, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_SET_SAREA_CTX", _IOC_WRITE, 0x641c, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SET_UNIQUE", _IOC_WRITE, 0x6410, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SET_VERSION", _IOC_READ|_IOC_WRITE, 0x6407, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SG_ALLOC", _IOC_READ|_IOC_WRITE, 0x6438, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SG_FREE", _IOC_WRITE, 0x6439, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SWITCH_CTX", _IOC_WRITE, 0x6424, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UNBLOCK", _IOC_READ|_IOC_WRITE, 0x6413, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_UNLOCK", _IOC_WRITE, 0x642b, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UPDATE_DRAW", _IOC_WRITE, 0x643f, 0x14 },
+{ "drm/drm.h", "DRM_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x6400, 0x24 },
+{ "drm/drm.h", "DRM_IOCTL_WAIT_VBLANK", _IOC_READ|_IOC_WRITE, 0x643a, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_EXEC", _IOC_READ|_IOC_WRITE, 0x6462, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_GET_VER", _IOC_READ|_IOC_WRITE, 0x6460, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_SET_CMDLIST", _IOC_READ|_IOC_WRITE, 0x6461, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_GET", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_CMD_CTRL", _IOC_READ|_IOC_WRITE, 0x6473, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_GET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6470, 0x50 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_QUEUE_BUF", _IOC_READ|_IOC_WRITE, 0x6472, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_SET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6471, 0x60 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_VIDI_CONNECTION", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_CLEAR", _IOC_WRITE, 0x6442, 0x0c },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_COPY", _IOC_WRITE, 0x6447, 0x0c },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_DOCOPY", _IOC_NONE, 0x6448, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLIP", _IOC_NONE, 0x644e, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLUSH", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FSTATUS", _IOC_NONE, 0x644a, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETAGE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETBUF", _IOC_READ|_IOC_WRITE, 0x6445, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_INIT", _IOC_WRITE, 0x6440, 0x40 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_MC", _IOC_WRITE, 0x644c, 0x14 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0FLIP", _IOC_NONE, 0x644b, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0INFO", _IOC_READ, 0x6449, 0x08 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_RSTATUS", _IOC_NONE, 0x644d, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_SWAP", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_VERTEX", _IOC_WRITE, 0x6441, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_ALLOC", _IOC_READ|_IOC_WRITE, 0x6448, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_BATCHBUFFER", _IOC_WRITE, 0x6443, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_CMDBUFFER", _IOC_WRITE, 0x644b, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_DESTROY_HEAP", _IOC_WRITE, 0x644c, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLIP", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLUSH", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FREE", _IOC_WRITE, 0x6449, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x6457, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_CREATE", _IOC_READ|_IOC_WRITE, 0x646d, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY", _IOC_WRITE, 0x646e, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645b, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_ENTERVT", _IOC_NONE, 0x6459, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER", _IOC_WRITE, 0x6454, 0x28 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER2", _IOC_WRITE, 0x6469, 0x40 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_APERTURE", _IOC_READ, 0x6463, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_CACHING", _IOC_READ|_IOC_WRITE, 0x6470, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6462, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_INIT", _IOC_WRITE, 0x6453, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_LEAVEVT", _IOC_NONE, 0x645a, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MADVISE", _IOC_READ|_IOC_WRITE, 0x6466, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP_GTT", _IOC_READ|_IOC_WRITE, 0x6464, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PIN", _IOC_READ|_IOC_WRITE, 0x6455, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PREAD", _IOC_WRITE, 0x645c, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PWRITE", _IOC_WRITE, 0x645d, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_CACHING", _IOC_WRITE, 0x646f, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_DOMAIN", _IOC_WRITE, 0x645f, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6461, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SW_FINISH", _IOC_WRITE, 0x6460, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_THROTTLE", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_UNPIN", _IOC_WRITE, 0x6456, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x6473, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_WAIT", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6446, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID", _IOC_READ|_IOC_WRITE, 0x6465, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_RESET_STATS", _IOC_READ|_IOC_WRITE, 0x6472, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_VBLANK_PIPE", _IOC_READ, 0x644e, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_HWS_ADDR", _IOC_WRITE, 0x6451, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT", _IOC_WRITE, 0x6440, 0x44 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT_HEAP", _IOC_WRITE, 0x644a, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_WAIT", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_ATTRS", _IOC_READ|_IOC_WRITE, 0x6468, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE", _IOC_WRITE, 0x6467, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_REG_READ", _IOC_READ|_IOC_WRITE, 0x6471, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SETPARAM", _IOC_WRITE, 0x6447, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_VBLANK_PIPE", _IOC_WRITE, 0x644d, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_VBLANK_SWAP", _IOC_READ|_IOC_WRITE, 0x644f, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_BLIT", _IOC_WRITE, 0x6448, 0x34 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_CLEAR", _IOC_WRITE, 0x6444, 0x14 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_DMA_BOOTSTRAP", _IOC_READ|_IOC_WRITE, 0x644c, 0x1c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_FLUSH", _IOC_WRITE, 0x6441, 0x08 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6449, 0x08 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_ILOAD", _IOC_WRITE, 0x6447, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INDICES", _IOC_WRITE, 0x6446, 0x10 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INIT", _IOC_WRITE, 0x6440, 0x5c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_RESET", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SET_FENCE", _IOC_WRITE, 0x644a, 0x04 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SWAP", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_VERTEX", _IOC_WRITE, 0x6445, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_WAIT_FENCE", _IOC_READ|_IOC_WRITE, 0x644b, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x18 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6442, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6446, 0x20 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_WAIT_FENCE", _IOC_WRITE, 0x6447, 0x18 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_FINI", _IOC_WRITE, 0x6483, 0x04 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_PREP", _IOC_WRITE, 0x6482, 0x08 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6484, 0x28 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6480, 0x30 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_PUSHBUF", _IOC_READ|_IOC_WRITE, 0x6481, 0x40 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x08 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_SET_PARAM", _IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC", _IOC_READ|_IOC_WRITE, 0x6440, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC_SURF", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_CLIENTCAP", _IOC_WRITE, 0x6445, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_EXECBUFFER", _IOC_WRITE, 0x6442, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_MAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_UPDATE_AREA", _IOC_WRITE, 0x6443, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_BLIT", _IOC_WRITE, 0x644b, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CLEAR", _IOC_WRITE, 0x6448, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_DEPTH", _IOC_WRITE, 0x644c, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FLIP", _IOC_NONE, 0x6453, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FULLSCREEN", _IOC_WRITE, 0x6450, 0x04 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6452, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644f, 0x10 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INIT", _IOC_WRITE, 0x6440, 0x58 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_RESET", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_STIPPLE", _IOC_WRITE, 0x644d, 0x04 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_ALLOC", _IOC_READ|_IOC_WRITE, 0x6453, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CLEAR", _IOC_WRITE, 0x6448, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CMDBUF", _IOC_WRITE, 0x6450, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_INIT", _IOC_WRITE, 0x6440, 0x54 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESUME", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CS", _IOC_READ|_IOC_WRITE, 0x6466, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FLIP", _IOC_NONE, 0x6452, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FREE", _IOC_WRITE, 0x6454, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FULLSCREEN", _IOC_WRITE, 0x6446, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x646a, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645d, 0x1c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6469, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x645c, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_OP", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PREAD", _IOC_READ|_IOC_WRITE, 0x6461, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PWRITE", _IOC_READ|_IOC_WRITE, 0x6462, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_DOMAIN", _IOC_READ|_IOC_WRITE, 0x6463, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6468, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x646d, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_VA", _IOC_READ|_IOC_WRITE, 0x646b, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_WAIT_IDLE", _IOC_WRITE, 0x6464, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6451, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644d, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INFO", _IOC_READ|_IOC_WRITE, 0x6467, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INIT_HEAP", _IOC_WRITE, 0x6455, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6456, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_WAIT", _IOC_WRITE, 0x6457, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_RESET", _IOC_NONE, 0x6445, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SETPARAM", _IOC_WRITE, 0x6459, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_STIPPLE", _IOC_WRITE, 0x644c, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_ALLOC", _IOC_WRITE, 0x645a, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_FREE", _IOC_WRITE, 0x645b, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_TEXTURE", _IOC_READ|_IOC_WRITE, 0x644e, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX2", _IOC_WRITE, 0x644f, 0x18 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_CMDBUF", _IOC_WRITE, 0x6441, 0x24 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_EMIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_WAIT", _IOC_WRITE, 0x6443, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_INIT", _IOC_WRITE, 0x6440, 0x50 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6454, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_FREE", _IOC_WRITE, 0x6455, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6453, 0x08 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_ALLOC", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_FREE", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_INIT", _IOC_WRITE, 0x6456, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_CLOSE_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6446, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644d, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x644b, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644c, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x644a, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT_BASE", _IOC_READ|_IOC_WRITE, 0x6449, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_OPEN_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6445, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6448, 0x58 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_INCR", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_READ", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_WAIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_ALLOCMEM", _IOC_READ|_IOC_WRITE, 0x6440, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_BLIT_SYNC", _IOC_WRITE, 0x644f, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUFFER", _IOC_WRITE, 0x6448, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUF_SIZE", _IOC_READ|_IOC_WRITE, 0x644b, 0x0c },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DEC_FUTEX", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_BLIT", _IOC_WRITE, 0x644e, 0x28 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_INIT", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FB_INIT", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FLUSH", _IOC_NONE, 0x6449, 0x00 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FREEMEM", _IOC_WRITE, 0x6441, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_MAP_INIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_PCICMD", _IOC_WRITE, 0x644a, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_WAIT_IRQ", _IOC_READ|_IOC_WRITE, 0x644d, 0x10 },
+{ "linux/agpgart.h", "AGPIOC_ACQUIRE", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x4106, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_BIND", _IOC_WRITE, 0x4108, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_CHIPSET_FLUSH", _IOC_NONE, 0x410a, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_DEALLOCATE", _IOC_WRITE, 0x4107, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_INFO", _IOC_READ, 0x4100, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_PROTECT", _IOC_WRITE, 0x4105, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_RELEASE", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_RESERVE", _IOC_WRITE, 0x4104, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_SETUP", _IOC_WRITE, 0x4103, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_UNBIND", _IOC_WRITE, 0x4109, 0x04 },
+{ "linux/android/binder.h", "BC_ACQUIRE", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/android/binder.h", "BC_ACQUIRE_DONE", _IOC_WRITE, 0x6309, 0x10 },
+{ "linux/android/binder.h", "BC_ACQUIRE_RESULT", _IOC_WRITE, 0x6302, 0x04 },
+{ "linux/android/binder.h", "BC_ATTEMPT_ACQUIRE", _IOC_WRITE, 0x630a, 0x08 },
+{ "linux/android/binder.h", "BC_CLEAR_DEATH_NOTIFICATION", _IOC_WRITE, 0x630f, 0x0c },
+{ "linux/android/binder.h", "BC_DEAD_BINDER_DONE", _IOC_WRITE, 0x6310, 0x08 },
+{ "linux/android/binder.h", "BC_DECREFS", _IOC_WRITE, 0x6307, 0x04 },
+{ "linux/android/binder.h", "BC_ENTER_LOOPER", _IOC_NONE, 0x630c, 0x00 },
+{ "linux/android/binder.h", "BC_EXIT_LOOPER", _IOC_NONE, 0x630d, 0x00 },
+{ "linux/android/binder.h", "BC_FREE_BUFFER", _IOC_WRITE, 0x6303, 0x08 },
+{ "linux/android/binder.h", "BC_INCREFS", _IOC_WRITE, 0x6304, 0x04 },
+{ "linux/android/binder.h", "BC_INCREFS_DONE", _IOC_WRITE, 0x6308, 0x10 },
+{ "linux/android/binder.h", "BC_REGISTER_LOOPER", _IOC_NONE, 0x630b, 0x00 },
+{ "linux/android/binder.h", "BC_RELEASE", _IOC_WRITE, 0x6306, 0x04 },
+{ "linux/android/binder.h", "BC_REPLY", _IOC_WRITE, 0x6301, 0x40 },
+{ "linux/android/binder.h", "BC_REQUEST_DEATH_NOTIFICATION", _IOC_WRITE, 0x630e, 0x0c },
+{ "linux/android/binder.h", "BC_TRANSACTION", _IOC_WRITE, 0x6300, 0x40 },
+{ "linux/android/binder.h", "BINDER_SET_CONTEXT_MGR", _IOC_WRITE, 0x6207, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_PRIORITY", _IOC_WRITE, 0x6206, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_TIMEOUT", _IOC_WRITE, 0x6203, 0x08 },
+{ "linux/android/binder.h", "BINDER_SET_MAX_THREADS", _IOC_WRITE, 0x6205, 0x04 },
+{ "linux/android/binder.h", "BINDER_THREAD_EXIT", _IOC_WRITE, 0x6208, 0x04 },
+{ "linux/android/binder.h", "BINDER_VERSION", _IOC_READ|_IOC_WRITE, 0x6209, 0x04 },
+{ "linux/android/binder.h", "BINDER_WRITE_READ", _IOC_READ|_IOC_WRITE, 0x6201, 0x30 },
+{ "linux/android/binder.h", "BR_ACQUIRE", _IOC_READ, 0x7208, 0x10 },
+{ "linux/android/binder.h", "BR_ACQUIRE_RESULT", _IOC_READ, 0x7204, 0x04 },
+{ "linux/android/binder.h", "BR_ATTEMPT_ACQUIRE", _IOC_READ, 0x720b, 0x14 },
+{ "linux/android/binder.h", "BR_CLEAR_DEATH_NOTIFICATION_DONE", _IOC_READ, 0x7210, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_BINDER", _IOC_READ, 0x720f, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_REPLY", _IOC_NONE, 0x7205, 0x00 },
+{ "linux/android/binder.h", "BR_DECREFS", _IOC_READ, 0x720a, 0x10 },
+{ "linux/android/binder.h", "BR_ERROR", _IOC_READ, 0x7200, 0x04 },
+{ "linux/android/binder.h", "BR_FAILED_REPLY", _IOC_NONE, 0x7211, 0x00 },
+{ "linux/android/binder.h", "BR_FINISHED", _IOC_NONE, 0x720e, 0x00 },
+{ "linux/android/binder.h", "BR_INCREFS", _IOC_READ, 0x7207, 0x10 },
+{ "linux/android/binder.h", "BR_NOOP", _IOC_NONE, 0x720c, 0x00 },
+{ "linux/android/binder.h", "BR_OK", _IOC_NONE, 0x7201, 0x00 },
+{ "linux/android/binder.h", "BR_RELEASE", _IOC_READ, 0x7209, 0x10 },
+{ "linux/android/binder.h", "BR_REPLY", _IOC_READ, 0x7203, 0x40 },
+{ "linux/android/binder.h", "BR_SPAWN_LOOPER", _IOC_NONE, 0x720d, 0x00 },
+{ "linux/android/binder.h", "BR_TRANSACTION", _IOC_READ, 0x7202, 0x40 },
+{ "linux/android/binder.h", "BR_TRANSACTION_COMPLETE", _IOC_NONE, 0x7206, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_STANDBY", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_SUSPEND", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/arcfb.h", "FBIO_GETCONTROL2", _IOC_READ, 0x4689, 0x04 },
+{ "linux/arcfb.h", "FBIO_WAITEVENT", _IOC_NONE, 0x4688, 0x00 },
+{ "linux/atm_eni.h", "ENI_MEMDUMP", _IOC_WRITE, 0x6160, 0x0c },
+{ "linux/atm_eni.h", "ENI_SETMULT", _IOC_WRITE, 0x6167, 0x0c },
+{ "linux/atm_he.h", "HE_GET_REG", _IOC_WRITE, 0x6160, 0x0c },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTAT", _IOC_WRITE, 0x6132, 0x0c },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTATZ", _IOC_WRITE, 0x6133, 0x0c },
+{ "linux/atm_nicstar.h", "NS_ADJBUFLEV", _IOC_NONE, 0x6163, 0x00 },
+{ "linux/atm_nicstar.h", "NS_GETPSTAT", _IOC_READ|_IOC_WRITE, 0x6161, 0x0c },
+{ "linux/atm_nicstar.h", "NS_SETBUFLEV", _IOC_WRITE, 0x6162, 0x0c },
+{ "linux/atm_tcp.h", "ATMTCP_CREATE", _IOC_NONE, 0x618e, 0x00 },
+{ "linux/atm_tcp.h", "ATMTCP_REMOVE", _IOC_NONE, 0x618f, 0x00 },
+{ "linux/atm_tcp.h", "SIOCSIFATMTCP", _IOC_NONE, 0x6180, 0x00 },
+{ "linux/atm_zatm.h", "ZATM_GETPOOL", _IOC_WRITE, 0x6161, 0x0c },
+{ "linux/atm_zatm.h", "ZATM_GETPOOLZ", _IOC_WRITE, 0x6162, 0x0c },
+{ "linux/atm_zatm.h", "ZATM_SETPOOL", _IOC_WRITE, 0x6163, 0x0c },
+{ "linux/atmarp.h", "ATMARPD_CTRL", _IOC_NONE, 0x61e1, 0x00 },
+{ "linux/atmarp.h", "ATMARP_ENCAP", _IOC_NONE, 0x61e5, 0x00 },
+{ "linux/atmarp.h", "ATMARP_MKIP", _IOC_NONE, 0x61e2, 0x00 },
+{ "linux/atmarp.h", "ATMARP_SETENTRY", _IOC_NONE, 0x61e3, 0x00 },
+{ "linux/atmbr2684.h", "BR2684_SETFILT", _IOC_WRITE, 0x6190, 0x1c },
+{ "linux/atmclip.h", "SIOCMKCLIP", _IOC_NONE, 0x61e0, 0x00 },
+{ "linux/atmdev.h", "ATM_ADDADDR", _IOC_WRITE, 0x6188, 0x0c },
+{ "linux/atmdev.h", "ATM_ADDLECSADDR", _IOC_WRITE, 0x618e, 0x0c },
+{ "linux/atmdev.h", "ATM_ADDPARTY", _IOC_WRITE, 0x61f4, 0x08 },
+{ "linux/atmdev.h", "ATM_DELADDR", _IOC_WRITE, 0x6189, 0x0c },
+{ "linux/atmdev.h", "ATM_DELLECSADDR", _IOC_WRITE, 0x618f, 0x0c },
+{ "linux/atmdev.h", "ATM_DROPPARTY", _IOC_WRITE, 0x61f5, 0x04 },
+{ "linux/atmdev.h", "ATM_GETADDR", _IOC_WRITE, 0x6186, 0x0c },
+{ "linux/atmdev.h", "ATM_GETCIRANGE", _IOC_WRITE, 0x618a, 0x0c },
+{ "linux/atmdev.h", "ATM_GETESI", _IOC_WRITE, 0x6185, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLECSADDR", _IOC_WRITE, 0x6190, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLINKRATE", _IOC_WRITE, 0x6181, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLOOP", _IOC_WRITE, 0x6152, 0x0c },
+{ "linux/atmdev.h", "ATM_GETNAMES", _IOC_WRITE, 0x6183, 0x08 },
+{ "linux/atmdev.h", "ATM_GETSTAT", _IOC_WRITE, 0x6150, 0x0c },
+{ "linux/atmdev.h", "ATM_GETSTATZ", _IOC_WRITE, 0x6151, 0x0c },
+{ "linux/atmdev.h", "ATM_GETTYPE", _IOC_WRITE, 0x6184, 0x0c },
+{ "linux/atmdev.h", "ATM_NEWBACKENDIF", _IOC_WRITE, 0x61f3, 0x02 },
+{ "linux/atmdev.h", "ATM_QUERYLOOP", _IOC_WRITE, 0x6154, 0x0c },
+{ "linux/atmdev.h", "ATM_RSTADDR", _IOC_WRITE, 0x6187, 0x0c },
+{ "linux/atmdev.h", "ATM_SETBACKEND", _IOC_WRITE, 0x61f2, 0x02 },
+{ "linux/atmdev.h", "ATM_SETCIRANGE", _IOC_WRITE, 0x618b, 0x0c },
+{ "linux/atmdev.h", "ATM_SETESI", _IOC_WRITE, 0x618c, 0x0c },
+{ "linux/atmdev.h", "ATM_SETESIF", _IOC_WRITE, 0x618d, 0x0c },
+{ "linux/atmdev.h", "ATM_SETLOOP", _IOC_WRITE, 0x6153, 0x0c },
+{ "linux/atmdev.h", "ATM_SETSC", _IOC_WRITE, 0x61f1, 0x04 },
+{ "linux/atmlec.h", "ATMLEC_CTRL", _IOC_NONE, 0x61d0, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_DATA", _IOC_NONE, 0x61d1, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_MCAST", _IOC_NONE, 0x61d2, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_CTRL", _IOC_NONE, 0x61d8, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_DATA", _IOC_NONE, 0x61d9, 0x00 },
+{ "linux/atmsvc.h", "ATMSIGD_CTRL", _IOC_NONE, 0x61f0, 0x00 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ASKUMOUNT", _IOC_READ|_IOC_WRITE, 0x937d, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CATATONIC", _IOC_READ|_IOC_WRITE, 0x9379, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CLOSEMOUNT", _IOC_READ|_IOC_WRITE, 0x9375, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_EXPIRE", _IOC_READ|_IOC_WRITE, 0x937c, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_FAIL", _IOC_READ|_IOC_WRITE, 0x9377, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ISMOUNTPOINT", _IOC_READ|_IOC_WRITE, 0x937e, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_OPENMOUNT", _IOC_READ|_IOC_WRITE, 0x9374, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOSUBVER", _IOC_READ|_IOC_WRITE, 0x9373, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOVER", _IOC_READ|_IOC_WRITE, 0x9372, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_READY", _IOC_READ|_IOC_WRITE, 0x9376, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_REQUESTER", _IOC_READ|_IOC_WRITE, 0x937b, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_SETPIPEFD", _IOC_READ|_IOC_WRITE, 0x9378, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_TIMEOUT", _IOC_READ|_IOC_WRITE, 0x937a, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x9371, 0x18 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_CATATONIC", _IOC_NONE, 0x9362, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_EXPIRE", _IOC_READ, 0x9365, 0x10c },
+{ "linux/auto_fs.h", "AUTOFS_IOC_FAIL", _IOC_NONE, 0x9361, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_PROTOVER", _IOC_READ, 0x9363, 0x04 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_READY", _IOC_NONE, 0x9360, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x9364, 0x04 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT32", _IOC_READ|_IOC_WRITE, 0x9364, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_ASKUMOUNT", _IOC_READ, 0x9370, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_EXPIRE_MULTI", _IOC_WRITE, 0x9366, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_PROTOSUBVER", _IOC_READ, 0x9367, 0x04 },
+{ "linux/blkpg.h", "BLKPG", _IOC_NONE, 0x1269, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_ADD_DEV", _IOC_WRITE, 0x940a, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE", _IOC_WRITE, 0x940c, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_CTL", _IOC_WRITE, 0x9421, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_PROGRESS", _IOC_READ, 0x9422, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_V2", _IOC_READ|_IOC_WRITE, 0x9420, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE", _IOC_WRITE, 0x9409, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE_RANGE", _IOC_WRITE, 0x940d, 0x20 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFAULT_SUBVOL", _IOC_WRITE, 0x9413, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG", _IOC_WRITE, 0x9402, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG_RANGE", _IOC_WRITE, 0x9410, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEVICES_READY", _IOC_READ, 0x9427, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_INFO", _IOC_READ|_IOC_WRITE, 0x941e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_REPLACE", _IOC_READ|_IOC_WRITE, 0x9435, 0xa24 },
+{ "linux/btrfs.h", "BTRFS_IOC_FILE_EXTENT_SAME", _IOC_READ|_IOC_WRITE, 0x9436, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_FS_INFO", _IOC_READ, 0x941f, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_DEV_STATS", _IOC_READ|_IOC_WRITE, 0x9434, 0x408 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FEATURES", _IOC_READ, 0x9439, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FSLABEL", _IOC_READ, 0x9431, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_SUPPORTED_FEATURES", _IOC_READ, 0x9439, 0x48 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_LOOKUP", _IOC_READ|_IOC_WRITE, 0x9412, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_PATHS", _IOC_READ|_IOC_WRITE, 0x9423, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_LOGICAL_INO", _IOC_READ|_IOC_WRITE, 0x9424, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_ASSIGN", _IOC_WRITE, 0x9429, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_CREATE", _IOC_WRITE, 0x942a, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_LIMIT", _IOC_READ, 0x942b, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_CTL", _IOC_READ|_IOC_WRITE, 0x9428, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN", _IOC_WRITE, 0x942c, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_STATUS", _IOC_READ, 0x942d, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_WAIT", _IOC_NONE, 0x942e, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_RESIZE", _IOC_WRITE, 0x9403, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_RM_DEV", _IOC_WRITE, 0x940b, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCAN_DEV", _IOC_WRITE, 0x9404, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB", _IOC_READ|_IOC_WRITE, 0x941b, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_CANCEL", _IOC_NONE, 0x941c, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_PROGRESS", _IOC_READ|_IOC_WRITE, 0x941d, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SEND", _IOC_WRITE, 0x9426, 0x44 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FEATURES", _IOC_WRITE, 0x9439, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FSLABEL", _IOC_WRITE, 0x9432, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_RECEIVED_SUBVOL", _IOC_READ|_IOC_WRITE, 0x9425, 0xc0 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE", _IOC_WRITE, 0x9401, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE_V2", _IOC_WRITE, 0x9417, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_DESTROY", _IOC_WRITE, 0x940f, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SPACE_INFO", _IOC_READ|_IOC_WRITE, 0x9414, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_START_SYNC", _IOC_READ, 0x9418, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE", _IOC_WRITE, 0x940e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE_V2", _IOC_WRITE, 0x9418, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_GETFLAGS", _IOC_READ, 0x9419, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_SETFLAGS", _IOC_WRITE, 0x941a, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SYNC", _IOC_NONE, 0x9408, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_END", _IOC_NONE, 0x9407, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_START", _IOC_NONE, 0x9406, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH", _IOC_READ|_IOC_WRITE, 0x9411, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH_V2", _IOC_READ|_IOC_WRITE, 0x9411, 0x70 },
+{ "linux/btrfs.h", "BTRFS_IOC_WAIT_SYNC", _IOC_WRITE, 0x9416, 0x08 },
+{ "linux/capi.h", "CAPI_CLR_FLAGS", _IOC_READ, 0x4325, 0x04 },
+{ "linux/capi.h", "CAPI_GET_ERRCODE", _IOC_READ, 0x4321, 0x02 },
+{ "linux/capi.h", "CAPI_GET_FLAGS", _IOC_READ, 0x4323, 0x04 },
+{ "linux/capi.h", "CAPI_GET_MANUFACTURER", _IOC_READ|_IOC_WRITE, 0x4306, 0x04 },
+{ "linux/capi.h", "CAPI_GET_PROFILE", _IOC_READ|_IOC_WRITE, 0x4309, 0x40 },
+{ "linux/capi.h", "CAPI_GET_SERIAL", _IOC_READ|_IOC_WRITE, 0x4308, 0x04 },
+{ "linux/capi.h", "CAPI_GET_VERSION", _IOC_READ|_IOC_WRITE, 0x4307, 0x10 },
+{ "linux/capi.h", "CAPI_INSTALLED", _IOC_READ, 0x4322, 0x02 },
+{ "linux/capi.h", "CAPI_MANUFACTURER_CMD", _IOC_READ|_IOC_WRITE, 0x4320, 0x08 },
+{ "linux/capi.h", "CAPI_NCCI_GETUNIT", _IOC_READ, 0x4327, 0x04 },
+{ "linux/capi.h", "CAPI_NCCI_OPENCOUNT", _IOC_READ, 0x4326, 0x04 },
+{ "linux/capi.h", "CAPI_REGISTER", _IOC_WRITE, 0x4301, 0x0c },
+{ "linux/capi.h", "CAPI_SET_FLAGS", _IOC_READ, 0x4324, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_BIG_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x4212, 0x58 },
+{ "linux/cciss_ioctl.h", "CCISS_DEREGDISK", _IOC_NONE, 0x420c, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_GETBUSTYPES", _IOC_READ, 0x4207, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETDRIVVER", _IOC_READ, 0x4209, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETFIRMVER", _IOC_READ, 0x4208, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETHEARTBEAT", _IOC_READ, 0x4206, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETINTINFO", _IOC_READ, 0x4202, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_GETLUNINFO", _IOC_READ, 0x4211, 0x0c },
+{ "linux/cciss_ioctl.h", "CCISS_GETNODENAME", _IOC_READ, 0x4204, 0x10 },
+{ "linux/cciss_ioctl.h", "CCISS_GETPCIINFO", _IOC_READ, 0x4201, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x420b, 0x54 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWD", _IOC_NONE, 0x420e, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWDISK", _IOC_WRITE, 0x420d, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_RESCANDISK", _IOC_NONE, 0x4210, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REVALIDVOLS", _IOC_NONE, 0x420a, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_SETINTINFO", _IOC_WRITE, 0x4203, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_SETNODENAME", _IOC_WRITE, 0x4205, 0x10 },
+{ "linux/cdrom.h", "CDROMAUDIOBUFSIZ", 0, 0x5382, 0 },
+{ "linux/cdrom.h", "CDROMCLOSETRAY", 0, 0x5319, 0 },
+{ "linux/cdrom.h", "CDROMEJECT", 0, 0x5309, 0 },
+{ "linux/cdrom.h", "CDROMEJECT_SW", 0, 0x530f, 0 },
+{ "linux/cdrom.h", "CDROMGETSPINDOWN", 0, 0x531d, 0 },
+{ "linux/cdrom.h", "CDROMMULTISESSION", 0, 0x5310, 0 },
+{ "linux/cdrom.h", "CDROMPAUSE", 0, 0x5301, 0 },
+{ "linux/cdrom.h", "CDROMPLAYBLK", 0, 0x5317, 0 },
+{ "linux/cdrom.h", "CDROMPLAYMSF", 0, 0x5303, 0 },
+{ "linux/cdrom.h", "CDROMPLAYTRKIND", 0, 0x5304, 0 },
+{ "linux/cdrom.h", "CDROMREADALL", 0, 0x5318, 0 },
+{ "linux/cdrom.h", "CDROMREADAUDIO", 0, 0x530e, 0 },
+{ "linux/cdrom.h", "CDROMREADCOOKED", 0, 0x5315, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE1", 0, 0x530d, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE2", 0, 0x530c, 0 },
+{ "linux/cdrom.h", "CDROMREADRAW", 0, 0x5314, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCENTRY", 0, 0x5306, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCHDR", 0, 0x5305, 0 },
+{ "linux/cdrom.h", "CDROMRESET", 0, 0x5312, 0 },
+{ "linux/cdrom.h", "CDROMRESUME", 0, 0x5302, 0 },
+{ "linux/cdrom.h", "CDROMSEEK", 0, 0x5316, 0 },
+{ "linux/cdrom.h", "CDROMSETSPINDOWN", 0, 0x531e, 0 },
+{ "linux/cdrom.h", "CDROMSTART", 0, 0x5308, 0 },
+{ "linux/cdrom.h", "CDROMSTOP", 0, 0x5307, 0 },
+{ "linux/cdrom.h", "CDROMSUBCHNL", 0, 0x530b, 0 },
+{ "linux/cdrom.h", "CDROMVOLCTRL", 0, 0x530a, 0 },
+{ "linux/cdrom.h", "CDROMVOLREAD", 0, 0x5313, 0 },
+{ "linux/cdrom.h", "CDROM_CHANGER_NSLOTS", 0, 0x5328, 0 },
+{ "linux/cdrom.h", "CDROM_CLEAR_OPTIONS", 0, 0x5321, 0 },
+{ "linux/cdrom.h", "CDROM_DEBUG", 0, 0x5330, 0 },
+{ "linux/cdrom.h", "CDROM_DISC_STATUS", 0, 0x5327, 0 },
+{ "linux/cdrom.h", "CDROM_DRIVE_STATUS", 0, 0x5326, 0 },
+{ "linux/cdrom.h", "CDROM_GET_CAPABILITY", 0, 0x5331, 0 },
+{ "linux/cdrom.h", "CDROM_GET_MCN", 0, 0x5311, 0 },
+{ "linux/cdrom.h", "CDROM_LAST_WRITTEN", 0, 0x5395, 0 },
+{ "linux/cdrom.h", "CDROM_LOCKDOOR", 0, 0x5329, 0 },
+{ "linux/cdrom.h", "CDROM_MEDIA_CHANGED", 0, 0x5325, 0 },
+{ "linux/cdrom.h", "CDROM_NEXT_WRITABLE", 0, 0x5394, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_DISC", 0, 0x5323, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_SPEED", 0, 0x5322, 0 },
+{ "linux/cdrom.h", "CDROM_SEND_PACKET", 0, 0x5393, 0 },
+{ "linux/cdrom.h", "CDROM_SET_OPTIONS", 0, 0x5320, 0 },
+{ "linux/cdrom.h", "DVD_AUTH", 0, 0x5392, 0 },
+{ "linux/cdrom.h", "DVD_READ_STRUCT", 0, 0x5390, 0 },
+{ "linux/cdrom.h", "DVD_WRITE_STRUCT", 0, 0x5391, 0 },
+{ "linux/chio.h", "CHIOEXCHANGE", _IOC_WRITE, 0x6302, 0x1c },
+{ "linux/chio.h", "CHIOGELEM", _IOC_WRITE, 0x6310, 0x6c },
+{ "linux/chio.h", "CHIOGPARAMS", _IOC_READ, 0x6306, 0x14 },
+{ "linux/chio.h", "CHIOGPICKER", _IOC_READ, 0x6304, 0x04 },
+{ "linux/chio.h", "CHIOGSTATUS", _IOC_WRITE, 0x6308, 0x08 },
+{ "linux/chio.h", "CHIOGVPARAMS", _IOC_READ, 0x6313, 0x70 },
+{ "linux/chio.h", "CHIOINITELEM", _IOC_NONE, 0x6311, 0x00 },
+{ "linux/chio.h", "CHIOMOVE", _IOC_WRITE, 0x6301, 0x14 },
+{ "linux/chio.h", "CHIOPOSITION", _IOC_WRITE, 0x6303, 0x0c },
+{ "linux/chio.h", "CHIOSPICKER", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/chio.h", "CHIOSVOLTAG", _IOC_WRITE, 0x6312, 0x30 },
+{ "linux/cm4000_cs.h", "CM_IOCARDOFF", _IOC_NONE, 0x6304, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOCGATR", _IOC_READ|_IOC_WRITE, 0x6301, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCGSTATUS", _IOC_READ, 0x6300, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCSPTS", _IOC_WRITE, 0x6302, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCSRDR", _IOC_NONE, 0x6303, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOSDBGLVL", _IOC_WRITE, 0x63fa, 0x04 },
+{ "linux/coda.h", "CIOC_KERNEL_VERSION", _IOC_READ|_IOC_WRITE, 0x630a, 0x04 },
+{ "linux/dm-ioctl.h", "DM_DEV_CREATE", _IOC_READ|_IOC_WRITE, 0xfd03, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_REMOVE", _IOC_READ|_IOC_WRITE, 0xfd04, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_RENAME", _IOC_READ|_IOC_WRITE, 0xfd05, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SET_GEOMETRY", _IOC_READ|_IOC_WRITE, 0xfd0f, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_STATUS", _IOC_READ|_IOC_WRITE, 0xfd07, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SUSPEND", _IOC_READ|_IOC_WRITE, 0xfd06, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_WAIT", _IOC_READ|_IOC_WRITE, 0xfd08, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_DEVICES", _IOC_READ|_IOC_WRITE, 0xfd02, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_VERSIONS", _IOC_READ|_IOC_WRITE, 0xfd0d, 0x138 },
+{ "linux/dm-ioctl.h", "DM_REMOVE_ALL", _IOC_READ|_IOC_WRITE, 0xfd01, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_CLEAR", _IOC_READ|_IOC_WRITE, 0xfd0a, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_DEPS", _IOC_READ|_IOC_WRITE, 0xfd0b, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_LOAD", _IOC_READ|_IOC_WRITE, 0xfd09, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_STATUS", _IOC_READ|_IOC_WRITE, 0xfd0c, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TARGET_MSG", _IOC_READ|_IOC_WRITE, 0xfd0e, 0x138 },
+{ "linux/dm-ioctl.h", "DM_VERSION", _IOC_READ|_IOC_WRITE, 0xfd00, 0x138 },
+{ "linux/dn.h", "OSIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "OSIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dn.h", "SIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "SIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_BILINGUAL_CHANNEL_SELECT", _IOC_NONE, 0x6f14, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CHANNEL_SELECT", _IOC_NONE, 0x6f09, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CLEAR_BUFFER", _IOC_NONE, 0x6f0c, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CONTINUE", _IOC_NONE, 0x6f04, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_GET_CAPABILITIES", _IOC_READ, 0x6f0b, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_GET_PTS", _IOC_READ, 0x6f13, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_GET_STATUS", _IOC_READ, 0x6f0a, 0x20 },
+{ "linux/dvb/audio.h", "AUDIO_PAUSE", _IOC_NONE, 0x6f03, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_PLAY", _IOC_NONE, 0x6f02, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SELECT_SOURCE", _IOC_NONE, 0x6f05, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ATTRIBUTES", _IOC_WRITE, 0x6f11, 0x02 },
+{ "linux/dvb/audio.h", "AUDIO_SET_AV_SYNC", _IOC_NONE, 0x6f07, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_BYPASS_MODE", _IOC_NONE, 0x6f08, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_EXT_ID", _IOC_NONE, 0x6f10, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ID", _IOC_NONE, 0x6f0d, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_KARAOKE", _IOC_WRITE, 0x6f12, 0x0c },
+{ "linux/dvb/audio.h", "AUDIO_SET_MIXER", _IOC_WRITE, 0x6f0e, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_SET_MUTE", _IOC_NONE, 0x6f06, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_STREAMTYPE", _IOC_NONE, 0x6f0f, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_STOP", _IOC_NONE, 0x6f01, 0x00 },
+{ "linux/dvb/ca.h", "CA_GET_CAP", _IOC_READ, 0x6f81, 0x10 },
+{ "linux/dvb/ca.h", "CA_GET_DESCR_INFO", _IOC_READ, 0x6f83, 0x08 },
+{ "linux/dvb/ca.h", "CA_GET_MSG", _IOC_READ, 0x6f84, 0x10c },
+{ "linux/dvb/ca.h", "CA_GET_SLOT_INFO", _IOC_READ, 0x6f82, 0x0c },
+{ "linux/dvb/ca.h", "CA_RESET", _IOC_NONE, 0x6f80, 0x00 },
+{ "linux/dvb/ca.h", "CA_SEND_MSG", _IOC_WRITE, 0x6f85, 0x10c },
+{ "linux/dvb/ca.h", "CA_SET_DESCR", _IOC_WRITE, 0x6f86, 0x10 },
+{ "linux/dvb/ca.h", "CA_SET_PID", _IOC_WRITE, 0x6f87, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_ADD_PID", _IOC_WRITE, 0x6f33, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_GET_CAPS", _IOC_READ, 0x6f30, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_GET_PES_PIDS", _IOC_READ, 0x6f2f, 0x0a },
+{ "linux/dvb/dmx.h", "DMX_GET_STC", _IOC_READ|_IOC_WRITE, 0x6f32, 0x10 },
+{ "linux/dvb/dmx.h", "DMX_REMOVE_PID", _IOC_WRITE, 0x6f34, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_SET_BUFFER_SIZE", _IOC_NONE, 0x6f2d, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_SET_FILTER", _IOC_WRITE, 0x6f2b, 0x3c },
+{ "linux/dvb/dmx.h", "DMX_SET_PES_FILTER", _IOC_WRITE, 0x6f2c, 0x14 },
+{ "linux/dvb/dmx.h", "DMX_SET_SOURCE", _IOC_WRITE, 0x6f31, 0x04 },
+{ "linux/dvb/dmx.h", "DMX_START", _IOC_NONE, 0x6f29, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_STOP", _IOC_NONE, 0x6f2a, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RECV_SLAVE_REPLY", _IOC_READ, 0x6f40, 0x0c },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RESET_OVERLOAD", _IOC_NONE, 0x6f3e, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_BURST", _IOC_NONE, 0x6f41, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_MASTER_CMD", _IOC_WRITE, 0x6f3f, 0x07 },
+{ "linux/dvb/frontend.h", "FE_DISHNETWORK_SEND_LEGACY_CMD", _IOC_NONE, 0x6f50, 0x00 },
+{ "linux/dvb/frontend.h", "FE_ENABLE_HIGH_LNB_VOLTAGE", _IOC_NONE, 0x6f44, 0x00 },
+{ "linux/dvb/frontend.h", "FE_GET_EVENT", _IOC_READ, 0x6f4e, 0x28 },
+{ "linux/dvb/frontend.h", "FE_GET_FRONTEND", _IOC_READ, 0x6f4d, 0x24 },
+{ "linux/dvb/frontend.h", "FE_GET_INFO", _IOC_READ, 0x6f3d, 0xa8 },
+{ "linux/dvb/frontend.h", "FE_GET_PROPERTY", _IOC_READ, 0x6f53, 0x08 },
+{ "linux/dvb/frontend.h", "FE_READ_BER", _IOC_READ, 0x6f46, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_SIGNAL_STRENGTH", _IOC_READ, 0x6f47, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_SNR", _IOC_READ, 0x6f48, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_STATUS", _IOC_READ, 0x6f45, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_UNCORRECTED_BLOCKS", _IOC_READ, 0x6f49, 0x04 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND", _IOC_WRITE, 0x6f4c, 0x24 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND_TUNE_MODE", _IOC_NONE, 0x6f51, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_PROPERTY", _IOC_WRITE, 0x6f52, 0x08 },
+{ "linux/dvb/frontend.h", "FE_SET_TONE", _IOC_NONE, 0x6f42, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_VOLTAGE", _IOC_NONE, 0x6f43, 0x00 },
+{ "linux/dvb/net.h", "NET_ADD_IF", _IOC_READ|_IOC_WRITE, 0x6f34, 0x06 },
+{ "linux/dvb/net.h", "NET_GET_IF", _IOC_READ|_IOC_WRITE, 0x6f36, 0x06 },
+{ "linux/dvb/net.h", "NET_REMOVE_IF", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/osd.h", "OSD_GET_CAPABILITY", _IOC_READ, 0x6fa1, 0x08 },
+{ "linux/dvb/osd.h", "OSD_SEND_CMD", _IOC_WRITE, 0x6fa0, 0x1c },
+{ "linux/dvb/video.h", "VIDEO_CLEAR_BUFFER", _IOC_NONE, 0x6f22, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3b, 0x48 },
+{ "linux/dvb/video.h", "VIDEO_CONTINUE", _IOC_NONE, 0x6f18, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FAST_FORWARD", _IOC_NONE, 0x6f1f, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FREEZE", _IOC_NONE, 0x6f17, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_GET_CAPABILITIES", _IOC_READ, 0x6f21, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_EVENT", _IOC_READ, 0x6f1c, 0x14 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_COUNT", _IOC_READ, 0x6f3a, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_RATE", _IOC_READ, 0x6f38, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_NAVI", _IOC_READ, 0x6f34, 0x404 },
+{ "linux/dvb/video.h", "VIDEO_GET_PTS", _IOC_READ, 0x6f39, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_SIZE", _IOC_READ, 0x6f37, 0x0c },
+{ "linux/dvb/video.h", "VIDEO_GET_STATUS", _IOC_READ, 0x6f1b, 0x14 },
+{ "linux/dvb/video.h", "VIDEO_PLAY", _IOC_NONE, 0x6f16, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SELECT_SOURCE", _IOC_NONE, 0x6f19, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_ATTRIBUTES", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_BLANK", _IOC_NONE, 0x6f1a, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_DISPLAY_FORMAT", _IOC_NONE, 0x6f1d, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_FORMAT", _IOC_NONE, 0x6f25, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_HIGHLIGHT", _IOC_WRITE, 0x6f27, 0x10 },
+{ "linux/dvb/video.h", "VIDEO_SET_ID", _IOC_NONE, 0x6f23, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU", _IOC_WRITE, 0x6f32, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU_PALETTE", _IOC_WRITE, 0x6f33, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_SET_STREAMTYPE", _IOC_NONE, 0x6f24, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SYSTEM", _IOC_NONE, 0x6f26, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SLOWMOTION", _IOC_NONE, 0x6f20, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_STILLPICTURE", _IOC_WRITE, 0x6f1e, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_STOP", _IOC_NONE, 0x6f15, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_TRY_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3c, 0x48 },
+{ "linux/fb.h", "FBIOBLANK", 0, 0x4611, 0 },
+{ "linux/fb.h", "FBIOGETCMAP", 0, 0x4604, 0 },
+{ "linux/fb.h", "FBIOGET_CON2FBMAP", 0, 0x460F, 0 },
+{ "linux/fb.h", "FBIOGET_DISPINFO", 0, 0x4618, 0 },
+{ "linux/fb.h", "FBIOGET_FSCREENINFO", 0, 0x4602, 0 },
+{ "linux/fb.h", "FBIOGET_GLYPH", 0, 0x4615, 0 },
+{ "linux/fb.h", "FBIOGET_HWCINFO", 0, 0x4616, 0 },
+{ "linux/fb.h", "FBIOGET_VBLANK", _IOC_READ, 0x4612, 0x20 },
+{ "linux/fb.h", "FBIOGET_VSCREENINFO", 0, 0x4600, 0 },
+{ "linux/fb.h", "FBIOPAN_DISPLAY", 0, 0x4606, 0 },
+{ "linux/fb.h", "FBIOPUTCMAP", 0, 0x4605, 0 },
+{ "linux/fb.h", "FBIOPUT_CON2FBMAP", 0, 0x4610, 0 },
+{ "linux/fb.h", "FBIOPUT_MODEINFO", 0, 0x4617, 0 },
+{ "linux/fb.h", "FBIOPUT_VSCREENINFO", 0, 0x4601, 0 },
+{ "linux/fb.h", "FBIO_ALLOC", 0, 0x4613, 0 },
+{ "linux/fb.h", "FBIO_CURSOR", _IOC_READ|_IOC_WRITE, 0x4608, 0x48 },
+{ "linux/fb.h", "FBIO_FREE", 0, 0x4614, 0 },
+{ "linux/fb.h", "FBIO_WAITFORVSYNC", _IOC_WRITE, 0x4620, 0x04 },
+{ "linux/fd.h", "FDCLRPRM", _IOC_NONE, 0x0241, 0x00 },
+{ "linux/fd.h", "FDDEFPRM", _IOC_WRITE, 0x0243, 0x1c },
+{ "linux/fd.h", "FDEJECT", _IOC_NONE, 0x025a, 0x00 },
+{ "linux/fd.h", "FDFLUSH", _IOC_NONE, 0x024b, 0x00 },
+{ "linux/fd.h", "FDFMTBEG", _IOC_NONE, 0x0247, 0x00 },
+{ "linux/fd.h", "FDFMTEND", _IOC_NONE, 0x0249, 0x00 },
+{ "linux/fd.h", "FDFMTTRK", _IOC_WRITE, 0x0248, 0x0c },
+{ "linux/fd.h", "FDGETDRVPRM", _IOC_READ, 0x0211, 0x58 },
+{ "linux/fd.h", "FDGETDRVSTAT", _IOC_READ, 0x0212, 0x34 },
+{ "linux/fd.h", "FDGETDRVTYP", _IOC_READ, 0x020f, 0x10 },
+{ "linux/fd.h", "FDGETFDCSTAT", _IOC_READ, 0x0215, 0x20 },
+{ "linux/fd.h", "FDGETMAXERRS", _IOC_READ, 0x020e, 0x14 },
+{ "linux/fd.h", "FDGETPRM", _IOC_READ, 0x0204, 0x1c },
+{ "linux/fd.h", "FDMSGOFF", _IOC_NONE, 0x0246, 0x00 },
+{ "linux/fd.h", "FDMSGON", _IOC_NONE, 0x0245, 0x00 },
+{ "linux/fd.h", "FDPOLLDRVSTAT", _IOC_READ, 0x0213, 0x34 },
+{ "linux/fd.h", "FDRAWCMD", _IOC_NONE, 0x0258, 0x00 },
+{ "linux/fd.h", "FDRESET", _IOC_NONE, 0x0254, 0x00 },
+{ "linux/fd.h", "FDSETDRVPRM", _IOC_WRITE, 0x0290, 0x58 },
+{ "linux/fd.h", "FDSETEMSGTRESH", _IOC_NONE, 0x024a, 0x00 },
+{ "linux/fd.h", "FDSETMAXERRS", _IOC_WRITE, 0x024c, 0x14 },
+{ "linux/fd.h", "FDSETPRM", _IOC_WRITE, 0x0242, 0x1c },
+{ "linux/fd.h", "FDTWADDLE", _IOC_NONE, 0x0259, 0x00 },
+{ "linux/fd.h", "FDWERRORCLR", _IOC_NONE, 0x0256, 0x00 },
+{ "linux/fd.h", "FDWERRORGET", _IOC_READ, 0x0217, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ADD_DESCRIPTOR", _IOC_READ|_IOC_WRITE, 0x2306, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x2302, 0x20 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE", _IOC_READ|_IOC_WRITE, 0x230d, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x230f, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_CREATE_ISO_CONTEXT", _IOC_READ|_IOC_WRITE, 0x2308, 0x1c },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE", _IOC_WRITE, 0x2303, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE", _IOC_WRITE, 0x230e, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x2310, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_FLUSH_ISO", _IOC_WRITE, 0x2318, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER", _IOC_READ, 0x230c, 0x0c },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER2", _IOC_READ|_IOC_WRITE, 0x2314, 0x14 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_INFO", _IOC_READ|_IOC_WRITE, 0x2300, 0x24 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_SPEED", _IOC_NONE, 0x2311, 0x00 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_INITIATE_BUS_RESET", _IOC_WRITE, 0x2305, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_QUEUE_ISO", _IOC_READ|_IOC_WRITE, 0x2309, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_RECEIVE_PHY_PACKETS", _IOC_WRITE, 0x2316, 0x08 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_REMOVE_DESCRIPTOR", _IOC_WRITE, 0x2307, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_BROADCAST_REQUEST", _IOC_WRITE, 0x2312, 0x24 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_PHY_PACKET", _IOC_READ|_IOC_WRITE, 0x2315, 0x14 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_REQUEST", _IOC_WRITE, 0x2301, 0x24 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_RESPONSE", _IOC_WRITE, 0x2304, 0x14 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_STREAM_PACKET", _IOC_WRITE, 0x2313, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SET_ISO_CHANNELS", _IOC_WRITE, 0x2317, 0x0c },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_START_ISO", _IOC_WRITE, 0x230a, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_STOP_ISO", _IOC_WRITE, 0x230b, 0x04 },
+{ "linux/fs.h", "BLKALIGNOFF", _IOC_NONE, 0x127a, 0x00 },
+{ "linux/fs.h", "BLKBSZGET", _IOC_READ, 0x1270, 0x04 },
+{ "linux/fs.h", "BLKBSZSET", _IOC_WRITE, 0x1271, 0x04 },
+{ "linux/fs.h", "BLKDISCARD", _IOC_NONE, 0x1277, 0x00 },
+{ "linux/fs.h", "BLKDISCARDZEROES", _IOC_NONE, 0x127c, 0x00 },
+{ "linux/fs.h", "BLKFLSBUF", _IOC_NONE, 0x1261, 0x00 },
+{ "linux/fs.h", "BLKFRAGET", _IOC_NONE, 0x1265, 0x00 },
+{ "linux/fs.h", "BLKFRASET", _IOC_NONE, 0x1264, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE", _IOC_NONE, 0x1260, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE64", _IOC_READ, 0x1272, 0x04 },
+{ "linux/fs.h", "BLKIOMIN", _IOC_NONE, 0x1278, 0x00 },
+{ "linux/fs.h", "BLKIOOPT", _IOC_NONE, 0x1279, 0x00 },
+{ "linux/fs.h", "BLKPBSZGET", _IOC_NONE, 0x127b, 0x00 },
+{ "linux/fs.h", "BLKRAGET", _IOC_NONE, 0x1263, 0x00 },
+{ "linux/fs.h", "BLKRASET", _IOC_NONE, 0x1262, 0x00 },
+{ "linux/fs.h", "BLKROGET", _IOC_NONE, 0x125e, 0x00 },
+{ "linux/fs.h", "BLKROSET", _IOC_NONE, 0x125d, 0x00 },
+{ "linux/fs.h", "BLKROTATIONAL", _IOC_NONE, 0x127e, 0x00 },
+{ "linux/fs.h", "BLKRRPART", _IOC_NONE, 0x125f, 0x00 },
+{ "linux/fs.h", "BLKSECDISCARD", _IOC_NONE, 0x127d, 0x00 },
+{ "linux/fs.h", "BLKSECTGET", _IOC_NONE, 0x1267, 0x00 },
+{ "linux/fs.h", "BLKSECTSET", _IOC_NONE, 0x1266, 0x00 },
+{ "linux/fs.h", "BLKSSZGET", _IOC_NONE, 0x1268, 0x00 },
+{ "linux/fs.h", "BLKTRACESETUP", _IOC_READ|_IOC_WRITE, 0x1273, 0x40 },
+{ "linux/fs.h", "BLKTRACESTART", _IOC_NONE, 0x1274, 0x00 },
+{ "linux/fs.h", "BLKTRACESTOP", _IOC_NONE, 0x1275, 0x00 },
+{ "linux/fs.h", "BLKTRACETEARDOWN", _IOC_NONE, 0x1276, 0x00 },
+{ "linux/fs.h", "BLKZEROOUT", _IOC_NONE, 0x127f, 0x00 },
+{ "linux/fs.h", "FIBMAP", _IOC_NONE, 0x0001, 0x00 },
+{ "linux/fs.h", "FIFREEZE", _IOC_READ|_IOC_WRITE, 0x5877, 0x04 },
+{ "linux/fs.h", "FIGETBSZ", _IOC_NONE, 0x0002, 0x00 },
+{ "linux/fs.h", "FITHAW", _IOC_READ|_IOC_WRITE, 0x5878, 0x04 },
+{ "linux/fs.h", "FITRIM", _IOC_READ|_IOC_WRITE, 0x5879, 0x18 },
+{ "linux/fs.h", "FS_IOC32_GETFLAGS", _IOC_READ, 0x6601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_GETVERSION", _IOC_READ, 0x7601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETFLAGS", _IOC_WRITE, 0x6602, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETVERSION", _IOC_WRITE, 0x7602, 0x04 },
+{ "linux/fs.h", "FS_IOC_FIEMAP", _IOC_READ|_IOC_WRITE, 0x660b, 0x20 },
+{ "linux/fs.h", "FS_IOC_GETFLAGS", _IOC_READ, 0x6601, 0x04 },
+{ "linux/fs.h", "FS_IOC_GETVERSION", _IOC_READ, 0x7601, 0x04 },
+{ "linux/fs.h", "FS_IOC_SETFLAGS", _IOC_WRITE, 0x6602, 0x04 },
+{ "linux/fs.h", "FS_IOC_SETVERSION", _IOC_WRITE, 0x7602, 0x04 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_ALPHA", _IOC_READ, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_AOID", _IOC_READ, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_GAMMA", _IOC_READ, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_PIXFMT", _IOC_READ, 0x4d08, 0x04 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_ALPHA", _IOC_WRITE, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_AOID", _IOC_WRITE, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_BRIGHTNESS", _IOC_WRITE, 0x4d03, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_CHROMA_KEY", _IOC_WRITE, 0x4d01, 0x0c },
+{ "linux/fsl-diu-fb.h", "MFB_SET_GAMMA", _IOC_WRITE, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_PIXFMT", _IOC_WRITE, 0x4d08, 0x04 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_DOORBELL", _IOC_READ|_IOC_WRITE, 0xaf06, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_GETPROP", _IOC_READ|_IOC_WRITE, 0xaf07, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_MEMCPY", _IOC_READ|_IOC_WRITE, 0xaf05, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_GET_STATUS", _IOC_READ|_IOC_WRITE, 0xaf02, 0x0c },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_RESTART", _IOC_READ|_IOC_WRITE, 0xaf01, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_START", _IOC_READ|_IOC_WRITE, 0xaf03, 0x10 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_STOP", _IOC_READ|_IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_SETPROP", _IOC_READ|_IOC_WRITE, 0xaf08, 0x28 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_DDCB", _IOC_READ|_IOC_WRITE, 0xa532, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_RAW_DDCB", _IOC_READ|_IOC_WRITE, 0xa533, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_GET_CARD_STATE", _IOC_READ, 0xa524, 0x04 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_PIN_MEM", _IOC_READ|_IOC_WRITE, 0xa528, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG16", _IOC_READ, 0xa522, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG32", _IOC_READ, 0xa520, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG64", _IOC_READ, 0xa51e, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_READ", _IOC_READ|_IOC_WRITE, 0xa551, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_UPDATE", _IOC_READ|_IOC_WRITE, 0xa550, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_UNPIN_MEM", _IOC_READ|_IOC_WRITE, 0xa529, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG16", _IOC_WRITE, 0xa523, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG32", _IOC_WRITE, 0xa521, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG64", _IOC_WRITE, 0xa51f, 0x10 },
+{ "linux/gigaset_dev.h", "GIGASET_BRKCHARS", _IOC_WRITE, 0x4702, 0x06 },
+{ "linux/gigaset_dev.h", "GIGASET_CONFIG", _IOC_READ|_IOC_WRITE, 0x4701, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_REDIR", _IOC_READ|_IOC_WRITE, 0x4700, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_VERSION", _IOC_READ|_IOC_WRITE, 0x4703, 0x10 },
+{ "linux/gsmmux.h", "GSMIOC_DISABLE_NET", _IOC_NONE, 0x4703, 0x00 },
+{ "linux/gsmmux.h", "GSMIOC_ENABLE_NET", _IOC_WRITE, 0x4702, 0x34 },
+{ "linux/gsmmux.h", "GSMIOC_GETCONF", _IOC_READ, 0x4700, 0x4c },
+{ "linux/gsmmux.h", "GSMIOC_SETCONF", _IOC_WRITE, 0x4701, 0x4c },
+{ "linux/hdreg.h", "HDIO_DRIVE_CMD", 0, 0x031f, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_RESET", 0, 0x031c, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASK", 0, 0x031e, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASKFILE", 0, 0x031d, 0 },
+{ "linux/hdreg.h", "HDIO_GETGEO", 0, 0x0301, 0 },
+{ "linux/hdreg.h", "HDIO_GET_32BIT", 0, 0x0309, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ACOUSTIC", 0, 0x030f, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ADDRESS", 0, 0x0310, 0 },
+{ "linux/hdreg.h", "HDIO_GET_BUSSTATE", 0, 0x031a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_DMA", 0, 0x030b, 0 },
+{ "linux/hdreg.h", "HDIO_GET_IDENTITY", 0, 0x030d, 0 },
+{ "linux/hdreg.h", "HDIO_GET_KEEPSETTINGS", 0, 0x0308, 0 },
+{ "linux/hdreg.h", "HDIO_GET_MULTCOUNT", 0, 0x0304, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NICE", 0, 0x030c, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NOWERR", 0, 0x030a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_QDMA", 0, 0x0305, 0 },
+{ "linux/hdreg.h", "HDIO_GET_UNMASKINTR", 0, 0x0302, 0 },
+{ "linux/hdreg.h", "HDIO_GET_WCACHE", 0, 0x030e, 0 },
+{ "linux/hdreg.h", "HDIO_OBSOLETE_IDENTITY", 0, 0x0307, 0 },
+{ "linux/hdreg.h", "HDIO_SCAN_HWIF", 0, 0x0328, 0 },
+{ "linux/hdreg.h", "HDIO_SET_32BIT", 0, 0x0324, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ACOUSTIC", 0, 0x032c, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ADDRESS", 0, 0x032f, 0 },
+{ "linux/hdreg.h", "HDIO_SET_BUSSTATE", 0, 0x032d, 0 },
+{ "linux/hdreg.h", "HDIO_SET_DMA", 0, 0x0326, 0 },
+{ "linux/hdreg.h", "HDIO_SET_KEEPSETTINGS", 0, 0x0323, 0 },
+{ "linux/hdreg.h", "HDIO_SET_MULTCOUNT", 0, 0x0321, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NICE", 0, 0x0329, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NOWERR", 0, 0x0325, 0 },
+{ "linux/hdreg.h", "HDIO_SET_PIO_MODE", 0, 0x0327, 0 },
+{ "linux/hdreg.h", "HDIO_SET_QDMA", 0, 0x032e, 0 },
+{ "linux/hdreg.h", "HDIO_SET_UNMASKINTR", 0, 0x0322, 0 },
+{ "linux/hdreg.h", "HDIO_SET_WCACHE", 0, 0x032b, 0 },
+{ "linux/hdreg.h", "HDIO_SET_XFER", 0, 0x0306, 0 },
+{ "linux/hdreg.h", "HDIO_TRISTATE_HWIF", 0, 0x031b, 0 },
+{ "linux/hdreg.h", "HDIO_UNREGISTER_HWIF", 0, 0x032a, 0 },
+{ "linux/hid-roccat.h", "ROCCATIOCGREPSIZE", _IOC_READ, 0x48f1, 0x04 },
+{ "linux/hiddev.h", "HIDIOCAPPLICATION", _IOC_NONE, 0x4802, 0x00 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINDEX", _IOC_WRITE, 0x4810, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINFO", _IOC_READ|_IOC_WRITE, 0x4811, 0x10 },
+{ "linux/hiddev.h", "HIDIOCGDEVINFO", _IOC_READ, 0x4803, 0x1c },
+{ "linux/hiddev.h", "HIDIOCGFIELDINFO", _IOC_READ|_IOC_WRITE, 0x480a, 0x38 },
+{ "linux/hiddev.h", "HIDIOCGFLAG", _IOC_READ, 0x480e, 0x04 },
+{ "linux/hiddev.h", "HIDIOCGREPORT", _IOC_WRITE, 0x4807, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGREPORTINFO", _IOC_READ|_IOC_WRITE, 0x4809, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGSTRING", _IOC_READ, 0x4804, 0x104 },
+{ "linux/hiddev.h", "HIDIOCGUCODE", _IOC_READ|_IOC_WRITE, 0x480d, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGE", _IOC_READ|_IOC_WRITE, 0x480b, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGES", _IOC_READ|_IOC_WRITE, 0x4813, 0x101c },
+{ "linux/hiddev.h", "HIDIOCGVERSION", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hiddev.h", "HIDIOCINITREPORT", _IOC_NONE, 0x4805, 0x00 },
+{ "linux/hiddev.h", "HIDIOCSFLAG", _IOC_WRITE, 0x480f, 0x04 },
+{ "linux/hiddev.h", "HIDIOCSREPORT", _IOC_WRITE, 0x4808, 0x0c },
+{ "linux/hiddev.h", "HIDIOCSUSAGE", _IOC_WRITE, 0x480c, 0x18 },
+{ "linux/hiddev.h", "HIDIOCSUSAGES", _IOC_WRITE, 0x4814, 0x101c },
+{ "linux/hidraw.h", "HIDIOCGRAWINFO", _IOC_READ, 0x4803, 0x08 },
+{ "linux/hidraw.h", "HIDIOCGRDESC", _IOC_READ, 0x4802, 0x1004 },
+{ "linux/hidraw.h", "HIDIOCGRDESCSIZE", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hpet.h", "HPET_DPI", _IOC_NONE, 0x6805, 0x00 },
+{ "linux/hpet.h", "HPET_EPI", _IOC_NONE, 0x6804, 0x00 },
+{ "linux/hpet.h", "HPET_IE_OFF", _IOC_NONE, 0x6802, 0x00 },
+{ "linux/hpet.h", "HPET_IE_ON", _IOC_NONE, 0x6801, 0x00 },
+{ "linux/hpet.h", "HPET_INFO", _IOC_READ, 0x6803, 0x0c },
+{ "linux/hpet.h", "HPET_IRQFREQ", _IOC_WRITE, 0x6806, 0x04 },
+{ "linux/hsi/hsi_char.h", "HSC_GET_RX", _IOC_WRITE, 0x6b14, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_GET_TX", _IOC_WRITE, 0x6b16, 0x10 },
+{ "linux/hsi/hsi_char.h", "HSC_RESET", _IOC_NONE, 0x6b10, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SEND_BREAK", _IOC_NONE, 0x6b12, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_PM", _IOC_NONE, 0x6b11, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_RX", _IOC_WRITE, 0x6b13, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_SET_TX", _IOC_WRITE, 0x6b15, 0x10 },
+{ "linux/i2o-dev.h", "I2OEVTGET", _IOC_READ, 0x690b, 0x68 },
+{ "linux/i2o-dev.h", "I2OEVTREG", _IOC_WRITE, 0x690a, 0x0c },
+{ "linux/i2o-dev.h", "I2OGETIOPS", _IOC_READ, 0x6900, 0x20 },
+{ "linux/i2o-dev.h", "I2OHRTGET", _IOC_READ|_IOC_WRITE, 0x6901, 0x0c },
+{ "linux/i2o-dev.h", "I2OHTML", _IOC_READ|_IOC_WRITE, 0x6909, 0x1c },
+{ "linux/i2o-dev.h", "I2OLCTGET", _IOC_READ|_IOC_WRITE, 0x6902, 0x0c },
+{ "linux/i2o-dev.h", "I2OPARMGET", _IOC_READ|_IOC_WRITE, 0x6904, 0x18 },
+{ "linux/i2o-dev.h", "I2OPARMSET", _IOC_READ|_IOC_WRITE, 0x6903, 0x18 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU", _IOC_READ, 0x690c, 0x08 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU32", _IOC_READ, 0x690c, 0x08 },
+{ "linux/i2o-dev.h", "I2OSWDEL", _IOC_READ|_IOC_WRITE, 0x6907, 0x1c },
+{ "linux/i2o-dev.h", "I2OSWDL", _IOC_READ|_IOC_WRITE, 0x6905, 0x1c },
+{ "linux/i2o-dev.h", "I2OSWUL", _IOC_READ|_IOC_WRITE, 0x6906, 0x1c },
+{ "linux/i2o-dev.h", "I2OVALIDATE", _IOC_READ, 0x6908, 0x04 },
+{ "linux/i2o.h", "BLKI2OGRSTRAT", _IOC_READ, 0x3201, 0x04 },
+{ "linux/i2o.h", "BLKI2OGWSTRAT", _IOC_READ, 0x3202, 0x04 },
+{ "linux/i2o.h", "BLKI2OSRSTRAT", _IOC_WRITE, 0x3203, 0x04 },
+{ "linux/i2o.h", "BLKI2OSWSTRAT", _IOC_WRITE, 0x3204, 0x04 },
+{ "linux/i8k.h", "I8K_BIOS_VERSION", _IOC_READ, 0x6980, 0x04 },
+{ "linux/i8k.h", "I8K_FN_STATUS", _IOC_READ, 0x6983, 0x04 },
+{ "linux/i8k.h", "I8K_GET_FAN", _IOC_READ|_IOC_WRITE, 0x6986, 0x04 },
+{ "linux/i8k.h", "I8K_GET_SPEED", _IOC_READ|_IOC_WRITE, 0x6985, 0x04 },
+{ "linux/i8k.h", "I8K_GET_TEMP", _IOC_READ, 0x6984, 0x04 },
+{ "linux/i8k.h", "I8K_MACHINE_ID", _IOC_READ, 0x6981, 0x04 },
+{ "linux/i8k.h", "I8K_POWER_STATUS", _IOC_READ, 0x6982, 0x04 },
+{ "linux/i8k.h", "I8K_SET_FAN", _IOC_READ|_IOC_WRITE, 0x6987, 0x04 },
+{ "linux/if_pppox.h", "PPPOEIOCDFWD", _IOC_NONE, 0xb101, 0x00 },
+{ "linux/if_pppox.h", "PPPOEIOCSFWD", _IOC_WRITE, 0xb100, 0x04 },
+{ "linux/if_tun.h", "TUNATTACHFILTER", _IOC_WRITE, 0x54d5, 0x08 },
+{ "linux/if_tun.h", "TUNDETACHFILTER", _IOC_WRITE, 0x54d6, 0x08 },
+{ "linux/if_tun.h", "TUNGETFEATURES", _IOC_READ, 0x54cf, 0x04 },
+{ "linux/if_tun.h", "TUNGETFILTER", _IOC_READ, 0x54db, 0x08 },
+{ "linux/if_tun.h", "TUNGETIFF", _IOC_READ, 0x54d2, 0x04 },
+{ "linux/if_tun.h", "TUNGETSNDBUF", _IOC_READ, 0x54d3, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETHDRSZ", _IOC_READ, 0x54d7, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETLE", _IOC_READ, 0x54dd, 0x04 },
+{ "linux/if_tun.h", "TUNSETDEBUG", _IOC_WRITE, 0x54c9, 0x04 },
+{ "linux/if_tun.h", "TUNSETGROUP", _IOC_WRITE, 0x54ce, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFF", _IOC_WRITE, 0x54ca, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFINDEX", _IOC_WRITE, 0x54da, 0x04 },
+{ "linux/if_tun.h", "TUNSETLINK", _IOC_WRITE, 0x54cd, 0x04 },
+{ "linux/if_tun.h", "TUNSETNOCSUM", _IOC_WRITE, 0x54c8, 0x04 },
+{ "linux/if_tun.h", "TUNSETOFFLOAD", _IOC_WRITE, 0x54d0, 0x04 },
+{ "linux/if_tun.h", "TUNSETOWNER", _IOC_WRITE, 0x54cc, 0x04 },
+{ "linux/if_tun.h", "TUNSETPERSIST", _IOC_WRITE, 0x54cb, 0x04 },
+{ "linux/if_tun.h", "TUNSETQUEUE", _IOC_WRITE, 0x54d9, 0x04 },
+{ "linux/if_tun.h", "TUNSETSNDBUF", _IOC_WRITE, 0x54d4, 0x04 },
+{ "linux/if_tun.h", "TUNSETTXFILTER", _IOC_WRITE, 0x54d1, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETHDRSZ", _IOC_WRITE, 0x54d8, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETLE", _IOC_WRITE, 0x54dc, 0x04 },
+{ "linux/iio/events.h", "IIO_GET_EVENT_FD_IOCTL", _IOC_READ, 0x6990, 0x04 },
+{ "linux/input.h", "EVIOCGEFFECTS", _IOC_READ, 0x4584, 0x04 },
+{ "linux/input.h", "EVIOCGID", _IOC_READ, 0x4502, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE", _IOC_READ, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE_V2", _IOC_READ, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCGRAB", _IOC_WRITE, 0x4590, 0x04 },
+{ "linux/input.h", "EVIOCGREP", _IOC_READ, 0x4503, 0x08 },
+{ "linux/input.h", "EVIOCGVERSION", _IOC_READ, 0x4501, 0x04 },
+{ "linux/input.h", "EVIOCREVOKE", _IOC_WRITE, 0x4591, 0x04 },
+{ "linux/input.h", "EVIOCRMFF", _IOC_WRITE, 0x4581, 0x04 },
+{ "linux/input.h", "EVIOCSCLOCKID", _IOC_WRITE, 0x45a0, 0x04 },
+{ "linux/input.h", "EVIOCSFF", _IOC_WRITE, 0x4580, 0x2c },
+{ "linux/input.h", "EVIOCSKEYCODE", _IOC_WRITE, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCSKEYCODE_V2", _IOC_WRITE, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCSREP", _IOC_WRITE, 0x4503, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_GET_MAINTENANCE_MODE_CMD", _IOC_READ, 0x691e, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_ADDRESS_CMD", _IOC_READ, 0x6912, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6919, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691b, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_LUN_CMD", _IOC_READ, 0x6914, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_TIMING_PARMS_CMD", _IOC_READ, 0x6917, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG", _IOC_READ|_IOC_WRITE, 0x690c, 0x18 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG_TRUNC", _IOC_READ|_IOC_WRITE, 0x690b, 0x18 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD", _IOC_READ, 0x690e, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691c, 0x0c },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND", _IOC_READ, 0x690d, 0x14 },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND_SETTIME", _IOC_READ, 0x6915, 0x1c },
+{ "linux/ipmi.h", "IPMICTL_SET_GETS_EVENTS_CMD", _IOC_READ, 0x6910, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MAINTENANCE_MODE_CMD", _IOC_WRITE, 0x691f, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_ADDRESS_CMD", _IOC_READ, 0x6911, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6918, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691a, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_LUN_CMD", _IOC_READ, 0x6913, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_TIMING_PARMS_CMD", _IOC_READ, 0x6916, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD", _IOC_READ, 0x690f, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691d, 0x0c },
+{ "linux/isdn.h", "IIOCDBGVAR", _IOC_NONE, 0x497f, 0x00 },
+{ "linux/isdn.h", "IIOCDRVCTL", _IOC_NONE, 0x4980, 0x00 },
+{ "linux/isdn.h", "IIOCGETCPS", _IOC_NONE, 0x4915, 0x00 },
+{ "linux/isdn.h", "IIOCGETDVR", _IOC_NONE, 0x4916, 0x00 },
+{ "linux/isdn.h", "IIOCGETMAP", _IOC_NONE, 0x4911, 0x00 },
+{ "linux/isdn.h", "IIOCGETPRF", _IOC_NONE, 0x490f, 0x00 },
+{ "linux/isdn.h", "IIOCGETSET", _IOC_NONE, 0x4908, 0x00 },
+{ "linux/isdn.h", "IIOCNETAIF", _IOC_NONE, 0x4901, 0x00 },
+{ "linux/isdn.h", "IIOCNETALN", _IOC_NONE, 0x4920, 0x00 },
+{ "linux/isdn.h", "IIOCNETANM", _IOC_NONE, 0x4905, 0x00 },
+{ "linux/isdn.h", "IIOCNETASL", _IOC_NONE, 0x4913, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIF", _IOC_NONE, 0x4902, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIL", _IOC_NONE, 0x4914, 0x00 },
+{ "linux/isdn.h", "IIOCNETDLN", _IOC_NONE, 0x4921, 0x00 },
+{ "linux/isdn.h", "IIOCNETDNM", _IOC_NONE, 0x4906, 0x00 },
+{ "linux/isdn.h", "IIOCNETDWRSET", _IOC_NONE, 0x4918, 0x00 },
+{ "linux/isdn.h", "IIOCNETGCF", _IOC_NONE, 0x4904, 0x00 },
+{ "linux/isdn.h", "IIOCNETGNM", _IOC_NONE, 0x4907, 0x00 },
+{ "linux/isdn.h", "IIOCNETGPN", _IOC_NONE, 0x4922, 0x00 },
+{ "linux/isdn.h", "IIOCNETHUP", _IOC_NONE, 0x490b, 0x00 },
+{ "linux/isdn.h", "IIOCNETLCR", _IOC_NONE, 0x4917, 0x00 },
+{ "linux/isdn.h", "IIOCNETSCF", _IOC_NONE, 0x4903, 0x00 },
+{ "linux/isdn.h", "IIOCSETBRJ", _IOC_NONE, 0x490d, 0x00 },
+{ "linux/isdn.h", "IIOCSETGST", _IOC_NONE, 0x490c, 0x00 },
+{ "linux/isdn.h", "IIOCSETMAP", _IOC_NONE, 0x4912, 0x00 },
+{ "linux/isdn.h", "IIOCSETPRF", _IOC_NONE, 0x4910, 0x00 },
+{ "linux/isdn.h", "IIOCSETSET", _IOC_NONE, 0x4909, 0x00 },
+{ "linux/isdn.h", "IIOCSETVER", _IOC_NONE, 0x490a, 0x00 },
+{ "linux/isdn.h", "IIOCSIGPRF", _IOC_NONE, 0x490e, 0x00 },
+{ "linux/isdn_ppp.h", "PPPIOCBUNDLE", _IOC_WRITE, 0x7481, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCGCALLINFO", _IOC_READ|_IOC_WRITE, 0x7480, 0x88 },
+{ "linux/isdn_ppp.h", "PPPIOCGCOMPRESSORS", _IOC_READ, 0x7486, 0x20 },
+{ "linux/isdn_ppp.h", "PPPIOCGIFNAME", _IOC_READ, 0x7488, 0x10 },
+{ "linux/isdn_ppp.h", "PPPIOCGMPFLAGS", _IOC_READ, 0x7482, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSCOMPRESSOR", _IOC_WRITE, 0x7487, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPFLAGS", _IOC_WRITE, 0x7483, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMRU", _IOC_WRITE, 0x7485, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMTU", _IOC_WRITE, 0x7484, 0x04 },
+{ "linux/ivtv.h", "IVTV_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x38 },
+{ "linux/ivtv.h", "IVTV_IOC_PASSTHROUGH_MODE", _IOC_WRITE, 0x56c1, 0x04 },
+{ "linux/ivtvfb.h", "IVTVFB_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x0c },
+{ "linux/ixjuser.h", "IXJCTL_AEC_GET_LEVEL", _IOC_NONE, 0x71cd, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_START", _IOC_WRITE, 0x71cb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_STOP", _IOC_NONE, 0x71cc, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_CARDTYPE", _IOC_READ, 0x71c1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_CID", _IOC_READ, 0x71d4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_CIDCW", _IOC_WRITE, 0x71d9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_AGAIN", _IOC_WRITE, 0x71d2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_COEFF_SET", _IOC_WRITE, 0x71d0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_CLEAR", _IOC_NONE, 0x71e7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_READ", _IOC_READ, 0x71e6, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_IDLE", _IOC_NONE, 0x71c5, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_RESET", _IOC_NONE, 0x71c0, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_TYPE", _IOC_READ, 0x71c3, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_VERSION", _IOC_READ, 0x71c4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DTMF_PRESCALE", _IOC_WRITE, 0x71e8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FILTER_CADENCE", _IOC_WRITE, 0x71d6, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_READ", _IOC_READ, 0x71e2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_WRITTEN", _IOC_READ, 0x71e3, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_GET_FILTER_HIST", _IOC_WRITE, 0x71c8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_HZ", _IOC_WRITE, 0x71e0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INIT_TONE", _IOC_WRITE, 0x71c9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_START", _IOC_WRITE, 0x71fd, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_STOP", _IOC_WRITE, 0x71fe, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_MIXER", _IOC_WRITE, 0x71cf, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PLAY_CID", _IOC_NONE, 0x71d7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_PORT", _IOC_WRITE, 0x71d1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_POTS_PSTN", _IOC_WRITE, 0x71d5, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PSTN_LINETEST", _IOC_NONE, 0x71d3, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_RATE", _IOC_WRITE, 0x71e1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_READ_WAIT", _IOC_READ, 0x71e4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SC_RXG", _IOC_WRITE, 0x71ea, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SC_TXG", _IOC_WRITE, 0x71eb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SERIAL", _IOC_READ, 0x71c2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER", _IOC_WRITE, 0x71c7, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER_RAW", _IOC_WRITE, 0x71dd, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_LED", _IOC_WRITE, 0x71ce, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SIGCTL", _IOC_WRITE, 0x71e9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_TESTRAM", _IOC_NONE, 0x71c6, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_TONE_CADENCE", _IOC_WRITE, 0x71ca, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_VERSION", _IOC_READ, 0x71da, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_VMWI", _IOC_READ, 0x71d8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_WRITE_WAIT", _IOC_READ, 0x71e5, 0x04 },
+{ "linux/joystick.h", "JSIOCGAXES", _IOC_READ, 0x6a11, 0x01 },
+{ "linux/joystick.h", "JSIOCGAXMAP", _IOC_READ, 0x6a32, 0x40 },
+{ "linux/joystick.h", "JSIOCGBTNMAP", _IOC_READ, 0x6a34, 0x400 },
+{ "linux/joystick.h", "JSIOCGBUTTONS", _IOC_READ, 0x6a12, 0x01 },
+{ "linux/joystick.h", "JSIOCGCORR", _IOC_READ, 0x6a22, 0x24 },
+{ "linux/joystick.h", "JSIOCGVERSION", _IOC_READ, 0x6a01, 0x04 },
+{ "linux/joystick.h", "JSIOCSAXMAP", _IOC_WRITE, 0x6a31, 0x40 },
+{ "linux/joystick.h", "JSIOCSBTNMAP", _IOC_WRITE, 0x6a33, 0x400 },
+{ "linux/joystick.h", "JSIOCSCORR", _IOC_WRITE, 0x6a21, 0x24 },
+{ "linux/kd.h", "GIO_CMAP", 0, 0x4B70, 0 },
+{ "linux/kd.h", "GIO_FONT", 0, 0x4B60, 0 },
+{ "linux/kd.h", "GIO_FONTX", 0, 0x4B6B, 0 },
+{ "linux/kd.h", "GIO_SCRNMAP", 0, 0x4B40, 0 },
+{ "linux/kd.h", "GIO_UNIMAP", 0, 0x4B66, 0 },
+{ "linux/kd.h", "GIO_UNISCRNMAP", 0, 0x4B69, 0 },
+{ "linux/kd.h", "KDADDIO", 0, 0x4B34, 0 },
+{ "linux/kd.h", "KDDELIO", 0, 0x4B35, 0 },
+{ "linux/kd.h", "KDDISABIO", 0, 0x4B37, 0 },
+{ "linux/kd.h", "KDENABIO", 0, 0x4B36, 0 },
+{ "linux/kd.h", "KDFONTOP", 0, 0x4B72, 0 },
+{ "linux/kd.h", "KDGETKEYCODE", 0, 0x4B4C, 0 },
+{ "linux/kd.h", "KDGETLED", 0, 0x4B31, 0 },
+{ "linux/kd.h", "KDGETMODE", 0, 0x4B3B, 0 },
+{ "linux/kd.h", "KDGKBDIACR", 0, 0x4B4A, 0 },
+{ "linux/kd.h", "KDGKBDIACRUC", 0, 0x4BFA, 0 },
+{ "linux/kd.h", "KDGKBENT", 0, 0x4B46, 0 },
+{ "linux/kd.h", "KDGKBLED", 0, 0x4B64, 0 },
+{ "linux/kd.h", "KDGKBMETA", 0, 0x4B62, 0 },
+{ "linux/kd.h", "KDGKBMODE", 0, 0x4B44, 0 },
+{ "linux/kd.h", "KDGKBSENT", 0, 0x4B48, 0 },
+{ "linux/kd.h", "KDGKBTYPE", 0, 0x4B33, 0 },
+{ "linux/kd.h", "KDKBDREP", 0, 0x4B52, 0 },
+{ "linux/kd.h", "KDMAPDISP", 0, 0x4B3C, 0 },
+{ "linux/kd.h", "KDMKTONE", 0, 0x4B30, 0 },
+{ "linux/kd.h", "KDSETKEYCODE", 0, 0x4B4D, 0 },
+{ "linux/kd.h", "KDSETLED", 0, 0x4B32, 0 },
+{ "linux/kd.h", "KDSETMODE", 0, 0x4B3A, 0 },
+{ "linux/kd.h", "KDSIGACCEPT", 0, 0x4B4E, 0 },
+{ "linux/kd.h", "KDSKBDIACR", 0, 0x4B4B, 0 },
+{ "linux/kd.h", "KDSKBDIACRUC", 0, 0x4BFB, 0 },
+{ "linux/kd.h", "KDSKBENT", 0, 0x4B47, 0 },
+{ "linux/kd.h", "KDSKBLED", 0, 0x4B65, 0 },
+{ "linux/kd.h", "KDSKBMETA", 0, 0x4B63, 0 },
+{ "linux/kd.h", "KDSKBMODE", 0, 0x4B45, 0 },
+{ "linux/kd.h", "KDSKBSENT", 0, 0x4B49, 0 },
+{ "linux/kd.h", "KDUNMAPDISP", 0, 0x4B3D, 0 },
+{ "linux/kd.h", "KIOCSOUND", 0, 0x4B2F, 0 },
+{ "linux/kd.h", "PIO_CMAP", 0, 0x4B71, 0 },
+{ "linux/kd.h", "PIO_FONT", 0, 0x4B61, 0 },
+{ "linux/kd.h", "PIO_FONTRESET", 0, 0x4B6D, 0 },
+{ "linux/kd.h", "PIO_FONTX", 0, 0x4B6C, 0 },
+{ "linux/kd.h", "PIO_SCRNMAP", 0, 0x4B41, 0 },
+{ "linux/kd.h", "PIO_UNIMAP", 0, 0x4B67, 0 },
+{ "linux/kd.h", "PIO_UNIMAPCLR", 0, 0x4B68, 0 },
+{ "linux/kd.h", "PIO_UNISCRNMAP", 0, 0x4B6A, 0 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b02, 0x58 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_DESTROY_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b03, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_CLOCK_COUNTERS", _IOC_READ|_IOC_WRITE, 0x4b05, 0x28 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_PROCESS_APERTURES", _IOC_READ, 0x4b06, 0x190 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_VERSION", _IOC_READ, 0x4b01, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_SET_MEMORY_POLICY", _IOC_WRITE, 0x4b04, 0x20 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_UPDATE_QUEUE", _IOC_WRITE, 0x4b07, 0x18 },
+{ "linux/kvm.h", "KVM_ALLOCATE_RMA", _IOC_READ, 0xaea9, 0x08 },
+{ "linux/kvm.h", "KVM_ARM_PREFERRED_TARGET", _IOC_READ, 0xaeaf, 0x20 },
+{ "linux/kvm.h", "KVM_ARM_SET_DEVICE_ADDR", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_ARM_VCPU_INIT", _IOC_WRITE, 0xaeae, 0x20 },
+{ "linux/kvm.h", "KVM_ASSIGN_DEV_IRQ", _IOC_WRITE, 0xae70, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_PCI_DEVICE", _IOC_READ, 0xae69, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_INTX_MASK", _IOC_WRITE, 0xaea4, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_ENTRY", _IOC_WRITE, 0xae74, 0x10 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_NR", _IOC_WRITE, 0xae73, 0x08 },
+{ "linux/kvm.h", "KVM_CHECK_EXTENSION", _IOC_NONE, 0xae03, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_DEVICE", _IOC_READ|_IOC_WRITE, 0xaee0, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_IRQCHIP", _IOC_NONE, 0xae60, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT", _IOC_NONE, 0xae64, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT2", _IOC_WRITE, 0xae77, 0x40 },
+{ "linux/kvm.h", "KVM_CREATE_SPAPR_TCE", _IOC_WRITE, 0xaea8, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_VCPU", _IOC_NONE, 0xae41, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_VM", _IOC_NONE, 0xae01, 0x00 },
+{ "linux/kvm.h", "KVM_DEASSIGN_DEV_IRQ", _IOC_WRITE, 0xae75, 0x40 },
+{ "linux/kvm.h", "KVM_DEASSIGN_PCI_DEVICE", _IOC_WRITE, 0xae72, 0x40 },
+{ "linux/kvm.h", "KVM_DIRTY_TLB", _IOC_WRITE, 0xaeaa, 0x0c },
+{ "linux/kvm.h", "KVM_ENABLE_CAP", _IOC_WRITE, 0xaea3, 0x68 },
+{ "linux/kvm.h", "KVM_GET_API_VERSION", _IOC_NONE, 0xae00, 0x00 },
+{ "linux/kvm.h", "KVM_GET_CLOCK", _IOC_READ, 0xae7c, 0x30 },
+{ "linux/kvm.h", "KVM_GET_CPUID2", _IOC_READ|_IOC_WRITE, 0xae91, 0x08 },
+{ "linux/kvm.h", "KVM_GET_DEBUGREGS", _IOC_READ, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_GET_DEVICE_ATTR", _IOC_WRITE, 0xaee2, 0x18 },
+{ "linux/kvm.h", "KVM_GET_DIRTY_LOG", _IOC_WRITE, 0xae42, 0x10 },
+{ "linux/kvm.h", "KVM_GET_EMULATED_CPUID", _IOC_READ|_IOC_WRITE, 0xae09, 0x08 },
+{ "linux/kvm.h", "KVM_GET_FPU", _IOC_READ, 0xae8c, 0x1a0 },
+{ "linux/kvm.h", "KVM_GET_IRQCHIP", _IOC_READ|_IOC_WRITE, 0xae62, 0x208 },
+{ "linux/kvm.h", "KVM_GET_LAPIC", _IOC_READ, 0xae8e, 0x400 },
+{ "linux/kvm.h", "KVM_GET_MP_STATE", _IOC_READ, 0xae98, 0x04 },
+{ "linux/kvm.h", "KVM_GET_MSRS", _IOC_READ|_IOC_WRITE, 0xae88, 0x08 },
+{ "linux/kvm.h", "KVM_GET_MSR_INDEX_LIST", _IOC_READ|_IOC_WRITE, 0xae02, 0x04 },
+{ "linux/kvm.h", "KVM_GET_NR_MMU_PAGES", _IOC_NONE, 0xae45, 0x00 },
+{ "linux/kvm.h", "KVM_GET_ONE_REG", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_GET_PIT", _IOC_READ|_IOC_WRITE, 0xae65, 0x48 },
+{ "linux/kvm.h", "KVM_GET_PIT2", _IOC_READ, 0xae9f, 0x70 },
+{ "linux/kvm.h", "KVM_GET_REGS", _IOC_READ, 0xae81, 0x90 },
+{ "linux/kvm.h", "KVM_GET_REG_LIST", _IOC_READ|_IOC_WRITE, 0xaeb0, 0x08 },
+{ "linux/kvm.h", "KVM_GET_SREGS", _IOC_READ, 0xae83, 0x138 },
+{ "linux/kvm.h", "KVM_GET_SUPPORTED_CPUID", _IOC_READ|_IOC_WRITE, 0xae05, 0x08 },
+{ "linux/kvm.h", "KVM_GET_TSC_KHZ", _IOC_NONE, 0xaea3, 0x00 },
+{ "linux/kvm.h", "KVM_GET_VCPU_EVENTS", _IOC_READ, 0xae9f, 0x40 },
+{ "linux/kvm.h", "KVM_GET_VCPU_MMAP_SIZE", _IOC_NONE, 0xae04, 0x00 },
+{ "linux/kvm.h", "KVM_GET_XCRS", _IOC_READ, 0xaea6, 0x188 },
+{ "linux/kvm.h", "KVM_GET_XSAVE", _IOC_READ, 0xaea4, 0x1000 },
+{ "linux/kvm.h", "KVM_HAS_DEVICE_ATTR", _IOC_WRITE, 0xaee3, 0x18 },
+{ "linux/kvm.h", "KVM_INTERRUPT", _IOC_WRITE, 0xae86, 0x04 },
+{ "linux/kvm.h", "KVM_IOEVENTFD", _IOC_WRITE, 0xae79, 0x40 },
+{ "linux/kvm.h", "KVM_IRQFD", _IOC_WRITE, 0xae76, 0x20 },
+{ "linux/kvm.h", "KVM_IRQ_LINE", _IOC_WRITE, 0xae61, 0x08 },
+{ "linux/kvm.h", "KVM_IRQ_LINE_STATUS", _IOC_READ|_IOC_WRITE, 0xae67, 0x08 },
+{ "linux/kvm.h", "KVM_KVMCLOCK_CTRL", _IOC_NONE, 0xaead, 0x00 },
+{ "linux/kvm.h", "KVM_NMI", _IOC_NONE, 0xae9a, 0x00 },
+{ "linux/kvm.h", "KVM_PPC_ALLOCATE_HTAB", _IOC_READ|_IOC_WRITE, 0xaea7, 0x04 },
+{ "linux/kvm.h", "KVM_PPC_GET_HTAB_FD", _IOC_WRITE, 0xaeaa, 0x20 },
+{ "linux/kvm.h", "KVM_PPC_GET_PVINFO", _IOC_WRITE, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_PPC_GET_SMMU_INFO", _IOC_READ, 0xaea6, 0x250 },
+{ "linux/kvm.h", "KVM_PPC_RTAS_DEFINE_TOKEN", _IOC_WRITE, 0xaeac, 0x80 },
+{ "linux/kvm.h", "KVM_REGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae67, 0x10 },
+{ "linux/kvm.h", "KVM_REINJECT_CONTROL", _IOC_NONE, 0xae71, 0x00 },
+{ "linux/kvm.h", "KVM_RUN", _IOC_NONE, 0xae80, 0x00 },
+{ "linux/kvm.h", "KVM_S390_ENABLE_SIE", _IOC_NONE, 0xae06, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INITIAL_RESET", _IOC_NONE, 0xae97, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INTERRUPT", _IOC_WRITE, 0xae94, 0x10 },
+{ "linux/kvm.h", "KVM_S390_SET_INITIAL_PSW", _IOC_WRITE, 0xae96, 0x10 },
+{ "linux/kvm.h", "KVM_S390_STORE_STATUS", _IOC_WRITE, 0xae95, 0x04 },
+{ "linux/kvm.h", "KVM_S390_UCAS_MAP", _IOC_WRITE, 0xae50, 0x18 },
+{ "linux/kvm.h", "KVM_S390_UCAS_UNMAP", _IOC_WRITE, 0xae51, 0x18 },
+{ "linux/kvm.h", "KVM_S390_VCPU_FAULT", _IOC_WRITE, 0xae52, 0x04 },
+{ "linux/kvm.h", "KVM_SET_BOOT_CPU_ID", _IOC_NONE, 0xae78, 0x00 },
+{ "linux/kvm.h", "KVM_SET_CLOCK", _IOC_WRITE, 0xae7b, 0x30 },
+{ "linux/kvm.h", "KVM_SET_CPUID", _IOC_WRITE, 0xae8a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_CPUID2", _IOC_WRITE, 0xae90, 0x08 },
+{ "linux/kvm.h", "KVM_SET_DEBUGREGS", _IOC_WRITE, 0xaea2, 0x80 },
+{ "linux/kvm.h", "KVM_SET_DEVICE_ATTR", _IOC_WRITE, 0xaee1, 0x18 },
+{ "linux/kvm.h", "KVM_SET_FPU", _IOC_WRITE, 0xae8d, 0x1a0 },
+{ "linux/kvm.h", "KVM_SET_GSI_ROUTING", _IOC_WRITE, 0xae6a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_GUEST_DEBUG", _IOC_WRITE, 0xae9b, 0x48 },
+{ "linux/kvm.h", "KVM_SET_IDENTITY_MAP_ADDR", _IOC_WRITE, 0xae48, 0x08 },
+{ "linux/kvm.h", "KVM_SET_IRQCHIP", _IOC_READ, 0xae63, 0x208 },
+{ "linux/kvm.h", "KVM_SET_LAPIC", _IOC_WRITE, 0xae8f, 0x400 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_ALIAS", _IOC_WRITE, 0xae43, 0x20 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_REGION", _IOC_WRITE, 0xae40, 0x18 },
+{ "linux/kvm.h", "KVM_SET_MP_STATE", _IOC_WRITE, 0xae99, 0x04 },
+{ "linux/kvm.h", "KVM_SET_MSRS", _IOC_WRITE, 0xae89, 0x08 },
+{ "linux/kvm.h", "KVM_SET_NR_MMU_PAGES", _IOC_NONE, 0xae44, 0x00 },
+{ "linux/kvm.h", "KVM_SET_ONE_REG", _IOC_WRITE, 0xaeac, 0x10 },
+{ "linux/kvm.h", "KVM_SET_PIT", _IOC_READ, 0xae66, 0x48 },
+{ "linux/kvm.h", "KVM_SET_PIT2", _IOC_WRITE, 0xaea0, 0x70 },
+{ "linux/kvm.h", "KVM_SET_REGS", _IOC_WRITE, 0xae82, 0x90 },
+{ "linux/kvm.h", "KVM_SET_SIGNAL_MASK", _IOC_WRITE, 0xae8b, 0x04 },
+{ "linux/kvm.h", "KVM_SET_SREGS", _IOC_WRITE, 0xae84, 0x138 },
+{ "linux/kvm.h", "KVM_SET_TSC_KHZ", _IOC_NONE, 0xaea2, 0x00 },
+{ "linux/kvm.h", "KVM_SET_TSS_ADDR", _IOC_NONE, 0xae47, 0x00 },
+{ "linux/kvm.h", "KVM_SET_USER_MEMORY_REGION", _IOC_WRITE, 0xae46, 0x20 },
+{ "linux/kvm.h", "KVM_SET_VAPIC_ADDR", _IOC_WRITE, 0xae93, 0x08 },
+{ "linux/kvm.h", "KVM_SET_VCPU_EVENTS", _IOC_WRITE, 0xaea0, 0x40 },
+{ "linux/kvm.h", "KVM_SET_XCRS", _IOC_WRITE, 0xaea7, 0x188 },
+{ "linux/kvm.h", "KVM_SET_XSAVE", _IOC_WRITE, 0xaea5, 0x1000 },
+{ "linux/kvm.h", "KVM_SIGNAL_MSI", _IOC_WRITE, 0xaea5, 0x20 },
+{ "linux/kvm.h", "KVM_TPR_ACCESS_REPORTING", _IOC_READ|_IOC_WRITE, 0xae92, 0x28 },
+{ "linux/kvm.h", "KVM_TRANSLATE", _IOC_READ|_IOC_WRITE, 0xae85, 0x18 },
+{ "linux/kvm.h", "KVM_UNREGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae68, 0x10 },
+{ "linux/kvm.h", "KVM_X86_GET_MCE_CAP_SUPPORTED", _IOC_READ, 0xae9d, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SETUP_MCE", _IOC_WRITE, 0xae9c, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SET_MCE", _IOC_WRITE, 0xae9e, 0x40 },
+{ "linux/kvm.h", "KVM_XEN_HVM_CONFIG", _IOC_WRITE, 0xae7a, 0x38 },
+{ "linux/loop.h", "LOOP_CHANGE_FD", 0, 0x4C06, 0 },
+{ "linux/loop.h", "LOOP_CLR_FD", 0, 0x4C01, 0 },
+{ "linux/loop.h", "LOOP_CTL_ADD", 0, 0x4C80, 0 },
+{ "linux/loop.h", "LOOP_CTL_GET_FREE", 0, 0x4C82, 0 },
+{ "linux/loop.h", "LOOP_CTL_REMOVE", 0, 0x4C81, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS", 0, 0x4C03, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS64", 0, 0x4C05, 0 },
+{ "linux/loop.h", "LOOP_SET_CAPACITY", 0, 0x4C07, 0 },
+{ "linux/loop.h", "LOOP_SET_FD", 0, 0x4C00, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS", 0, 0x4C02, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS64", 0, 0x4C04, 0 },
+{ "linux/mISDNif.h", "IMADDTIMER", _IOC_READ, 0x4940, 0x04 },
+{ "linux/mISDNif.h", "IMCLEAR_L2", _IOC_READ, 0x4946, 0x04 },
+{ "linux/mISDNif.h", "IMCTRLREQ", _IOC_READ, 0x4945, 0x04 },
+{ "linux/mISDNif.h", "IMDELTIMER", _IOC_READ, 0x4941, 0x04 },
+{ "linux/mISDNif.h", "IMGETCOUNT", _IOC_READ, 0x4943, 0x04 },
+{ "linux/mISDNif.h", "IMGETDEVINFO", _IOC_READ, 0x4944, 0x04 },
+{ "linux/mISDNif.h", "IMGETVERSION", _IOC_READ, 0x4942, 0x04 },
+{ "linux/mISDNif.h", "IMHOLD_L1", _IOC_READ, 0x4948, 0x04 },
+{ "linux/mISDNif.h", "IMSETDEVNAME", _IOC_READ, 0x4947, 0x18 },
+{ "linux/matroxfb.h", "MATROXFB_GET_ALL_OUTPUTS", _IOC_READ, 0x6efb, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_AVAILABLE_OUTPUTS", _IOC_READ, 0x6ef9, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_CONNECTION", _IOC_READ, 0x6ef8, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_MODE", _IOC_READ|_IOC_WRITE, 0x6efa, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_CONNECTION", _IOC_WRITE, 0x6ef8, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_MODE", _IOC_WRITE, 0x6efa, 0x04 },
+{ "linux/media.h", "MEDIA_IOC_DEVICE_INFO", _IOC_READ|_IOC_WRITE, 0x7c00, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_ENTITIES", _IOC_READ|_IOC_WRITE, 0x7c01, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_LINKS", _IOC_READ|_IOC_WRITE, 0x7c02, 0x1c },
+{ "linux/media.h", "MEDIA_IOC_SETUP_LINK", _IOC_READ|_IOC_WRITE, 0x7c03, 0x34 },
+{ "linux/mei.h", "IOCTL_MEI_CONNECT_CLIENT", _IOC_READ|_IOC_WRITE, 0x4801, 0x10 },
+{ "linux/meye.h", "MEYEIOC_G_PARAMS", _IOC_READ, 0x76c0, 0x06 },
+{ "linux/meye.h", "MEYEIOC_QBUF_CAPT", _IOC_WRITE, 0x76c2, 0x04 },
+{ "linux/meye.h", "MEYEIOC_STILLCAPT", _IOC_NONE, 0x76c4, 0x00 },
+{ "linux/meye.h", "MEYEIOC_STILLJCAPT", _IOC_READ, 0x76c5, 0x04 },
+{ "linux/meye.h", "MEYEIOC_SYNC", _IOC_READ|_IOC_WRITE, 0x76c3, 0x04 },
+{ "linux/meye.h", "MEYEIOC_S_PARAMS", _IOC_WRITE, 0x76c1, 0x06 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_ADD_DEVICE", _IOC_READ|_IOC_WRITE, 0x7301, 0x04 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_CONFIG_CHANGE", _IOC_READ|_IOC_WRITE, 0x7305, 0x04 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_COPY_DESC", _IOC_READ|_IOC_WRITE, 0x7302, 0x04 },
+{ "linux/mmc/ioctl.h", "MMC_IOC_CMD", _IOC_READ|_IOC_WRITE, 0xb300, 0x48 },
+{ "linux/mmtimer.h", "MMTIMER_GETBITS", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETCOUNTER", _IOC_READ, 0x6d09, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_GETFREQ", _IOC_READ, 0x6d02, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_GETOFFSET", _IOC_NONE, 0x6d00, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETRES", _IOC_READ, 0x6d01, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_MMAPAVAIL", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_ATTRIBUTES", _IOC_READ, 0x7210, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_VOLUME_ID", _IOC_READ, 0x7213, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_SET_ATTRIBUTES", _IOC_WRITE, 0x7211, 0x04 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", _IOC_READ, 0x7201, 0x218 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", _IOC_READ, 0x7202, 0x218 },
+{ "linux/msm_mdp.h", "MSMFB_BLIT", _IOC_WRITE, 0x6d02, 0x04 },
+{ "linux/msm_mdp.h", "MSMFB_GRP_DISP", _IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/mtio.h", "MTIOCGET", _IOC_READ, 0x6d02, 0x1c },
+{ "linux/mtio.h", "MTIOCPOS", _IOC_READ, 0x6d03, 0x04 },
+{ "linux/mtio.h", "MTIOCTOP", _IOC_WRITE, 0x6d01, 0x08 },
+{ "linux/nbd.h", "NBD_CLEAR_QUE", _IOC_NONE, 0xab05, 0x00 },
+{ "linux/nbd.h", "NBD_CLEAR_SOCK", _IOC_NONE, 0xab04, 0x00 },
+{ "linux/nbd.h", "NBD_DISCONNECT", _IOC_NONE, 0xab08, 0x00 },
+{ "linux/nbd.h", "NBD_DO_IT", _IOC_NONE, 0xab03, 0x00 },
+{ "linux/nbd.h", "NBD_PRINT_DEBUG", _IOC_NONE, 0xab06, 0x00 },
+{ "linux/nbd.h", "NBD_SET_BLKSIZE", _IOC_NONE, 0xab01, 0x00 },
+{ "linux/nbd.h", "NBD_SET_FLAGS", _IOC_NONE, 0xab0a, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE", _IOC_NONE, 0xab02, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE_BLOCKS", _IOC_NONE, 0xab07, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SOCK", _IOC_NONE, 0xab00, 0x00 },
+{ "linux/nbd.h", "NBD_SET_TIMEOUT", _IOC_NONE, 0xab09, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", _IOC_NONE, 0x6e03, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETCHARSETS", _IOC_READ|_IOC_WRITE, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_GETDENTRYTTL", _IOC_WRITE, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", _IOC_WRITE, 0x6e02, 0x02 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID2", _IOC_WRITE, 0x6e02, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETOBJECTNAME", _IOC_READ|_IOC_WRITE, 0x6e09, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_GETPRIVATEDATA", _IOC_READ|_IOC_WRITE, 0x6e0a, 0x08 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETROOT", _IOC_WRITE, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", _IOC_READ|_IOC_WRITE, 0x6e04, 0x28 },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO_V2", _IOC_READ|_IOC_WRITE, 0x6e04, 0x24 },
+{ "linux/ncp_fs.h", "NCP_IOC_LOCKUNLOCK", _IOC_READ, 0x6e07, 0x14 },
+{ "linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", _IOC_READ, 0x6e01, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SETCHARSETS", _IOC_READ, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_SETDENTRYTTL", _IOC_READ, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETOBJECTNAME", _IOC_READ, 0x6e09, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SETPRIVATEDATA", _IOC_READ, 0x6e0a, 0x08 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETROOT", _IOC_READ, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SET_SIGN_WANTED", _IOC_WRITE, 0x6e06, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_INIT", _IOC_READ, 0x6e05, 0x18 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_WANTED", _IOC_READ, 0x6e06, 0x04 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CHANGE_CPMODE", _IOC_WRITE, 0x6e80, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CLEAN_SEGMENTS", _IOC_WRITE, 0x6e88, 0x78 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_DELETE_CHECKPOINT", _IOC_WRITE, 0x6e81, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_BDESCS", _IOC_READ|_IOC_WRITE, 0x6e87, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPINFO", _IOC_READ, 0x6e82, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPSTAT", _IOC_READ, 0x6e83, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUINFO", _IOC_READ, 0x6e84, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUSTAT", _IOC_READ, 0x6e85, 0x30 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_VINFO", _IOC_READ|_IOC_WRITE, 0x6e86, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_RESIZE", _IOC_WRITE, 0x6e8b, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_ALLOC_RANGE", _IOC_WRITE, 0x6e8c, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_SUINFO", _IOC_WRITE, 0x6e8d, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SYNC", _IOC_READ, 0x6e8a, 0x08 },
+{ "linux/nvme.h", "NVME_IOCTL_ADMIN_CMD", _IOC_READ|_IOC_WRITE, 0x4e41, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_ID", _IOC_NONE, 0x4e40, 0x00 },
+{ "linux/nvme.h", "NVME_IOCTL_IO_CMD", _IOC_READ|_IOC_WRITE, 0x4e43, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_SUBMIT_IO", _IOC_WRITE, 0x4e42, 0x2c },
+{ "linux/nvram.h", "NVRAM_INIT", _IOC_NONE, 0x7040, 0x00 },
+{ "linux/nvram.h", "NVRAM_SETCKS", _IOC_NONE, 0x7041, 0x00 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AEWB_CFG", _IOC_READ|_IOC_WRITE, 0x56c3, 0x20 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AF_CFG", _IOC_READ|_IOC_WRITE, 0x56c5, 0x4c },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_CCDC_CFG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x20 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_HIST_CFG", _IOC_READ|_IOC_WRITE, 0x56c4, 0x30 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_PRV_CFG", _IOC_READ|_IOC_WRITE, 0x56c2, 0x3c },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_EN", _IOC_READ|_IOC_WRITE, 0x56c7, 0x04 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_REQ", _IOC_READ|_IOC_WRITE, 0x56c6, 0x18 },
+{ "linux/omapfb.h", "OMAPFB_CTRL_TEST", _IOC_WRITE, 0x4f2e, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_CAPS", _IOC_READ, 0x4f2a, 0x0c },
+{ "linux/omapfb.h", "OMAPFB_GET_COLOR_KEY", _IOC_WRITE, 0x4f33, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_GET_DISPLAY_INFO", _IOC_READ, 0x4f3f, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_GET_OVERLAY_COLORMODE", _IOC_READ, 0x4f3b, 0x3c },
+{ "linux/omapfb.h", "OMAPFB_GET_UPDATE_MODE", _IOC_WRITE, 0x4f2b, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_VRAM_INFO", _IOC_READ, 0x4f3d, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_LCD_TEST", _IOC_WRITE, 0x4f2d, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_MEMORY_READ", _IOC_READ, 0x4f3a, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_MIRROR", _IOC_WRITE, 0x4f1f, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_MEM", _IOC_WRITE, 0x4f38, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_PLANE", _IOC_WRITE, 0x4f35, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_MEM", _IOC_WRITE, 0x4f37, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_PLANE", _IOC_WRITE, 0x4f34, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SET_COLOR_KEY", _IOC_WRITE, 0x4f32, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_SET_TEARSYNC", _IOC_WRITE, 0x4f3e, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SET_UPDATE_MODE", _IOC_WRITE, 0x4f28, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_SYNC_GFX", _IOC_NONE, 0x4f25, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW", _IOC_WRITE, 0x4f36, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW_OLD", _IOC_WRITE, 0x4f2f, 0x14 },
+{ "linux/omapfb.h", "OMAPFB_VSYNC", _IOC_NONE, 0x4f26, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORGO", _IOC_NONE, 0x4f3c, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORVSYNC", _IOC_NONE, 0x4f39, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_DISABLE", _IOC_NONE, 0x2401, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ENABLE", _IOC_NONE, 0x2400, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ID", _IOC_READ, 0x2407, 0x04 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_PERIOD", _IOC_WRITE, 0x2404, 0x08 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_REFRESH", _IOC_NONE, 0x2402, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_RESET", _IOC_NONE, 0x2403, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_FILTER", _IOC_WRITE, 0x2406, 0x04 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_OUTPUT", _IOC_NONE, 0x2405, 0x00 },
+{ "linux/phantom.h", "PHN_GETREG", _IOC_READ|_IOC_WRITE, 0x7005, 0x08 },
+{ "linux/phantom.h", "PHN_GETREGS", _IOC_READ|_IOC_WRITE, 0x7007, 0x28 },
+{ "linux/phantom.h", "PHN_GET_REG", _IOC_READ|_IOC_WRITE, 0x7000, 0x04 },
+{ "linux/phantom.h", "PHN_GET_REGS", _IOC_READ|_IOC_WRITE, 0x7002, 0x04 },
+{ "linux/phantom.h", "PHN_NOT_OH", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/phantom.h", "PHN_SETREG", _IOC_WRITE, 0x7006, 0x08 },
+{ "linux/phantom.h", "PHN_SETREGS", _IOC_WRITE, 0x7008, 0x28 },
+{ "linux/phantom.h", "PHN_SET_REG", _IOC_WRITE, 0x7001, 0x04 },
+{ "linux/phantom.h", "PHN_SET_REGS", _IOC_WRITE, 0x7003, 0x04 },
+{ "linux/pktcdvd.h", "PACKET_CTRL_CMD", _IOC_READ|_IOC_WRITE, 0x5801, 0x18 },
+{ "linux/pmu.h", "PMU_IOC_CAN_SLEEP", _IOC_READ, 0x4205, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GET_BACKLIGHT", _IOC_READ, 0x4201, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GET_MODEL", _IOC_READ, 0x4203, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GRAB_BACKLIGHT", _IOC_READ, 0x4206, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_HAS_ADB", _IOC_READ, 0x4204, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_SET_BACKLIGHT", _IOC_WRITE, 0x4202, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_SLEEP", _IOC_NONE, 0x4200, 0x00 },
+{ "linux/ppdev.h", "PPCLAIM", _IOC_NONE, 0x708b, 0x00 },
+{ "linux/ppdev.h", "PPCLRIRQ", _IOC_READ, 0x7093, 0x04 },
+{ "linux/ppdev.h", "PPDATADIR", _IOC_WRITE, 0x7090, 0x04 },
+{ "linux/ppdev.h", "PPEXCL", _IOC_NONE, 0x708f, 0x00 },
+{ "linux/ppdev.h", "PPFCONTROL", _IOC_WRITE, 0x708e, 0x02 },
+{ "linux/ppdev.h", "PPGETFLAGS", _IOC_READ, 0x709a, 0x04 },
+{ "linux/ppdev.h", "PPGETMODE", _IOC_READ, 0x7098, 0x04 },
+{ "linux/ppdev.h", "PPGETMODES", _IOC_READ, 0x7097, 0x04 },
+{ "linux/ppdev.h", "PPGETPHASE", _IOC_READ, 0x7099, 0x04 },
+{ "linux/ppdev.h", "PPGETTIME", _IOC_READ, 0x7095, 0x08 },
+{ "linux/ppdev.h", "PPNEGOT", _IOC_WRITE, 0x7091, 0x04 },
+{ "linux/ppdev.h", "PPRCONTROL", _IOC_READ, 0x7083, 0x01 },
+{ "linux/ppdev.h", "PPRDATA", _IOC_READ, 0x7085, 0x01 },
+{ "linux/ppdev.h", "PPRELEASE", _IOC_NONE, 0x708c, 0x00 },
+{ "linux/ppdev.h", "PPRSTATUS", _IOC_READ, 0x7081, 0x01 },
+{ "linux/ppdev.h", "PPSETFLAGS", _IOC_WRITE, 0x709b, 0x04 },
+{ "linux/ppdev.h", "PPSETMODE", _IOC_WRITE, 0x7080, 0x04 },
+{ "linux/ppdev.h", "PPSETPHASE", _IOC_WRITE, 0x7094, 0x04 },
+{ "linux/ppdev.h", "PPSETTIME", _IOC_WRITE, 0x7096, 0x08 },
+{ "linux/ppdev.h", "PPWCONTROL", _IOC_WRITE, 0x7084, 0x01 },
+{ "linux/ppdev.h", "PPWCTLONIRQ", _IOC_WRITE, 0x7092, 0x01 },
+{ "linux/ppdev.h", "PPWDATA", _IOC_WRITE, 0x7086, 0x01 },
+{ "linux/ppdev.h", "PPYIELD", _IOC_NONE, 0x708d, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTACH", _IOC_WRITE, 0x743d, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTCHAN", _IOC_WRITE, 0x7438, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCCONNECT", _IOC_WRITE, 0x743a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDETACH", _IOC_WRITE, 0x743c, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDISCONN", _IOC_NONE, 0x7439, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCGASYNCMAP", _IOC_READ, 0x7458, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGCHAN", _IOC_READ, 0x7437, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGDEBUG", _IOC_READ, 0x7441, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGFLAGS", _IOC_READ, 0x745a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGIDLE", _IOC_READ, 0x743f, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCGL2TPSTATS", _IOC_READ, 0x7436, 0x48 },
+{ "linux/ppp-ioctl.h", "PPPIOCGMRU", _IOC_READ, 0x7453, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGNPMODE", _IOC_READ|_IOC_WRITE, 0x744c, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCGRASYNCMAP", _IOC_READ, 0x7455, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGUNIT", _IOC_READ, 0x7456, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGXASYNCMAP", _IOC_READ, 0x7450, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCNEWUNIT", _IOC_READ|_IOC_WRITE, 0x743e, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSACTIVE", _IOC_WRITE, 0x7446, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSASYNCMAP", _IOC_WRITE, 0x7457, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSCOMPRESS", _IOC_WRITE, 0x744d, 0x0c },
+{ "linux/ppp-ioctl.h", "PPPIOCSDEBUG", _IOC_WRITE, 0x7440, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSFLAGS", _IOC_WRITE, 0x7459, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMAXCID", _IOC_WRITE, 0x7451, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRRU", _IOC_WRITE, 0x743b, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRU", _IOC_WRITE, 0x7452, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSNPMODE", _IOC_WRITE, 0x744b, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSPASS", _IOC_WRITE, 0x7447, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSRASYNCMAP", _IOC_WRITE, 0x7454, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSXASYNCMAP", _IOC_WRITE, 0x744f, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCXFERUNIT", _IOC_NONE, 0x744e, 0x00 },
+{ "linux/pps.h", "PPS_FETCH", _IOC_READ|_IOC_WRITE, 0x70a4, 0x04 },
+{ "linux/pps.h", "PPS_GETCAP", _IOC_READ, 0x70a3, 0x04 },
+{ "linux/pps.h", "PPS_GETPARAMS", _IOC_READ, 0x70a1, 0x04 },
+{ "linux/pps.h", "PPS_KC_BIND", _IOC_WRITE, 0x70a5, 0x04 },
+{ "linux/pps.h", "PPS_SETPARAMS", _IOC_WRITE, 0x70a2, 0x04 },
+{ "linux/ptp_clock.h", "PTP_CLOCK_GETCAPS", _IOC_READ, 0x3d01, 0x50 },
+{ "linux/ptp_clock.h", "PTP_ENABLE_PPS", _IOC_WRITE, 0x3d04, 0x04 },
+{ "linux/ptp_clock.h", "PTP_EXTTS_REQUEST", _IOC_WRITE, 0x3d02, 0x10 },
+{ "linux/ptp_clock.h", "PTP_PEROUT_REQUEST", _IOC_WRITE, 0x3d03, 0x38 },
+{ "linux/ptp_clock.h", "PTP_PIN_GETFUNC", _IOC_READ|_IOC_WRITE, 0x3d06, 0x60 },
+{ "linux/ptp_clock.h", "PTP_PIN_SETFUNC", _IOC_WRITE, 0x3d07, 0x60 },
+{ "linux/ptp_clock.h", "PTP_SYS_OFFSET", _IOC_WRITE, 0x3d05, 0x340 },
+{ "linux/radeonfb.h", "FBIO_RADEON_GET_MIRROR", _IOC_READ, 0x4003, 0x04 },
+{ "linux/radeonfb.h", "FBIO_RADEON_SET_MIRROR", _IOC_WRITE, 0x4004, 0x04 },
+{ "linux/raid/md_u.h", "ADD_NEW_DISK", _IOC_WRITE, 0x0921, 0x14 },
+{ "linux/raid/md_u.h", "CLEAR_ARRAY", _IOC_NONE, 0x0920, 0x00 },
+{ "linux/raid/md_u.h", "GET_ARRAY_INFO", _IOC_READ, 0x0911, 0x48 },
+{ "linux/raid/md_u.h", "GET_BITMAP_FILE", _IOC_READ, 0x0915, 0x1000 },
+{ "linux/raid/md_u.h", "GET_DISK_INFO", _IOC_READ, 0x0912, 0x14 },
+{ "linux/raid/md_u.h", "HOT_ADD_DISK", _IOC_NONE, 0x0928, 0x00 },
+{ "linux/raid/md_u.h", "HOT_GENERATE_ERROR", _IOC_NONE, 0x092a, 0x00 },
+{ "linux/raid/md_u.h", "HOT_REMOVE_DISK", _IOC_NONE, 0x0922, 0x00 },
+{ "linux/raid/md_u.h", "PROTECT_ARRAY", _IOC_NONE, 0x0927, 0x00 },
+{ "linux/raid/md_u.h", "RAID_AUTORUN", _IOC_NONE, 0x0914, 0x00 },
+{ "linux/raid/md_u.h", "RAID_VERSION", _IOC_READ, 0x0910, 0x0c },
+{ "linux/raid/md_u.h", "RESTART_ARRAY_RW", _IOC_NONE, 0x0934, 0x00 },
+{ "linux/raid/md_u.h", "RUN_ARRAY", _IOC_WRITE, 0x0930, 0x0c },
+{ "linux/raid/md_u.h", "SET_ARRAY_INFO", _IOC_WRITE, 0x0923, 0x48 },
+{ "linux/raid/md_u.h", "SET_BITMAP_FILE", _IOC_WRITE, 0x092b, 0x04 },
+{ "linux/raid/md_u.h", "SET_DISK_FAULTY", _IOC_NONE, 0x0929, 0x00 },
+{ "linux/raid/md_u.h", "SET_DISK_INFO", _IOC_NONE, 0x0924, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY", _IOC_NONE, 0x0932, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY_RO", _IOC_NONE, 0x0933, 0x00 },
+{ "linux/raid/md_u.h", "UNPROTECT_ARRAY", _IOC_NONE, 0x0926, 0x00 },
+{ "linux/raid/md_u.h", "WRITE_RAID_INFO", _IOC_NONE, 0x0925, 0x00 },
+{ "linux/random.h", "RNDADDENTROPY", _IOC_WRITE, 0x5203, 0x08 },
+{ "linux/random.h", "RNDADDTOENTCNT", _IOC_WRITE, 0x5201, 0x04 },
+{ "linux/random.h", "RNDCLEARPOOL", _IOC_NONE, 0x5206, 0x00 },
+{ "linux/random.h", "RNDGETENTCNT", _IOC_READ, 0x5200, 0x04 },
+{ "linux/random.h", "RNDGETPOOL", _IOC_READ, 0x5202, 0x08 },
+{ "linux/random.h", "RNDZAPENTCNT", _IOC_NONE, 0x5204, 0x00 },
+{ "linux/raw.h", "RAW_GETBIND", _IOC_NONE, 0xac01, 0x00 },
+{ "linux/raw.h", "RAW_SETBIND", _IOC_NONE, 0xac00, 0x00 },
+{ "linux/reiserfs_fs.h", "REISERFS_IOC_UNPACK", _IOC_WRITE, 0xcd01, 0x04 },
+{ "linux/rfkill.h", "RFKILL_IOCTL_NOINPUT", _IOC_NONE, 0x5201, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_OFF", _IOC_NONE, 0x7002, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_ON", _IOC_NONE, 0x7001, 0x00 },
+{ "linux/rtc.h", "RTC_ALM_READ", _IOC_READ, 0x7008, 0x24 },
+{ "linux/rtc.h", "RTC_ALM_SET", _IOC_WRITE, 0x7007, 0x24 },
+{ "linux/rtc.h", "RTC_EPOCH_READ", _IOC_READ, 0x700d, 0x04 },
+{ "linux/rtc.h", "RTC_EPOCH_SET", _IOC_WRITE, 0x700e, 0x04 },
+{ "linux/rtc.h", "RTC_IRQP_READ", _IOC_READ, 0x700b, 0x04 },
+{ "linux/rtc.h", "RTC_IRQP_SET", _IOC_WRITE, 0x700c, 0x04 },
+{ "linux/rtc.h", "RTC_PIE_OFF", _IOC_NONE, 0x7006, 0x00 },
+{ "linux/rtc.h", "RTC_PIE_ON", _IOC_NONE, 0x7005, 0x00 },
+{ "linux/rtc.h", "RTC_PLL_GET", _IOC_READ, 0x7011, 0x1c },
+{ "linux/rtc.h", "RTC_PLL_SET", _IOC_WRITE, 0x7012, 0x1c },
+{ "linux/rtc.h", "RTC_RD_TIME", _IOC_READ, 0x7009, 0x24 },
+{ "linux/rtc.h", "RTC_SET_TIME", _IOC_WRITE, 0x700a, 0x24 },
+{ "linux/rtc.h", "RTC_UIE_OFF", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/rtc.h", "RTC_UIE_ON", _IOC_NONE, 0x7003, 0x00 },
+{ "linux/rtc.h", "RTC_VL_CLR", _IOC_NONE, 0x7014, 0x00 },
+{ "linux/rtc.h", "RTC_VL_READ", _IOC_READ, 0x7013, 0x04 },
+{ "linux/rtc.h", "RTC_WIE_OFF", _IOC_NONE, 0x7010, 0x00 },
+{ "linux/rtc.h", "RTC_WIE_ON", _IOC_NONE, 0x700f, 0x00 },
+{ "linux/rtc.h", "RTC_WKALM_RD", _IOC_READ, 0x7010, 0x28 },
+{ "linux/rtc.h", "RTC_WKALM_SET", _IOC_WRITE, 0x700f, 0x28 },
+{ "linux/serio.h", "SPIOCSTYPE", _IOC_WRITE, 0x7101, 0x04 },
+{ "linux/sockios.h", "SIOCADDDLCI", 0, 0x8980, 0 },
+{ "linux/sockios.h", "SIOCADDMULTI", 0, 0x8931, 0 },
+{ "linux/sockios.h", "SIOCADDRT", 0, 0x890B, 0 },
+{ "linux/sockios.h", "SIOCBONDCHANGEACTIVE", 0, 0x8995, 0 },
+{ "linux/sockios.h", "SIOCBONDENSLAVE", 0, 0x8990, 0 },
+{ "linux/sockios.h", "SIOCBONDINFOQUERY", 0, 0x8994, 0 },
+{ "linux/sockios.h", "SIOCBONDRELEASE", 0, 0x8991, 0 },
+{ "linux/sockios.h", "SIOCBONDSETHWADDR", 0, 0x8992, 0 },
+{ "linux/sockios.h", "SIOCBONDSLAVEINFOQUERY", 0, 0x8993, 0 },
+{ "linux/sockios.h", "SIOCBRADDBR", 0, 0x89a0, 0 },
+{ "linux/sockios.h", "SIOCBRADDIF", 0, 0x89a2, 0 },
+{ "linux/sockios.h", "SIOCBRDELBR", 0, 0x89a1, 0 },
+{ "linux/sockios.h", "SIOCBRDELIF", 0, 0x89a3, 0 },
+{ "linux/sockios.h", "SIOCDARP", 0, 0x8953, 0 },
+{ "linux/sockios.h", "SIOCDELDLCI", 0, 0x8981, 0 },
+{ "linux/sockios.h", "SIOCDELMULTI", 0, 0x8932, 0 },
+{ "linux/sockios.h", "SIOCDELRT", 0, 0x890C, 0 },
+{ "linux/sockios.h", "SIOCDEVPRIVATE", 0, 0x89F0, 0 },
+{ "linux/sockios.h", "SIOCDIFADDR", 0, 0x8936, 0 },
+{ "linux/sockios.h", "SIOCDRARP", 0, 0x8960, 0 },
+{ "linux/sockios.h", "SIOCETHTOOL", 0, 0x8946, 0 },
+{ "linux/sockios.h", "SIOCGARP", 0, 0x8954, 0 },
+{ "linux/sockios.h", "SIOCGHWTSTAMP", 0, 0x89b1, 0 },
+{ "linux/sockios.h", "SIOCGIFADDR", 0, 0x8915, 0 },
+{ "linux/sockios.h", "SIOCGIFBR", 0, 0x8940, 0 },
+{ "linux/sockios.h", "SIOCGIFBRDADDR", 0, 0x8919, 0 },
+{ "linux/sockios.h", "SIOCGIFCONF", 0, 0x8912, 0 },
+{ "linux/sockios.h", "SIOCGIFCOUNT", 0, 0x8938, 0 },
+{ "linux/sockios.h", "SIOCGIFDSTADDR", 0, 0x8917, 0 },
+{ "linux/sockios.h", "SIOCGIFENCAP", 0, 0x8925, 0 },
+{ "linux/sockios.h", "SIOCGIFFLAGS", 0, 0x8913, 0 },
+{ "linux/sockios.h", "SIOCGIFHWADDR", 0, 0x8927, 0 },
+{ "linux/sockios.h", "SIOCGIFINDEX", 0, 0x8933, 0 },
+{ "linux/sockios.h", "SIOCGIFMAP", 0, 0x8970, 0 },
+{ "linux/sockios.h", "SIOCGIFMEM", 0, 0x891f, 0 },
+{ "linux/sockios.h", "SIOCGIFMETRIC", 0, 0x891d, 0 },
+{ "linux/sockios.h", "SIOCGIFMTU", 0, 0x8921, 0 },
+{ "linux/sockios.h", "SIOCGIFNAME", 0, 0x8910, 0 },
+{ "linux/sockios.h", "SIOCGIFNETMASK", 0, 0x891b, 0 },
+{ "linux/sockios.h", "SIOCGIFPFLAGS", 0, 0x8935, 0 },
+{ "linux/sockios.h", "SIOCGIFSLAVE", 0, 0x8929, 0 },
+{ "linux/sockios.h", "SIOCGIFTXQLEN", 0, 0x8942, 0 },
+{ "linux/sockios.h", "SIOCGIFVLAN", 0, 0x8982, 0 },
+{ "linux/sockios.h", "SIOCGMIIPHY", 0, 0x8947, 0 },
+{ "linux/sockios.h", "SIOCGMIIREG", 0, 0x8948, 0 },
+{ "linux/sockios.h", "SIOCGRARP", 0, 0x8961, 0 },
+{ "linux/sockios.h", "SIOCOUTQNSD", 0, 0x894B, 0 },
+{ "linux/sockios.h", "SIOCPROTOPRIVATE", 0, 0x89E0, 0 },
+{ "linux/sockios.h", "SIOCRTMSG", 0, 0x890D, 0 },
+{ "linux/sockios.h", "SIOCSARP", 0, 0x8955, 0 },
+{ "linux/sockios.h", "SIOCSHWTSTAMP", 0, 0x89b0, 0 },
+{ "linux/sockios.h", "SIOCSIFADDR", 0, 0x8916, 0 },
+{ "linux/sockios.h", "SIOCSIFBR", 0, 0x8941, 0 },
+{ "linux/sockios.h", "SIOCSIFBRDADDR", 0, 0x891a, 0 },
+{ "linux/sockios.h", "SIOCSIFDSTADDR", 0, 0x8918, 0 },
+{ "linux/sockios.h", "SIOCSIFENCAP", 0, 0x8926, 0 },
+{ "linux/sockios.h", "SIOCSIFFLAGS", 0, 0x8914, 0 },
+{ "linux/sockios.h", "SIOCSIFHWADDR", 0, 0x8924, 0 },
+{ "linux/sockios.h", "SIOCSIFHWBROADCAST", 0, 0x8937, 0 },
+{ "linux/sockios.h", "SIOCSIFLINK", 0, 0x8911, 0 },
+{ "linux/sockios.h", "SIOCSIFMAP", 0, 0x8971, 0 },
+{ "linux/sockios.h", "SIOCSIFMEM", 0, 0x8920, 0 },
+{ "linux/sockios.h", "SIOCSIFMETRIC", 0, 0x891e, 0 },
+{ "linux/sockios.h", "SIOCSIFMTU", 0, 0x8922, 0 },
+{ "linux/sockios.h", "SIOCSIFNAME", 0, 0x8923, 0 },
+{ "linux/sockios.h", "SIOCSIFNETMASK", 0, 0x891c, 0 },
+{ "linux/sockios.h", "SIOCSIFPFLAGS", 0, 0x8934, 0 },
+{ "linux/sockios.h", "SIOCSIFSLAVE", 0, 0x8930, 0 },
+{ "linux/sockios.h", "SIOCSIFTXQLEN", 0, 0x8943, 0 },
+{ "linux/sockios.h", "SIOCSIFVLAN", 0, 0x8983, 0 },
+{ "linux/sockios.h", "SIOCSMIIREG", 0, 0x8949, 0 },
+{ "linux/sockios.h", "SIOCSRARP", 0, 0x8962, 0 },
+{ "linux/sockios.h", "SIOCWANDEV", 0, 0x894A, 0 },
+{ "linux/sonet.h", "SONET_CLRDIAG", _IOC_READ|_IOC_WRITE, 0x6113, 0x04 },
+{ "linux/sonet.h", "SONET_GETDIAG", _IOC_READ, 0x6114, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRAMING", _IOC_READ, 0x6116, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRSENSE", _IOC_READ, 0x6117, 0x06 },
+{ "linux/sonet.h", "SONET_GETSTAT", _IOC_READ, 0x6110, 0x24 },
+{ "linux/sonet.h", "SONET_GETSTATZ", _IOC_READ, 0x6111, 0x24 },
+{ "linux/sonet.h", "SONET_SETDIAG", _IOC_READ|_IOC_WRITE, 0x6112, 0x04 },
+{ "linux/sonet.h", "SONET_SETFRAMING", _IOC_WRITE, 0x6115, 0x04 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1CAP", _IOC_READ, 0x7602, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1REM", _IOC_READ, 0x7603, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2CAP", _IOC_READ, 0x7604, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2REM", _IOC_READ, 0x7605, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBATFLAGS", _IOC_READ, 0x7607, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBLUE", _IOC_READ, 0x7608, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBRT", _IOC_READ, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGFAN", _IOC_READ, 0x760a, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGTEMP", _IOC_READ, 0x760c, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBLUE", _IOC_WRITE, 0x7609, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBRT", _IOC_WRITE, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSFAN", _IOC_WRITE, 0x760b, 0x01 },
+{ "linux/soundcard.h", "OSS_GETVERSION", _IOC_READ, 0x4d76, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_COPR_HALT", _IOC_READ|_IOC_WRITE, 0x4307, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_LOAD", _IOC_READ|_IOC_WRITE, 0x4301, 0xfb0 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCODE", _IOC_READ|_IOC_WRITE, 0x4303, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCVMSG", _IOC_READ, 0x4309, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RDATA", _IOC_READ|_IOC_WRITE, 0x4302, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RESET", _IOC_NONE, 0x4300, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RUN", _IOC_READ|_IOC_WRITE, 0x4306, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_SENDMSG", _IOC_READ|_IOC_WRITE, 0x4308, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WCODE", _IOC_WRITE, 0x4305, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WDATA", _IOC_WRITE, 0x4304, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_DSP_BIND_CHANNEL", _IOC_READ|_IOC_WRITE, 0x5041, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_CHANNELS", _IOC_READ|_IOC_WRITE, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", _IOC_READ|_IOC_WRITE, 0x5004, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCAPS", _IOC_READ, 0x500f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCHANNELMASK", _IOC_READ|_IOC_WRITE, 0x5040, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETFMTS", _IOC_READ, 0x500b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETIPTR", _IOC_READ, 0x5011, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETISPACE", _IOC_READ, 0x500d, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETODELAY", _IOC_READ, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOPTR", _IOC_READ, 0x5012, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", _IOC_READ, 0x500c, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETSPDIF", _IOC_READ, 0x5043, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", _IOC_READ, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", _IOC_READ, 0x5013, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", _IOC_READ, 0x5014, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", _IOC_NONE, 0x500e, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_POST", _IOC_NONE, 0x5008, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_PROFILE", _IOC_WRITE, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_RESET", _IOC_NONE, 0x5000, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", _IOC_NONE, 0x5016, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFMT", _IOC_READ|_IOC_WRITE, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", _IOC_READ|_IOC_WRITE, 0x500a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSPDIF", _IOC_WRITE, 0x5042, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", _IOC_NONE, 0x5015, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", _IOC_WRITE, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SPEED", _IOC_READ|_IOC_WRITE, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_STEREO", _IOC_READ|_IOC_WRITE, 0x5003, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", _IOC_READ|_IOC_WRITE, 0x5009, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SYNC", _IOC_NONE, 0x5001, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", _IOC_WRITE, 0x510f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", _IOC_WRITE, 0x5107, 0x28 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_INFO", _IOC_READ|_IOC_WRITE, 0x510c, 0x74 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", _IOC_READ|_IOC_WRITE, 0x6d02, 0x21 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", _IOC_READ|_IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_PRETIME", _IOC_READ|_IOC_WRITE, 0x6d00, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", _IOC_READ|_IOC_WRITE, 0x5103, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", _IOC_READ, 0x5105, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", _IOC_READ, 0x5104, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETTIME", _IOC_READ, 0x5113, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", _IOC_READ, 0x510b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", _IOC_READ, 0x510a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", _IOC_WRITE, 0x5112, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PANIC", _IOC_NONE, 0x5111, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", _IOC_WRITE, 0x5106, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESET", _IOC_NONE, 0x5100, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", _IOC_WRITE, 0x5109, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_SYNC", _IOC_NONE, 0x5101, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", _IOC_WRITE, 0x5108, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", _IOC_WRITE, 0x510d, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_CONTROL", _IOC_READ|_IOC_WRITE, 0x5115, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_ID", _IOC_READ|_IOC_WRITE, 0x5114, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_INFO", _IOC_READ|_IOC_WRITE, 0x5102, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", _IOC_READ|_IOC_WRITE, 0x510e, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_REMOVESAMPLE", _IOC_READ|_IOC_WRITE, 0x5116, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_TMR_CONTINUE", _IOC_NONE, 0x5404, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_METRONOME", _IOC_WRITE, 0x5407, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SELECT", _IOC_WRITE, 0x5408, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SOURCE", _IOC_READ|_IOC_WRITE, 0x5406, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_START", _IOC_NONE, 0x5402, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_STOP", _IOC_NONE, 0x5403, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TEMPO", _IOC_READ|_IOC_WRITE, 0x5405, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", _IOC_READ|_IOC_WRITE, 0x5401, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_3DSE", _IOC_READ|_IOC_WRITE, 0x4d68, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_ACCESS", _IOC_READ|_IOC_WRITE, 0x4d66, 0x80 },
+{ "linux/soundcard.h", "SOUND_MIXER_AGC", _IOC_READ|_IOC_WRITE, 0x4d67, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_GETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d74, 0xa4 },
+{ "linux/soundcard.h", "SOUND_MIXER_INFO", _IOC_READ, 0x4d65, 0x5c },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE1", _IOC_READ|_IOC_WRITE, 0x4d6f, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE2", _IOC_READ|_IOC_WRITE, 0x4d70, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE3", _IOC_READ|_IOC_WRITE, 0x4d71, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE4", _IOC_READ|_IOC_WRITE, 0x4d72, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE5", _IOC_READ|_IOC_WRITE, 0x4d73, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_SETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d75, 0xa4 },
+{ "linux/soundcard.h", "SOUND_OLD_MIXER_INFO", _IOC_READ, 0x4d65, 0x30 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_BITS", _IOC_READ, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", _IOC_READ, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_FILTER", _IOC_READ, 0x5007, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_RATE", _IOC_READ, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", _IOC_READ|_IOC_WRITE, 0x5007, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_BITS_PER_WORD", _IOC_READ, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_LSB_FIRST", _IOC_READ, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MAX_SPEED_HZ", _IOC_READ, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE", _IOC_READ, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE32", _IOC_READ, 0x6b05, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_BITS_PER_WORD", _IOC_WRITE, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_LSB_FIRST", _IOC_WRITE, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MAX_SPEED_HZ", _IOC_WRITE, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE", _IOC_WRITE, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE32", _IOC_WRITE, 0x6b05, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ALLOC_SWAP_PAGE", _IOC_READ, 0x3314, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ATOMIC_RESTORE", _IOC_NONE, 0x3304, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_AVAIL_SWAP_SIZE", _IOC_READ, 0x3313, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_CREATE_IMAGE", _IOC_WRITE, 0x3311, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE", _IOC_NONE, 0x3305, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREEZE", _IOC_NONE, 0x3301, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE_SWAP_PAGES", _IOC_NONE, 0x3309, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_GET_IMAGE_SIZE", _IOC_READ, 0x330e, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PLATFORM_SUPPORT", _IOC_NONE, 0x330f, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_POWER_OFF", _IOC_NONE, 0x3310, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PREF_IMAGE_SIZE", _IOC_NONE, 0x3312, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_S2RAM", _IOC_NONE, 0x330b, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_SET_SWAP_AREA", _IOC_WRITE, 0x330d, 0x0c },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_UNFREEZE", _IOC_NONE, 0x3302, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCCLRMODCOUNT", _IOC_NONE, 0x6d0f, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGGPIO", _IOC_READ, 0x6d11, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCGIF", _IOC_NONE, 0x6d0b, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGPARAMS", _IOC_READ, 0x6d01, 0x20 },
+{ "linux/synclink.h", "MGSL_IOCGSTATS", _IOC_NONE, 0x6d07, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGTXIDLE", _IOC_NONE, 0x6d03, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXCTRL", _IOC_NONE, 0x6d16, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXSYNC", _IOC_NONE, 0x6d14, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCLOOPTXDONE", _IOC_NONE, 0x6d09, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCRXENABLE", _IOC_NONE, 0x6d05, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSGPIO", _IOC_WRITE, 0x6d10, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCSIF", _IOC_NONE, 0x6d0a, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSPARAMS", _IOC_WRITE, 0x6d00, 0x20 },
+{ "linux/synclink.h", "MGSL_IOCSTXIDLE", _IOC_NONE, 0x6d02, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXCTRL", _IOC_NONE, 0x6d15, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXSYNC", _IOC_NONE, 0x6d13, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXABORT", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXENABLE", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCWAITEVENT", _IOC_READ|_IOC_WRITE, 0x6d08, 0x04 },
+{ "linux/synclink.h", "MGSL_IOCWAITGPIO", _IOC_READ|_IOC_WRITE, 0x6d12, 0x10 },
+{ "linux/telephony.h", "OLD_PHONE_RING_START", _IOC_NONE, 0x7187, 0x00 },
+{ "linux/telephony.h", "PHONE_BUSY", _IOC_NONE, 0x71a1, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES", _IOC_NONE, 0x7180, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_CHECK", _IOC_WRITE, 0x7182, 0x04 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_LIST", _IOC_READ, 0x7181, 0x04 },
+{ "linux/telephony.h", "PHONE_CPT_STOP", _IOC_NONE, 0x71a4, 0x00 },
+{ "linux/telephony.h", "PHONE_DIALTONE", _IOC_NONE, 0x71a3, 0x00 },
+{ "linux/telephony.h", "PHONE_DTMF_OOB", _IOC_WRITE, 0x7199, 0x04 },
+{ "linux/telephony.h", "PHONE_DTMF_READY", _IOC_READ, 0x7196, 0x04 },
+{ "linux/telephony.h", "PHONE_EXCEPTION", _IOC_READ, 0x719a, 0x04 },
+{ "linux/telephony.h", "PHONE_FRAME", _IOC_WRITE, 0x718d, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF", _IOC_READ, 0x7197, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF_ASCII", _IOC_READ, 0x7198, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_TONE_OFF_TIME", _IOC_NONE, 0x719f, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_ON_TIME", _IOC_NONE, 0x719e, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_STATE", _IOC_NONE, 0x71a0, 0x00 },
+{ "linux/telephony.h", "PHONE_HOOKSTATE", _IOC_NONE, 0x7184, 0x00 },
+{ "linux/telephony.h", "PHONE_MAXRINGS", _IOC_WRITE, 0x7185, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_CODEC", _IOC_WRITE, 0x7190, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_DEPTH", _IOC_WRITE, 0x7193, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_LEVEL", _IOC_NONE, 0x7195, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_START", _IOC_NONE, 0x7191, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_STOP", _IOC_NONE, 0x7192, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_TONE", _IOC_WRITE, 0x719b, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME", _IOC_WRITE, 0x7194, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME_LINEAR", _IOC_WRITE, 0x71dc, 0x04 },
+{ "linux/telephony.h", "PHONE_PSTN_GET_STATE", _IOC_NONE, 0x71a5, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_LINETEST", _IOC_NONE, 0x71a8, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_SET_STATE", _IOC_WRITE, 0x71a4, 0x04 },
+{ "linux/telephony.h", "PHONE_QUERY_CODEC", _IOC_READ|_IOC_WRITE, 0x71a7, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_CODEC", _IOC_WRITE, 0x7189, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_DEPTH", _IOC_WRITE, 0x718c, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_LEVEL", _IOC_NONE, 0x718f, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_START", _IOC_NONE, 0x718a, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_STOP", _IOC_NONE, 0x718b, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME", _IOC_WRITE, 0x718e, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME_LINEAR", _IOC_WRITE, 0x71db, 0x04 },
+{ "linux/telephony.h", "PHONE_RING", _IOC_NONE, 0x7183, 0x00 },
+{ "linux/telephony.h", "PHONE_RINGBACK", _IOC_NONE, 0x71a2, 0x00 },
+{ "linux/telephony.h", "PHONE_RING_CADENCE", _IOC_WRITE, 0x7186, 0x02 },
+{ "linux/telephony.h", "PHONE_RING_START", _IOC_WRITE, 0x7187, 0x04 },
+{ "linux/telephony.h", "PHONE_RING_STOP", _IOC_NONE, 0x7188, 0x00 },
+{ "linux/telephony.h", "PHONE_SET_TONE_OFF_TIME", _IOC_WRITE, 0x719d, 0x04 },
+{ "linux/telephony.h", "PHONE_SET_TONE_ON_TIME", _IOC_WRITE, 0x719c, 0x04 },
+{ "linux/telephony.h", "PHONE_VAD", _IOC_WRITE, 0x71a9, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK", _IOC_WRITE, 0x71aa, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK_DURATION", _IOC_WRITE, 0x71a6, 0x04 },
+{ "linux/timerfd.h", "TFD_IOC_SET_TICKS", _IOC_WRITE, 0x5400, 0x08 },
+{ "linux/toshiba.h", "TOSH_SMM", _IOC_READ|_IOC_WRITE, 0x7490, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETEABLOCK", _IOC_READ, 0x6c41, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETEASIZE", _IOC_READ, 0x6c40, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETVOLIDENT", _IOC_READ, 0x6c42, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_RELOCATE_BLOCKS", _IOC_READ|_IOC_WRITE, 0x6c43, 0x04 },
+{ "linux/uinput.h", "UI_BEGIN_FF_ERASE", _IOC_READ|_IOC_WRITE, 0x55ca, 0x0c },
+{ "linux/uinput.h", "UI_BEGIN_FF_UPLOAD", _IOC_READ|_IOC_WRITE, 0x55c8, 0x60 },
+{ "linux/uinput.h", "UI_DEV_CREATE", _IOC_NONE, 0x5501, 0x00 },
+{ "linux/uinput.h", "UI_DEV_DESTROY", _IOC_NONE, 0x5502, 0x00 },
+{ "linux/uinput.h", "UI_END_FF_ERASE", _IOC_WRITE, 0x55cb, 0x0c },
+{ "linux/uinput.h", "UI_END_FF_UPLOAD", _IOC_WRITE, 0x55c9, 0x60 },
+{ "linux/uinput.h", "UI_GET_VERSION", _IOC_READ, 0x552d, 0x04 },
+{ "linux/uinput.h", "UI_SET_ABSBIT", _IOC_WRITE, 0x5567, 0x04 },
+{ "linux/uinput.h", "UI_SET_EVBIT", _IOC_WRITE, 0x5564, 0x04 },
+{ "linux/uinput.h", "UI_SET_FFBIT", _IOC_WRITE, 0x556b, 0x04 },
+{ "linux/uinput.h", "UI_SET_KEYBIT", _IOC_WRITE, 0x5565, 0x04 },
+{ "linux/uinput.h", "UI_SET_LEDBIT", _IOC_WRITE, 0x5569, 0x04 },
+{ "linux/uinput.h", "UI_SET_MSCBIT", _IOC_WRITE, 0x5568, 0x04 },
+{ "linux/uinput.h", "UI_SET_PHYS", _IOC_WRITE, 0x556c, 0x04 },
+{ "linux/uinput.h", "UI_SET_PROPBIT", _IOC_WRITE, 0x556e, 0x04 },
+{ "linux/uinput.h", "UI_SET_RELBIT", _IOC_WRITE, 0x5566, 0x04 },
+{ "linux/uinput.h", "UI_SET_SNDBIT", _IOC_WRITE, 0x556a, 0x04 },
+{ "linux/uinput.h", "UI_SET_SWBIT", _IOC_WRITE, 0x556d, 0x04 },
+{ "linux/usb/cdc-wdm.h", "IOCTL_WDM_MAX_COMMAND", _IOC_READ, 0x48a0, 0x02 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_DESC", _IOC_READ, 0x6782, 0x09 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_REVMAP", _IOC_NONE, 0x6781, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_INTERFACE_REVMAP", _IOC_NONE, 0x6780, 0x00 },
+{ "linux/usb/g_printer.h", "GADGET_GET_PRINTER_STATUS", _IOC_READ, 0x6721, 0x01 },
+{ "linux/usb/g_printer.h", "GADGET_SET_PRINTER_STATUS", _IOC_READ|_IOC_WRITE, 0x6722, 0x01 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/iowarrior.h", "IOW_GETINFO", _IOC_READ, 0xc003, 0x28 },
+{ "linux/usb/iowarrior.h", "IOW_READ", _IOC_WRITE, 0xc002, 0x04 },
+{ "linux/usb/iowarrior.h", "IOW_WRITE", _IOC_WRITE, 0xc001, 0x04 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_IN", _IOC_NONE, 0x5b04, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_OUT", _IOC_NONE, 0x5b03, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR", _IOC_NONE, 0x5b02, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_IN_HALT", _IOC_NONE, 0x5b07, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_OUT_HALT", _IOC_NONE, 0x5b06, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_INDICATOR_PULSE", _IOC_NONE, 0x5b01, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_ALLOC_STREAMS", _IOC_READ, 0x551c, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK", _IOC_READ|_IOC_WRITE, 0x5502, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK32", _IOC_READ|_IOC_WRITE, 0x5502, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIMINTERFACE", _IOC_READ, 0x550f, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIM_PORT", _IOC_READ, 0x5518, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLEAR_HALT", _IOC_READ, 0x5515, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECT", _IOC_NONE, 0x5517, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECTINFO", _IOC_WRITE, 0x5511, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL", _IOC_READ|_IOC_WRITE, 0x5500, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL32", _IOC_READ|_IOC_WRITE, 0x5500, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCARDURB", _IOC_NONE, 0x550b, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT", _IOC_NONE, 0x5516, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT_CLAIM", _IOC_READ, 0x551b, 0x108 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL", _IOC_READ, 0x550e, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL32", _IOC_READ, 0x550e, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_FREE_STREAMS", _IOC_READ, 0x551d, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GETDRIVER", _IOC_WRITE, 0x5508, 0x104 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GET_CAPABILITIES", _IOC_READ, 0x551a, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_HUB_PORTINFO", _IOC_READ, 0x5513, 0x80 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL", _IOC_READ|_IOC_WRITE, 0x5512, 0x0c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL32", _IOC_READ|_IOC_WRITE, 0x5512, 0x0c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB", _IOC_WRITE, 0x550c, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB32", _IOC_WRITE, 0x550c, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY", _IOC_WRITE, 0x550d, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY32", _IOC_WRITE, 0x550d, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASEINTERFACE", _IOC_READ, 0x5510, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASE_PORT", _IOC_READ, 0x5519, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESET", _IOC_NONE, 0x5514, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESETEP", _IOC_READ, 0x5503, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETCONFIGURATION", _IOC_READ, 0x5505, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETINTERFACE", _IOC_READ, 0x5504, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB", _IOC_READ, 0x550a, 0x2c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB32", _IOC_READ, 0x550a, 0x2a },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_MAP", _IOC_READ|_IOC_WRITE, 0x7520, 0x58 },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_QUERY", _IOC_READ|_IOC_WRITE, 0x7521, 0x0c },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x564b, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_SIZE", _IOC_READ|_IOC_WRITE, 0x564a, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_MBUS_CODE", _IOC_READ|_IOC_WRITE, 0x5602, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x24 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5615, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x563d, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_CROP", _IOC_READ|_IOC_WRITE, 0x563c, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x24 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5616, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x563e, 0x40 },
+{ "linux/vfio.h", "VFIO_CHECK_EXTENSION", _IOC_NONE, 0x3b65, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_INFO", _IOC_NONE, 0x3b6b, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_IRQ_INFO", _IOC_NONE, 0x3b6d, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_PCI_HOT_RESET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_REGION_INFO", _IOC_NONE, 0x3b6c, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_PCI_HOT_RESET", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_RESET", _IOC_NONE, 0x3b6f, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_SET_IRQS", _IOC_NONE, 0x3b6e, 0x00 },
+{ "linux/vfio.h", "VFIO_EEH_PE_OP", _IOC_NONE, 0x3b79, 0x00 },
+{ "linux/vfio.h", "VFIO_GET_API_VERSION", _IOC_NONE, 0x3b64, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_DEVICE_FD", _IOC_NONE, 0x3b6a, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_STATUS", _IOC_NONE, 0x3b67, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_SET_CONTAINER", _IOC_NONE, 0x3b68, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_UNSET_CONTAINER", _IOC_NONE, 0x3b69, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_DISABLE", _IOC_NONE, 0x3b74, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_ENABLE", _IOC_NONE, 0x3b73, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_MAP_DMA", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_SPAPR_TCE_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_UNMAP_DMA", _IOC_NONE, 0x3b72, 0x00 },
+{ "linux/vfio.h", "VFIO_SET_IOMMU", _IOC_NONE, 0x3b66, 0x00 },
+{ "linux/vhost.h", "VHOST_GET_FEATURES", _IOC_READ, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_GET_VRING_BASE", _IOC_READ|_IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_NET_SET_BACKEND", _IOC_WRITE, 0xaf30, 0x08 },
+{ "linux/vhost.h", "VHOST_RESET_OWNER", _IOC_NONE, 0xaf02, 0x00 },
+{ "linux/vhost.h", "VHOST_SCSI_CLEAR_ENDPOINT", _IOC_WRITE, 0xaf41, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_ABI_VERSION", _IOC_WRITE, 0xaf42, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_EVENTS_MISSED", _IOC_WRITE, 0xaf44, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_ENDPOINT", _IOC_WRITE, 0xaf40, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_EVENTS_MISSED", _IOC_WRITE, 0xaf43, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_FEATURES", _IOC_WRITE, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_BASE", _IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_FD", _IOC_WRITE, 0xaf07, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_MEM_TABLE", _IOC_WRITE, 0xaf03, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_OWNER", _IOC_NONE, 0xaf01, 0x00 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ADDR", _IOC_WRITE, 0xaf11, 0x28 },
+{ "linux/vhost.h", "VHOST_SET_VRING_BASE", _IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_CALL", _IOC_WRITE, 0xaf21, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ERR", _IOC_WRITE, 0xaf22, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_KICK", _IOC_WRITE, 0xaf20, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_NUM", _IOC_WRITE, 0xaf10, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_CREATE_BUFS", _IOC_READ|_IOC_WRITE, 0x565c, 0xf8 },
+{ "linux/videodev2.h", "VIDIOC_CROPCAP", _IOC_READ|_IOC_WRITE, 0x563a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_CHIP_INFO", _IOC_READ|_IOC_WRITE, 0x5666, 0xc8 },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_REGISTER", _IOC_READ|_IOC_WRITE, 0x5650, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DBG_S_REGISTER", _IOC_WRITE, 0x564f, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5660, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_DQBUF", _IOC_READ|_IOC_WRITE, 0x5611, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_DQEVENT", _IOC_READ, 0x5659, 0x78 },
+{ "linux/videodev2.h", "VIDIOC_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/videodev2.h", "VIDIOC_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564d, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDIO", _IOC_READ|_IOC_WRITE, 0x5641, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDOUT", _IOC_READ|_IOC_WRITE, 0x5642, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMINPUT", _IOC_READ|_IOC_WRITE, 0x561a, 0x4c },
+{ "linux/videodev2.h", "VIDIOC_ENUMOUTPUT", _IOC_READ|_IOC_WRITE, 0x5630, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_ENUMSTD", _IOC_READ|_IOC_WRITE, 0x5619, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FMT", _IOC_READ|_IOC_WRITE, 0x5602, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMEINTERVALS", _IOC_READ|_IOC_WRITE, 0x564b, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMESIZES", _IOC_READ|_IOC_WRITE, 0x564a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FREQ_BANDS", _IOC_READ|_IOC_WRITE, 0x5665, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_EXPBUF", _IOC_READ|_IOC_WRITE, 0x5610, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDIO", _IOC_READ, 0x5621, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDOUT", _IOC_READ, 0x5631, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_G_CTRL", _IOC_READ|_IOC_WRITE, 0x561b, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x24 },
+{ "linux/videodev2.h", "VIDIOC_G_ENC_INDEX", _IOC_READ, 0x564c, 0x818 },
+{ "linux/videodev2.h", "VIDIOC_G_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5647, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_G_FBUF", _IOC_READ, 0x560a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_G_FREQUENCY", _IOC_READ|_IOC_WRITE, 0x5638, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_G_INPUT", _IOC_READ, 0x5626, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_JPEGCOMP", _IOC_READ, 0x563d, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_G_MODULATOR", _IOC_READ|_IOC_WRITE, 0x5636, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_G_OUTPUT", _IOC_READ, 0x562e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_PARM", _IOC_READ|_IOC_WRITE, 0x5615, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_G_PRIORITY", _IOC_READ, 0x5643, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x565e, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_SLICED_VBI_CAP", _IOC_READ|_IOC_WRITE, 0x5645, 0x74 },
+{ "linux/videodev2.h", "VIDIOC_G_STD", _IOC_READ, 0x5617, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_TUNER", _IOC_READ|_IOC_WRITE, 0x561d, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_LOG_STATUS", _IOC_NONE, 0x5646, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_OVERLAY", _IOC_WRITE, 0x560e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_PREPARE_BUF", _IOC_READ|_IOC_WRITE, 0x565d, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QBUF", _IOC_READ|_IOC_WRITE, 0x560f, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QUERYBUF", _IOC_READ|_IOC_WRITE, 0x5609, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCAP", _IOC_READ, 0x5600, 0x68 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCTRL", _IOC_READ|_IOC_WRITE, 0x5624, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QUERYMENU", _IOC_READ|_IOC_WRITE, 0x5625, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_QUERYSTD", _IOC_READ, 0x563f, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_EXT_CTRL", _IOC_READ|_IOC_WRITE, 0x5667, 0xe8 },
+{ "linux/videodev2.h", "VIDIOC_REQBUFS", _IOC_READ|_IOC_WRITE, 0x5608, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_RESERVED", _IOC_NONE, 0x5601, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_STREAMOFF", _IOC_WRITE, 0x5613, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_STREAMON", _IOC_WRITE, 0x5612, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_SUBSCRIBE_EVENT", _IOC_WRITE, 0x565a, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDIO", _IOC_WRITE, 0x5622, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDOUT", _IOC_WRITE, 0x5632, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_CROP", _IOC_WRITE, 0x563c, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_S_CTRL", _IOC_READ|_IOC_WRITE, 0x561c, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x24 },
+{ "linux/videodev2.h", "VIDIOC_S_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5648, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_S_FBUF", _IOC_WRITE, 0x560b, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_S_FREQUENCY", _IOC_WRITE, 0x5639, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_S_HW_FREQ_SEEK", _IOC_WRITE, 0x5652, 0x30 },
+{ "linux/videodev2.h", "VIDIOC_S_INPUT", _IOC_READ|_IOC_WRITE, 0x5627, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_JPEGCOMP", _IOC_WRITE, 0x563e, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_S_MODULATOR", _IOC_WRITE, 0x5637, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_S_OUTPUT", _IOC_READ|_IOC_WRITE, 0x562f, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_PARM", _IOC_READ|_IOC_WRITE, 0x5616, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_S_PRIORITY", _IOC_WRITE, 0x5644, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x565f, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_S_STD", _IOC_WRITE, 0x5618, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_TUNER", _IOC_WRITE, 0x561e, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_TRY_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5661, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_TRY_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564e, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_TRY_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5649, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_TRY_FMT", _IOC_READ|_IOC_WRITE, 0x5640, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_UNSUBSCRIBE_EVENT", _IOC_WRITE, 0x565b, 0x20 },
+{ "linux/vm_sockets.h", "IOCTL_VM_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_ADD_NOTIFICATION", _IOC_NONE, 0x07af, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_GET_CPT_STATE", _IOC_NONE, 0x07b1, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_REMOVE_NOTIFICATION", _IOC_NONE, 0x07b0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_SET_CPT_STATE", _IOC_NONE, 0x07b2, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_RECEIVE", _IOC_NONE, 0x07ac, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_SEND", _IOC_NONE, 0x07ab, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_GET_CONTEXT_ID", _IOC_NONE, 0x07b3, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_INIT_CONTEXT", _IOC_NONE, 0x07a0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFICATIONS_RECEIVE", _IOC_NONE, 0x07a6, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFY_RESOURCE", _IOC_NONE, 0x07a5, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_ALLOC", _IOC_NONE, 0x07a8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_DETACH", _IOC_NONE, 0x07aa, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETPAGEFILE", _IOC_NONE, 0x07a9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETVA", _IOC_NONE, 0x07a4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SET_NOTIFY", _IOC_NONE, 0x07cb, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_AF_VALUE", _IOC_NONE, 0x07b8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_VERSION", _IOC_NONE, 0x07b4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION", _IOC_NONE, 0x079f, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION2", _IOC_NONE, 0x07a7, 0x00 },
+{ "linux/vsp1.h", "VIDIOC_VSP1_LUT_CONFIG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x400 },
+{ "linux/vt.h", "VT_ACTIVATE", 0, 0x5606, 0 },
+{ "linux/vt.h", "VT_DISALLOCATE", 0, 0x5608, 0 },
+{ "linux/vt.h", "VT_GETHIFONTMASK", 0, 0x560D, 0 },
+{ "linux/vt.h", "VT_GETMODE", 0, 0x5601, 0 },
+{ "linux/vt.h", "VT_GETSTATE", 0, 0x5603, 0 },
+{ "linux/vt.h", "VT_LOCKSWITCH", 0, 0x560B, 0 },
+{ "linux/vt.h", "VT_OPENQRY", 0, 0x5600, 0 },
+{ "linux/vt.h", "VT_RELDISP", 0, 0x5605, 0 },
+{ "linux/vt.h", "VT_RESIZE", 0, 0x5609, 0 },
+{ "linux/vt.h", "VT_RESIZEX", 0, 0x560A, 0 },
+{ "linux/vt.h", "VT_SENDSIG", 0, 0x5604, 0 },
+{ "linux/vt.h", "VT_SETACTIVATE", 0, 0x560F, 0 },
+{ "linux/vt.h", "VT_SETMODE", 0, 0x5602, 0 },
+{ "linux/vt.h", "VT_UNLOCKSWITCH", 0, 0x560C, 0 },
+{ "linux/vt.h", "VT_WAITACTIVE", 0, 0x5607, 0 },
+{ "linux/vt.h", "VT_WAITEVENT", 0, 0x560E, 0 },
+{ "linux/watchdog.h", "WDIOC_GETBOOTSTATUS", _IOC_READ, 0x5702, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETPRETIMEOUT", _IOC_READ, 0x5709, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSTATUS", _IOC_READ, 0x5701, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSUPPORT", _IOC_READ, 0x5700, 0x28 },
+{ "linux/watchdog.h", "WDIOC_GETTEMP", _IOC_READ, 0x5703, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMELEFT", _IOC_READ, 0x570a, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMEOUT", _IOC_READ, 0x5707, 0x04 },
+{ "linux/watchdog.h", "WDIOC_KEEPALIVE", _IOC_READ, 0x5705, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETOPTIONS", _IOC_READ, 0x5704, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETPRETIMEOUT", _IOC_READ|_IOC_WRITE, 0x5708, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x5706, 0x04 },
+{ "linux/wireless.h", "SIOCGIWAP", 0, 0x8B15, 0 },
+{ "linux/wireless.h", "SIOCGIWAPLIST", 0, 0x8B17, 0 },
+{ "linux/wireless.h", "SIOCGIWAUTH", 0, 0x8B33, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODE", 0, 0x8B2B, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODEEXT", 0, 0x8B35, 0 },
+{ "linux/wireless.h", "SIOCGIWESSID", 0, 0x8B1B, 0 },
+{ "linux/wireless.h", "SIOCGIWFRAG", 0, 0x8B25, 0 },
+{ "linux/wireless.h", "SIOCGIWFREQ", 0, 0x8B05, 0 },
+{ "linux/wireless.h", "SIOCGIWGENIE", 0, 0x8B31, 0 },
+{ "linux/wireless.h", "SIOCGIWMODE", 0, 0x8B07, 0 },
+{ "linux/wireless.h", "SIOCGIWNAME", 0, 0x8B01, 0 },
+{ "linux/wireless.h", "SIOCGIWNICKN", 0, 0x8B1D, 0 },
+{ "linux/wireless.h", "SIOCGIWNWID", 0, 0x8B03, 0 },
+{ "linux/wireless.h", "SIOCGIWPOWER", 0, 0x8B2D, 0 },
+{ "linux/wireless.h", "SIOCGIWPRIV", 0, 0x8B0D, 0 },
+{ "linux/wireless.h", "SIOCGIWRANGE", 0, 0x8B0B, 0 },
+{ "linux/wireless.h", "SIOCGIWRATE", 0, 0x8B21, 0 },
+{ "linux/wireless.h", "SIOCGIWRETRY", 0, 0x8B29, 0 },
+{ "linux/wireless.h", "SIOCGIWRTS", 0, 0x8B23, 0 },
+{ "linux/wireless.h", "SIOCGIWSCAN", 0, 0x8B19, 0 },
+{ "linux/wireless.h", "SIOCGIWSENS", 0, 0x8B09, 0 },
+{ "linux/wireless.h", "SIOCGIWSPY", 0, 0x8B11, 0 },
+{ "linux/wireless.h", "SIOCGIWSTATS", 0, 0x8B0F, 0 },
+{ "linux/wireless.h", "SIOCGIWTHRSPY", 0, 0x8B13, 0 },
+{ "linux/wireless.h", "SIOCGIWTXPOW", 0, 0x8B27, 0 },
+{ "linux/wireless.h", "SIOCIWFIRST", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCIWFIRSTPRIV", 0, 0x8BE0, 0 },
+{ "linux/wireless.h", "SIOCIWLASTPRIV", 0, 0x8BFF, 0 },
+{ "linux/wireless.h", "SIOCSIWAP", 0, 0x8B14, 0 },
+{ "linux/wireless.h", "SIOCSIWAUTH", 0, 0x8B32, 0 },
+{ "linux/wireless.h", "SIOCSIWCOMMIT", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODE", 0, 0x8B2A, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODEEXT", 0, 0x8B34, 0 },
+{ "linux/wireless.h", "SIOCSIWESSID", 0, 0x8B1A, 0 },
+{ "linux/wireless.h", "SIOCSIWFRAG", 0, 0x8B24, 0 },
+{ "linux/wireless.h", "SIOCSIWFREQ", 0, 0x8B04, 0 },
+{ "linux/wireless.h", "SIOCSIWGENIE", 0, 0x8B30, 0 },
+{ "linux/wireless.h", "SIOCSIWMLME", 0, 0x8B16, 0 },
+{ "linux/wireless.h", "SIOCSIWMODE", 0, 0x8B06, 0 },
+{ "linux/wireless.h", "SIOCSIWNICKN", 0, 0x8B1C, 0 },
+{ "linux/wireless.h", "SIOCSIWNWID", 0, 0x8B02, 0 },
+{ "linux/wireless.h", "SIOCSIWPMKSA", 0, 0x8B36, 0 },
+{ "linux/wireless.h", "SIOCSIWPOWER", 0, 0x8B2C, 0 },
+{ "linux/wireless.h", "SIOCSIWPRIV", 0, 0x8B0C, 0 },
+{ "linux/wireless.h", "SIOCSIWRANGE", 0, 0x8B0A, 0 },
+{ "linux/wireless.h", "SIOCSIWRATE", 0, 0x8B20, 0 },
+{ "linux/wireless.h", "SIOCSIWRETRY", 0, 0x8B28, 0 },
+{ "linux/wireless.h", "SIOCSIWRTS", 0, 0x8B22, 0 },
+{ "linux/wireless.h", "SIOCSIWSCAN", 0, 0x8B18, 0 },
+{ "linux/wireless.h", "SIOCSIWSENS", 0, 0x8B08, 0 },
+{ "linux/wireless.h", "SIOCSIWSPY", 0, 0x8B10, 0 },
+{ "linux/wireless.h", "SIOCSIWSTATS", 0, 0x8B0E, 0 },
+{ "linux/wireless.h", "SIOCSIWTHRSPY", 0, 0x8B12, 0 },
+{ "linux/wireless.h", "SIOCSIWTXPOW", 0, 0x8B26, 0 },
+{ "media/adv7842.h", "ADV7842_CMD_RAM_TEST", _IOC_NONE, 0x56c0, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_HIGH", _IOC_NONE, 0x6201, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_LOW", _IOC_NONE, 0x6200, 0x00 },
+{ "media/davinci/vpfe_capture.h", "VPFE_CMD_S_CCDC_RAW_PARAMS", _IOC_WRITE, 0x56c1, 0x04 },
+{ "media/exynos-fimc.h", "S5P_FIMC_TX_END_NOTIFY", _IOC_NONE, 0x6500, 0x00 },
+{ "media/lirc.h", "LIRC_GET_FEATURES", _IOC_READ, 0x6900, 0x04 },
+{ "media/lirc.h", "LIRC_GET_LENGTH", _IOC_READ, 0x690f, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_PULSE", _IOC_READ, 0x690b, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_SPACE", _IOC_READ, 0x690d, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_TIMEOUT", _IOC_READ, 0x6909, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_PULSE", _IOC_READ, 0x690a, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_SPACE", _IOC_READ, 0x690c, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_TIMEOUT", _IOC_READ, 0x6908, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_CARRIER", _IOC_READ, 0x6904, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_DUTY_CYCLE", _IOC_READ, 0x6906, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_MODE", _IOC_READ, 0x6902, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_RESOLUTION", _IOC_READ, 0x6907, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_CARRIER", _IOC_READ, 0x6903, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_DUTY_CYCLE", _IOC_READ, 0x6905, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_MODE", _IOC_READ, 0x6901, 0x04 },
+{ "media/lirc.h", "LIRC_NOTIFY_DECODE", _IOC_NONE, 0x6920, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_END", _IOC_NONE, 0x6922, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_START", _IOC_NONE, 0x6921, 0x00 },
+{ "media/lirc.h", "LIRC_SET_MEASURE_CARRIER_MODE", _IOC_WRITE, 0x691d, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER", _IOC_WRITE, 0x6914, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER_RANGE", _IOC_WRITE, 0x691f, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE", _IOC_WRITE, 0x6916, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE_RANGE", _IOC_WRITE, 0x691e, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER", _IOC_WRITE, 0x691c, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_PULSE", _IOC_WRITE, 0x691a, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_SPACE", _IOC_WRITE, 0x691b, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_MODE", _IOC_WRITE, 0x6912, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT", _IOC_WRITE, 0x6918, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT_REPORTS", _IOC_WRITE, 0x6919, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_CARRIER", _IOC_WRITE, 0x6913, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_DUTY_CYCLE", _IOC_WRITE, 0x6915, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_MODE", _IOC_WRITE, 0x6911, 0x04 },
+{ "media/lirc.h", "LIRC_SET_TRANSMITTER_MASK", _IOC_WRITE, 0x6917, 0x04 },
+{ "media/lirc.h", "LIRC_SET_WIDEBAND_RECEIVER", _IOC_WRITE, 0x6923, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_CLOSE", _IOC_WRITE, 0x5202, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_POLL", _IOC_READ, 0x5204, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_READ", _IOC_READ, 0x5203, 0x04 },
+{ "media/si4713.h", "SI4713_IOC_MEASURE_RNL", _IOC_READ|_IOC_WRITE, 0x56c0, 0x1c },
+{ "media/v4l2-common.h", "TUNER_SET_CONFIG", _IOC_WRITE, 0x645c, 0x08 },
+{ "media/v4l2-common.h", "VIDIOC_INT_RESET", _IOC_WRITE, 0x6466, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_RX_NOTIFY", _IOC_WRITE, 0x7600, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_TX_NOTIFY", _IOC_WRITE, 0x7601, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_GET_PROCESS_ELEMENT", _IOC_READ, 0xca01, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_START_WORK", _IOC_WRITE, 0xca00, 0x40 },
+{ "mtd/mtd-abi.h", "ECCGETLAYOUT", _IOC_READ, 0x4d11, 0x148 },
+{ "mtd/mtd-abi.h", "ECCGETSTATS", _IOC_READ, 0x4d12, 0x10 },
+{ "mtd/mtd-abi.h", "MEMERASE", _IOC_WRITE, 0x4d02, 0x08 },
+{ "mtd/mtd-abi.h", "MEMERASE64", _IOC_WRITE, 0x4d14, 0x10 },
+{ "mtd/mtd-abi.h", "MEMGETBADBLOCK", _IOC_WRITE, 0x4d0b, 0x08 },
+{ "mtd/mtd-abi.h", "MEMGETINFO", _IOC_READ, 0x4d01, 0x20 },
+{ "mtd/mtd-abi.h", "MEMGETOOBSEL", _IOC_READ, 0x4d0a, 0xc8 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONCOUNT", _IOC_READ, 0x4d07, 0x04 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONINFO", _IOC_READ|_IOC_WRITE, 0x4d08, 0x10 },
+{ "mtd/mtd-abi.h", "MEMISLOCKED", _IOC_READ, 0x4d17, 0x08 },
+{ "mtd/mtd-abi.h", "MEMLOCK", _IOC_WRITE, 0x4d05, 0x08 },
+{ "mtd/mtd-abi.h", "MEMREADOOB", _IOC_READ|_IOC_WRITE, 0x4d04, 0x0c },
+{ "mtd/mtd-abi.h", "MEMREADOOB64", _IOC_READ|_IOC_WRITE, 0x4d16, 0x18 },
+{ "mtd/mtd-abi.h", "MEMSETBADBLOCK", _IOC_WRITE, 0x4d0c, 0x08 },
+{ "mtd/mtd-abi.h", "MEMUNLOCK", _IOC_WRITE, 0x4d06, 0x08 },
+{ "mtd/mtd-abi.h", "MEMWRITE", _IOC_READ|_IOC_WRITE, 0x4d18, 0x30 },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB", _IOC_READ|_IOC_WRITE, 0x4d03, 0x0c },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB64", _IOC_READ|_IOC_WRITE, 0x4d15, 0x18 },
+{ "mtd/mtd-abi.h", "MTDFILEMODE", _IOC_NONE, 0x4d13, 0x00 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONCOUNT", _IOC_WRITE, 0x4d0e, 0x04 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONINFO", _IOC_WRITE, 0x4d0f, 0x0c },
+{ "mtd/mtd-abi.h", "OTPLOCK", _IOC_READ, 0x4d10, 0x0c },
+{ "mtd/mtd-abi.h", "OTPSELECT", _IOC_READ, 0x4d0d, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCATT", _IOC_WRITE, 0x6f40, 0x18 },
+{ "mtd/ubi-user.h", "UBI_IOCDET", _IOC_WRITE, 0x6f41, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBCH", _IOC_WRITE, 0x4f02, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBER", _IOC_WRITE, 0x4f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBISMAP", _IOC_READ, 0x4f05, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBMAP", _IOC_WRITE, 0x4f03, 0x08 },
+{ "mtd/ubi-user.h", "UBI_IOCEBUNMAP", _IOC_WRITE, 0x4f04, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCMKVOL", _IOC_WRITE, 0x6f00, 0x98 },
+{ "mtd/ubi-user.h", "UBI_IOCRMVOL", _IOC_WRITE, 0x6f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCRNVOL", _IOC_WRITE, 0x6f03, 0x1110 },
+{ "mtd/ubi-user.h", "UBI_IOCRSVOL", _IOC_WRITE, 0x6f02, 0x0c },
+{ "mtd/ubi-user.h", "UBI_IOCSETVOLPROP", _IOC_WRITE, 0x4f06, 0x10 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLCRBLK", _IOC_WRITE, 0x4f07, 0x80 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLRMBLK", _IOC_NONE, 0x4f08, 0x00 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLUP", _IOC_WRITE, 0x4f00, 0x08 },
+{ "net/bluetooth/hci_sock.h", "HCIBLOCKADDR", _IOC_WRITE, 0x48e6, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVDOWN", _IOC_WRITE, 0x48ca, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESET", _IOC_WRITE, 0x48cb, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESTAT", _IOC_WRITE, 0x48cc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVUP", _IOC_WRITE, 0x48c9, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETAUTHINFO", _IOC_READ, 0x48d7, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNINFO", _IOC_READ, 0x48d5, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNLIST", _IOC_READ, 0x48d4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVINFO", _IOC_READ, 0x48d3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVLIST", _IOC_READ, 0x48d2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIINQUIRY", _IOC_READ, 0x48f0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETACLMTU", _IOC_WRITE, 0x48e3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETAUTH", _IOC_WRITE, 0x48de, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETENCRYPT", _IOC_WRITE, 0x48df, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKMODE", _IOC_WRITE, 0x48e2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKPOL", _IOC_WRITE, 0x48e1, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETPTYPE", _IOC_WRITE, 0x48e0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETRAW", _IOC_WRITE, 0x48dc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCAN", _IOC_WRITE, 0x48dd, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCOMTU", _IOC_WRITE, 0x48e4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIUNBLOCKADDR", _IOC_WRITE, 0x48e7, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMCREATEDEV", _IOC_WRITE, 0x52c8, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVINFO", _IOC_READ, 0x52d3, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVLIST", _IOC_READ, 0x52d2, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMRELEASEDEV", _IOC_WRITE, 0x52c9, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMSTEALDLC", _IOC_WRITE, 0x52dc, 0x04 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_ENABLE_PKEY", _IOC_NONE, 0x1b03, 0x00 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT", _IOC_READ|_IOC_WRITE, 0x1b01, 0x1c },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT2", _IOC_READ|_IOC_WRITE, 0x1b04, 0x28 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_UNREGISTER_AGENT", _IOC_WRITE, 0x1b02, 0x04 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_BUS_NUMBER", 0, 0x5386, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_IDLUN", 0, 0x5382, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_PCI", 0, 0x5387, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_PROBE_HOST", 0, 0x5385, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORLOCK", 0, 0x5380, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORUNLOCK", 0, 0x5381, 0 },
+{ "scsi/sg.h", "SG_EMULATED_HOST", 0, 0x2203, 0 },
+{ "scsi/sg.h", "SG_GET_ACCESS_COUNT", 0, 0x2289, 0 },
+{ "scsi/sg.h", "SG_GET_COMMAND_Q", 0, 0x2270, 0 },
+{ "scsi/sg.h", "SG_GET_KEEP_ORPHAN", 0, 0x2288, 0 },
+{ "scsi/sg.h", "SG_GET_LOW_DMA", 0, 0x227a, 0 },
+{ "scsi/sg.h", "SG_GET_NUM_WAITING", 0, 0x227d, 0 },
+{ "scsi/sg.h", "SG_GET_PACK_ID", 0, 0x227c, 0 },
+{ "scsi/sg.h", "SG_GET_REQUEST_TABLE", 0, 0x2286, 0 },
+{ "scsi/sg.h", "SG_GET_RESERVED_SIZE", 0, 0x2272, 0 },
+{ "scsi/sg.h", "SG_GET_SCSI_ID", 0, 0x2276, 0 },
+{ "scsi/sg.h", "SG_GET_SG_TABLESIZE", 0, 0x227F, 0 },
+{ "scsi/sg.h", "SG_GET_TIMEOUT", 0, 0x2202, 0 },
+{ "scsi/sg.h", "SG_GET_TRANSFORM", 0, 0x2205, 0 },
+{ "scsi/sg.h", "SG_GET_VERSION_NUM", 0, 0x2282, 0 },
+{ "scsi/sg.h", "SG_IO", 0, 0x2285, 0 },
+{ "scsi/sg.h", "SG_NEXT_CMD_LEN", 0, 0x2283, 0 },
+{ "scsi/sg.h", "SG_SCSI_RESET", 0, 0x2284, 0 },
+{ "scsi/sg.h", "SG_SET_COMMAND_Q", 0, 0x2271, 0 },
+{ "scsi/sg.h", "SG_SET_DEBUG", 0, 0x227e, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_LOW_DMA", 0, 0x2279, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_PACK_ID", 0, 0x227b, 0 },
+{ "scsi/sg.h", "SG_SET_KEEP_ORPHAN", 0, 0x2287, 0 },
+{ "scsi/sg.h", "SG_SET_RESERVED_SIZE", 0, 0x2275, 0 },
+{ "scsi/sg.h", "SG_SET_TIMEOUT", 0, 0x2201, 0 },
+{ "scsi/sg.h", "SG_SET_TRANSFORM", 0, 0x2204, 0 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CLIENT_ID", _IOC_READ, 0x5301, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_PORT", _IOC_READ|_IOC_WRITE, 0x5320, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x5332, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_PORT", _IOC_WRITE, 0x5321, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_QUEUE", _IOC_WRITE, 0x5333, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_INFO", _IOC_READ|_IOC_WRITE, 0x5310, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_POOL", _IOC_READ|_IOC_WRITE, 0x534b, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_NAMED_QUEUE", _IOC_READ|_IOC_WRITE, 0x5336, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_PORT_INFO", _IOC_READ|_IOC_WRITE, 0x5322, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_CLIENT", _IOC_READ|_IOC_WRITE, 0x5349, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5334, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_OWNER", _IOC_READ|_IOC_WRITE, 0x5343, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS", _IOC_READ|_IOC_WRITE, 0x5340, 0x5c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TEMPO", _IOC_READ|_IOC_WRITE, 0x5341, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TIMER", _IOC_READ|_IOC_WRITE, 0x5345, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_SUBSCRIPTION", _IOC_READ|_IOC_WRITE, 0x5350, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_PVERSION", _IOC_READ, 0x5300, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT", _IOC_READ|_IOC_WRITE, 0x5351, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_PORT", _IOC_READ|_IOC_WRITE, 0x5352, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_SUBS", _IOC_READ|_IOC_WRITE, 0x534f, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_REMOVE_EVENTS", _IOC_WRITE, 0x534e, 0x40 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_RUNNING_MODE", _IOC_READ|_IOC_WRITE, 0x5303, 0x10 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_INFO", _IOC_WRITE, 0x5311, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_POOL", _IOC_WRITE, 0x534c, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_PORT_INFO", _IOC_WRITE, 0x5323, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_CLIENT", _IOC_WRITE, 0x534a, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5335, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_OWNER", _IOC_WRITE, 0x5344, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TEMPO", _IOC_WRITE, 0x5342, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TIMER", _IOC_WRITE, 0x5346, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SUBSCRIBE_PORT", _IOC_WRITE, 0x5330, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SYSTEM_INFO", _IOC_READ|_IOC_WRITE, 0x5302, 0x30 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_UNSUBSCRIBE_PORT", _IOC_WRITE, 0x5331, 0x50 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_CARD_INFO", _IOC_READ, 0x5501, 0x178 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_ADD", _IOC_READ|_IOC_WRITE, 0x5517, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_INFO", _IOC_READ|_IOC_WRITE, 0x5511, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LIST", _IOC_READ|_IOC_WRITE, 0x5510, 0x48 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LOCK", _IOC_WRITE, 0x5514, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_READ", _IOC_READ|_IOC_WRITE, 0x5512, 0x2c4 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REMOVE", _IOC_READ|_IOC_WRITE, 0x5519, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REPLACE", _IOC_READ|_IOC_WRITE, 0x5518, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_UNLOCK", _IOC_WRITE, 0x5515, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_WRITE", _IOC_READ|_IOC_WRITE, 0x5513, 0x2c4 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_INFO", _IOC_READ, 0x5521, 0xdc },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5520, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_INFO", _IOC_READ|_IOC_WRITE, 0x5531, 0x120 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE", _IOC_READ, 0x5530, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE", _IOC_WRITE, 0x5532, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER", _IOC_READ|_IOC_WRITE, 0x55d0, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER_STATE", _IOC_READ, 0x55d1, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PVERSION", _IOC_READ, 0x5500, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_INFO", _IOC_READ|_IOC_WRITE, 0x5541, 0x10c },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5540, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE", _IOC_WRITE, 0x5542, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS", _IOC_READ|_IOC_WRITE, 0x5516, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_COMMAND", _IOC_READ|_IOC_WRITE, 0x551c, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_READ", _IOC_READ|_IOC_WRITE, 0x551a, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_WRITE", _IOC_READ|_IOC_WRITE, 0x551b, 0x08 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_LOAD", _IOC_WRITE, 0x4803, 0x50 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_STATUS", _IOC_READ, 0x4802, 0x40 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_INFO", _IOC_READ, 0x4801, 0xdc },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_PVERSION", _IOC_READ, 0x4800, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_CHANNEL_INFO", _IOC_READ, 0x4132, 0x10 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DELAY", _IOC_READ, 0x4121, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DRAIN", _IOC_NONE, 0x4144, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DROP", _IOC_NONE, 0x4143, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_FORWARD", _IOC_WRITE, 0x4149, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HWSYNC", _IOC_NONE, 0x4122, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_FREE", _IOC_NONE, 0x4112, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4111, 0x25c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_REFINE", _IOC_READ|_IOC_WRITE, 0x4110, 0x25c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_INFO", _IOC_READ, 0x4101, 0x120 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_LINK", _IOC_WRITE, 0x4160, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PAUSE", _IOC_WRITE, 0x4145, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PREPARE", _IOC_NONE, 0x4140, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PVERSION", _IOC_READ, 0x4100, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READI_FRAMES", _IOC_READ, 0x4151, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READN_FRAMES", _IOC_READ, 0x4153, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESET", _IOC_NONE, 0x4141, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESUME", _IOC_NONE, 0x4147, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_REWIND", _IOC_WRITE, 0x4146, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_START", _IOC_NONE, 0x4142, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_STATUS", _IOC_READ, 0x4120, 0x6c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4113, 0x68 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SYNC_PTR", _IOC_READ|_IOC_WRITE, 0x4123, 0x84 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TSTAMP", _IOC_WRITE, 0x4102, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TTSTAMP", _IOC_WRITE, 0x4103, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_UNLINK", _IOC_NONE, 0x4161, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEI_FRAMES", _IOC_WRITE, 0x4150, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEN_FRAMES", _IOC_WRITE, 0x4152, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_XRUN", _IOC_NONE, 0x4148, 0x00 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DRAIN", _IOC_WRITE, 0x5731, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DROP", _IOC_WRITE, 0x5730, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_INFO", _IOC_READ, 0x5701, 0x10c },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PARAMS", _IOC_READ|_IOC_WRITE, 0x5710, 0x20 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PVERSION", _IOC_READ, 0x5700, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_STATUS", _IOC_READ|_IOC_WRITE, 0x5720, 0x24 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_CONTINUE", _IOC_NONE, 0x54a2, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GINFO", _IOC_READ|_IOC_WRITE, 0x5403, 0xe0 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GPARAMS", _IOC_WRITE, 0x5404, 0x3c },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GSTATUS", _IOC_READ|_IOC_WRITE, 0x5405, 0x40 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_INFO", _IOC_READ, 0x5411, 0xe0 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5401, 0x14 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PARAMS", _IOC_WRITE, 0x5412, 0x50 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PAUSE", _IOC_NONE, 0x54a3, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PVERSION", _IOC_READ, 0x5400, 0x04 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_SELECT", _IOC_WRITE, 0x5410, 0x34 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_START", _IOC_NONE, 0x54a0, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STATUS", _IOC_READ, 0x5414, 0x58 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STOP", _IOC_NONE, 0x54a1, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_TREAD", _IOC_WRITE, 0x5402, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_CLEAR_PATCHES", _IOC_NONE, 0x4840, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_INFO", _IOC_READ, 0x4820, 0x02 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_PLAY_NOTE", _IOC_WRITE, 0x4822, 0x0c },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_RESET", _IOC_NONE, 0x4821, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_CONNECTION", _IOC_WRITE, 0x4826, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_MODE", _IOC_WRITE, 0x4825, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_PARAMS", _IOC_WRITE, 0x4824, 0x09 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_VOICE", _IOC_WRITE, 0x4823, 0x12 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_AVAIL", _IOC_READ, 0x4321, 0x1c },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_DRAIN", _IOC_NONE, 0x4334, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CAPS", _IOC_READ|_IOC_WRITE, 0x4310, 0xc4 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CODEC_CAPS", _IOC_READ|_IOC_WRITE, 0x4311, 0x2b88 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_METADATA", _IOC_READ|_IOC_WRITE, 0x4315, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_PARAMS", _IOC_READ, 0x4313, 0x78 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_IOCTL_VERSION", _IOC_READ, 0x4300, 0x04 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_NEXT_TRACK", _IOC_NONE, 0x4335, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PARTIAL_DRAIN", _IOC_NONE, 0x4336, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PAUSE", _IOC_NONE, 0x4330, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_RESUME", _IOC_NONE, 0x4331, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_METADATA", _IOC_WRITE, 0x4314, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_PARAMS", _IOC_WRITE, 0x4312, 0x84 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_START", _IOC_NONE, 0x4332, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_STOP", _IOC_NONE, 0x4333, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_TSTAMP", _IOC_READ, 0x4320, 0x14 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_PEEK", _IOC_READ|_IOC_WRITE, 0x4812, 0x18c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_POKE", _IOC_WRITE, 0x4811, 0x18c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CONTINUE", _IOC_NONE, 0x4881, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_DBG_READ", _IOC_READ, 0x4884, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_INFO", _IOC_READ, 0x4810, 0x80c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_PEEK", _IOC_READ|_IOC_WRITE, 0x4831, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_POKE", _IOC_WRITE, 0x4830, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PVERSION", _IOC_READ, 0x4840, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_SINGLE_STEP", _IOC_WRITE, 0x4883, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_STOP", _IOC_NONE, 0x4880, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_PEEK", _IOC_READ|_IOC_WRITE, 0x4822, 0x0c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_POKE", _IOC_WRITE, 0x4821, 0x0c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_SETUP", _IOC_WRITE, 0x4820, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_ZERO_TRAM_COUNTER", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_GET_INFO", _IOC_READ, 0x48f8, 0x20 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_LOCK", _IOC_NONE, 0x48f9, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_UNLOCK", _IOC_NONE, 0x48fa, 0x00 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_GET_WCAP", _IOC_READ|_IOC_WRITE, 0x4812, 0x08 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_PVERSION", _IOC_READ, 0x4810, 0x04 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_VERB_WRITE", _IOC_READ|_IOC_WRITE, 0x4811, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_9632_AEB", _IOC_READ, 0x4845, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_CONFIG_INFO", _IOC_READ, 0x4841, 0x24 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x1000 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4840, 0x3b0 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_VERSION", _IOC_READ, 0x4843, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE", _IOC_WRITE, 0x4842, 0x04 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_CONFIG", _IOC_READ, 0x4841, 0x18 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_LTC", _IOC_READ, 0x4846, 0x10 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x04 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4842, 0x908 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_STATUS", _IOC_READ, 0x4847, 0x1c },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_VERSION", _IOC_READ, 0x4848, 0x24 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_INFO", _IOC_READ, 0x4810, 0x28 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_LOAD_CODE", _IOC_WRITE, 0x4811, 0x3012 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_PAUSE", _IOC_NONE, 0x4815, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_RESTART", _IOC_NONE, 0x4816, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_START", _IOC_WRITE, 0x4813, 0x08 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_STOP", _IOC_NONE, 0x4814, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_UNLOAD_CODE", _IOC_NONE, 0x4812, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_LOAD_PATCH", _IOC_READ|_IOC_WRITE, 0x4881, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MEM_AVAIL", _IOC_WRITE, 0x4884, 0x04 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MISC_MODE", _IOC_READ|_IOC_WRITE, 0x4884, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_REMOVE_LAST_SAMPLES", _IOC_NONE, 0x4883, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_RESET_SAMPLES", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_VERSION", _IOC_READ, 0x4880, 0x04 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_SET_RTC", _IOC_WRITE, 0x6105, 0x08 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_WAIT", _IOC_NONE, 0x6101, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_NAME", _IOC_READ, 0x7702, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PIN_STATUS", _IOC_NONE, 0x7709, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PROT_MASK", _IOC_NONE, 0x7706, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_SIZE", _IOC_NONE, 0x7704, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_PIN", _IOC_WRITE, 0x7707, 0x08 },
+{ "staging/android/ashmem.h", "ASHMEM_PURGE_ALL_CACHES", _IOC_NONE, 0x770a, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_NAME", _IOC_WRITE, 0x7701, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_PROT_MASK", _IOC_WRITE, 0x7705, 0x04 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_SIZE", _IOC_WRITE, 0x7703, 0x04 },
+{ "staging/android/ashmem.h", "ASHMEM_UNPIN", _IOC_WRITE, 0x7708, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_ALLOC", _IOC_READ|_IOC_WRITE, 0x4900, 0x14 },
+{ "staging/android/ion.h", "ION_IOC_CUSTOM", _IOC_READ|_IOC_WRITE, 0x4906, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_FREE", _IOC_READ|_IOC_WRITE, 0x4901, 0x04 },
+{ "staging/android/ion.h", "ION_IOC_IMPORT", _IOC_READ|_IOC_WRITE, 0x4905, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_MAP", _IOC_READ|_IOC_WRITE, 0x4902, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SHARE", _IOC_READ|_IOC_WRITE, 0x4904, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SYNC", _IOC_READ|_IOC_WRITE, 0x4907, 0x08 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_DMA_MAPPING", _IOC_WRITE, 0x49f1, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_KERNEL_MAPPING", _IOC_WRITE, 0x49f2, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_SET_FD", _IOC_NONE, 0x49f0, 0x00 },
+{ "staging/android/logger.h", "LOGGER_FLUSH_LOG", _IOC_NONE, 0xae04, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_BUF_SIZE", _IOC_NONE, 0xae01, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_LEN", _IOC_NONE, 0xae02, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_NEXT_ENTRY_LEN", _IOC_NONE, 0xae03, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_VERSION", _IOC_NONE, 0xae05, 0x00 },
+{ "staging/android/logger.h", "LOGGER_SET_VERSION", _IOC_NONE, 0xae06, 0x00 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_CREATE_FENCE", _IOC_READ|_IOC_WRITE, 0x5700, 0x28 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_INC", _IOC_WRITE, 0x5701, 0x04 },
+{ "staging/android/sync.h", "SYNC_IOC_FENCE_INFO", _IOC_READ|_IOC_WRITE, 0x3e02, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_MERGE", _IOC_READ|_IOC_WRITE, 0x3e01, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_WAIT", _IOC_WRITE, 0x3e00, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_BRIGHTNESS", _IOC_READ, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_COLOR", _IOC_READ, 0x4605, 0x04 },
+{ "video/da8xx-fb.h", "FBIOGET_CONTRAST", _IOC_READ, 0x4601, 0x04 },
+{ "video/da8xx-fb.h", "FBIOPUT_CONTRAST", _IOC_WRITE, 0x4602, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_BRIGHTNESS", _IOC_WRITE, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_COLOR", _IOC_WRITE, 0x4606, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_HSYNC", _IOC_WRITE, 0x4609, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_VSYNC", _IOC_WRITE, 0x460a, 0x04 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_CREATE", _IOC_NONE, 0x6b00, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_OFFSET", _IOC_NONE, 0x6b04, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_VIEWPORT_SET", _IOC_NONE, 0x6b01, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_SET_VIDEO_MODE", _IOC_NONE, 0x6b02, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_STRIDE", _IOC_NONE, 0x6b05, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_UVSTRIDE", _IOC_NONE, 0x6b03, 0x00 },
+{ "video/mbxfb.h", "MBXFB_IOCG_ALPHA", _IOC_READ, 0xf401, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_ALPHA", _IOC_WRITE, 0xf402, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_PLANEORDER", _IOC_READ, 0xf403, 0x02 },
+{ "video/mbxfb.h", "MBXFB_IOCS_REG", _IOC_WRITE, 0xf404, 0x0c },
+{ "video/mbxfb.h", "MBXFB_IOCX_OVERLAY", _IOC_READ|_IOC_WRITE, 0xf400, 0x30 },
+{ "video/mbxfb.h", "MBXFB_IOCX_REG", _IOC_READ|_IOC_WRITE, 0xf405, 0x0c },
+{ "video/sisfb.h", "SISFB_COMMAND", _IOC_READ|_IOC_WRITE, 0xf305, 0x54 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE", _IOC_READ, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE_OLD", _IOC_READ, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO", _IOC_READ, 0xf301, 0x11c },
+{ "video/sisfb.h", "SISFB_GET_INFO_OLD", _IOC_READ, 0x6ef8, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO_SIZE", _IOC_READ, 0xf300, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_TVPOSOFFSET", _IOC_READ, 0xf304, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS", _IOC_READ, 0xf302, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS_OLD", _IOC_READ, 0x6ef9, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE", _IOC_WRITE, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE_OLD", _IOC_WRITE, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_LOCK", _IOC_WRITE, 0xf306, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_TVPOSOFFSET", _IOC_WRITE, 0xf304, 0x04 },
+{ "video/sstfb.h", "SSTFB_GET_VGAPASS", _IOC_READ, 0x46dd, 0x04 },
+{ "video/sstfb.h", "SSTFB_SET_VGAPASS", _IOC_WRITE, 0x46dd, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_INTERDOMAIN", _IOC_NONE, 0x4501, 0x08 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_UNBOUND_PORT", _IOC_NONE, 0x4502, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_VIRQ", _IOC_NONE, 0x4500, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_NOTIFY", _IOC_NONE, 0x4504, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_RESET", _IOC_NONE, 0x4505, 0x00 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_UNBIND", _IOC_NONE, 0x4503, 0x04 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_EVTCHN", _IOC_NONE, 0x4200, 0x00 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_SETUP", _IOC_NONE, 0x4201, 0x00 },
diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h
new file mode 100644
index 0000000..0820291
--- /dev/null
+++ b/linux/32/syscallent.h
@@ -0,0 +1,277 @@
+#ifndef ARCH_sys_mmap
+# define ARCH_sys_mmap sys_mmap
+#endif
+[ 0] = { 2, 0, sys_io_setup, "io_setup" },
+[ 1] = { 1, 0, sys_io_destroy, "io_destroy" },
+[ 2] = { 3, 0, sys_io_submit, "io_submit" },
+[ 3] = { 3, 0, sys_io_cancel, "io_cancel" },
+[ 4] = { 5, 0, sys_io_getevents, "io_getevents" },
+[ 5] = { 5, TF, sys_setxattr, "setxattr" },
+[ 6] = { 5, TF, sys_setxattr, "lsetxattr" },
+[ 7] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[ 8] = { 4, TF, sys_getxattr, "getxattr" },
+[ 9] = { 4, TF, sys_getxattr, "lgetxattr" },
+[ 10] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[ 11] = { 3, TF, sys_listxattr, "listxattr" },
+[ 12] = { 3, TF, sys_listxattr, "llistxattr" },
+[ 13] = { 3, TD, sys_flistxattr, "flistxattr" },
+[ 14] = { 2, TF, sys_removexattr, "removexattr" },
+[ 15] = { 2, TF, sys_removexattr, "lremovexattr" },
+[ 16] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[ 17] = { 2, TF, sys_getcwd, "getcwd" },
+[ 18] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[ 19] = { 2, TD, sys_eventfd2, "eventfd2" },
+[ 20] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[ 21] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[ 22] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[ 23] = { 1, TD, sys_dup, "dup" },
+[ 24] = { 3, TD, sys_dup3, "dup3" },
+[ 25] = { 3, TD, sys_fcntl, "fcntl64" },
+[ 26] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[ 27] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[ 28] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[ 29] = { 3, TD, sys_ioctl, "ioctl" },
+[ 30] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[ 31] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[ 32] = { 2, TD, sys_flock, "flock" },
+[ 33] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[ 34] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[ 35] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[ 36] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[ 37] = { 5, TD|TF, sys_linkat, "linkat" },
+[ 38] = { 4, TD|TF, sys_renameat, "renameat" },
+[ 39] = { 2, TF, sys_umount2, "umount2" },
+[ 40] = { 5, TF, sys_mount, "mount" },
+[ 41] = { 2, TF, sys_pivotroot, "pivot_root" },
+[ 42] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[ 43] = { 3, TF, sys_statfs64, "statfs64" },
+[ 44] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[ 45] = { 3, TF, sys_truncate64, "truncate64" },
+[ 46] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[ 47] = { 6, TD, sys_fallocate, "fallocate" },
+[ 48] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[ 49] = { 1, TF, sys_chdir, "chdir" },
+[ 50] = { 1, TD, sys_fchdir, "fchdir" },
+[ 51] = { 1, TF, sys_chroot, "chroot" },
+[ 52] = { 2, TD, sys_fchmod, "fchmod" },
+[ 53] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[ 54] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[ 55] = { 3, TD, sys_fchown, "fchown" },
+[ 56] = { 4, TD|TF, sys_openat, "openat" },
+[ 57] = { 1, TD, sys_close, "close" },
+[ 58] = { 0, 0, sys_vhangup, "vhangup" },
+[ 59] = { 2, TD, sys_pipe2, "pipe2" },
+[ 60] = { 4, TF, sys_quotactl, "quotactl" },
+[ 61] = { 3, TD, sys_getdents64, "getdents64" },
+[ 62] = { 5, TD, sys_llseek, "_llseek" },
+[ 63] = { 3, TD, sys_read, "read" },
+[ 64] = { 3, TD, sys_write, "write" },
+[ 65] = { 3, TD, sys_readv, "readv" },
+[ 66] = { 3, TD, sys_writev, "writev" },
+[ 67] = { 5, TD, sys_pread, "pread64" },
+[ 68] = { 5, TD, sys_pwrite, "pwrite64" },
+[ 69] = { 5, TD, sys_preadv, "preadv" },
+[ 70] = { 5, TD, sys_pwritev, "pwritev" },
+[ 71] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[ 72] = { 6, TD, sys_pselect6, "pselect6" },
+[ 73] = { 5, TD, sys_ppoll, "ppoll" },
+[ 74] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[ 75] = { 4, TD, sys_vmsplice, "vmsplice" },
+[ 76] = { 6, TD, sys_splice, "splice" },
+[ 77] = { 4, TD, sys_tee, "tee" },
+[ 78] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[ 79] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[ 80] = { 2, TD, sys_fstat64, "fstat64" },
+[ 81] = { 0, 0, sys_sync, "sync" },
+[ 82] = { 1, TD, sys_fsync, "fsync" },
+[ 83] = { 1, TD, sys_fdatasync, "fdatasync" },
+#ifdef ARCH_WANT_SYNC_FILE_RANGE2
+[ 84] = { 6, TD, sys_sync_file_range2, "sync_file_range2" },
+#else
+[ 84] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+#endif
+[ 85] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[ 86] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[ 87] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[ 88] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[ 89] = { 1, TF, sys_acct, "acct" },
+[ 90] = { 2, 0, sys_capget, "capget" },
+[ 91] = { 2, 0, sys_capset, "capset" },
+[ 92] = { 1, 0, sys_personality, "personality" },
+[ 93] = { 1, TP|SE, sys_exit, "exit" },
+[ 94] = { 1, TP|SE, sys_exit, "exit_group" },
+[ 95] = { 5, TP, sys_waitid, "waitid" },
+[ 96] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[ 97] = { 1, TP, sys_unshare, "unshare" },
+[ 98] = { 6, 0, sys_futex, "futex" },
+[ 99] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[100] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[101] = { 2, 0, sys_nanosleep, "nanosleep" },
+[102] = { 2, 0, sys_getitimer, "getitimer" },
+[103] = { 3, 0, sys_setitimer, "setitimer" },
+[104] = { 4, 0, sys_kexec_load, "kexec_load" },
+[105] = { 3, 0, sys_init_module, "init_module" },
+[106] = { 2, 0, sys_delete_module, "delete_module" },
+[107] = { 3, 0, sys_timer_create, "timer_create" },
+[108] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[109] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[110] = { 4, 0, sys_timer_settime, "timer_settime" },
+[111] = { 1, 0, sys_timer_delete, "timer_delete" },
+[112] = { 2, 0, sys_clock_settime, "clock_settime" },
+[113] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[114] = { 2, 0, sys_clock_getres, "clock_getres" },
+[115] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[116] = { 3, 0, sys_syslog, "syslog" },
+[117] = { 4, 0, sys_ptrace, "ptrace" },
+[118] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[119] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[120] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[121] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[122] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[123] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[124] = { 0, 0, sys_sched_yield, "sched_yield" },
+[125] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[126] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[127] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[128] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[129] = { 2, TS, sys_kill, "kill" },
+[130] = { 2, TS, sys_kill, "tkill" },
+[131] = { 3, TS, sys_tgkill, "tgkill" },
+[132] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[133] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[134] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[135] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[136] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[137] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[138] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[139] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[140] = { 3, 0, sys_setpriority, "setpriority" },
+[141] = { 2, 0, sys_getpriority, "getpriority" },
+[142] = { 4, 0, sys_reboot, "reboot" },
+[143] = { 2, 0, sys_setregid, "setregid" },
+[144] = { 1, 0, sys_setgid, "setgid" },
+[145] = { 2, 0, sys_setreuid, "setreuid" },
+[146] = { 1, 0, sys_setuid, "setuid" },
+[147] = { 3, 0, sys_setresuid, "setresuid" },
+[148] = { 3, 0, sys_getresuid, "getresuid" },
+[149] = { 3, 0, sys_setresgid, "setresgid" },
+[150] = { 3, 0, sys_getresgid, "getresgid" },
+[151] = { 1, NF, sys_setfsuid, "setfsuid" },
+[152] = { 1, NF, sys_setfsgid, "setfsgid" },
+[153] = { 1, 0, sys_times, "times" },
+[154] = { 2, 0, sys_setpgid, "setpgid" },
+[155] = { 1, 0, sys_getpgid, "getpgid" },
+[156] = { 1, 0, sys_getsid, "getsid" },
+[157] = { 0, 0, sys_setsid, "setsid" },
+[158] = { 2, 0, sys_getgroups, "getgroups" },
+[159] = { 2, 0, sys_setgroups, "setgroups" },
+[160] = { 1, 0, sys_uname, "uname" },
+[161] = { 2, 0, sys_sethostname, "sethostname" },
+[162] = { 2, 0, sys_setdomainname, "setdomainname" },
+[163] = { 2, 0, sys_getrlimit, "getrlimit" },
+[164] = { 2, 0, sys_setrlimit, "setrlimit" },
+[165] = { 2, 0, sys_getrusage, "getrusage" },
+[166] = { 1, 0, sys_umask, "umask" },
+[167] = { 5, 0, sys_prctl, "prctl" },
+[168] = { 3, 0, sys_getcpu, "getcpu" },
+[169] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[170] = { 2, 0, sys_settimeofday, "settimeofday" },
+[171] = { 1, 0, sys_adjtimex, "adjtimex" },
+[172] = { 0, 0, sys_getpid, "getpid" },
+[173] = { 0, 0, sys_getppid, "getppid" },
+[174] = { 0, NF, sys_getuid, "getuid" },
+[175] = { 0, NF, sys_geteuid, "geteuid" },
+[176] = { 0, NF, sys_getgid, "getgid" },
+[177] = { 0, NF, sys_getegid, "getegid" },
+[178] = { 0, 0, sys_gettid, "gettid" },
+[179] = { 1, 0, sys_sysinfo, "sysinfo" },
+[180] = { 4, 0, sys_mq_open, "mq_open" },
+[181] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[182] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[183] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[184] = { 2, 0, sys_mq_notify, "mq_notify" },
+[185] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[186] = { 2, TI, sys_msgget, "msgget" },
+[187] = { 3, TI, sys_msgctl, "msgctl" },
+[188] = { 5, TI, sys_msgrcv, "msgrcv" },
+[189] = { 4, TI, sys_msgsnd, "msgsnd" },
+[190] = { 3, TI, sys_semget, "semget" },
+[191] = { 4, TI, sys_semctl, "semctl" },
+[192] = { 4, TI, sys_semtimedop, "semtimedop" },
+[193] = { 3, TI, sys_semop, "semop" },
+[194] = { 3, TI, sys_shmget, "shmget" },
+[195] = { 3, TI, sys_shmctl, "shmctl" },
+[196] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[197] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[198] = { 3, TN, sys_socket, "socket" },
+[199] = { 4, TN, sys_socketpair, "socketpair" },
+[200] = { 3, TN, sys_bind, "bind" },
+[201] = { 2, TN, sys_listen, "listen" },
+[202] = { 3, TN, sys_accept, "accept" },
+[203] = { 3, TN, sys_connect, "connect" },
+[204] = { 3, TN, sys_getsockname, "getsockname" },
+[205] = { 3, TN, sys_getpeername, "getpeername" },
+[206] = { 6, TN, sys_sendto, "sendto" },
+[207] = { 6, TN, sys_recvfrom, "recvfrom" },
+[208] = { 5, TN, sys_setsockopt, "setsockopt" },
+[209] = { 5, TN, sys_getsockopt, "getsockopt" },
+[210] = { 2, TN, sys_shutdown, "shutdown" },
+[211] = { 3, TN, sys_sendmsg, "sendmsg" },
+[212] = { 3, TN, sys_recvmsg, "recvmsg" },
+[213] = { 4, TD, sys_readahead, "readahead" },
+[214] = { 1, TM|SI, sys_brk, "brk" },
+[215] = { 2, TM|SI, sys_munmap, "munmap" },
+[216] = { 5, TM|SI, sys_mremap, "mremap" },
+[217] = { 5, 0, sys_add_key, "add_key" },
+[218] = { 4, 0, sys_request_key, "request_key" },
+[219] = { 5, 0, sys_keyctl, "keyctl" },
+[220] = { 5, TP, sys_clone, "clone" },
+[221] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[222] = { 6, TD|TM|SI, ARCH_sys_mmap, "mmap2" },
+[223] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[224] = { 2, TF, sys_swapon, "swapon" },
+[225] = { 1, TF, sys_swapoff, "swapoff" },
+[226] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[227] = { 3, TM, sys_msync, "msync" },
+[228] = { 2, TM, sys_mlock, "mlock" },
+[229] = { 2, TM, sys_munlock, "munlock" },
+[230] = { 1, TM, sys_mlockall, "mlockall" },
+[231] = { 0, TM, sys_munlockall, "munlockall" },
+[232] = { 3, TM, sys_mincore, "mincore" },
+[233] = { 3, TM, sys_madvise, "madvise" },
+[234] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[235] = { 6, TM, sys_mbind, "mbind" },
+[236] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[237] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[238] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[239] = { 6, TM, sys_move_pages, "move_pages" },
+[240] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[241] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[242] = { 4, TN, sys_accept4, "accept4" },
+[243] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+/* [244 ... 259] are arch specific */
+[260] = { 4, TP, sys_wait4, "wait4" },
+[261] = { 4, 0, sys_prlimit64, "prlimit64" },
+[262] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[263] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[264] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[265] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[266] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[267] = { 1, TD, sys_syncfs, "syncfs" },
+[268] = { 2, TD, sys_setns, "setns" },
+[269] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[270] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[271] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[272] = { 5, 0, sys_kcmp, "kcmp" },
+[273] = { 3, TD, sys_finit_module, "finit_module" },
+[274] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[275] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[276] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[277] = { 3, 0, sys_seccomp, "seccomp", },
+[278] = { 3, 0, sys_getrandom, "getrandom", },
+[279] = { 2, TD, sys_memfd_create, "memfd_create", },
+[280] = { 3, TD, sys_bpf, "bpf", },
+[281] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+
+#undef ARCH_sys_mmap
+#undef ARCH_WANT_SYNC_FILE_RANGE2
diff --git a/linux/64/ioctls_inc.h b/linux/64/ioctls_inc.h
new file mode 100644
index 0000000..0cc8de0
--- /dev/null
+++ b/linux/64/ioctls_inc.h
@@ -0,0 +1,2617 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/include/ tree. */
+{ "acpi/apei.h", "APEI_ERST_CLEAR_RECORD", _IOC_WRITE, 0x4501, 0x08 },
+{ "acpi/apei.h", "APEI_ERST_GET_RECORD_COUNT", _IOC_READ, 0x4502, 0x04 },
+{ "asm-generic/ioctls.h", "FIOASYNC", 0, 0x5452, 0 },
+{ "asm-generic/ioctls.h", "FIOCLEX", 0, 0x5451, 0 },
+{ "asm-generic/ioctls.h", "FIONBIO", 0, 0x5421, 0 },
+{ "asm-generic/ioctls.h", "FIONCLEX", 0, 0x5450, 0 },
+{ "asm-generic/ioctls.h", "FIONREAD", 0, 0x541B, 0 },
+{ "asm-generic/ioctls.h", "FIOQSIZE", 0, 0x5460, 0 },
+{ "asm-generic/ioctls.h", "TCFLSH", 0, 0x540B, 0 },
+{ "asm-generic/ioctls.h", "TCGETA", 0, 0x5405, 0 },
+{ "asm-generic/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm-generic/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm-generic/ioctls.h", "TCGETX", 0, 0x5432, 0 },
+{ "asm-generic/ioctls.h", "TCSBRK", 0, 0x5409, 0 },
+{ "asm-generic/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm-generic/ioctls.h", "TCSETA", 0, 0x5406, 0 },
+{ "asm-generic/ioctls.h", "TCSETAF", 0, 0x5408, 0 },
+{ "asm-generic/ioctls.h", "TCSETAW", 0, 0x5407, 0 },
+{ "asm-generic/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm-generic/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm-generic/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm-generic/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETX", 0, 0x5433, 0 },
+{ "asm-generic/ioctls.h", "TCSETXF", 0, 0x5434, 0 },
+{ "asm-generic/ioctls.h", "TCSETXW", 0, 0x5435, 0 },
+{ "asm-generic/ioctls.h", "TCXONC", 0, 0x540A, 0 },
+{ "asm-generic/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm-generic/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm-generic/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm-generic/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm-generic/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm-generic/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPGRP", 0, 0x540F, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGRS485", 0, 0x542E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSID", 0, 0x5429, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm-generic/ioctls.h", "TIOCGWINSZ", 0, 0x5413, 0 },
+{ "asm-generic/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm-generic/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm-generic/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm-generic/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm-generic/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm-generic/ioctls.h", "TIOCOUTQ", 0, 0x5411, 0 },
+{ "asm-generic/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm-generic/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm-generic/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm-generic/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm-generic/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPGRP", 0, 0x5410, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSRS485", 0, 0x542F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm-generic/ioctls.h", "TIOCSWINSZ", 0, 0x5414, 0 },
+{ "asm-generic/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm-generic/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm-generic/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm-generic/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm-generic/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm-generic/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_BUFS", _IOC_READ|_IOC_WRITE, 0x6416, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_CTX", _IOC_READ|_IOC_WRITE, 0x6420, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_DRAW", _IOC_READ|_IOC_WRITE, 0x6427, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_MAP", _IOC_READ|_IOC_WRITE, 0x6415, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ACQUIRE", _IOC_NONE, 0x6430, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6434, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_BIND", _IOC_WRITE, 0x6436, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ENABLE", _IOC_WRITE, 0x6432, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_FREE", _IOC_WRITE, 0x6435, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_INFO", _IOC_READ, 0x6433, 0x38 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_RELEASE", _IOC_NONE, 0x6431, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_UNBIND", _IOC_WRITE, 0x6437, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AUTH_MAGIC", _IOC_WRITE, 0x6411, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_BLOCK", _IOC_READ|_IOC_WRITE, 0x6412, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_CONTROL", _IOC_WRITE, 0x6414, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_DMA", _IOC_READ|_IOC_WRITE, 0x6429, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_DROP_MASTER", _IOC_NONE, 0x641f, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_FINISH", _IOC_WRITE, 0x642c, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_FREE_BUFS", _IOC_WRITE, 0x641a, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_CLOSE", _IOC_WRITE, 0x6409, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_FLINK", _IOC_READ|_IOC_WRITE, 0x640a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_OPEN", _IOC_READ|_IOC_WRITE, 0x640b, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CAP", _IOC_READ|_IOC_WRITE, 0x640c, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CLIENT", _IOC_READ|_IOC_WRITE, 0x6405, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CTX", _IOC_READ|_IOC_WRITE, 0x6423, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAGIC", _IOC_READ, 0x6402, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAP", _IOC_READ|_IOC_WRITE, 0x6404, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_GET_SAREA_CTX", _IOC_READ|_IOC_WRITE, 0x641d, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_STATS", _IOC_READ, 0x6406, 0xf8 },
+{ "drm/drm.h", "DRM_IOCTL_GET_UNIQUE", _IOC_READ|_IOC_WRITE, 0x6401, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_INFO_BUFS", _IOC_READ|_IOC_WRITE, 0x6418, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_IRQ_BUSID", _IOC_READ|_IOC_WRITE, 0x6403, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_LOCK", _IOC_WRITE, 0x642a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MAP_BUFS", _IOC_READ|_IOC_WRITE, 0x6419, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MARK_BUFS", _IOC_WRITE, 0x6417, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODESET_CTL", _IOC_WRITE, 0x6408, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB", _IOC_READ|_IOC_WRITE, 0x64ae, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB2", _IOC_READ|_IOC_WRITE, 0x64b8, 0x44 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ATTACHMODE", _IOC_READ|_IOC_WRITE, 0x64a8, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CREATE_DUMB", _IOC_READ|_IOC_WRITE, 0x64b2, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR", _IOC_READ|_IOC_WRITE, 0x64a3, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR2", _IOC_READ|_IOC_WRITE, 0x64bb, 0x24 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DESTROY_DUMB", _IOC_READ|_IOC_WRITE, 0x64b4, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DETACHMODE", _IOC_READ|_IOC_WRITE, 0x64a9, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DIRTYFB", _IOC_READ|_IOC_WRITE, 0x64b1, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCONNECTOR", _IOC_READ|_IOC_WRITE, 0x64a7, 0x50 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCRTC", _IOC_READ|_IOC_WRITE, 0x64a1, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETENCODER", _IOC_READ|_IOC_WRITE, 0x64a6, 0x14 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETFB", _IOC_READ|_IOC_WRITE, 0x64ad, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a4, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANE", _IOC_READ|_IOC_WRITE, 0x64b6, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANERESOURCES", _IOC_READ|_IOC_WRITE, 0x64b5, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPBLOB", _IOC_READ|_IOC_WRITE, 0x64ac, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64aa, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETRESOURCES", _IOC_READ|_IOC_WRITE, 0x64a0, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_MAP_DUMB", _IOC_READ|_IOC_WRITE, 0x64b3, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_GETPROPERTIES", _IOC_READ|_IOC_WRITE, 0x64b9, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ba, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_PAGE_FLIP", _IOC_READ|_IOC_WRITE, 0x64b0, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_RMFB", _IOC_READ|_IOC_WRITE, 0x64af, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETCRTC", _IOC_READ|_IOC_WRITE, 0x64a2, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a5, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPLANE", _IOC_READ|_IOC_WRITE, 0x64b7, 0x30 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ab, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MOD_CTX", _IOC_WRITE, 0x6422, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_NEW_CTX", _IOC_WRITE, 0x6425, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_FD_TO_HANDLE", _IOC_READ|_IOC_WRITE, 0x642e, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_HANDLE_TO_FD", _IOC_READ|_IOC_WRITE, 0x642d, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_RES_CTX", _IOC_READ|_IOC_WRITE, 0x6426, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_RM_CTX", _IOC_READ|_IOC_WRITE, 0x6421, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_RM_DRAW", _IOC_READ|_IOC_WRITE, 0x6428, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_RM_MAP", _IOC_WRITE, 0x641b, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_SET_CLIENT_CAP", _IOC_WRITE, 0x640d, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SET_MASTER", _IOC_NONE, 0x641e, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_SET_SAREA_CTX", _IOC_WRITE, 0x641c, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SET_UNIQUE", _IOC_WRITE, 0x6410, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SET_VERSION", _IOC_READ|_IOC_WRITE, 0x6407, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SG_ALLOC", _IOC_READ|_IOC_WRITE, 0x6438, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SG_FREE", _IOC_WRITE, 0x6439, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SWITCH_CTX", _IOC_WRITE, 0x6424, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UNBLOCK", _IOC_READ|_IOC_WRITE, 0x6413, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_UNLOCK", _IOC_WRITE, 0x642b, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UPDATE_DRAW", _IOC_WRITE, 0x643f, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x6400, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_WAIT_VBLANK", _IOC_READ|_IOC_WRITE, 0x643a, 0x18 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_EXEC", _IOC_READ|_IOC_WRITE, 0x6462, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_GET_VER", _IOC_READ|_IOC_WRITE, 0x6460, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_SET_CMDLIST", _IOC_READ|_IOC_WRITE, 0x6461, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_GET", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_CMD_CTRL", _IOC_READ|_IOC_WRITE, 0x6473, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_GET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6470, 0x50 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_QUEUE_BUF", _IOC_READ|_IOC_WRITE, 0x6472, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_SET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6471, 0x60 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_VIDI_CONNECTION", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_CLEAR", _IOC_WRITE, 0x6442, 0x0c },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_COPY", _IOC_WRITE, 0x6447, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_DOCOPY", _IOC_NONE, 0x6448, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLIP", _IOC_NONE, 0x644e, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLUSH", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FSTATUS", _IOC_NONE, 0x644a, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETAGE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETBUF", _IOC_READ|_IOC_WRITE, 0x6445, 0x18 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_INIT", _IOC_WRITE, 0x6440, 0x40 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_MC", _IOC_WRITE, 0x644c, 0x20 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0FLIP", _IOC_NONE, 0x644b, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0INFO", _IOC_READ, 0x6449, 0x08 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_RSTATUS", _IOC_NONE, 0x644d, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_SWAP", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_VERTEX", _IOC_WRITE, 0x6441, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_ALLOC", _IOC_READ|_IOC_WRITE, 0x6448, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_BATCHBUFFER", _IOC_WRITE, 0x6443, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_CMDBUFFER", _IOC_WRITE, 0x644b, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_DESTROY_HEAP", _IOC_WRITE, 0x644c, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLIP", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLUSH", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FREE", _IOC_WRITE, 0x6449, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x6457, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_CREATE", _IOC_READ|_IOC_WRITE, 0x646d, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY", _IOC_WRITE, 0x646e, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645b, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_ENTERVT", _IOC_NONE, 0x6459, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER", _IOC_WRITE, 0x6454, 0x28 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER2", _IOC_WRITE, 0x6469, 0x40 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_APERTURE", _IOC_READ, 0x6463, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_CACHING", _IOC_READ|_IOC_WRITE, 0x6470, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6462, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_INIT", _IOC_WRITE, 0x6453, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_LEAVEVT", _IOC_NONE, 0x645a, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MADVISE", _IOC_READ|_IOC_WRITE, 0x6466, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP_GTT", _IOC_READ|_IOC_WRITE, 0x6464, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PIN", _IOC_READ|_IOC_WRITE, 0x6455, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PREAD", _IOC_WRITE, 0x645c, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PWRITE", _IOC_WRITE, 0x645d, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_CACHING", _IOC_WRITE, 0x646f, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_DOMAIN", _IOC_WRITE, 0x645f, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6461, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SW_FINISH", _IOC_WRITE, 0x6460, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_THROTTLE", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_UNPIN", _IOC_WRITE, 0x6456, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x6473, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_WAIT", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6446, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID", _IOC_READ|_IOC_WRITE, 0x6465, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_RESET_STATS", _IOC_READ|_IOC_WRITE, 0x6472, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_VBLANK_PIPE", _IOC_READ, 0x644e, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_HWS_ADDR", _IOC_WRITE, 0x6451, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT", _IOC_WRITE, 0x6440, 0x44 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT_HEAP", _IOC_WRITE, 0x644a, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_WAIT", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_ATTRS", _IOC_READ|_IOC_WRITE, 0x6468, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE", _IOC_WRITE, 0x6467, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_REG_READ", _IOC_READ|_IOC_WRITE, 0x6471, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SETPARAM", _IOC_WRITE, 0x6447, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_VBLANK_PIPE", _IOC_WRITE, 0x644d, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_VBLANK_SWAP", _IOC_READ|_IOC_WRITE, 0x644f, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_BLIT", _IOC_WRITE, 0x6448, 0x34 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_CLEAR", _IOC_WRITE, 0x6444, 0x14 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_DMA_BOOTSTRAP", _IOC_READ|_IOC_WRITE, 0x644c, 0x20 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_FLUSH", _IOC_WRITE, 0x6441, 0x08 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6449, 0x10 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_ILOAD", _IOC_WRITE, 0x6447, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INDICES", _IOC_WRITE, 0x6446, 0x10 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INIT", _IOC_WRITE, 0x6440, 0x80 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_RESET", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SET_FENCE", _IOC_WRITE, 0x644a, 0x04 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SWAP", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_VERTEX", _IOC_WRITE, 0x6445, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_WAIT_FENCE", _IOC_READ|_IOC_WRITE, 0x644b, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x18 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6442, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6446, 0x20 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_WAIT_FENCE", _IOC_WRITE, 0x6447, 0x18 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_FINI", _IOC_WRITE, 0x6483, 0x04 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_PREP", _IOC_WRITE, 0x6482, 0x08 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6484, 0x28 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6480, 0x30 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_PUSHBUF", _IOC_READ|_IOC_WRITE, 0x6481, 0x40 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x08 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_SET_PARAM", _IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC", _IOC_READ|_IOC_WRITE, 0x6440, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC_SURF", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_CLIENTCAP", _IOC_WRITE, 0x6445, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_EXECBUFFER", _IOC_WRITE, 0x6442, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_MAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_UPDATE_AREA", _IOC_WRITE, 0x6443, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_BLIT", _IOC_WRITE, 0x644b, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CLEAR", _IOC_WRITE, 0x6448, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_DEPTH", _IOC_WRITE, 0x644c, 0x28 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FLIP", _IOC_NONE, 0x6453, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FULLSCREEN", _IOC_WRITE, 0x6450, 0x04 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6452, 0x10 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644f, 0x10 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INIT", _IOC_WRITE, 0x6440, 0x78 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_RESET", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_STIPPLE", _IOC_WRITE, 0x644d, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_ALLOC", _IOC_READ|_IOC_WRITE, 0x6453, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CLEAR", _IOC_WRITE, 0x6448, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CMDBUF", _IOC_WRITE, 0x6450, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_INIT", _IOC_WRITE, 0x6440, 0x78 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESUME", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CS", _IOC_READ|_IOC_WRITE, 0x6466, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FLIP", _IOC_NONE, 0x6452, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FREE", _IOC_WRITE, 0x6454, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FULLSCREEN", _IOC_WRITE, 0x6446, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x646a, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645d, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6469, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x645c, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_OP", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PREAD", _IOC_READ|_IOC_WRITE, 0x6461, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PWRITE", _IOC_READ|_IOC_WRITE, 0x6462, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_DOMAIN", _IOC_READ|_IOC_WRITE, 0x6463, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6468, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x646d, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_VA", _IOC_READ|_IOC_WRITE, 0x646b, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_WAIT_IDLE", _IOC_WRITE, 0x6464, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6451, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644d, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INFO", _IOC_READ|_IOC_WRITE, 0x6467, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INIT_HEAP", _IOC_WRITE, 0x6455, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6456, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_WAIT", _IOC_WRITE, 0x6457, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_RESET", _IOC_NONE, 0x6445, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SETPARAM", _IOC_WRITE, 0x6459, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_STIPPLE", _IOC_WRITE, 0x644c, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_ALLOC", _IOC_WRITE, 0x645a, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_FREE", _IOC_WRITE, 0x645b, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_TEXTURE", _IOC_READ|_IOC_WRITE, 0x644e, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX2", _IOC_WRITE, 0x644f, 0x28 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_CMDBUF", _IOC_WRITE, 0x6441, 0x38 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_EMIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_WAIT", _IOC_WRITE, 0x6443, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_INIT", _IOC_WRITE, 0x6440, 0x60 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6454, 0x20 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_FREE", _IOC_WRITE, 0x6455, 0x20 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6453, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_ALLOC", _IOC_READ|_IOC_WRITE, 0x6444, 0x20 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_FREE", _IOC_WRITE, 0x6445, 0x20 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_INIT", _IOC_WRITE, 0x6456, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_CLOSE_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6446, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644d, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x644b, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644c, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x644a, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT_BASE", _IOC_READ|_IOC_WRITE, 0x6449, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_OPEN_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6445, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6448, 0x58 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_INCR", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_READ", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_WAIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_ALLOCMEM", _IOC_READ|_IOC_WRITE, 0x6440, 0x20 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_BLIT_SYNC", _IOC_WRITE, 0x644f, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUFFER", _IOC_WRITE, 0x6448, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUF_SIZE", _IOC_READ|_IOC_WRITE, 0x644b, 0x0c },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DEC_FUTEX", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_BLIT", _IOC_WRITE, 0x644e, 0x30 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_INIT", _IOC_READ|_IOC_WRITE, 0x6447, 0x20 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FB_INIT", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FLUSH", _IOC_NONE, 0x6449, 0x00 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FREEMEM", _IOC_WRITE, 0x6441, 0x20 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_MAP_INIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x28 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_PCICMD", _IOC_WRITE, 0x644a, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_WAIT_IRQ", _IOC_READ|_IOC_WRITE, 0x644d, 0x18 },
+{ "linux/agpgart.h", "AGPIOC_ACQUIRE", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x4106, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_BIND", _IOC_WRITE, 0x4108, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_CHIPSET_FLUSH", _IOC_NONE, 0x410a, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_DEALLOCATE", _IOC_WRITE, 0x4107, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_INFO", _IOC_READ, 0x4100, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_PROTECT", _IOC_WRITE, 0x4105, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_RELEASE", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_RESERVE", _IOC_WRITE, 0x4104, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_SETUP", _IOC_WRITE, 0x4103, 0x08 },
+{ "linux/agpgart.h", "AGPIOC_UNBIND", _IOC_WRITE, 0x4109, 0x08 },
+{ "linux/android/binder.h", "BC_ACQUIRE", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/android/binder.h", "BC_ACQUIRE_DONE", _IOC_WRITE, 0x6309, 0x10 },
+{ "linux/android/binder.h", "BC_ACQUIRE_RESULT", _IOC_WRITE, 0x6302, 0x04 },
+{ "linux/android/binder.h", "BC_ATTEMPT_ACQUIRE", _IOC_WRITE, 0x630a, 0x08 },
+{ "linux/android/binder.h", "BC_CLEAR_DEATH_NOTIFICATION", _IOC_WRITE, 0x630f, 0x0c },
+{ "linux/android/binder.h", "BC_DEAD_BINDER_DONE", _IOC_WRITE, 0x6310, 0x08 },
+{ "linux/android/binder.h", "BC_DECREFS", _IOC_WRITE, 0x6307, 0x04 },
+{ "linux/android/binder.h", "BC_ENTER_LOOPER", _IOC_NONE, 0x630c, 0x00 },
+{ "linux/android/binder.h", "BC_EXIT_LOOPER", _IOC_NONE, 0x630d, 0x00 },
+{ "linux/android/binder.h", "BC_FREE_BUFFER", _IOC_WRITE, 0x6303, 0x08 },
+{ "linux/android/binder.h", "BC_INCREFS", _IOC_WRITE, 0x6304, 0x04 },
+{ "linux/android/binder.h", "BC_INCREFS_DONE", _IOC_WRITE, 0x6308, 0x10 },
+{ "linux/android/binder.h", "BC_REGISTER_LOOPER", _IOC_NONE, 0x630b, 0x00 },
+{ "linux/android/binder.h", "BC_RELEASE", _IOC_WRITE, 0x6306, 0x04 },
+{ "linux/android/binder.h", "BC_REPLY", _IOC_WRITE, 0x6301, 0x40 },
+{ "linux/android/binder.h", "BC_REQUEST_DEATH_NOTIFICATION", _IOC_WRITE, 0x630e, 0x0c },
+{ "linux/android/binder.h", "BC_TRANSACTION", _IOC_WRITE, 0x6300, 0x40 },
+{ "linux/android/binder.h", "BINDER_SET_CONTEXT_MGR", _IOC_WRITE, 0x6207, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_PRIORITY", _IOC_WRITE, 0x6206, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_TIMEOUT", _IOC_WRITE, 0x6203, 0x08 },
+{ "linux/android/binder.h", "BINDER_SET_MAX_THREADS", _IOC_WRITE, 0x6205, 0x04 },
+{ "linux/android/binder.h", "BINDER_THREAD_EXIT", _IOC_WRITE, 0x6208, 0x04 },
+{ "linux/android/binder.h", "BINDER_VERSION", _IOC_READ|_IOC_WRITE, 0x6209, 0x04 },
+{ "linux/android/binder.h", "BINDER_WRITE_READ", _IOC_READ|_IOC_WRITE, 0x6201, 0x30 },
+{ "linux/android/binder.h", "BR_ACQUIRE", _IOC_READ, 0x7208, 0x10 },
+{ "linux/android/binder.h", "BR_ACQUIRE_RESULT", _IOC_READ, 0x7204, 0x04 },
+{ "linux/android/binder.h", "BR_ATTEMPT_ACQUIRE", _IOC_READ, 0x720b, 0x18 },
+{ "linux/android/binder.h", "BR_CLEAR_DEATH_NOTIFICATION_DONE", _IOC_READ, 0x7210, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_BINDER", _IOC_READ, 0x720f, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_REPLY", _IOC_NONE, 0x7205, 0x00 },
+{ "linux/android/binder.h", "BR_DECREFS", _IOC_READ, 0x720a, 0x10 },
+{ "linux/android/binder.h", "BR_ERROR", _IOC_READ, 0x7200, 0x04 },
+{ "linux/android/binder.h", "BR_FAILED_REPLY", _IOC_NONE, 0x7211, 0x00 },
+{ "linux/android/binder.h", "BR_FINISHED", _IOC_NONE, 0x720e, 0x00 },
+{ "linux/android/binder.h", "BR_INCREFS", _IOC_READ, 0x7207, 0x10 },
+{ "linux/android/binder.h", "BR_NOOP", _IOC_NONE, 0x720c, 0x00 },
+{ "linux/android/binder.h", "BR_OK", _IOC_NONE, 0x7201, 0x00 },
+{ "linux/android/binder.h", "BR_RELEASE", _IOC_READ, 0x7209, 0x10 },
+{ "linux/android/binder.h", "BR_REPLY", _IOC_READ, 0x7203, 0x40 },
+{ "linux/android/binder.h", "BR_SPAWN_LOOPER", _IOC_NONE, 0x720d, 0x00 },
+{ "linux/android/binder.h", "BR_TRANSACTION", _IOC_READ, 0x7202, 0x40 },
+{ "linux/android/binder.h", "BR_TRANSACTION_COMPLETE", _IOC_NONE, 0x7206, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_STANDBY", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_SUSPEND", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/arcfb.h", "FBIO_GETCONTROL2", _IOC_READ, 0x4689, 0x08 },
+{ "linux/arcfb.h", "FBIO_WAITEVENT", _IOC_NONE, 0x4688, 0x00 },
+{ "linux/atm_eni.h", "ENI_MEMDUMP", _IOC_WRITE, 0x6160, 0x10 },
+{ "linux/atm_eni.h", "ENI_SETMULT", _IOC_WRITE, 0x6167, 0x10 },
+{ "linux/atm_he.h", "HE_GET_REG", _IOC_WRITE, 0x6160, 0x10 },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTAT", _IOC_WRITE, 0x6132, 0x10 },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTATZ", _IOC_WRITE, 0x6133, 0x10 },
+{ "linux/atm_nicstar.h", "NS_ADJBUFLEV", _IOC_NONE, 0x6163, 0x00 },
+{ "linux/atm_nicstar.h", "NS_GETPSTAT", _IOC_READ|_IOC_WRITE, 0x6161, 0x10 },
+{ "linux/atm_nicstar.h", "NS_SETBUFLEV", _IOC_WRITE, 0x6162, 0x10 },
+{ "linux/atm_tcp.h", "ATMTCP_CREATE", _IOC_NONE, 0x618e, 0x00 },
+{ "linux/atm_tcp.h", "ATMTCP_REMOVE", _IOC_NONE, 0x618f, 0x00 },
+{ "linux/atm_tcp.h", "SIOCSIFATMTCP", _IOC_NONE, 0x6180, 0x00 },
+{ "linux/atm_zatm.h", "ZATM_GETPOOL", _IOC_WRITE, 0x6161, 0x10 },
+{ "linux/atm_zatm.h", "ZATM_GETPOOLZ", _IOC_WRITE, 0x6162, 0x10 },
+{ "linux/atm_zatm.h", "ZATM_SETPOOL", _IOC_WRITE, 0x6163, 0x10 },
+{ "linux/atmarp.h", "ATMARPD_CTRL", _IOC_NONE, 0x61e1, 0x00 },
+{ "linux/atmarp.h", "ATMARP_ENCAP", _IOC_NONE, 0x61e5, 0x00 },
+{ "linux/atmarp.h", "ATMARP_MKIP", _IOC_NONE, 0x61e2, 0x00 },
+{ "linux/atmarp.h", "ATMARP_SETENTRY", _IOC_NONE, 0x61e3, 0x00 },
+{ "linux/atmbr2684.h", "BR2684_SETFILT", _IOC_WRITE, 0x6190, 0x1c },
+{ "linux/atmclip.h", "SIOCMKCLIP", _IOC_NONE, 0x61e0, 0x00 },
+{ "linux/atmdev.h", "ATM_ADDADDR", _IOC_WRITE, 0x6188, 0x10 },
+{ "linux/atmdev.h", "ATM_ADDLECSADDR", _IOC_WRITE, 0x618e, 0x10 },
+{ "linux/atmdev.h", "ATM_ADDPARTY", _IOC_WRITE, 0x61f4, 0x10 },
+{ "linux/atmdev.h", "ATM_DELADDR", _IOC_WRITE, 0x6189, 0x10 },
+{ "linux/atmdev.h", "ATM_DELLECSADDR", _IOC_WRITE, 0x618f, 0x10 },
+{ "linux/atmdev.h", "ATM_DROPPARTY", _IOC_WRITE, 0x61f5, 0x04 },
+{ "linux/atmdev.h", "ATM_GETADDR", _IOC_WRITE, 0x6186, 0x10 },
+{ "linux/atmdev.h", "ATM_GETCIRANGE", _IOC_WRITE, 0x618a, 0x10 },
+{ "linux/atmdev.h", "ATM_GETESI", _IOC_WRITE, 0x6185, 0x10 },
+{ "linux/atmdev.h", "ATM_GETLECSADDR", _IOC_WRITE, 0x6190, 0x10 },
+{ "linux/atmdev.h", "ATM_GETLINKRATE", _IOC_WRITE, 0x6181, 0x10 },
+{ "linux/atmdev.h", "ATM_GETLOOP", _IOC_WRITE, 0x6152, 0x10 },
+{ "linux/atmdev.h", "ATM_GETNAMES", _IOC_WRITE, 0x6183, 0x10 },
+{ "linux/atmdev.h", "ATM_GETSTAT", _IOC_WRITE, 0x6150, 0x10 },
+{ "linux/atmdev.h", "ATM_GETSTATZ", _IOC_WRITE, 0x6151, 0x10 },
+{ "linux/atmdev.h", "ATM_GETTYPE", _IOC_WRITE, 0x6184, 0x10 },
+{ "linux/atmdev.h", "ATM_NEWBACKENDIF", _IOC_WRITE, 0x61f3, 0x02 },
+{ "linux/atmdev.h", "ATM_QUERYLOOP", _IOC_WRITE, 0x6154, 0x10 },
+{ "linux/atmdev.h", "ATM_RSTADDR", _IOC_WRITE, 0x6187, 0x10 },
+{ "linux/atmdev.h", "ATM_SETBACKEND", _IOC_WRITE, 0x61f2, 0x02 },
+{ "linux/atmdev.h", "ATM_SETCIRANGE", _IOC_WRITE, 0x618b, 0x10 },
+{ "linux/atmdev.h", "ATM_SETESI", _IOC_WRITE, 0x618c, 0x10 },
+{ "linux/atmdev.h", "ATM_SETESIF", _IOC_WRITE, 0x618d, 0x10 },
+{ "linux/atmdev.h", "ATM_SETLOOP", _IOC_WRITE, 0x6153, 0x10 },
+{ "linux/atmdev.h", "ATM_SETSC", _IOC_WRITE, 0x61f1, 0x04 },
+{ "linux/atmlec.h", "ATMLEC_CTRL", _IOC_NONE, 0x61d0, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_DATA", _IOC_NONE, 0x61d1, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_MCAST", _IOC_NONE, 0x61d2, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_CTRL", _IOC_NONE, 0x61d8, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_DATA", _IOC_NONE, 0x61d9, 0x00 },
+{ "linux/atmsvc.h", "ATMSIGD_CTRL", _IOC_NONE, 0x61f0, 0x00 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ASKUMOUNT", _IOC_READ|_IOC_WRITE, 0x937d, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CATATONIC", _IOC_READ|_IOC_WRITE, 0x9379, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CLOSEMOUNT", _IOC_READ|_IOC_WRITE, 0x9375, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_EXPIRE", _IOC_READ|_IOC_WRITE, 0x937c, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_FAIL", _IOC_READ|_IOC_WRITE, 0x9377, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ISMOUNTPOINT", _IOC_READ|_IOC_WRITE, 0x937e, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_OPENMOUNT", _IOC_READ|_IOC_WRITE, 0x9374, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOSUBVER", _IOC_READ|_IOC_WRITE, 0x9373, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOVER", _IOC_READ|_IOC_WRITE, 0x9372, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_READY", _IOC_READ|_IOC_WRITE, 0x9376, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_REQUESTER", _IOC_READ|_IOC_WRITE, 0x937b, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_SETPIPEFD", _IOC_READ|_IOC_WRITE, 0x9378, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_TIMEOUT", _IOC_READ|_IOC_WRITE, 0x937a, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x9371, 0x18 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_CATATONIC", _IOC_NONE, 0x9362, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_EXPIRE", _IOC_READ, 0x9365, 0x10c },
+{ "linux/auto_fs.h", "AUTOFS_IOC_FAIL", _IOC_NONE, 0x9361, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_PROTOVER", _IOC_READ, 0x9363, 0x04 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_READY", _IOC_NONE, 0x9360, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x9364, 0x08 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT32", _IOC_READ|_IOC_WRITE, 0x9364, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_ASKUMOUNT", _IOC_READ, 0x9370, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_EXPIRE_MULTI", _IOC_WRITE, 0x9366, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_PROTOSUBVER", _IOC_READ, 0x9367, 0x04 },
+{ "linux/blkpg.h", "BLKPG", _IOC_NONE, 0x1269, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_ADD_DEV", _IOC_WRITE, 0x940a, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE", _IOC_WRITE, 0x940c, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_CTL", _IOC_WRITE, 0x9421, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_PROGRESS", _IOC_READ, 0x9422, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_V2", _IOC_READ|_IOC_WRITE, 0x9420, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE", _IOC_WRITE, 0x9409, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE_RANGE", _IOC_WRITE, 0x940d, 0x20 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFAULT_SUBVOL", _IOC_WRITE, 0x9413, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG", _IOC_WRITE, 0x9402, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG_RANGE", _IOC_WRITE, 0x9410, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEVICES_READY", _IOC_READ, 0x9427, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_INFO", _IOC_READ|_IOC_WRITE, 0x941e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_REPLACE", _IOC_READ|_IOC_WRITE, 0x9435, 0xa28 },
+{ "linux/btrfs.h", "BTRFS_IOC_FILE_EXTENT_SAME", _IOC_READ|_IOC_WRITE, 0x9436, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_FS_INFO", _IOC_READ, 0x941f, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_DEV_STATS", _IOC_READ|_IOC_WRITE, 0x9434, 0x408 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FEATURES", _IOC_READ, 0x9439, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FSLABEL", _IOC_READ, 0x9431, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_SUPPORTED_FEATURES", _IOC_READ, 0x9439, 0x48 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_LOOKUP", _IOC_READ|_IOC_WRITE, 0x9412, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_PATHS", _IOC_READ|_IOC_WRITE, 0x9423, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_LOGICAL_INO", _IOC_READ|_IOC_WRITE, 0x9424, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_ASSIGN", _IOC_WRITE, 0x9429, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_CREATE", _IOC_WRITE, 0x942a, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_LIMIT", _IOC_READ, 0x942b, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_CTL", _IOC_READ|_IOC_WRITE, 0x9428, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN", _IOC_WRITE, 0x942c, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_STATUS", _IOC_READ, 0x942d, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_WAIT", _IOC_NONE, 0x942e, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_RESIZE", _IOC_WRITE, 0x9403, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_RM_DEV", _IOC_WRITE, 0x940b, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCAN_DEV", _IOC_WRITE, 0x9404, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB", _IOC_READ|_IOC_WRITE, 0x941b, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_CANCEL", _IOC_NONE, 0x941c, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_PROGRESS", _IOC_READ|_IOC_WRITE, 0x941d, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SEND", _IOC_WRITE, 0x9426, 0x48 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FEATURES", _IOC_WRITE, 0x9439, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FSLABEL", _IOC_WRITE, 0x9432, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_RECEIVED_SUBVOL", _IOC_READ|_IOC_WRITE, 0x9425, 0xc8 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE", _IOC_WRITE, 0x9401, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE_V2", _IOC_WRITE, 0x9417, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_DESTROY", _IOC_WRITE, 0x940f, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SPACE_INFO", _IOC_READ|_IOC_WRITE, 0x9414, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_START_SYNC", _IOC_READ, 0x9418, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE", _IOC_WRITE, 0x940e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE_V2", _IOC_WRITE, 0x9418, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_GETFLAGS", _IOC_READ, 0x9419, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_SETFLAGS", _IOC_WRITE, 0x941a, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SYNC", _IOC_NONE, 0x9408, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_END", _IOC_NONE, 0x9407, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_START", _IOC_NONE, 0x9406, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH", _IOC_READ|_IOC_WRITE, 0x9411, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH_V2", _IOC_READ|_IOC_WRITE, 0x9411, 0x70 },
+{ "linux/btrfs.h", "BTRFS_IOC_WAIT_SYNC", _IOC_WRITE, 0x9416, 0x08 },
+{ "linux/capi.h", "CAPI_CLR_FLAGS", _IOC_READ, 0x4325, 0x04 },
+{ "linux/capi.h", "CAPI_GET_ERRCODE", _IOC_READ, 0x4321, 0x02 },
+{ "linux/capi.h", "CAPI_GET_FLAGS", _IOC_READ, 0x4323, 0x04 },
+{ "linux/capi.h", "CAPI_GET_MANUFACTURER", _IOC_READ|_IOC_WRITE, 0x4306, 0x04 },
+{ "linux/capi.h", "CAPI_GET_PROFILE", _IOC_READ|_IOC_WRITE, 0x4309, 0x40 },
+{ "linux/capi.h", "CAPI_GET_SERIAL", _IOC_READ|_IOC_WRITE, 0x4308, 0x04 },
+{ "linux/capi.h", "CAPI_GET_VERSION", _IOC_READ|_IOC_WRITE, 0x4307, 0x10 },
+{ "linux/capi.h", "CAPI_INSTALLED", _IOC_READ, 0x4322, 0x02 },
+{ "linux/capi.h", "CAPI_MANUFACTURER_CMD", _IOC_READ|_IOC_WRITE, 0x4320, 0x10 },
+{ "linux/capi.h", "CAPI_NCCI_GETUNIT", _IOC_READ, 0x4327, 0x04 },
+{ "linux/capi.h", "CAPI_NCCI_OPENCOUNT", _IOC_READ, 0x4326, 0x04 },
+{ "linux/capi.h", "CAPI_REGISTER", _IOC_WRITE, 0x4301, 0x0c },
+{ "linux/capi.h", "CAPI_SET_FLAGS", _IOC_READ, 0x4324, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_BIG_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x4212, 0x60 },
+{ "linux/cciss_ioctl.h", "CCISS_DEREGDISK", _IOC_NONE, 0x420c, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_GETBUSTYPES", _IOC_READ, 0x4207, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETDRIVVER", _IOC_READ, 0x4209, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETFIRMVER", _IOC_READ, 0x4208, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETHEARTBEAT", _IOC_READ, 0x4206, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETINTINFO", _IOC_READ, 0x4202, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_GETLUNINFO", _IOC_READ, 0x4211, 0x0c },
+{ "linux/cciss_ioctl.h", "CCISS_GETNODENAME", _IOC_READ, 0x4204, 0x10 },
+{ "linux/cciss_ioctl.h", "CCISS_GETPCIINFO", _IOC_READ, 0x4201, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x420b, 0x58 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWD", _IOC_NONE, 0x420e, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWDISK", _IOC_WRITE, 0x420d, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_RESCANDISK", _IOC_NONE, 0x4210, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REVALIDVOLS", _IOC_NONE, 0x420a, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_SETINTINFO", _IOC_WRITE, 0x4203, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_SETNODENAME", _IOC_WRITE, 0x4205, 0x10 },
+{ "linux/cdrom.h", "CDROMAUDIOBUFSIZ", 0, 0x5382, 0 },
+{ "linux/cdrom.h", "CDROMCLOSETRAY", 0, 0x5319, 0 },
+{ "linux/cdrom.h", "CDROMEJECT", 0, 0x5309, 0 },
+{ "linux/cdrom.h", "CDROMEJECT_SW", 0, 0x530f, 0 },
+{ "linux/cdrom.h", "CDROMGETSPINDOWN", 0, 0x531d, 0 },
+{ "linux/cdrom.h", "CDROMMULTISESSION", 0, 0x5310, 0 },
+{ "linux/cdrom.h", "CDROMPAUSE", 0, 0x5301, 0 },
+{ "linux/cdrom.h", "CDROMPLAYBLK", 0, 0x5317, 0 },
+{ "linux/cdrom.h", "CDROMPLAYMSF", 0, 0x5303, 0 },
+{ "linux/cdrom.h", "CDROMPLAYTRKIND", 0, 0x5304, 0 },
+{ "linux/cdrom.h", "CDROMREADALL", 0, 0x5318, 0 },
+{ "linux/cdrom.h", "CDROMREADAUDIO", 0, 0x530e, 0 },
+{ "linux/cdrom.h", "CDROMREADCOOKED", 0, 0x5315, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE1", 0, 0x530d, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE2", 0, 0x530c, 0 },
+{ "linux/cdrom.h", "CDROMREADRAW", 0, 0x5314, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCENTRY", 0, 0x5306, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCHDR", 0, 0x5305, 0 },
+{ "linux/cdrom.h", "CDROMRESET", 0, 0x5312, 0 },
+{ "linux/cdrom.h", "CDROMRESUME", 0, 0x5302, 0 },
+{ "linux/cdrom.h", "CDROMSEEK", 0, 0x5316, 0 },
+{ "linux/cdrom.h", "CDROMSETSPINDOWN", 0, 0x531e, 0 },
+{ "linux/cdrom.h", "CDROMSTART", 0, 0x5308, 0 },
+{ "linux/cdrom.h", "CDROMSTOP", 0, 0x5307, 0 },
+{ "linux/cdrom.h", "CDROMSUBCHNL", 0, 0x530b, 0 },
+{ "linux/cdrom.h", "CDROMVOLCTRL", 0, 0x530a, 0 },
+{ "linux/cdrom.h", "CDROMVOLREAD", 0, 0x5313, 0 },
+{ "linux/cdrom.h", "CDROM_CHANGER_NSLOTS", 0, 0x5328, 0 },
+{ "linux/cdrom.h", "CDROM_CLEAR_OPTIONS", 0, 0x5321, 0 },
+{ "linux/cdrom.h", "CDROM_DEBUG", 0, 0x5330, 0 },
+{ "linux/cdrom.h", "CDROM_DISC_STATUS", 0, 0x5327, 0 },
+{ "linux/cdrom.h", "CDROM_DRIVE_STATUS", 0, 0x5326, 0 },
+{ "linux/cdrom.h", "CDROM_GET_CAPABILITY", 0, 0x5331, 0 },
+{ "linux/cdrom.h", "CDROM_GET_MCN", 0, 0x5311, 0 },
+{ "linux/cdrom.h", "CDROM_LAST_WRITTEN", 0, 0x5395, 0 },
+{ "linux/cdrom.h", "CDROM_LOCKDOOR", 0, 0x5329, 0 },
+{ "linux/cdrom.h", "CDROM_MEDIA_CHANGED", 0, 0x5325, 0 },
+{ "linux/cdrom.h", "CDROM_NEXT_WRITABLE", 0, 0x5394, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_DISC", 0, 0x5323, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_SPEED", 0, 0x5322, 0 },
+{ "linux/cdrom.h", "CDROM_SEND_PACKET", 0, 0x5393, 0 },
+{ "linux/cdrom.h", "CDROM_SET_OPTIONS", 0, 0x5320, 0 },
+{ "linux/cdrom.h", "DVD_AUTH", 0, 0x5392, 0 },
+{ "linux/cdrom.h", "DVD_READ_STRUCT", 0, 0x5390, 0 },
+{ "linux/cdrom.h", "DVD_WRITE_STRUCT", 0, 0x5391, 0 },
+{ "linux/chio.h", "CHIOEXCHANGE", _IOC_WRITE, 0x6302, 0x1c },
+{ "linux/chio.h", "CHIOGELEM", _IOC_WRITE, 0x6310, 0x6c },
+{ "linux/chio.h", "CHIOGPARAMS", _IOC_READ, 0x6306, 0x14 },
+{ "linux/chio.h", "CHIOGPICKER", _IOC_READ, 0x6304, 0x04 },
+{ "linux/chio.h", "CHIOGSTATUS", _IOC_WRITE, 0x6308, 0x10 },
+{ "linux/chio.h", "CHIOGVPARAMS", _IOC_READ, 0x6313, 0x70 },
+{ "linux/chio.h", "CHIOINITELEM", _IOC_NONE, 0x6311, 0x00 },
+{ "linux/chio.h", "CHIOMOVE", _IOC_WRITE, 0x6301, 0x14 },
+{ "linux/chio.h", "CHIOPOSITION", _IOC_WRITE, 0x6303, 0x0c },
+{ "linux/chio.h", "CHIOSPICKER", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/chio.h", "CHIOSVOLTAG", _IOC_WRITE, 0x6312, 0x30 },
+{ "linux/cm4000_cs.h", "CM_IOCARDOFF", _IOC_NONE, 0x6304, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOCGATR", _IOC_READ|_IOC_WRITE, 0x6301, 0x08 },
+{ "linux/cm4000_cs.h", "CM_IOCGSTATUS", _IOC_READ, 0x6300, 0x08 },
+{ "linux/cm4000_cs.h", "CM_IOCSPTS", _IOC_WRITE, 0x6302, 0x08 },
+{ "linux/cm4000_cs.h", "CM_IOCSRDR", _IOC_NONE, 0x6303, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOSDBGLVL", _IOC_WRITE, 0x63fa, 0x08 },
+{ "linux/coda.h", "CIOC_KERNEL_VERSION", _IOC_READ|_IOC_WRITE, 0x630a, 0x08 },
+{ "linux/dm-ioctl.h", "DM_DEV_CREATE", _IOC_READ|_IOC_WRITE, 0xfd03, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_REMOVE", _IOC_READ|_IOC_WRITE, 0xfd04, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_RENAME", _IOC_READ|_IOC_WRITE, 0xfd05, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SET_GEOMETRY", _IOC_READ|_IOC_WRITE, 0xfd0f, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_STATUS", _IOC_READ|_IOC_WRITE, 0xfd07, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SUSPEND", _IOC_READ|_IOC_WRITE, 0xfd06, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_WAIT", _IOC_READ|_IOC_WRITE, 0xfd08, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_DEVICES", _IOC_READ|_IOC_WRITE, 0xfd02, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_VERSIONS", _IOC_READ|_IOC_WRITE, 0xfd0d, 0x138 },
+{ "linux/dm-ioctl.h", "DM_REMOVE_ALL", _IOC_READ|_IOC_WRITE, 0xfd01, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_CLEAR", _IOC_READ|_IOC_WRITE, 0xfd0a, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_DEPS", _IOC_READ|_IOC_WRITE, 0xfd0b, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_LOAD", _IOC_READ|_IOC_WRITE, 0xfd09, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_STATUS", _IOC_READ|_IOC_WRITE, 0xfd0c, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TARGET_MSG", _IOC_READ|_IOC_WRITE, 0xfd0e, 0x138 },
+{ "linux/dm-ioctl.h", "DM_VERSION", _IOC_READ|_IOC_WRITE, 0xfd00, 0x138 },
+{ "linux/dn.h", "OSIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "OSIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dn.h", "SIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "SIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_BILINGUAL_CHANNEL_SELECT", _IOC_NONE, 0x6f14, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CHANNEL_SELECT", _IOC_NONE, 0x6f09, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CLEAR_BUFFER", _IOC_NONE, 0x6f0c, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CONTINUE", _IOC_NONE, 0x6f04, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_GET_CAPABILITIES", _IOC_READ, 0x6f0b, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_GET_PTS", _IOC_READ, 0x6f13, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_GET_STATUS", _IOC_READ, 0x6f0a, 0x20 },
+{ "linux/dvb/audio.h", "AUDIO_PAUSE", _IOC_NONE, 0x6f03, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_PLAY", _IOC_NONE, 0x6f02, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SELECT_SOURCE", _IOC_NONE, 0x6f05, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ATTRIBUTES", _IOC_WRITE, 0x6f11, 0x02 },
+{ "linux/dvb/audio.h", "AUDIO_SET_AV_SYNC", _IOC_NONE, 0x6f07, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_BYPASS_MODE", _IOC_NONE, 0x6f08, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_EXT_ID", _IOC_NONE, 0x6f10, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ID", _IOC_NONE, 0x6f0d, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_KARAOKE", _IOC_WRITE, 0x6f12, 0x0c },
+{ "linux/dvb/audio.h", "AUDIO_SET_MIXER", _IOC_WRITE, 0x6f0e, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_SET_MUTE", _IOC_NONE, 0x6f06, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_STREAMTYPE", _IOC_NONE, 0x6f0f, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_STOP", _IOC_NONE, 0x6f01, 0x00 },
+{ "linux/dvb/ca.h", "CA_GET_CAP", _IOC_READ, 0x6f81, 0x10 },
+{ "linux/dvb/ca.h", "CA_GET_DESCR_INFO", _IOC_READ, 0x6f83, 0x08 },
+{ "linux/dvb/ca.h", "CA_GET_MSG", _IOC_READ, 0x6f84, 0x10c },
+{ "linux/dvb/ca.h", "CA_GET_SLOT_INFO", _IOC_READ, 0x6f82, 0x0c },
+{ "linux/dvb/ca.h", "CA_RESET", _IOC_NONE, 0x6f80, 0x00 },
+{ "linux/dvb/ca.h", "CA_SEND_MSG", _IOC_WRITE, 0x6f85, 0x10c },
+{ "linux/dvb/ca.h", "CA_SET_DESCR", _IOC_WRITE, 0x6f86, 0x10 },
+{ "linux/dvb/ca.h", "CA_SET_PID", _IOC_WRITE, 0x6f87, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_ADD_PID", _IOC_WRITE, 0x6f33, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_GET_CAPS", _IOC_READ, 0x6f30, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_GET_PES_PIDS", _IOC_READ, 0x6f2f, 0x0a },
+{ "linux/dvb/dmx.h", "DMX_GET_STC", _IOC_READ|_IOC_WRITE, 0x6f32, 0x10 },
+{ "linux/dvb/dmx.h", "DMX_REMOVE_PID", _IOC_WRITE, 0x6f34, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_SET_BUFFER_SIZE", _IOC_NONE, 0x6f2d, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_SET_FILTER", _IOC_WRITE, 0x6f2b, 0x3c },
+{ "linux/dvb/dmx.h", "DMX_SET_PES_FILTER", _IOC_WRITE, 0x6f2c, 0x14 },
+{ "linux/dvb/dmx.h", "DMX_SET_SOURCE", _IOC_WRITE, 0x6f31, 0x04 },
+{ "linux/dvb/dmx.h", "DMX_START", _IOC_NONE, 0x6f29, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_STOP", _IOC_NONE, 0x6f2a, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RECV_SLAVE_REPLY", _IOC_READ, 0x6f40, 0x0c },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RESET_OVERLOAD", _IOC_NONE, 0x6f3e, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_BURST", _IOC_NONE, 0x6f41, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_MASTER_CMD", _IOC_WRITE, 0x6f3f, 0x07 },
+{ "linux/dvb/frontend.h", "FE_DISHNETWORK_SEND_LEGACY_CMD", _IOC_NONE, 0x6f50, 0x00 },
+{ "linux/dvb/frontend.h", "FE_ENABLE_HIGH_LNB_VOLTAGE", _IOC_NONE, 0x6f44, 0x00 },
+{ "linux/dvb/frontend.h", "FE_GET_EVENT", _IOC_READ, 0x6f4e, 0x28 },
+{ "linux/dvb/frontend.h", "FE_GET_FRONTEND", _IOC_READ, 0x6f4d, 0x24 },
+{ "linux/dvb/frontend.h", "FE_GET_INFO", _IOC_READ, 0x6f3d, 0xa8 },
+{ "linux/dvb/frontend.h", "FE_GET_PROPERTY", _IOC_READ, 0x6f53, 0x10 },
+{ "linux/dvb/frontend.h", "FE_READ_BER", _IOC_READ, 0x6f46, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_SIGNAL_STRENGTH", _IOC_READ, 0x6f47, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_SNR", _IOC_READ, 0x6f48, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_STATUS", _IOC_READ, 0x6f45, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_UNCORRECTED_BLOCKS", _IOC_READ, 0x6f49, 0x04 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND", _IOC_WRITE, 0x6f4c, 0x24 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND_TUNE_MODE", _IOC_NONE, 0x6f51, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_PROPERTY", _IOC_WRITE, 0x6f52, 0x10 },
+{ "linux/dvb/frontend.h", "FE_SET_TONE", _IOC_NONE, 0x6f42, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_VOLTAGE", _IOC_NONE, 0x6f43, 0x00 },
+{ "linux/dvb/net.h", "NET_ADD_IF", _IOC_READ|_IOC_WRITE, 0x6f34, 0x06 },
+{ "linux/dvb/net.h", "NET_GET_IF", _IOC_READ|_IOC_WRITE, 0x6f36, 0x06 },
+{ "linux/dvb/net.h", "NET_REMOVE_IF", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/osd.h", "OSD_GET_CAPABILITY", _IOC_READ, 0x6fa1, 0x10 },
+{ "linux/dvb/osd.h", "OSD_SEND_CMD", _IOC_WRITE, 0x6fa0, 0x20 },
+{ "linux/dvb/video.h", "VIDEO_CLEAR_BUFFER", _IOC_NONE, 0x6f22, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3b, 0x48 },
+{ "linux/dvb/video.h", "VIDEO_CONTINUE", _IOC_NONE, 0x6f18, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FAST_FORWARD", _IOC_NONE, 0x6f1f, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FREEZE", _IOC_NONE, 0x6f17, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_GET_CAPABILITIES", _IOC_READ, 0x6f21, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_EVENT", _IOC_READ, 0x6f1c, 0x20 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_COUNT", _IOC_READ, 0x6f3a, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_RATE", _IOC_READ, 0x6f38, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_NAVI", _IOC_READ, 0x6f34, 0x404 },
+{ "linux/dvb/video.h", "VIDEO_GET_PTS", _IOC_READ, 0x6f39, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_SIZE", _IOC_READ, 0x6f37, 0x0c },
+{ "linux/dvb/video.h", "VIDEO_GET_STATUS", _IOC_READ, 0x6f1b, 0x14 },
+{ "linux/dvb/video.h", "VIDEO_PLAY", _IOC_NONE, 0x6f16, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SELECT_SOURCE", _IOC_NONE, 0x6f19, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_ATTRIBUTES", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_BLANK", _IOC_NONE, 0x6f1a, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_DISPLAY_FORMAT", _IOC_NONE, 0x6f1d, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_FORMAT", _IOC_NONE, 0x6f25, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_HIGHLIGHT", _IOC_WRITE, 0x6f27, 0x10 },
+{ "linux/dvb/video.h", "VIDEO_SET_ID", _IOC_NONE, 0x6f23, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU", _IOC_WRITE, 0x6f32, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU_PALETTE", _IOC_WRITE, 0x6f33, 0x10 },
+{ "linux/dvb/video.h", "VIDEO_SET_STREAMTYPE", _IOC_NONE, 0x6f24, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SYSTEM", _IOC_NONE, 0x6f26, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SLOWMOTION", _IOC_NONE, 0x6f20, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_STILLPICTURE", _IOC_WRITE, 0x6f1e, 0x10 },
+{ "linux/dvb/video.h", "VIDEO_STOP", _IOC_NONE, 0x6f15, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_TRY_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3c, 0x48 },
+{ "linux/fb.h", "FBIOBLANK", 0, 0x4611, 0 },
+{ "linux/fb.h", "FBIOGETCMAP", 0, 0x4604, 0 },
+{ "linux/fb.h", "FBIOGET_CON2FBMAP", 0, 0x460F, 0 },
+{ "linux/fb.h", "FBIOGET_DISPINFO", 0, 0x4618, 0 },
+{ "linux/fb.h", "FBIOGET_FSCREENINFO", 0, 0x4602, 0 },
+{ "linux/fb.h", "FBIOGET_GLYPH", 0, 0x4615, 0 },
+{ "linux/fb.h", "FBIOGET_HWCINFO", 0, 0x4616, 0 },
+{ "linux/fb.h", "FBIOGET_VBLANK", _IOC_READ, 0x4612, 0x20 },
+{ "linux/fb.h", "FBIOGET_VSCREENINFO", 0, 0x4600, 0 },
+{ "linux/fb.h", "FBIOPAN_DISPLAY", 0, 0x4606, 0 },
+{ "linux/fb.h", "FBIOPUTCMAP", 0, 0x4605, 0 },
+{ "linux/fb.h", "FBIOPUT_CON2FBMAP", 0, 0x4610, 0 },
+{ "linux/fb.h", "FBIOPUT_MODEINFO", 0, 0x4617, 0 },
+{ "linux/fb.h", "FBIOPUT_VSCREENINFO", 0, 0x4601, 0 },
+{ "linux/fb.h", "FBIO_ALLOC", 0, 0x4613, 0 },
+{ "linux/fb.h", "FBIO_CURSOR", _IOC_READ|_IOC_WRITE, 0x4608, 0x68 },
+{ "linux/fb.h", "FBIO_FREE", 0, 0x4614, 0 },
+{ "linux/fb.h", "FBIO_WAITFORVSYNC", _IOC_WRITE, 0x4620, 0x04 },
+{ "linux/fd.h", "FDCLRPRM", _IOC_NONE, 0x0241, 0x00 },
+{ "linux/fd.h", "FDDEFPRM", _IOC_WRITE, 0x0243, 0x20 },
+{ "linux/fd.h", "FDEJECT", _IOC_NONE, 0x025a, 0x00 },
+{ "linux/fd.h", "FDFLUSH", _IOC_NONE, 0x024b, 0x00 },
+{ "linux/fd.h", "FDFMTBEG", _IOC_NONE, 0x0247, 0x00 },
+{ "linux/fd.h", "FDFMTEND", _IOC_NONE, 0x0249, 0x00 },
+{ "linux/fd.h", "FDFMTTRK", _IOC_WRITE, 0x0248, 0x0c },
+{ "linux/fd.h", "FDGETDRVPRM", _IOC_READ, 0x0211, 0x80 },
+{ "linux/fd.h", "FDGETDRVSTAT", _IOC_READ, 0x0212, 0x50 },
+{ "linux/fd.h", "FDGETDRVTYP", _IOC_READ, 0x020f, 0x10 },
+{ "linux/fd.h", "FDGETFDCSTAT", _IOC_READ, 0x0215, 0x28 },
+{ "linux/fd.h", "FDGETMAXERRS", _IOC_READ, 0x020e, 0x14 },
+{ "linux/fd.h", "FDGETPRM", _IOC_READ, 0x0204, 0x20 },
+{ "linux/fd.h", "FDMSGOFF", _IOC_NONE, 0x0246, 0x00 },
+{ "linux/fd.h", "FDMSGON", _IOC_NONE, 0x0245, 0x00 },
+{ "linux/fd.h", "FDPOLLDRVSTAT", _IOC_READ, 0x0213, 0x50 },
+{ "linux/fd.h", "FDRAWCMD", _IOC_NONE, 0x0258, 0x00 },
+{ "linux/fd.h", "FDRESET", _IOC_NONE, 0x0254, 0x00 },
+{ "linux/fd.h", "FDSETDRVPRM", _IOC_WRITE, 0x0290, 0x80 },
+{ "linux/fd.h", "FDSETEMSGTRESH", _IOC_NONE, 0x024a, 0x00 },
+{ "linux/fd.h", "FDSETMAXERRS", _IOC_WRITE, 0x024c, 0x14 },
+{ "linux/fd.h", "FDSETPRM", _IOC_WRITE, 0x0242, 0x20 },
+{ "linux/fd.h", "FDTWADDLE", _IOC_NONE, 0x0259, 0x00 },
+{ "linux/fd.h", "FDWERRORCLR", _IOC_NONE, 0x0256, 0x00 },
+{ "linux/fd.h", "FDWERRORGET", _IOC_READ, 0x0217, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ADD_DESCRIPTOR", _IOC_READ|_IOC_WRITE, 0x2306, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x2302, 0x20 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE", _IOC_READ|_IOC_WRITE, 0x230d, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x230f, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_CREATE_ISO_CONTEXT", _IOC_READ|_IOC_WRITE, 0x2308, 0x20 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE", _IOC_WRITE, 0x2303, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE", _IOC_WRITE, 0x230e, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x2310, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_FLUSH_ISO", _IOC_WRITE, 0x2318, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER", _IOC_READ, 0x230c, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER2", _IOC_READ|_IOC_WRITE, 0x2314, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_INFO", _IOC_READ|_IOC_WRITE, 0x2300, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_SPEED", _IOC_NONE, 0x2311, 0x00 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_INITIATE_BUS_RESET", _IOC_WRITE, 0x2305, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_QUEUE_ISO", _IOC_READ|_IOC_WRITE, 0x2309, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_RECEIVE_PHY_PACKETS", _IOC_WRITE, 0x2316, 0x08 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_REMOVE_DESCRIPTOR", _IOC_WRITE, 0x2307, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_BROADCAST_REQUEST", _IOC_WRITE, 0x2312, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_PHY_PACKET", _IOC_READ|_IOC_WRITE, 0x2315, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_REQUEST", _IOC_WRITE, 0x2301, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_RESPONSE", _IOC_WRITE, 0x2304, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_STREAM_PACKET", _IOC_WRITE, 0x2313, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SET_ISO_CHANNELS", _IOC_WRITE, 0x2317, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_START_ISO", _IOC_WRITE, 0x230a, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_STOP_ISO", _IOC_WRITE, 0x230b, 0x04 },
+{ "linux/fs.h", "BLKALIGNOFF", _IOC_NONE, 0x127a, 0x00 },
+{ "linux/fs.h", "BLKBSZGET", _IOC_READ, 0x1270, 0x08 },
+{ "linux/fs.h", "BLKBSZSET", _IOC_WRITE, 0x1271, 0x08 },
+{ "linux/fs.h", "BLKDISCARD", _IOC_NONE, 0x1277, 0x00 },
+{ "linux/fs.h", "BLKDISCARDZEROES", _IOC_NONE, 0x127c, 0x00 },
+{ "linux/fs.h", "BLKFLSBUF", _IOC_NONE, 0x1261, 0x00 },
+{ "linux/fs.h", "BLKFRAGET", _IOC_NONE, 0x1265, 0x00 },
+{ "linux/fs.h", "BLKFRASET", _IOC_NONE, 0x1264, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE", _IOC_NONE, 0x1260, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE64", _IOC_READ, 0x1272, 0x08 },
+{ "linux/fs.h", "BLKIOMIN", _IOC_NONE, 0x1278, 0x00 },
+{ "linux/fs.h", "BLKIOOPT", _IOC_NONE, 0x1279, 0x00 },
+{ "linux/fs.h", "BLKPBSZGET", _IOC_NONE, 0x127b, 0x00 },
+{ "linux/fs.h", "BLKRAGET", _IOC_NONE, 0x1263, 0x00 },
+{ "linux/fs.h", "BLKRASET", _IOC_NONE, 0x1262, 0x00 },
+{ "linux/fs.h", "BLKROGET", _IOC_NONE, 0x125e, 0x00 },
+{ "linux/fs.h", "BLKROSET", _IOC_NONE, 0x125d, 0x00 },
+{ "linux/fs.h", "BLKROTATIONAL", _IOC_NONE, 0x127e, 0x00 },
+{ "linux/fs.h", "BLKRRPART", _IOC_NONE, 0x125f, 0x00 },
+{ "linux/fs.h", "BLKSECDISCARD", _IOC_NONE, 0x127d, 0x00 },
+{ "linux/fs.h", "BLKSECTGET", _IOC_NONE, 0x1267, 0x00 },
+{ "linux/fs.h", "BLKSECTSET", _IOC_NONE, 0x1266, 0x00 },
+{ "linux/fs.h", "BLKSSZGET", _IOC_NONE, 0x1268, 0x00 },
+{ "linux/fs.h", "BLKTRACESETUP", _IOC_READ|_IOC_WRITE, 0x1273, 0x48 },
+{ "linux/fs.h", "BLKTRACESTART", _IOC_NONE, 0x1274, 0x00 },
+{ "linux/fs.h", "BLKTRACESTOP", _IOC_NONE, 0x1275, 0x00 },
+{ "linux/fs.h", "BLKTRACETEARDOWN", _IOC_NONE, 0x1276, 0x00 },
+{ "linux/fs.h", "BLKZEROOUT", _IOC_NONE, 0x127f, 0x00 },
+{ "linux/fs.h", "FIBMAP", _IOC_NONE, 0x0001, 0x00 },
+{ "linux/fs.h", "FIFREEZE", _IOC_READ|_IOC_WRITE, 0x5877, 0x04 },
+{ "linux/fs.h", "FIGETBSZ", _IOC_NONE, 0x0002, 0x00 },
+{ "linux/fs.h", "FITHAW", _IOC_READ|_IOC_WRITE, 0x5878, 0x04 },
+{ "linux/fs.h", "FITRIM", _IOC_READ|_IOC_WRITE, 0x5879, 0x18 },
+{ "linux/fs.h", "FS_IOC32_GETFLAGS", _IOC_READ, 0x6601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_GETVERSION", _IOC_READ, 0x7601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETFLAGS", _IOC_WRITE, 0x6602, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETVERSION", _IOC_WRITE, 0x7602, 0x04 },
+{ "linux/fs.h", "FS_IOC_FIEMAP", _IOC_READ|_IOC_WRITE, 0x660b, 0x20 },
+{ "linux/fs.h", "FS_IOC_GETFLAGS", _IOC_READ, 0x6601, 0x08 },
+{ "linux/fs.h", "FS_IOC_GETVERSION", _IOC_READ, 0x7601, 0x08 },
+{ "linux/fs.h", "FS_IOC_SETFLAGS", _IOC_WRITE, 0x6602, 0x08 },
+{ "linux/fs.h", "FS_IOC_SETVERSION", _IOC_WRITE, 0x7602, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_ALPHA", _IOC_READ, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_AOID", _IOC_READ, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_GAMMA", _IOC_READ, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_PIXFMT", _IOC_READ, 0x4d08, 0x04 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_ALPHA", _IOC_WRITE, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_AOID", _IOC_WRITE, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_BRIGHTNESS", _IOC_WRITE, 0x4d03, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_CHROMA_KEY", _IOC_WRITE, 0x4d01, 0x0c },
+{ "linux/fsl-diu-fb.h", "MFB_SET_GAMMA", _IOC_WRITE, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_PIXFMT", _IOC_WRITE, 0x4d08, 0x04 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_DOORBELL", _IOC_READ|_IOC_WRITE, 0xaf06, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_GETPROP", _IOC_READ|_IOC_WRITE, 0xaf07, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_MEMCPY", _IOC_READ|_IOC_WRITE, 0xaf05, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_GET_STATUS", _IOC_READ|_IOC_WRITE, 0xaf02, 0x0c },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_RESTART", _IOC_READ|_IOC_WRITE, 0xaf01, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_START", _IOC_READ|_IOC_WRITE, 0xaf03, 0x10 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_STOP", _IOC_READ|_IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_SETPROP", _IOC_READ|_IOC_WRITE, 0xaf08, 0x28 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_DDCB", _IOC_READ|_IOC_WRITE, 0xa532, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_RAW_DDCB", _IOC_READ|_IOC_WRITE, 0xa533, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_GET_CARD_STATE", _IOC_READ, 0xa524, 0x04 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_PIN_MEM", _IOC_READ|_IOC_WRITE, 0xa528, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG16", _IOC_READ, 0xa522, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG32", _IOC_READ, 0xa520, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG64", _IOC_READ, 0xa51e, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_READ", _IOC_READ|_IOC_WRITE, 0xa551, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_UPDATE", _IOC_READ|_IOC_WRITE, 0xa550, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_UNPIN_MEM", _IOC_READ|_IOC_WRITE, 0xa529, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG16", _IOC_WRITE, 0xa523, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG32", _IOC_WRITE, 0xa521, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG64", _IOC_WRITE, 0xa51f, 0x10 },
+{ "linux/gigaset_dev.h", "GIGASET_BRKCHARS", _IOC_WRITE, 0x4702, 0x06 },
+{ "linux/gigaset_dev.h", "GIGASET_CONFIG", _IOC_READ|_IOC_WRITE, 0x4701, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_REDIR", _IOC_READ|_IOC_WRITE, 0x4700, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_VERSION", _IOC_READ|_IOC_WRITE, 0x4703, 0x10 },
+{ "linux/gsmmux.h", "GSMIOC_DISABLE_NET", _IOC_NONE, 0x4703, 0x00 },
+{ "linux/gsmmux.h", "GSMIOC_ENABLE_NET", _IOC_WRITE, 0x4702, 0x34 },
+{ "linux/gsmmux.h", "GSMIOC_GETCONF", _IOC_READ, 0x4700, 0x4c },
+{ "linux/gsmmux.h", "GSMIOC_SETCONF", _IOC_WRITE, 0x4701, 0x4c },
+{ "linux/hdreg.h", "HDIO_DRIVE_CMD", 0, 0x031f, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_RESET", 0, 0x031c, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASK", 0, 0x031e, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASKFILE", 0, 0x031d, 0 },
+{ "linux/hdreg.h", "HDIO_GETGEO", 0, 0x0301, 0 },
+{ "linux/hdreg.h", "HDIO_GET_32BIT", 0, 0x0309, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ACOUSTIC", 0, 0x030f, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ADDRESS", 0, 0x0310, 0 },
+{ "linux/hdreg.h", "HDIO_GET_BUSSTATE", 0, 0x031a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_DMA", 0, 0x030b, 0 },
+{ "linux/hdreg.h", "HDIO_GET_IDENTITY", 0, 0x030d, 0 },
+{ "linux/hdreg.h", "HDIO_GET_KEEPSETTINGS", 0, 0x0308, 0 },
+{ "linux/hdreg.h", "HDIO_GET_MULTCOUNT", 0, 0x0304, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NICE", 0, 0x030c, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NOWERR", 0, 0x030a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_QDMA", 0, 0x0305, 0 },
+{ "linux/hdreg.h", "HDIO_GET_UNMASKINTR", 0, 0x0302, 0 },
+{ "linux/hdreg.h", "HDIO_GET_WCACHE", 0, 0x030e, 0 },
+{ "linux/hdreg.h", "HDIO_OBSOLETE_IDENTITY", 0, 0x0307, 0 },
+{ "linux/hdreg.h", "HDIO_SCAN_HWIF", 0, 0x0328, 0 },
+{ "linux/hdreg.h", "HDIO_SET_32BIT", 0, 0x0324, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ACOUSTIC", 0, 0x032c, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ADDRESS", 0, 0x032f, 0 },
+{ "linux/hdreg.h", "HDIO_SET_BUSSTATE", 0, 0x032d, 0 },
+{ "linux/hdreg.h", "HDIO_SET_DMA", 0, 0x0326, 0 },
+{ "linux/hdreg.h", "HDIO_SET_KEEPSETTINGS", 0, 0x0323, 0 },
+{ "linux/hdreg.h", "HDIO_SET_MULTCOUNT", 0, 0x0321, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NICE", 0, 0x0329, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NOWERR", 0, 0x0325, 0 },
+{ "linux/hdreg.h", "HDIO_SET_PIO_MODE", 0, 0x0327, 0 },
+{ "linux/hdreg.h", "HDIO_SET_QDMA", 0, 0x032e, 0 },
+{ "linux/hdreg.h", "HDIO_SET_UNMASKINTR", 0, 0x0322, 0 },
+{ "linux/hdreg.h", "HDIO_SET_WCACHE", 0, 0x032b, 0 },
+{ "linux/hdreg.h", "HDIO_SET_XFER", 0, 0x0306, 0 },
+{ "linux/hdreg.h", "HDIO_TRISTATE_HWIF", 0, 0x031b, 0 },
+{ "linux/hdreg.h", "HDIO_UNREGISTER_HWIF", 0, 0x032a, 0 },
+{ "linux/hid-roccat.h", "ROCCATIOCGREPSIZE", _IOC_READ, 0x48f1, 0x04 },
+{ "linux/hiddev.h", "HIDIOCAPPLICATION", _IOC_NONE, 0x4802, 0x00 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINDEX", _IOC_WRITE, 0x4810, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINFO", _IOC_READ|_IOC_WRITE, 0x4811, 0x10 },
+{ "linux/hiddev.h", "HIDIOCGDEVINFO", _IOC_READ, 0x4803, 0x1c },
+{ "linux/hiddev.h", "HIDIOCGFIELDINFO", _IOC_READ|_IOC_WRITE, 0x480a, 0x38 },
+{ "linux/hiddev.h", "HIDIOCGFLAG", _IOC_READ, 0x480e, 0x04 },
+{ "linux/hiddev.h", "HIDIOCGREPORT", _IOC_WRITE, 0x4807, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGREPORTINFO", _IOC_READ|_IOC_WRITE, 0x4809, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGSTRING", _IOC_READ, 0x4804, 0x104 },
+{ "linux/hiddev.h", "HIDIOCGUCODE", _IOC_READ|_IOC_WRITE, 0x480d, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGE", _IOC_READ|_IOC_WRITE, 0x480b, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGES", _IOC_READ|_IOC_WRITE, 0x4813, 0x101c },
+{ "linux/hiddev.h", "HIDIOCGVERSION", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hiddev.h", "HIDIOCINITREPORT", _IOC_NONE, 0x4805, 0x00 },
+{ "linux/hiddev.h", "HIDIOCSFLAG", _IOC_WRITE, 0x480f, 0x04 },
+{ "linux/hiddev.h", "HIDIOCSREPORT", _IOC_WRITE, 0x4808, 0x0c },
+{ "linux/hiddev.h", "HIDIOCSUSAGE", _IOC_WRITE, 0x480c, 0x18 },
+{ "linux/hiddev.h", "HIDIOCSUSAGES", _IOC_WRITE, 0x4814, 0x101c },
+{ "linux/hidraw.h", "HIDIOCGRAWINFO", _IOC_READ, 0x4803, 0x08 },
+{ "linux/hidraw.h", "HIDIOCGRDESC", _IOC_READ, 0x4802, 0x1004 },
+{ "linux/hidraw.h", "HIDIOCGRDESCSIZE", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hpet.h", "HPET_DPI", _IOC_NONE, 0x6805, 0x00 },
+{ "linux/hpet.h", "HPET_EPI", _IOC_NONE, 0x6804, 0x00 },
+{ "linux/hpet.h", "HPET_IE_OFF", _IOC_NONE, 0x6802, 0x00 },
+{ "linux/hpet.h", "HPET_IE_ON", _IOC_NONE, 0x6801, 0x00 },
+{ "linux/hpet.h", "HPET_INFO", _IOC_READ, 0x6803, 0x18 },
+{ "linux/hpet.h", "HPET_IRQFREQ", _IOC_WRITE, 0x6806, 0x08 },
+{ "linux/hsi/hsi_char.h", "HSC_GET_RX", _IOC_WRITE, 0x6b14, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_GET_TX", _IOC_WRITE, 0x6b16, 0x10 },
+{ "linux/hsi/hsi_char.h", "HSC_RESET", _IOC_NONE, 0x6b10, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SEND_BREAK", _IOC_NONE, 0x6b12, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_PM", _IOC_NONE, 0x6b11, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_RX", _IOC_WRITE, 0x6b13, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_SET_TX", _IOC_WRITE, 0x6b15, 0x10 },
+{ "linux/i2o-dev.h", "I2OEVTGET", _IOC_READ, 0x690b, 0x68 },
+{ "linux/i2o-dev.h", "I2OEVTREG", _IOC_WRITE, 0x690a, 0x0c },
+{ "linux/i2o-dev.h", "I2OGETIOPS", _IOC_READ, 0x6900, 0x20 },
+{ "linux/i2o-dev.h", "I2OHRTGET", _IOC_READ|_IOC_WRITE, 0x6901, 0x18 },
+{ "linux/i2o-dev.h", "I2OHTML", _IOC_READ|_IOC_WRITE, 0x6909, 0x30 },
+{ "linux/i2o-dev.h", "I2OLCTGET", _IOC_READ|_IOC_WRITE, 0x6902, 0x18 },
+{ "linux/i2o-dev.h", "I2OPARMGET", _IOC_READ|_IOC_WRITE, 0x6904, 0x28 },
+{ "linux/i2o-dev.h", "I2OPARMSET", _IOC_READ|_IOC_WRITE, 0x6903, 0x28 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU", _IOC_READ, 0x690c, 0x10 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU32", _IOC_READ, 0x690c, 0x08 },
+{ "linux/i2o-dev.h", "I2OSWDEL", _IOC_READ|_IOC_WRITE, 0x6907, 0x30 },
+{ "linux/i2o-dev.h", "I2OSWDL", _IOC_READ|_IOC_WRITE, 0x6905, 0x30 },
+{ "linux/i2o-dev.h", "I2OSWUL", _IOC_READ|_IOC_WRITE, 0x6906, 0x30 },
+{ "linux/i2o-dev.h", "I2OVALIDATE", _IOC_READ, 0x6908, 0x04 },
+{ "linux/i2o.h", "BLKI2OGRSTRAT", _IOC_READ, 0x3201, 0x04 },
+{ "linux/i2o.h", "BLKI2OGWSTRAT", _IOC_READ, 0x3202, 0x04 },
+{ "linux/i2o.h", "BLKI2OSRSTRAT", _IOC_WRITE, 0x3203, 0x04 },
+{ "linux/i2o.h", "BLKI2OSWSTRAT", _IOC_WRITE, 0x3204, 0x04 },
+{ "linux/i8k.h", "I8K_BIOS_VERSION", _IOC_READ, 0x6980, 0x04 },
+{ "linux/i8k.h", "I8K_FN_STATUS", _IOC_READ, 0x6983, 0x08 },
+{ "linux/i8k.h", "I8K_GET_FAN", _IOC_READ|_IOC_WRITE, 0x6986, 0x08 },
+{ "linux/i8k.h", "I8K_GET_SPEED", _IOC_READ|_IOC_WRITE, 0x6985, 0x08 },
+{ "linux/i8k.h", "I8K_GET_TEMP", _IOC_READ, 0x6984, 0x08 },
+{ "linux/i8k.h", "I8K_MACHINE_ID", _IOC_READ, 0x6981, 0x04 },
+{ "linux/i8k.h", "I8K_POWER_STATUS", _IOC_READ, 0x6982, 0x08 },
+{ "linux/i8k.h", "I8K_SET_FAN", _IOC_READ|_IOC_WRITE, 0x6987, 0x08 },
+{ "linux/if_pppox.h", "PPPOEIOCDFWD", _IOC_NONE, 0xb101, 0x00 },
+{ "linux/if_pppox.h", "PPPOEIOCSFWD", _IOC_WRITE, 0xb100, 0x08 },
+{ "linux/if_tun.h", "TUNATTACHFILTER", _IOC_WRITE, 0x54d5, 0x10 },
+{ "linux/if_tun.h", "TUNDETACHFILTER", _IOC_WRITE, 0x54d6, 0x10 },
+{ "linux/if_tun.h", "TUNGETFEATURES", _IOC_READ, 0x54cf, 0x04 },
+{ "linux/if_tun.h", "TUNGETFILTER", _IOC_READ, 0x54db, 0x10 },
+{ "linux/if_tun.h", "TUNGETIFF", _IOC_READ, 0x54d2, 0x04 },
+{ "linux/if_tun.h", "TUNGETSNDBUF", _IOC_READ, 0x54d3, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETHDRSZ", _IOC_READ, 0x54d7, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETLE", _IOC_READ, 0x54dd, 0x04 },
+{ "linux/if_tun.h", "TUNSETDEBUG", _IOC_WRITE, 0x54c9, 0x04 },
+{ "linux/if_tun.h", "TUNSETGROUP", _IOC_WRITE, 0x54ce, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFF", _IOC_WRITE, 0x54ca, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFINDEX", _IOC_WRITE, 0x54da, 0x04 },
+{ "linux/if_tun.h", "TUNSETLINK", _IOC_WRITE, 0x54cd, 0x04 },
+{ "linux/if_tun.h", "TUNSETNOCSUM", _IOC_WRITE, 0x54c8, 0x04 },
+{ "linux/if_tun.h", "TUNSETOFFLOAD", _IOC_WRITE, 0x54d0, 0x04 },
+{ "linux/if_tun.h", "TUNSETOWNER", _IOC_WRITE, 0x54cc, 0x04 },
+{ "linux/if_tun.h", "TUNSETPERSIST", _IOC_WRITE, 0x54cb, 0x04 },
+{ "linux/if_tun.h", "TUNSETQUEUE", _IOC_WRITE, 0x54d9, 0x04 },
+{ "linux/if_tun.h", "TUNSETSNDBUF", _IOC_WRITE, 0x54d4, 0x04 },
+{ "linux/if_tun.h", "TUNSETTXFILTER", _IOC_WRITE, 0x54d1, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETHDRSZ", _IOC_WRITE, 0x54d8, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETLE", _IOC_WRITE, 0x54dc, 0x04 },
+{ "linux/iio/events.h", "IIO_GET_EVENT_FD_IOCTL", _IOC_READ, 0x6990, 0x04 },
+{ "linux/input.h", "EVIOCGEFFECTS", _IOC_READ, 0x4584, 0x04 },
+{ "linux/input.h", "EVIOCGID", _IOC_READ, 0x4502, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE", _IOC_READ, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE_V2", _IOC_READ, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCGRAB", _IOC_WRITE, 0x4590, 0x04 },
+{ "linux/input.h", "EVIOCGREP", _IOC_READ, 0x4503, 0x08 },
+{ "linux/input.h", "EVIOCGVERSION", _IOC_READ, 0x4501, 0x04 },
+{ "linux/input.h", "EVIOCREVOKE", _IOC_WRITE, 0x4591, 0x04 },
+{ "linux/input.h", "EVIOCRMFF", _IOC_WRITE, 0x4581, 0x04 },
+{ "linux/input.h", "EVIOCSCLOCKID", _IOC_WRITE, 0x45a0, 0x04 },
+{ "linux/input.h", "EVIOCSFF", _IOC_WRITE, 0x4580, 0x30 },
+{ "linux/input.h", "EVIOCSKEYCODE", _IOC_WRITE, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCSKEYCODE_V2", _IOC_WRITE, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCSREP", _IOC_WRITE, 0x4503, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_GET_MAINTENANCE_MODE_CMD", _IOC_READ, 0x691e, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_ADDRESS_CMD", _IOC_READ, 0x6912, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6919, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691b, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_LUN_CMD", _IOC_READ, 0x6914, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_TIMING_PARMS_CMD", _IOC_READ, 0x6917, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG", _IOC_READ|_IOC_WRITE, 0x690c, 0x30 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG_TRUNC", _IOC_READ|_IOC_WRITE, 0x690b, 0x30 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD", _IOC_READ, 0x690e, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691c, 0x0c },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND", _IOC_READ, 0x690d, 0x28 },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND_SETTIME", _IOC_READ, 0x6915, 0x30 },
+{ "linux/ipmi.h", "IPMICTL_SET_GETS_EVENTS_CMD", _IOC_READ, 0x6910, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MAINTENANCE_MODE_CMD", _IOC_WRITE, 0x691f, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_ADDRESS_CMD", _IOC_READ, 0x6911, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6918, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691a, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_LUN_CMD", _IOC_READ, 0x6913, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_TIMING_PARMS_CMD", _IOC_READ, 0x6916, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD", _IOC_READ, 0x690f, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691d, 0x0c },
+{ "linux/isdn.h", "IIOCDBGVAR", _IOC_NONE, 0x497f, 0x00 },
+{ "linux/isdn.h", "IIOCDRVCTL", _IOC_NONE, 0x4980, 0x00 },
+{ "linux/isdn.h", "IIOCGETCPS", _IOC_NONE, 0x4915, 0x00 },
+{ "linux/isdn.h", "IIOCGETDVR", _IOC_NONE, 0x4916, 0x00 },
+{ "linux/isdn.h", "IIOCGETMAP", _IOC_NONE, 0x4911, 0x00 },
+{ "linux/isdn.h", "IIOCGETPRF", _IOC_NONE, 0x490f, 0x00 },
+{ "linux/isdn.h", "IIOCGETSET", _IOC_NONE, 0x4908, 0x00 },
+{ "linux/isdn.h", "IIOCNETAIF", _IOC_NONE, 0x4901, 0x00 },
+{ "linux/isdn.h", "IIOCNETALN", _IOC_NONE, 0x4920, 0x00 },
+{ "linux/isdn.h", "IIOCNETANM", _IOC_NONE, 0x4905, 0x00 },
+{ "linux/isdn.h", "IIOCNETASL", _IOC_NONE, 0x4913, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIF", _IOC_NONE, 0x4902, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIL", _IOC_NONE, 0x4914, 0x00 },
+{ "linux/isdn.h", "IIOCNETDLN", _IOC_NONE, 0x4921, 0x00 },
+{ "linux/isdn.h", "IIOCNETDNM", _IOC_NONE, 0x4906, 0x00 },
+{ "linux/isdn.h", "IIOCNETDWRSET", _IOC_NONE, 0x4918, 0x00 },
+{ "linux/isdn.h", "IIOCNETGCF", _IOC_NONE, 0x4904, 0x00 },
+{ "linux/isdn.h", "IIOCNETGNM", _IOC_NONE, 0x4907, 0x00 },
+{ "linux/isdn.h", "IIOCNETGPN", _IOC_NONE, 0x4922, 0x00 },
+{ "linux/isdn.h", "IIOCNETHUP", _IOC_NONE, 0x490b, 0x00 },
+{ "linux/isdn.h", "IIOCNETLCR", _IOC_NONE, 0x4917, 0x00 },
+{ "linux/isdn.h", "IIOCNETSCF", _IOC_NONE, 0x4903, 0x00 },
+{ "linux/isdn.h", "IIOCSETBRJ", _IOC_NONE, 0x490d, 0x00 },
+{ "linux/isdn.h", "IIOCSETGST", _IOC_NONE, 0x490c, 0x00 },
+{ "linux/isdn.h", "IIOCSETMAP", _IOC_NONE, 0x4912, 0x00 },
+{ "linux/isdn.h", "IIOCSETPRF", _IOC_NONE, 0x4910, 0x00 },
+{ "linux/isdn.h", "IIOCSETSET", _IOC_NONE, 0x4909, 0x00 },
+{ "linux/isdn.h", "IIOCSETVER", _IOC_NONE, 0x490a, 0x00 },
+{ "linux/isdn.h", "IIOCSIGPRF", _IOC_NONE, 0x490e, 0x00 },
+{ "linux/isdn_ppp.h", "PPPIOCBUNDLE", _IOC_WRITE, 0x7481, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCGCALLINFO", _IOC_READ|_IOC_WRITE, 0x7480, 0x88 },
+{ "linux/isdn_ppp.h", "PPPIOCGCOMPRESSORS", _IOC_READ, 0x7486, 0x40 },
+{ "linux/isdn_ppp.h", "PPPIOCGIFNAME", _IOC_READ, 0x7488, 0x10 },
+{ "linux/isdn_ppp.h", "PPPIOCGMPFLAGS", _IOC_READ, 0x7482, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSCOMPRESSOR", _IOC_WRITE, 0x7487, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPFLAGS", _IOC_WRITE, 0x7483, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMRU", _IOC_WRITE, 0x7485, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMTU", _IOC_WRITE, 0x7484, 0x04 },
+{ "linux/ivtv.h", "IVTV_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x40 },
+{ "linux/ivtv.h", "IVTV_IOC_PASSTHROUGH_MODE", _IOC_WRITE, 0x56c1, 0x04 },
+{ "linux/ivtvfb.h", "IVTVFB_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x18 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_GET_LEVEL", _IOC_NONE, 0x71cd, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_START", _IOC_WRITE, 0x71cb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_STOP", _IOC_NONE, 0x71cc, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_CARDTYPE", _IOC_READ, 0x71c1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_CID", _IOC_READ, 0x71d4, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_CIDCW", _IOC_WRITE, 0x71d9, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_AGAIN", _IOC_WRITE, 0x71d2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_COEFF_SET", _IOC_WRITE, 0x71d0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_CLEAR", _IOC_NONE, 0x71e7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_READ", _IOC_READ, 0x71e6, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_IDLE", _IOC_NONE, 0x71c5, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_RESET", _IOC_NONE, 0x71c0, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_TYPE", _IOC_READ, 0x71c3, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_VERSION", _IOC_READ, 0x71c4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DTMF_PRESCALE", _IOC_WRITE, 0x71e8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FILTER_CADENCE", _IOC_WRITE, 0x71d6, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_READ", _IOC_READ, 0x71e2, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_WRITTEN", _IOC_READ, 0x71e3, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_GET_FILTER_HIST", _IOC_WRITE, 0x71c8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_HZ", _IOC_WRITE, 0x71e0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INIT_TONE", _IOC_WRITE, 0x71c9, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_START", _IOC_WRITE, 0x71fd, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_STOP", _IOC_WRITE, 0x71fe, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_MIXER", _IOC_WRITE, 0x71cf, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PLAY_CID", _IOC_NONE, 0x71d7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_PORT", _IOC_WRITE, 0x71d1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_POTS_PSTN", _IOC_WRITE, 0x71d5, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PSTN_LINETEST", _IOC_NONE, 0x71d3, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_RATE", _IOC_WRITE, 0x71e1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_READ_WAIT", _IOC_READ, 0x71e4, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_SC_RXG", _IOC_WRITE, 0x71ea, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SC_TXG", _IOC_WRITE, 0x71eb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SERIAL", _IOC_READ, 0x71c2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER", _IOC_WRITE, 0x71c7, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER_RAW", _IOC_WRITE, 0x71dd, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_SET_LED", _IOC_WRITE, 0x71ce, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SIGCTL", _IOC_WRITE, 0x71e9, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_TESTRAM", _IOC_NONE, 0x71c6, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_TONE_CADENCE", _IOC_WRITE, 0x71ca, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_VERSION", _IOC_READ, 0x71da, 0x08 },
+{ "linux/ixjuser.h", "IXJCTL_VMWI", _IOC_READ, 0x71d8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_WRITE_WAIT", _IOC_READ, 0x71e5, 0x08 },
+{ "linux/joystick.h", "JSIOCGAXES", _IOC_READ, 0x6a11, 0x01 },
+{ "linux/joystick.h", "JSIOCGAXMAP", _IOC_READ, 0x6a32, 0x40 },
+{ "linux/joystick.h", "JSIOCGBTNMAP", _IOC_READ, 0x6a34, 0x400 },
+{ "linux/joystick.h", "JSIOCGBUTTONS", _IOC_READ, 0x6a12, 0x01 },
+{ "linux/joystick.h", "JSIOCGCORR", _IOC_READ, 0x6a22, 0x24 },
+{ "linux/joystick.h", "JSIOCGVERSION", _IOC_READ, 0x6a01, 0x04 },
+{ "linux/joystick.h", "JSIOCSAXMAP", _IOC_WRITE, 0x6a31, 0x40 },
+{ "linux/joystick.h", "JSIOCSBTNMAP", _IOC_WRITE, 0x6a33, 0x400 },
+{ "linux/joystick.h", "JSIOCSCORR", _IOC_WRITE, 0x6a21, 0x24 },
+{ "linux/kd.h", "GIO_CMAP", 0, 0x4B70, 0 },
+{ "linux/kd.h", "GIO_FONT", 0, 0x4B60, 0 },
+{ "linux/kd.h", "GIO_FONTX", 0, 0x4B6B, 0 },
+{ "linux/kd.h", "GIO_SCRNMAP", 0, 0x4B40, 0 },
+{ "linux/kd.h", "GIO_UNIMAP", 0, 0x4B66, 0 },
+{ "linux/kd.h", "GIO_UNISCRNMAP", 0, 0x4B69, 0 },
+{ "linux/kd.h", "KDADDIO", 0, 0x4B34, 0 },
+{ "linux/kd.h", "KDDELIO", 0, 0x4B35, 0 },
+{ "linux/kd.h", "KDDISABIO", 0, 0x4B37, 0 },
+{ "linux/kd.h", "KDENABIO", 0, 0x4B36, 0 },
+{ "linux/kd.h", "KDFONTOP", 0, 0x4B72, 0 },
+{ "linux/kd.h", "KDGETKEYCODE", 0, 0x4B4C, 0 },
+{ "linux/kd.h", "KDGETLED", 0, 0x4B31, 0 },
+{ "linux/kd.h", "KDGETMODE", 0, 0x4B3B, 0 },
+{ "linux/kd.h", "KDGKBDIACR", 0, 0x4B4A, 0 },
+{ "linux/kd.h", "KDGKBDIACRUC", 0, 0x4BFA, 0 },
+{ "linux/kd.h", "KDGKBENT", 0, 0x4B46, 0 },
+{ "linux/kd.h", "KDGKBLED", 0, 0x4B64, 0 },
+{ "linux/kd.h", "KDGKBMETA", 0, 0x4B62, 0 },
+{ "linux/kd.h", "KDGKBMODE", 0, 0x4B44, 0 },
+{ "linux/kd.h", "KDGKBSENT", 0, 0x4B48, 0 },
+{ "linux/kd.h", "KDGKBTYPE", 0, 0x4B33, 0 },
+{ "linux/kd.h", "KDKBDREP", 0, 0x4B52, 0 },
+{ "linux/kd.h", "KDMAPDISP", 0, 0x4B3C, 0 },
+{ "linux/kd.h", "KDMKTONE", 0, 0x4B30, 0 },
+{ "linux/kd.h", "KDSETKEYCODE", 0, 0x4B4D, 0 },
+{ "linux/kd.h", "KDSETLED", 0, 0x4B32, 0 },
+{ "linux/kd.h", "KDSETMODE", 0, 0x4B3A, 0 },
+{ "linux/kd.h", "KDSIGACCEPT", 0, 0x4B4E, 0 },
+{ "linux/kd.h", "KDSKBDIACR", 0, 0x4B4B, 0 },
+{ "linux/kd.h", "KDSKBDIACRUC", 0, 0x4BFB, 0 },
+{ "linux/kd.h", "KDSKBENT", 0, 0x4B47, 0 },
+{ "linux/kd.h", "KDSKBLED", 0, 0x4B65, 0 },
+{ "linux/kd.h", "KDSKBMETA", 0, 0x4B63, 0 },
+{ "linux/kd.h", "KDSKBMODE", 0, 0x4B45, 0 },
+{ "linux/kd.h", "KDSKBSENT", 0, 0x4B49, 0 },
+{ "linux/kd.h", "KDUNMAPDISP", 0, 0x4B3D, 0 },
+{ "linux/kd.h", "KIOCSOUND", 0, 0x4B2F, 0 },
+{ "linux/kd.h", "PIO_CMAP", 0, 0x4B71, 0 },
+{ "linux/kd.h", "PIO_FONT", 0, 0x4B61, 0 },
+{ "linux/kd.h", "PIO_FONTRESET", 0, 0x4B6D, 0 },
+{ "linux/kd.h", "PIO_FONTX", 0, 0x4B6C, 0 },
+{ "linux/kd.h", "PIO_SCRNMAP", 0, 0x4B41, 0 },
+{ "linux/kd.h", "PIO_UNIMAP", 0, 0x4B67, 0 },
+{ "linux/kd.h", "PIO_UNIMAPCLR", 0, 0x4B68, 0 },
+{ "linux/kd.h", "PIO_UNISCRNMAP", 0, 0x4B6A, 0 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b02, 0x58 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_DESTROY_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b03, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_CLOCK_COUNTERS", _IOC_READ|_IOC_WRITE, 0x4b05, 0x28 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_PROCESS_APERTURES", _IOC_READ, 0x4b06, 0x190 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_VERSION", _IOC_READ, 0x4b01, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_SET_MEMORY_POLICY", _IOC_WRITE, 0x4b04, 0x20 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_UPDATE_QUEUE", _IOC_WRITE, 0x4b07, 0x18 },
+{ "linux/kvm.h", "KVM_ALLOCATE_RMA", _IOC_READ, 0xaea9, 0x08 },
+{ "linux/kvm.h", "KVM_ARM_PREFERRED_TARGET", _IOC_READ, 0xaeaf, 0x20 },
+{ "linux/kvm.h", "KVM_ARM_SET_DEVICE_ADDR", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_ARM_VCPU_INIT", _IOC_WRITE, 0xaeae, 0x20 },
+{ "linux/kvm.h", "KVM_ASSIGN_DEV_IRQ", _IOC_WRITE, 0xae70, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_PCI_DEVICE", _IOC_READ, 0xae69, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_INTX_MASK", _IOC_WRITE, 0xaea4, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_ENTRY", _IOC_WRITE, 0xae74, 0x10 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_NR", _IOC_WRITE, 0xae73, 0x08 },
+{ "linux/kvm.h", "KVM_CHECK_EXTENSION", _IOC_NONE, 0xae03, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_DEVICE", _IOC_READ|_IOC_WRITE, 0xaee0, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_IRQCHIP", _IOC_NONE, 0xae60, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT", _IOC_NONE, 0xae64, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT2", _IOC_WRITE, 0xae77, 0x40 },
+{ "linux/kvm.h", "KVM_CREATE_SPAPR_TCE", _IOC_WRITE, 0xaea8, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_VCPU", _IOC_NONE, 0xae41, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_VM", _IOC_NONE, 0xae01, 0x00 },
+{ "linux/kvm.h", "KVM_DEASSIGN_DEV_IRQ", _IOC_WRITE, 0xae75, 0x40 },
+{ "linux/kvm.h", "KVM_DEASSIGN_PCI_DEVICE", _IOC_WRITE, 0xae72, 0x40 },
+{ "linux/kvm.h", "KVM_DIRTY_TLB", _IOC_WRITE, 0xaeaa, 0x10 },
+{ "linux/kvm.h", "KVM_ENABLE_CAP", _IOC_WRITE, 0xaea3, 0x68 },
+{ "linux/kvm.h", "KVM_GET_API_VERSION", _IOC_NONE, 0xae00, 0x00 },
+{ "linux/kvm.h", "KVM_GET_CLOCK", _IOC_READ, 0xae7c, 0x30 },
+{ "linux/kvm.h", "KVM_GET_CPUID2", _IOC_READ|_IOC_WRITE, 0xae91, 0x08 },
+{ "linux/kvm.h", "KVM_GET_DEBUGREGS", _IOC_READ, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_GET_DEVICE_ATTR", _IOC_WRITE, 0xaee2, 0x18 },
+{ "linux/kvm.h", "KVM_GET_DIRTY_LOG", _IOC_WRITE, 0xae42, 0x10 },
+{ "linux/kvm.h", "KVM_GET_EMULATED_CPUID", _IOC_READ|_IOC_WRITE, 0xae09, 0x08 },
+{ "linux/kvm.h", "KVM_GET_FPU", _IOC_READ, 0xae8c, 0x1a0 },
+{ "linux/kvm.h", "KVM_GET_IRQCHIP", _IOC_READ|_IOC_WRITE, 0xae62, 0x208 },
+{ "linux/kvm.h", "KVM_GET_LAPIC", _IOC_READ, 0xae8e, 0x400 },
+{ "linux/kvm.h", "KVM_GET_MP_STATE", _IOC_READ, 0xae98, 0x04 },
+{ "linux/kvm.h", "KVM_GET_MSRS", _IOC_READ|_IOC_WRITE, 0xae88, 0x08 },
+{ "linux/kvm.h", "KVM_GET_MSR_INDEX_LIST", _IOC_READ|_IOC_WRITE, 0xae02, 0x04 },
+{ "linux/kvm.h", "KVM_GET_NR_MMU_PAGES", _IOC_NONE, 0xae45, 0x00 },
+{ "linux/kvm.h", "KVM_GET_ONE_REG", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_GET_PIT", _IOC_READ|_IOC_WRITE, 0xae65, 0x48 },
+{ "linux/kvm.h", "KVM_GET_PIT2", _IOC_READ, 0xae9f, 0x70 },
+{ "linux/kvm.h", "KVM_GET_REGS", _IOC_READ, 0xae81, 0x90 },
+{ "linux/kvm.h", "KVM_GET_REG_LIST", _IOC_READ|_IOC_WRITE, 0xaeb0, 0x08 },
+{ "linux/kvm.h", "KVM_GET_SREGS", _IOC_READ, 0xae83, 0x138 },
+{ "linux/kvm.h", "KVM_GET_SUPPORTED_CPUID", _IOC_READ|_IOC_WRITE, 0xae05, 0x08 },
+{ "linux/kvm.h", "KVM_GET_TSC_KHZ", _IOC_NONE, 0xaea3, 0x00 },
+{ "linux/kvm.h", "KVM_GET_VCPU_EVENTS", _IOC_READ, 0xae9f, 0x40 },
+{ "linux/kvm.h", "KVM_GET_VCPU_MMAP_SIZE", _IOC_NONE, 0xae04, 0x00 },
+{ "linux/kvm.h", "KVM_GET_XCRS", _IOC_READ, 0xaea6, 0x188 },
+{ "linux/kvm.h", "KVM_GET_XSAVE", _IOC_READ, 0xaea4, 0x1000 },
+{ "linux/kvm.h", "KVM_HAS_DEVICE_ATTR", _IOC_WRITE, 0xaee3, 0x18 },
+{ "linux/kvm.h", "KVM_INTERRUPT", _IOC_WRITE, 0xae86, 0x04 },
+{ "linux/kvm.h", "KVM_IOEVENTFD", _IOC_WRITE, 0xae79, 0x40 },
+{ "linux/kvm.h", "KVM_IRQFD", _IOC_WRITE, 0xae76, 0x20 },
+{ "linux/kvm.h", "KVM_IRQ_LINE", _IOC_WRITE, 0xae61, 0x08 },
+{ "linux/kvm.h", "KVM_IRQ_LINE_STATUS", _IOC_READ|_IOC_WRITE, 0xae67, 0x08 },
+{ "linux/kvm.h", "KVM_KVMCLOCK_CTRL", _IOC_NONE, 0xaead, 0x00 },
+{ "linux/kvm.h", "KVM_NMI", _IOC_NONE, 0xae9a, 0x00 },
+{ "linux/kvm.h", "KVM_PPC_ALLOCATE_HTAB", _IOC_READ|_IOC_WRITE, 0xaea7, 0x04 },
+{ "linux/kvm.h", "KVM_PPC_GET_HTAB_FD", _IOC_WRITE, 0xaeaa, 0x20 },
+{ "linux/kvm.h", "KVM_PPC_GET_PVINFO", _IOC_WRITE, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_PPC_GET_SMMU_INFO", _IOC_READ, 0xaea6, 0x250 },
+{ "linux/kvm.h", "KVM_PPC_RTAS_DEFINE_TOKEN", _IOC_WRITE, 0xaeac, 0x80 },
+{ "linux/kvm.h", "KVM_REGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae67, 0x10 },
+{ "linux/kvm.h", "KVM_REINJECT_CONTROL", _IOC_NONE, 0xae71, 0x00 },
+{ "linux/kvm.h", "KVM_RUN", _IOC_NONE, 0xae80, 0x00 },
+{ "linux/kvm.h", "KVM_S390_ENABLE_SIE", _IOC_NONE, 0xae06, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INITIAL_RESET", _IOC_NONE, 0xae97, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INTERRUPT", _IOC_WRITE, 0xae94, 0x10 },
+{ "linux/kvm.h", "KVM_S390_SET_INITIAL_PSW", _IOC_WRITE, 0xae96, 0x10 },
+{ "linux/kvm.h", "KVM_S390_STORE_STATUS", _IOC_WRITE, 0xae95, 0x08 },
+{ "linux/kvm.h", "KVM_S390_UCAS_MAP", _IOC_WRITE, 0xae50, 0x18 },
+{ "linux/kvm.h", "KVM_S390_UCAS_UNMAP", _IOC_WRITE, 0xae51, 0x18 },
+{ "linux/kvm.h", "KVM_S390_VCPU_FAULT", _IOC_WRITE, 0xae52, 0x08 },
+{ "linux/kvm.h", "KVM_SET_BOOT_CPU_ID", _IOC_NONE, 0xae78, 0x00 },
+{ "linux/kvm.h", "KVM_SET_CLOCK", _IOC_WRITE, 0xae7b, 0x30 },
+{ "linux/kvm.h", "KVM_SET_CPUID", _IOC_WRITE, 0xae8a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_CPUID2", _IOC_WRITE, 0xae90, 0x08 },
+{ "linux/kvm.h", "KVM_SET_DEBUGREGS", _IOC_WRITE, 0xaea2, 0x80 },
+{ "linux/kvm.h", "KVM_SET_DEVICE_ATTR", _IOC_WRITE, 0xaee1, 0x18 },
+{ "linux/kvm.h", "KVM_SET_FPU", _IOC_WRITE, 0xae8d, 0x1a0 },
+{ "linux/kvm.h", "KVM_SET_GSI_ROUTING", _IOC_WRITE, 0xae6a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_GUEST_DEBUG", _IOC_WRITE, 0xae9b, 0x48 },
+{ "linux/kvm.h", "KVM_SET_IDENTITY_MAP_ADDR", _IOC_WRITE, 0xae48, 0x08 },
+{ "linux/kvm.h", "KVM_SET_IRQCHIP", _IOC_READ, 0xae63, 0x208 },
+{ "linux/kvm.h", "KVM_SET_LAPIC", _IOC_WRITE, 0xae8f, 0x400 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_ALIAS", _IOC_WRITE, 0xae43, 0x20 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_REGION", _IOC_WRITE, 0xae40, 0x18 },
+{ "linux/kvm.h", "KVM_SET_MP_STATE", _IOC_WRITE, 0xae99, 0x04 },
+{ "linux/kvm.h", "KVM_SET_MSRS", _IOC_WRITE, 0xae89, 0x08 },
+{ "linux/kvm.h", "KVM_SET_NR_MMU_PAGES", _IOC_NONE, 0xae44, 0x00 },
+{ "linux/kvm.h", "KVM_SET_ONE_REG", _IOC_WRITE, 0xaeac, 0x10 },
+{ "linux/kvm.h", "KVM_SET_PIT", _IOC_READ, 0xae66, 0x48 },
+{ "linux/kvm.h", "KVM_SET_PIT2", _IOC_WRITE, 0xaea0, 0x70 },
+{ "linux/kvm.h", "KVM_SET_REGS", _IOC_WRITE, 0xae82, 0x90 },
+{ "linux/kvm.h", "KVM_SET_SIGNAL_MASK", _IOC_WRITE, 0xae8b, 0x04 },
+{ "linux/kvm.h", "KVM_SET_SREGS", _IOC_WRITE, 0xae84, 0x138 },
+{ "linux/kvm.h", "KVM_SET_TSC_KHZ", _IOC_NONE, 0xaea2, 0x00 },
+{ "linux/kvm.h", "KVM_SET_TSS_ADDR", _IOC_NONE, 0xae47, 0x00 },
+{ "linux/kvm.h", "KVM_SET_USER_MEMORY_REGION", _IOC_WRITE, 0xae46, 0x20 },
+{ "linux/kvm.h", "KVM_SET_VAPIC_ADDR", _IOC_WRITE, 0xae93, 0x08 },
+{ "linux/kvm.h", "KVM_SET_VCPU_EVENTS", _IOC_WRITE, 0xaea0, 0x40 },
+{ "linux/kvm.h", "KVM_SET_XCRS", _IOC_WRITE, 0xaea7, 0x188 },
+{ "linux/kvm.h", "KVM_SET_XSAVE", _IOC_WRITE, 0xaea5, 0x1000 },
+{ "linux/kvm.h", "KVM_SIGNAL_MSI", _IOC_WRITE, 0xaea5, 0x20 },
+{ "linux/kvm.h", "KVM_TPR_ACCESS_REPORTING", _IOC_READ|_IOC_WRITE, 0xae92, 0x28 },
+{ "linux/kvm.h", "KVM_TRANSLATE", _IOC_READ|_IOC_WRITE, 0xae85, 0x18 },
+{ "linux/kvm.h", "KVM_UNREGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae68, 0x10 },
+{ "linux/kvm.h", "KVM_X86_GET_MCE_CAP_SUPPORTED", _IOC_READ, 0xae9d, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SETUP_MCE", _IOC_WRITE, 0xae9c, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SET_MCE", _IOC_WRITE, 0xae9e, 0x40 },
+{ "linux/kvm.h", "KVM_XEN_HVM_CONFIG", _IOC_WRITE, 0xae7a, 0x38 },
+{ "linux/loop.h", "LOOP_CHANGE_FD", 0, 0x4C06, 0 },
+{ "linux/loop.h", "LOOP_CLR_FD", 0, 0x4C01, 0 },
+{ "linux/loop.h", "LOOP_CTL_ADD", 0, 0x4C80, 0 },
+{ "linux/loop.h", "LOOP_CTL_GET_FREE", 0, 0x4C82, 0 },
+{ "linux/loop.h", "LOOP_CTL_REMOVE", 0, 0x4C81, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS", 0, 0x4C03, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS64", 0, 0x4C05, 0 },
+{ "linux/loop.h", "LOOP_SET_CAPACITY", 0, 0x4C07, 0 },
+{ "linux/loop.h", "LOOP_SET_FD", 0, 0x4C00, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS", 0, 0x4C02, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS64", 0, 0x4C04, 0 },
+{ "linux/mISDNif.h", "IMADDTIMER", _IOC_READ, 0x4940, 0x04 },
+{ "linux/mISDNif.h", "IMCLEAR_L2", _IOC_READ, 0x4946, 0x04 },
+{ "linux/mISDNif.h", "IMCTRLREQ", _IOC_READ, 0x4945, 0x04 },
+{ "linux/mISDNif.h", "IMDELTIMER", _IOC_READ, 0x4941, 0x04 },
+{ "linux/mISDNif.h", "IMGETCOUNT", _IOC_READ, 0x4943, 0x04 },
+{ "linux/mISDNif.h", "IMGETDEVINFO", _IOC_READ, 0x4944, 0x04 },
+{ "linux/mISDNif.h", "IMGETVERSION", _IOC_READ, 0x4942, 0x04 },
+{ "linux/mISDNif.h", "IMHOLD_L1", _IOC_READ, 0x4948, 0x04 },
+{ "linux/mISDNif.h", "IMSETDEVNAME", _IOC_READ, 0x4947, 0x18 },
+{ "linux/matroxfb.h", "MATROXFB_GET_ALL_OUTPUTS", _IOC_READ, 0x6efb, 0x08 },
+{ "linux/matroxfb.h", "MATROXFB_GET_AVAILABLE_OUTPUTS", _IOC_READ, 0x6ef9, 0x08 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_CONNECTION", _IOC_READ, 0x6ef8, 0x08 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_MODE", _IOC_READ|_IOC_WRITE, 0x6efa, 0x08 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_CONNECTION", _IOC_WRITE, 0x6ef8, 0x08 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_MODE", _IOC_WRITE, 0x6efa, 0x08 },
+{ "linux/media.h", "MEDIA_IOC_DEVICE_INFO", _IOC_READ|_IOC_WRITE, 0x7c00, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_ENTITIES", _IOC_READ|_IOC_WRITE, 0x7c01, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_LINKS", _IOC_READ|_IOC_WRITE, 0x7c02, 0x28 },
+{ "linux/media.h", "MEDIA_IOC_SETUP_LINK", _IOC_READ|_IOC_WRITE, 0x7c03, 0x34 },
+{ "linux/mei.h", "IOCTL_MEI_CONNECT_CLIENT", _IOC_READ|_IOC_WRITE, 0x4801, 0x10 },
+{ "linux/meye.h", "MEYEIOC_G_PARAMS", _IOC_READ, 0x76c0, 0x06 },
+{ "linux/meye.h", "MEYEIOC_QBUF_CAPT", _IOC_WRITE, 0x76c2, 0x04 },
+{ "linux/meye.h", "MEYEIOC_STILLCAPT", _IOC_NONE, 0x76c4, 0x00 },
+{ "linux/meye.h", "MEYEIOC_STILLJCAPT", _IOC_READ, 0x76c5, 0x04 },
+{ "linux/meye.h", "MEYEIOC_SYNC", _IOC_READ|_IOC_WRITE, 0x76c3, 0x04 },
+{ "linux/meye.h", "MEYEIOC_S_PARAMS", _IOC_WRITE, 0x76c1, 0x06 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_ADD_DEVICE", _IOC_READ|_IOC_WRITE, 0x7301, 0x08 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_CONFIG_CHANGE", _IOC_READ|_IOC_WRITE, 0x7305, 0x08 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_COPY_DESC", _IOC_READ|_IOC_WRITE, 0x7302, 0x08 },
+{ "linux/mmc/ioctl.h", "MMC_IOC_CMD", _IOC_READ|_IOC_WRITE, 0xb300, 0x48 },
+{ "linux/mmtimer.h", "MMTIMER_GETBITS", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETCOUNTER", _IOC_READ, 0x6d09, 0x08 },
+{ "linux/mmtimer.h", "MMTIMER_GETFREQ", _IOC_READ, 0x6d02, 0x08 },
+{ "linux/mmtimer.h", "MMTIMER_GETOFFSET", _IOC_NONE, 0x6d00, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETRES", _IOC_READ, 0x6d01, 0x08 },
+{ "linux/mmtimer.h", "MMTIMER_MMAPAVAIL", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_ATTRIBUTES", _IOC_READ, 0x7210, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_VOLUME_ID", _IOC_READ, 0x7213, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_SET_ATTRIBUTES", _IOC_WRITE, 0x7211, 0x04 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", _IOC_READ, 0x7201, 0x230 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", _IOC_READ, 0x7202, 0x230 },
+{ "linux/msm_mdp.h", "MSMFB_BLIT", _IOC_WRITE, 0x6d02, 0x04 },
+{ "linux/msm_mdp.h", "MSMFB_GRP_DISP", _IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/mtio.h", "MTIOCGET", _IOC_READ, 0x6d02, 0x30 },
+{ "linux/mtio.h", "MTIOCPOS", _IOC_READ, 0x6d03, 0x08 },
+{ "linux/mtio.h", "MTIOCTOP", _IOC_WRITE, 0x6d01, 0x08 },
+{ "linux/nbd.h", "NBD_CLEAR_QUE", _IOC_NONE, 0xab05, 0x00 },
+{ "linux/nbd.h", "NBD_CLEAR_SOCK", _IOC_NONE, 0xab04, 0x00 },
+{ "linux/nbd.h", "NBD_DISCONNECT", _IOC_NONE, 0xab08, 0x00 },
+{ "linux/nbd.h", "NBD_DO_IT", _IOC_NONE, 0xab03, 0x00 },
+{ "linux/nbd.h", "NBD_PRINT_DEBUG", _IOC_NONE, 0xab06, 0x00 },
+{ "linux/nbd.h", "NBD_SET_BLKSIZE", _IOC_NONE, 0xab01, 0x00 },
+{ "linux/nbd.h", "NBD_SET_FLAGS", _IOC_NONE, 0xab0a, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE", _IOC_NONE, 0xab02, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE_BLOCKS", _IOC_NONE, 0xab07, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SOCK", _IOC_NONE, 0xab00, 0x00 },
+{ "linux/nbd.h", "NBD_SET_TIMEOUT", _IOC_NONE, 0xab09, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", _IOC_NONE, 0x6e03, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETCHARSETS", _IOC_READ|_IOC_WRITE, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_GETDENTRYTTL", _IOC_WRITE, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", _IOC_WRITE, 0x6e02, 0x02 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID2", _IOC_WRITE, 0x6e02, 0x08 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETOBJECTNAME", _IOC_READ|_IOC_WRITE, 0x6e09, 0x18 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETPRIVATEDATA", _IOC_READ|_IOC_WRITE, 0x6e0a, 0x10 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETROOT", _IOC_WRITE, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", _IOC_READ|_IOC_WRITE, 0x6e04, 0x28 },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO_V2", _IOC_READ|_IOC_WRITE, 0x6e04, 0x30 },
+{ "linux/ncp_fs.h", "NCP_IOC_LOCKUNLOCK", _IOC_READ, 0x6e07, 0x14 },
+{ "linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", _IOC_READ, 0x6e01, 0x10 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETCHARSETS", _IOC_READ, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_SETDENTRYTTL", _IOC_READ, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETOBJECTNAME", _IOC_READ, 0x6e09, 0x18 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETPRIVATEDATA", _IOC_READ, 0x6e0a, 0x10 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETROOT", _IOC_READ, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SET_SIGN_WANTED", _IOC_WRITE, 0x6e06, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_INIT", _IOC_READ, 0x6e05, 0x18 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_WANTED", _IOC_READ, 0x6e06, 0x04 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CHANGE_CPMODE", _IOC_WRITE, 0x6e80, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CLEAN_SEGMENTS", _IOC_WRITE, 0x6e88, 0x78 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_DELETE_CHECKPOINT", _IOC_WRITE, 0x6e81, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_BDESCS", _IOC_READ|_IOC_WRITE, 0x6e87, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPINFO", _IOC_READ, 0x6e82, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPSTAT", _IOC_READ, 0x6e83, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUINFO", _IOC_READ, 0x6e84, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUSTAT", _IOC_READ, 0x6e85, 0x30 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_VINFO", _IOC_READ|_IOC_WRITE, 0x6e86, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_RESIZE", _IOC_WRITE, 0x6e8b, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_ALLOC_RANGE", _IOC_WRITE, 0x6e8c, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_SUINFO", _IOC_WRITE, 0x6e8d, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SYNC", _IOC_READ, 0x6e8a, 0x08 },
+{ "linux/nvme.h", "NVME_IOCTL_ADMIN_CMD", _IOC_READ|_IOC_WRITE, 0x4e41, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_ID", _IOC_NONE, 0x4e40, 0x00 },
+{ "linux/nvme.h", "NVME_IOCTL_IO_CMD", _IOC_READ|_IOC_WRITE, 0x4e43, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_SUBMIT_IO", _IOC_WRITE, 0x4e42, 0x30 },
+{ "linux/nvram.h", "NVRAM_INIT", _IOC_NONE, 0x7040, 0x00 },
+{ "linux/nvram.h", "NVRAM_SETCKS", _IOC_NONE, 0x7041, 0x00 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AEWB_CFG", _IOC_READ|_IOC_WRITE, 0x56c3, 0x20 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AF_CFG", _IOC_READ|_IOC_WRITE, 0x56c5, 0x4c },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_CCDC_CFG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x38 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_HIST_CFG", _IOC_READ|_IOC_WRITE, 0x56c4, 0x30 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_PRV_CFG", _IOC_READ|_IOC_WRITE, 0x56c2, 0x70 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_EN", _IOC_READ|_IOC_WRITE, 0x56c7, 0x08 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_REQ", _IOC_READ|_IOC_WRITE, 0x56c6, 0x28 },
+{ "linux/omapfb.h", "OMAPFB_CTRL_TEST", _IOC_WRITE, 0x4f2e, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_CAPS", _IOC_READ, 0x4f2a, 0x0c },
+{ "linux/omapfb.h", "OMAPFB_GET_COLOR_KEY", _IOC_WRITE, 0x4f33, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_GET_DISPLAY_INFO", _IOC_READ, 0x4f3f, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_GET_OVERLAY_COLORMODE", _IOC_READ, 0x4f3b, 0x3c },
+{ "linux/omapfb.h", "OMAPFB_GET_UPDATE_MODE", _IOC_WRITE, 0x4f2b, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_VRAM_INFO", _IOC_READ, 0x4f3d, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_LCD_TEST", _IOC_WRITE, 0x4f2d, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_MEMORY_READ", _IOC_READ, 0x4f3a, 0x18 },
+{ "linux/omapfb.h", "OMAPFB_MIRROR", _IOC_WRITE, 0x4f1f, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_MEM", _IOC_WRITE, 0x4f38, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_PLANE", _IOC_WRITE, 0x4f35, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_MEM", _IOC_WRITE, 0x4f37, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_PLANE", _IOC_WRITE, 0x4f34, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SET_COLOR_KEY", _IOC_WRITE, 0x4f32, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_SET_TEARSYNC", _IOC_WRITE, 0x4f3e, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SET_UPDATE_MODE", _IOC_WRITE, 0x4f28, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_SYNC_GFX", _IOC_NONE, 0x4f25, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW", _IOC_WRITE, 0x4f36, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW_OLD", _IOC_WRITE, 0x4f2f, 0x14 },
+{ "linux/omapfb.h", "OMAPFB_VSYNC", _IOC_NONE, 0x4f26, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORGO", _IOC_NONE, 0x4f3c, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORVSYNC", _IOC_NONE, 0x4f39, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_DISABLE", _IOC_NONE, 0x2401, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ENABLE", _IOC_NONE, 0x2400, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ID", _IOC_READ, 0x2407, 0x08 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_PERIOD", _IOC_WRITE, 0x2404, 0x08 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_REFRESH", _IOC_NONE, 0x2402, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_RESET", _IOC_NONE, 0x2403, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_FILTER", _IOC_WRITE, 0x2406, 0x08 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_OUTPUT", _IOC_NONE, 0x2405, 0x00 },
+{ "linux/phantom.h", "PHN_GETREG", _IOC_READ|_IOC_WRITE, 0x7005, 0x08 },
+{ "linux/phantom.h", "PHN_GETREGS", _IOC_READ|_IOC_WRITE, 0x7007, 0x28 },
+{ "linux/phantom.h", "PHN_GET_REG", _IOC_READ|_IOC_WRITE, 0x7000, 0x08 },
+{ "linux/phantom.h", "PHN_GET_REGS", _IOC_READ|_IOC_WRITE, 0x7002, 0x08 },
+{ "linux/phantom.h", "PHN_NOT_OH", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/phantom.h", "PHN_SETREG", _IOC_WRITE, 0x7006, 0x08 },
+{ "linux/phantom.h", "PHN_SETREGS", _IOC_WRITE, 0x7008, 0x28 },
+{ "linux/phantom.h", "PHN_SET_REG", _IOC_WRITE, 0x7001, 0x08 },
+{ "linux/phantom.h", "PHN_SET_REGS", _IOC_WRITE, 0x7003, 0x08 },
+{ "linux/pktcdvd.h", "PACKET_CTRL_CMD", _IOC_READ|_IOC_WRITE, 0x5801, 0x18 },
+{ "linux/pmu.h", "PMU_IOC_CAN_SLEEP", _IOC_READ, 0x4205, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_GET_BACKLIGHT", _IOC_READ, 0x4201, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_GET_MODEL", _IOC_READ, 0x4203, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_GRAB_BACKLIGHT", _IOC_READ, 0x4206, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_HAS_ADB", _IOC_READ, 0x4204, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_SET_BACKLIGHT", _IOC_WRITE, 0x4202, 0x08 },
+{ "linux/pmu.h", "PMU_IOC_SLEEP", _IOC_NONE, 0x4200, 0x00 },
+{ "linux/ppdev.h", "PPCLAIM", _IOC_NONE, 0x708b, 0x00 },
+{ "linux/ppdev.h", "PPCLRIRQ", _IOC_READ, 0x7093, 0x04 },
+{ "linux/ppdev.h", "PPDATADIR", _IOC_WRITE, 0x7090, 0x04 },
+{ "linux/ppdev.h", "PPEXCL", _IOC_NONE, 0x708f, 0x00 },
+{ "linux/ppdev.h", "PPFCONTROL", _IOC_WRITE, 0x708e, 0x02 },
+{ "linux/ppdev.h", "PPGETFLAGS", _IOC_READ, 0x709a, 0x04 },
+{ "linux/ppdev.h", "PPGETMODE", _IOC_READ, 0x7098, 0x04 },
+{ "linux/ppdev.h", "PPGETMODES", _IOC_READ, 0x7097, 0x04 },
+{ "linux/ppdev.h", "PPGETPHASE", _IOC_READ, 0x7099, 0x04 },
+{ "linux/ppdev.h", "PPGETTIME", _IOC_READ, 0x7095, 0x10 },
+{ "linux/ppdev.h", "PPNEGOT", _IOC_WRITE, 0x7091, 0x04 },
+{ "linux/ppdev.h", "PPRCONTROL", _IOC_READ, 0x7083, 0x01 },
+{ "linux/ppdev.h", "PPRDATA", _IOC_READ, 0x7085, 0x01 },
+{ "linux/ppdev.h", "PPRELEASE", _IOC_NONE, 0x708c, 0x00 },
+{ "linux/ppdev.h", "PPRSTATUS", _IOC_READ, 0x7081, 0x01 },
+{ "linux/ppdev.h", "PPSETFLAGS", _IOC_WRITE, 0x709b, 0x04 },
+{ "linux/ppdev.h", "PPSETMODE", _IOC_WRITE, 0x7080, 0x04 },
+{ "linux/ppdev.h", "PPSETPHASE", _IOC_WRITE, 0x7094, 0x04 },
+{ "linux/ppdev.h", "PPSETTIME", _IOC_WRITE, 0x7096, 0x10 },
+{ "linux/ppdev.h", "PPWCONTROL", _IOC_WRITE, 0x7084, 0x01 },
+{ "linux/ppdev.h", "PPWCTLONIRQ", _IOC_WRITE, 0x7092, 0x01 },
+{ "linux/ppdev.h", "PPWDATA", _IOC_WRITE, 0x7086, 0x01 },
+{ "linux/ppdev.h", "PPYIELD", _IOC_NONE, 0x708d, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTACH", _IOC_WRITE, 0x743d, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTCHAN", _IOC_WRITE, 0x7438, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCCONNECT", _IOC_WRITE, 0x743a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDETACH", _IOC_WRITE, 0x743c, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDISCONN", _IOC_NONE, 0x7439, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCGASYNCMAP", _IOC_READ, 0x7458, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGCHAN", _IOC_READ, 0x7437, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGDEBUG", _IOC_READ, 0x7441, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGFLAGS", _IOC_READ, 0x745a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGIDLE", _IOC_READ, 0x743f, 0x10 },
+{ "linux/ppp-ioctl.h", "PPPIOCGL2TPSTATS", _IOC_READ, 0x7436, 0x48 },
+{ "linux/ppp-ioctl.h", "PPPIOCGMRU", _IOC_READ, 0x7453, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGNPMODE", _IOC_READ|_IOC_WRITE, 0x744c, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCGRASYNCMAP", _IOC_READ, 0x7455, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGUNIT", _IOC_READ, 0x7456, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGXASYNCMAP", _IOC_READ, 0x7450, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCNEWUNIT", _IOC_READ|_IOC_WRITE, 0x743e, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSACTIVE", _IOC_WRITE, 0x7446, 0x10 },
+{ "linux/ppp-ioctl.h", "PPPIOCSASYNCMAP", _IOC_WRITE, 0x7457, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSCOMPRESS", _IOC_WRITE, 0x744d, 0x10 },
+{ "linux/ppp-ioctl.h", "PPPIOCSDEBUG", _IOC_WRITE, 0x7440, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSFLAGS", _IOC_WRITE, 0x7459, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMAXCID", _IOC_WRITE, 0x7451, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRRU", _IOC_WRITE, 0x743b, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRU", _IOC_WRITE, 0x7452, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSNPMODE", _IOC_WRITE, 0x744b, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSPASS", _IOC_WRITE, 0x7447, 0x10 },
+{ "linux/ppp-ioctl.h", "PPPIOCSRASYNCMAP", _IOC_WRITE, 0x7454, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSXASYNCMAP", _IOC_WRITE, 0x744f, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCXFERUNIT", _IOC_NONE, 0x744e, 0x00 },
+{ "linux/pps.h", "PPS_FETCH", _IOC_READ|_IOC_WRITE, 0x70a4, 0x08 },
+{ "linux/pps.h", "PPS_GETCAP", _IOC_READ, 0x70a3, 0x08 },
+{ "linux/pps.h", "PPS_GETPARAMS", _IOC_READ, 0x70a1, 0x08 },
+{ "linux/pps.h", "PPS_KC_BIND", _IOC_WRITE, 0x70a5, 0x08 },
+{ "linux/pps.h", "PPS_SETPARAMS", _IOC_WRITE, 0x70a2, 0x08 },
+{ "linux/ptp_clock.h", "PTP_CLOCK_GETCAPS", _IOC_READ, 0x3d01, 0x50 },
+{ "linux/ptp_clock.h", "PTP_ENABLE_PPS", _IOC_WRITE, 0x3d04, 0x04 },
+{ "linux/ptp_clock.h", "PTP_EXTTS_REQUEST", _IOC_WRITE, 0x3d02, 0x10 },
+{ "linux/ptp_clock.h", "PTP_PEROUT_REQUEST", _IOC_WRITE, 0x3d03, 0x38 },
+{ "linux/ptp_clock.h", "PTP_PIN_GETFUNC", _IOC_READ|_IOC_WRITE, 0x3d06, 0x60 },
+{ "linux/ptp_clock.h", "PTP_PIN_SETFUNC", _IOC_WRITE, 0x3d07, 0x60 },
+{ "linux/ptp_clock.h", "PTP_SYS_OFFSET", _IOC_WRITE, 0x3d05, 0x340 },
+{ "linux/radeonfb.h", "FBIO_RADEON_GET_MIRROR", _IOC_READ, 0x4003, 0x08 },
+{ "linux/radeonfb.h", "FBIO_RADEON_SET_MIRROR", _IOC_WRITE, 0x4004, 0x08 },
+{ "linux/raid/md_u.h", "ADD_NEW_DISK", _IOC_WRITE, 0x0921, 0x14 },
+{ "linux/raid/md_u.h", "CLEAR_ARRAY", _IOC_NONE, 0x0920, 0x00 },
+{ "linux/raid/md_u.h", "GET_ARRAY_INFO", _IOC_READ, 0x0911, 0x48 },
+{ "linux/raid/md_u.h", "GET_BITMAP_FILE", _IOC_READ, 0x0915, 0x1000 },
+{ "linux/raid/md_u.h", "GET_DISK_INFO", _IOC_READ, 0x0912, 0x14 },
+{ "linux/raid/md_u.h", "HOT_ADD_DISK", _IOC_NONE, 0x0928, 0x00 },
+{ "linux/raid/md_u.h", "HOT_GENERATE_ERROR", _IOC_NONE, 0x092a, 0x00 },
+{ "linux/raid/md_u.h", "HOT_REMOVE_DISK", _IOC_NONE, 0x0922, 0x00 },
+{ "linux/raid/md_u.h", "PROTECT_ARRAY", _IOC_NONE, 0x0927, 0x00 },
+{ "linux/raid/md_u.h", "RAID_AUTORUN", _IOC_NONE, 0x0914, 0x00 },
+{ "linux/raid/md_u.h", "RAID_VERSION", _IOC_READ, 0x0910, 0x0c },
+{ "linux/raid/md_u.h", "RESTART_ARRAY_RW", _IOC_NONE, 0x0934, 0x00 },
+{ "linux/raid/md_u.h", "RUN_ARRAY", _IOC_WRITE, 0x0930, 0x0c },
+{ "linux/raid/md_u.h", "SET_ARRAY_INFO", _IOC_WRITE, 0x0923, 0x48 },
+{ "linux/raid/md_u.h", "SET_BITMAP_FILE", _IOC_WRITE, 0x092b, 0x04 },
+{ "linux/raid/md_u.h", "SET_DISK_FAULTY", _IOC_NONE, 0x0929, 0x00 },
+{ "linux/raid/md_u.h", "SET_DISK_INFO", _IOC_NONE, 0x0924, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY", _IOC_NONE, 0x0932, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY_RO", _IOC_NONE, 0x0933, 0x00 },
+{ "linux/raid/md_u.h", "UNPROTECT_ARRAY", _IOC_NONE, 0x0926, 0x00 },
+{ "linux/raid/md_u.h", "WRITE_RAID_INFO", _IOC_NONE, 0x0925, 0x00 },
+{ "linux/random.h", "RNDADDENTROPY", _IOC_WRITE, 0x5203, 0x08 },
+{ "linux/random.h", "RNDADDTOENTCNT", _IOC_WRITE, 0x5201, 0x04 },
+{ "linux/random.h", "RNDCLEARPOOL", _IOC_NONE, 0x5206, 0x00 },
+{ "linux/random.h", "RNDGETENTCNT", _IOC_READ, 0x5200, 0x04 },
+{ "linux/random.h", "RNDGETPOOL", _IOC_READ, 0x5202, 0x08 },
+{ "linux/random.h", "RNDZAPENTCNT", _IOC_NONE, 0x5204, 0x00 },
+{ "linux/raw.h", "RAW_GETBIND", _IOC_NONE, 0xac01, 0x00 },
+{ "linux/raw.h", "RAW_SETBIND", _IOC_NONE, 0xac00, 0x00 },
+{ "linux/reiserfs_fs.h", "REISERFS_IOC_UNPACK", _IOC_WRITE, 0xcd01, 0x08 },
+{ "linux/rfkill.h", "RFKILL_IOCTL_NOINPUT", _IOC_NONE, 0x5201, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_OFF", _IOC_NONE, 0x7002, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_ON", _IOC_NONE, 0x7001, 0x00 },
+{ "linux/rtc.h", "RTC_ALM_READ", _IOC_READ, 0x7008, 0x24 },
+{ "linux/rtc.h", "RTC_ALM_SET", _IOC_WRITE, 0x7007, 0x24 },
+{ "linux/rtc.h", "RTC_EPOCH_READ", _IOC_READ, 0x700d, 0x08 },
+{ "linux/rtc.h", "RTC_EPOCH_SET", _IOC_WRITE, 0x700e, 0x08 },
+{ "linux/rtc.h", "RTC_IRQP_READ", _IOC_READ, 0x700b, 0x08 },
+{ "linux/rtc.h", "RTC_IRQP_SET", _IOC_WRITE, 0x700c, 0x08 },
+{ "linux/rtc.h", "RTC_PIE_OFF", _IOC_NONE, 0x7006, 0x00 },
+{ "linux/rtc.h", "RTC_PIE_ON", _IOC_NONE, 0x7005, 0x00 },
+{ "linux/rtc.h", "RTC_PLL_GET", _IOC_READ, 0x7011, 0x20 },
+{ "linux/rtc.h", "RTC_PLL_SET", _IOC_WRITE, 0x7012, 0x20 },
+{ "linux/rtc.h", "RTC_RD_TIME", _IOC_READ, 0x7009, 0x24 },
+{ "linux/rtc.h", "RTC_SET_TIME", _IOC_WRITE, 0x700a, 0x24 },
+{ "linux/rtc.h", "RTC_UIE_OFF", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/rtc.h", "RTC_UIE_ON", _IOC_NONE, 0x7003, 0x00 },
+{ "linux/rtc.h", "RTC_VL_CLR", _IOC_NONE, 0x7014, 0x00 },
+{ "linux/rtc.h", "RTC_VL_READ", _IOC_READ, 0x7013, 0x04 },
+{ "linux/rtc.h", "RTC_WIE_OFF", _IOC_NONE, 0x7010, 0x00 },
+{ "linux/rtc.h", "RTC_WIE_ON", _IOC_NONE, 0x700f, 0x00 },
+{ "linux/rtc.h", "RTC_WKALM_RD", _IOC_READ, 0x7010, 0x28 },
+{ "linux/rtc.h", "RTC_WKALM_SET", _IOC_WRITE, 0x700f, 0x28 },
+{ "linux/serio.h", "SPIOCSTYPE", _IOC_WRITE, 0x7101, 0x08 },
+{ "linux/sockios.h", "SIOCADDDLCI", 0, 0x8980, 0 },
+{ "linux/sockios.h", "SIOCADDMULTI", 0, 0x8931, 0 },
+{ "linux/sockios.h", "SIOCADDRT", 0, 0x890B, 0 },
+{ "linux/sockios.h", "SIOCBONDCHANGEACTIVE", 0, 0x8995, 0 },
+{ "linux/sockios.h", "SIOCBONDENSLAVE", 0, 0x8990, 0 },
+{ "linux/sockios.h", "SIOCBONDINFOQUERY", 0, 0x8994, 0 },
+{ "linux/sockios.h", "SIOCBONDRELEASE", 0, 0x8991, 0 },
+{ "linux/sockios.h", "SIOCBONDSETHWADDR", 0, 0x8992, 0 },
+{ "linux/sockios.h", "SIOCBONDSLAVEINFOQUERY", 0, 0x8993, 0 },
+{ "linux/sockios.h", "SIOCBRADDBR", 0, 0x89a0, 0 },
+{ "linux/sockios.h", "SIOCBRADDIF", 0, 0x89a2, 0 },
+{ "linux/sockios.h", "SIOCBRDELBR", 0, 0x89a1, 0 },
+{ "linux/sockios.h", "SIOCBRDELIF", 0, 0x89a3, 0 },
+{ "linux/sockios.h", "SIOCDARP", 0, 0x8953, 0 },
+{ "linux/sockios.h", "SIOCDELDLCI", 0, 0x8981, 0 },
+{ "linux/sockios.h", "SIOCDELMULTI", 0, 0x8932, 0 },
+{ "linux/sockios.h", "SIOCDELRT", 0, 0x890C, 0 },
+{ "linux/sockios.h", "SIOCDEVPRIVATE", 0, 0x89F0, 0 },
+{ "linux/sockios.h", "SIOCDIFADDR", 0, 0x8936, 0 },
+{ "linux/sockios.h", "SIOCDRARP", 0, 0x8960, 0 },
+{ "linux/sockios.h", "SIOCETHTOOL", 0, 0x8946, 0 },
+{ "linux/sockios.h", "SIOCGARP", 0, 0x8954, 0 },
+{ "linux/sockios.h", "SIOCGHWTSTAMP", 0, 0x89b1, 0 },
+{ "linux/sockios.h", "SIOCGIFADDR", 0, 0x8915, 0 },
+{ "linux/sockios.h", "SIOCGIFBR", 0, 0x8940, 0 },
+{ "linux/sockios.h", "SIOCGIFBRDADDR", 0, 0x8919, 0 },
+{ "linux/sockios.h", "SIOCGIFCONF", 0, 0x8912, 0 },
+{ "linux/sockios.h", "SIOCGIFCOUNT", 0, 0x8938, 0 },
+{ "linux/sockios.h", "SIOCGIFDSTADDR", 0, 0x8917, 0 },
+{ "linux/sockios.h", "SIOCGIFENCAP", 0, 0x8925, 0 },
+{ "linux/sockios.h", "SIOCGIFFLAGS", 0, 0x8913, 0 },
+{ "linux/sockios.h", "SIOCGIFHWADDR", 0, 0x8927, 0 },
+{ "linux/sockios.h", "SIOCGIFINDEX", 0, 0x8933, 0 },
+{ "linux/sockios.h", "SIOCGIFMAP", 0, 0x8970, 0 },
+{ "linux/sockios.h", "SIOCGIFMEM", 0, 0x891f, 0 },
+{ "linux/sockios.h", "SIOCGIFMETRIC", 0, 0x891d, 0 },
+{ "linux/sockios.h", "SIOCGIFMTU", 0, 0x8921, 0 },
+{ "linux/sockios.h", "SIOCGIFNAME", 0, 0x8910, 0 },
+{ "linux/sockios.h", "SIOCGIFNETMASK", 0, 0x891b, 0 },
+{ "linux/sockios.h", "SIOCGIFPFLAGS", 0, 0x8935, 0 },
+{ "linux/sockios.h", "SIOCGIFSLAVE", 0, 0x8929, 0 },
+{ "linux/sockios.h", "SIOCGIFTXQLEN", 0, 0x8942, 0 },
+{ "linux/sockios.h", "SIOCGIFVLAN", 0, 0x8982, 0 },
+{ "linux/sockios.h", "SIOCGMIIPHY", 0, 0x8947, 0 },
+{ "linux/sockios.h", "SIOCGMIIREG", 0, 0x8948, 0 },
+{ "linux/sockios.h", "SIOCGRARP", 0, 0x8961, 0 },
+{ "linux/sockios.h", "SIOCOUTQNSD", 0, 0x894B, 0 },
+{ "linux/sockios.h", "SIOCPROTOPRIVATE", 0, 0x89E0, 0 },
+{ "linux/sockios.h", "SIOCRTMSG", 0, 0x890D, 0 },
+{ "linux/sockios.h", "SIOCSARP", 0, 0x8955, 0 },
+{ "linux/sockios.h", "SIOCSHWTSTAMP", 0, 0x89b0, 0 },
+{ "linux/sockios.h", "SIOCSIFADDR", 0, 0x8916, 0 },
+{ "linux/sockios.h", "SIOCSIFBR", 0, 0x8941, 0 },
+{ "linux/sockios.h", "SIOCSIFBRDADDR", 0, 0x891a, 0 },
+{ "linux/sockios.h", "SIOCSIFDSTADDR", 0, 0x8918, 0 },
+{ "linux/sockios.h", "SIOCSIFENCAP", 0, 0x8926, 0 },
+{ "linux/sockios.h", "SIOCSIFFLAGS", 0, 0x8914, 0 },
+{ "linux/sockios.h", "SIOCSIFHWADDR", 0, 0x8924, 0 },
+{ "linux/sockios.h", "SIOCSIFHWBROADCAST", 0, 0x8937, 0 },
+{ "linux/sockios.h", "SIOCSIFLINK", 0, 0x8911, 0 },
+{ "linux/sockios.h", "SIOCSIFMAP", 0, 0x8971, 0 },
+{ "linux/sockios.h", "SIOCSIFMEM", 0, 0x8920, 0 },
+{ "linux/sockios.h", "SIOCSIFMETRIC", 0, 0x891e, 0 },
+{ "linux/sockios.h", "SIOCSIFMTU", 0, 0x8922, 0 },
+{ "linux/sockios.h", "SIOCSIFNAME", 0, 0x8923, 0 },
+{ "linux/sockios.h", "SIOCSIFNETMASK", 0, 0x891c, 0 },
+{ "linux/sockios.h", "SIOCSIFPFLAGS", 0, 0x8934, 0 },
+{ "linux/sockios.h", "SIOCSIFSLAVE", 0, 0x8930, 0 },
+{ "linux/sockios.h", "SIOCSIFTXQLEN", 0, 0x8943, 0 },
+{ "linux/sockios.h", "SIOCSIFVLAN", 0, 0x8983, 0 },
+{ "linux/sockios.h", "SIOCSMIIREG", 0, 0x8949, 0 },
+{ "linux/sockios.h", "SIOCSRARP", 0, 0x8962, 0 },
+{ "linux/sockios.h", "SIOCWANDEV", 0, 0x894A, 0 },
+{ "linux/sonet.h", "SONET_CLRDIAG", _IOC_READ|_IOC_WRITE, 0x6113, 0x04 },
+{ "linux/sonet.h", "SONET_GETDIAG", _IOC_READ, 0x6114, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRAMING", _IOC_READ, 0x6116, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRSENSE", _IOC_READ, 0x6117, 0x06 },
+{ "linux/sonet.h", "SONET_GETSTAT", _IOC_READ, 0x6110, 0x24 },
+{ "linux/sonet.h", "SONET_GETSTATZ", _IOC_READ, 0x6111, 0x24 },
+{ "linux/sonet.h", "SONET_SETDIAG", _IOC_READ|_IOC_WRITE, 0x6112, 0x04 },
+{ "linux/sonet.h", "SONET_SETFRAMING", _IOC_WRITE, 0x6115, 0x04 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1CAP", _IOC_READ, 0x7602, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1REM", _IOC_READ, 0x7603, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2CAP", _IOC_READ, 0x7604, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2REM", _IOC_READ, 0x7605, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBATFLAGS", _IOC_READ, 0x7607, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBLUE", _IOC_READ, 0x7608, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBRT", _IOC_READ, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGFAN", _IOC_READ, 0x760a, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGTEMP", _IOC_READ, 0x760c, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBLUE", _IOC_WRITE, 0x7609, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBRT", _IOC_WRITE, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSFAN", _IOC_WRITE, 0x760b, 0x01 },
+{ "linux/soundcard.h", "OSS_GETVERSION", _IOC_READ, 0x4d76, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_COPR_HALT", _IOC_READ|_IOC_WRITE, 0x4307, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_LOAD", _IOC_READ|_IOC_WRITE, 0x4301, 0xfb0 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCODE", _IOC_READ|_IOC_WRITE, 0x4303, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCVMSG", _IOC_READ, 0x4309, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RDATA", _IOC_READ|_IOC_WRITE, 0x4302, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RESET", _IOC_NONE, 0x4300, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RUN", _IOC_READ|_IOC_WRITE, 0x4306, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_SENDMSG", _IOC_READ|_IOC_WRITE, 0x4308, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WCODE", _IOC_WRITE, 0x4305, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WDATA", _IOC_WRITE, 0x4304, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_DSP_BIND_CHANNEL", _IOC_READ|_IOC_WRITE, 0x5041, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_CHANNELS", _IOC_READ|_IOC_WRITE, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", _IOC_READ|_IOC_WRITE, 0x5004, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCAPS", _IOC_READ, 0x500f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCHANNELMASK", _IOC_READ|_IOC_WRITE, 0x5040, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETFMTS", _IOC_READ, 0x500b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETIPTR", _IOC_READ, 0x5011, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETISPACE", _IOC_READ, 0x500d, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETODELAY", _IOC_READ, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOPTR", _IOC_READ, 0x5012, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", _IOC_READ, 0x500c, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETSPDIF", _IOC_READ, 0x5043, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", _IOC_READ, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", _IOC_READ, 0x5013, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", _IOC_READ, 0x5014, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", _IOC_NONE, 0x500e, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_POST", _IOC_NONE, 0x5008, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_PROFILE", _IOC_WRITE, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_RESET", _IOC_NONE, 0x5000, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", _IOC_NONE, 0x5016, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFMT", _IOC_READ|_IOC_WRITE, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", _IOC_READ|_IOC_WRITE, 0x500a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSPDIF", _IOC_WRITE, 0x5042, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", _IOC_NONE, 0x5015, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", _IOC_WRITE, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SPEED", _IOC_READ|_IOC_WRITE, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_STEREO", _IOC_READ|_IOC_WRITE, 0x5003, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", _IOC_READ|_IOC_WRITE, 0x5009, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SYNC", _IOC_NONE, 0x5001, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", _IOC_WRITE, 0x510f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", _IOC_WRITE, 0x5107, 0x28 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_INFO", _IOC_READ|_IOC_WRITE, 0x510c, 0x74 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", _IOC_READ|_IOC_WRITE, 0x6d02, 0x21 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", _IOC_READ|_IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_PRETIME", _IOC_READ|_IOC_WRITE, 0x6d00, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", _IOC_READ|_IOC_WRITE, 0x5103, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", _IOC_READ, 0x5105, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", _IOC_READ, 0x5104, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETTIME", _IOC_READ, 0x5113, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", _IOC_READ, 0x510b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", _IOC_READ, 0x510a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", _IOC_WRITE, 0x5112, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PANIC", _IOC_NONE, 0x5111, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", _IOC_WRITE, 0x5106, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESET", _IOC_NONE, 0x5100, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", _IOC_WRITE, 0x5109, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_SYNC", _IOC_NONE, 0x5101, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", _IOC_WRITE, 0x5108, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", _IOC_WRITE, 0x510d, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_CONTROL", _IOC_READ|_IOC_WRITE, 0x5115, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_ID", _IOC_READ|_IOC_WRITE, 0x5114, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_INFO", _IOC_READ|_IOC_WRITE, 0x5102, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", _IOC_READ|_IOC_WRITE, 0x510e, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_REMOVESAMPLE", _IOC_READ|_IOC_WRITE, 0x5116, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_TMR_CONTINUE", _IOC_NONE, 0x5404, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_METRONOME", _IOC_WRITE, 0x5407, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SELECT", _IOC_WRITE, 0x5408, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SOURCE", _IOC_READ|_IOC_WRITE, 0x5406, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_START", _IOC_NONE, 0x5402, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_STOP", _IOC_NONE, 0x5403, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TEMPO", _IOC_READ|_IOC_WRITE, 0x5405, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", _IOC_READ|_IOC_WRITE, 0x5401, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_3DSE", _IOC_READ|_IOC_WRITE, 0x4d68, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_ACCESS", _IOC_READ|_IOC_WRITE, 0x4d66, 0x80 },
+{ "linux/soundcard.h", "SOUND_MIXER_AGC", _IOC_READ|_IOC_WRITE, 0x4d67, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_GETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d74, 0xa4 },
+{ "linux/soundcard.h", "SOUND_MIXER_INFO", _IOC_READ, 0x4d65, 0x5c },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE1", _IOC_READ|_IOC_WRITE, 0x4d6f, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE2", _IOC_READ|_IOC_WRITE, 0x4d70, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE3", _IOC_READ|_IOC_WRITE, 0x4d71, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE4", _IOC_READ|_IOC_WRITE, 0x4d72, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE5", _IOC_READ|_IOC_WRITE, 0x4d73, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_SETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d75, 0xa4 },
+{ "linux/soundcard.h", "SOUND_OLD_MIXER_INFO", _IOC_READ, 0x4d65, 0x30 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_BITS", _IOC_READ, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", _IOC_READ, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_FILTER", _IOC_READ, 0x5007, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_RATE", _IOC_READ, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", _IOC_READ|_IOC_WRITE, 0x5007, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_BITS_PER_WORD", _IOC_READ, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_LSB_FIRST", _IOC_READ, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MAX_SPEED_HZ", _IOC_READ, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE", _IOC_READ, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE32", _IOC_READ, 0x6b05, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_BITS_PER_WORD", _IOC_WRITE, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_LSB_FIRST", _IOC_WRITE, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MAX_SPEED_HZ", _IOC_WRITE, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE", _IOC_WRITE, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE32", _IOC_WRITE, 0x6b05, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ALLOC_SWAP_PAGE", _IOC_READ, 0x3314, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ATOMIC_RESTORE", _IOC_NONE, 0x3304, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_AVAIL_SWAP_SIZE", _IOC_READ, 0x3313, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_CREATE_IMAGE", _IOC_WRITE, 0x3311, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE", _IOC_NONE, 0x3305, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREEZE", _IOC_NONE, 0x3301, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE_SWAP_PAGES", _IOC_NONE, 0x3309, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_GET_IMAGE_SIZE", _IOC_READ, 0x330e, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PLATFORM_SUPPORT", _IOC_NONE, 0x330f, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_POWER_OFF", _IOC_NONE, 0x3310, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PREF_IMAGE_SIZE", _IOC_NONE, 0x3312, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_S2RAM", _IOC_NONE, 0x330b, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_SET_SWAP_AREA", _IOC_WRITE, 0x330d, 0x0c },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_UNFREEZE", _IOC_NONE, 0x3302, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCCLRMODCOUNT", _IOC_NONE, 0x6d0f, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGGPIO", _IOC_READ, 0x6d11, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCGIF", _IOC_NONE, 0x6d0b, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGPARAMS", _IOC_READ, 0x6d01, 0x30 },
+{ "linux/synclink.h", "MGSL_IOCGSTATS", _IOC_NONE, 0x6d07, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGTXIDLE", _IOC_NONE, 0x6d03, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXCTRL", _IOC_NONE, 0x6d16, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXSYNC", _IOC_NONE, 0x6d14, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCLOOPTXDONE", _IOC_NONE, 0x6d09, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCRXENABLE", _IOC_NONE, 0x6d05, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSGPIO", _IOC_WRITE, 0x6d10, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCSIF", _IOC_NONE, 0x6d0a, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSPARAMS", _IOC_WRITE, 0x6d00, 0x30 },
+{ "linux/synclink.h", "MGSL_IOCSTXIDLE", _IOC_NONE, 0x6d02, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXCTRL", _IOC_NONE, 0x6d15, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXSYNC", _IOC_NONE, 0x6d13, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXABORT", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXENABLE", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCWAITEVENT", _IOC_READ|_IOC_WRITE, 0x6d08, 0x04 },
+{ "linux/synclink.h", "MGSL_IOCWAITGPIO", _IOC_READ|_IOC_WRITE, 0x6d12, 0x10 },
+{ "linux/telephony.h", "OLD_PHONE_RING_START", _IOC_NONE, 0x7187, 0x00 },
+{ "linux/telephony.h", "PHONE_BUSY", _IOC_NONE, 0x71a1, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES", _IOC_NONE, 0x7180, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_CHECK", _IOC_WRITE, 0x7182, 0x08 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_LIST", _IOC_READ, 0x7181, 0x08 },
+{ "linux/telephony.h", "PHONE_CPT_STOP", _IOC_NONE, 0x71a4, 0x00 },
+{ "linux/telephony.h", "PHONE_DIALTONE", _IOC_NONE, 0x71a3, 0x00 },
+{ "linux/telephony.h", "PHONE_DTMF_OOB", _IOC_WRITE, 0x7199, 0x04 },
+{ "linux/telephony.h", "PHONE_DTMF_READY", _IOC_READ, 0x7196, 0x04 },
+{ "linux/telephony.h", "PHONE_EXCEPTION", _IOC_READ, 0x719a, 0x04 },
+{ "linux/telephony.h", "PHONE_FRAME", _IOC_WRITE, 0x718d, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF", _IOC_READ, 0x7197, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF_ASCII", _IOC_READ, 0x7198, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_TONE_OFF_TIME", _IOC_NONE, 0x719f, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_ON_TIME", _IOC_NONE, 0x719e, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_STATE", _IOC_NONE, 0x71a0, 0x00 },
+{ "linux/telephony.h", "PHONE_HOOKSTATE", _IOC_NONE, 0x7184, 0x00 },
+{ "linux/telephony.h", "PHONE_MAXRINGS", _IOC_WRITE, 0x7185, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_CODEC", _IOC_WRITE, 0x7190, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_DEPTH", _IOC_WRITE, 0x7193, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_LEVEL", _IOC_NONE, 0x7195, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_START", _IOC_NONE, 0x7191, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_STOP", _IOC_NONE, 0x7192, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_TONE", _IOC_WRITE, 0x719b, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME", _IOC_WRITE, 0x7194, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME_LINEAR", _IOC_WRITE, 0x71dc, 0x04 },
+{ "linux/telephony.h", "PHONE_PSTN_GET_STATE", _IOC_NONE, 0x71a5, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_LINETEST", _IOC_NONE, 0x71a8, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_SET_STATE", _IOC_WRITE, 0x71a4, 0x04 },
+{ "linux/telephony.h", "PHONE_QUERY_CODEC", _IOC_READ|_IOC_WRITE, 0x71a7, 0x08 },
+{ "linux/telephony.h", "PHONE_REC_CODEC", _IOC_WRITE, 0x7189, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_DEPTH", _IOC_WRITE, 0x718c, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_LEVEL", _IOC_NONE, 0x718f, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_START", _IOC_NONE, 0x718a, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_STOP", _IOC_NONE, 0x718b, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME", _IOC_WRITE, 0x718e, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME_LINEAR", _IOC_WRITE, 0x71db, 0x04 },
+{ "linux/telephony.h", "PHONE_RING", _IOC_NONE, 0x7183, 0x00 },
+{ "linux/telephony.h", "PHONE_RINGBACK", _IOC_NONE, 0x71a2, 0x00 },
+{ "linux/telephony.h", "PHONE_RING_CADENCE", _IOC_WRITE, 0x7186, 0x02 },
+{ "linux/telephony.h", "PHONE_RING_START", _IOC_WRITE, 0x7187, 0x08 },
+{ "linux/telephony.h", "PHONE_RING_STOP", _IOC_NONE, 0x7188, 0x00 },
+{ "linux/telephony.h", "PHONE_SET_TONE_OFF_TIME", _IOC_WRITE, 0x719d, 0x04 },
+{ "linux/telephony.h", "PHONE_SET_TONE_ON_TIME", _IOC_WRITE, 0x719c, 0x04 },
+{ "linux/telephony.h", "PHONE_VAD", _IOC_WRITE, 0x71a9, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK", _IOC_WRITE, 0x71aa, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK_DURATION", _IOC_WRITE, 0x71a6, 0x04 },
+{ "linux/timerfd.h", "TFD_IOC_SET_TICKS", _IOC_WRITE, 0x5400, 0x08 },
+{ "linux/toshiba.h", "TOSH_SMM", _IOC_READ|_IOC_WRITE, 0x7490, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETEABLOCK", _IOC_READ, 0x6c41, 0x08 },
+{ "linux/udf_fs_i.h", "UDF_GETEASIZE", _IOC_READ, 0x6c40, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETVOLIDENT", _IOC_READ, 0x6c42, 0x08 },
+{ "linux/udf_fs_i.h", "UDF_RELOCATE_BLOCKS", _IOC_READ|_IOC_WRITE, 0x6c43, 0x08 },
+{ "linux/uinput.h", "UI_BEGIN_FF_ERASE", _IOC_READ|_IOC_WRITE, 0x55ca, 0x0c },
+{ "linux/uinput.h", "UI_BEGIN_FF_UPLOAD", _IOC_READ|_IOC_WRITE, 0x55c8, 0x68 },
+{ "linux/uinput.h", "UI_DEV_CREATE", _IOC_NONE, 0x5501, 0x00 },
+{ "linux/uinput.h", "UI_DEV_DESTROY", _IOC_NONE, 0x5502, 0x00 },
+{ "linux/uinput.h", "UI_END_FF_ERASE", _IOC_WRITE, 0x55cb, 0x0c },
+{ "linux/uinput.h", "UI_END_FF_UPLOAD", _IOC_WRITE, 0x55c9, 0x68 },
+{ "linux/uinput.h", "UI_GET_VERSION", _IOC_READ, 0x552d, 0x04 },
+{ "linux/uinput.h", "UI_SET_ABSBIT", _IOC_WRITE, 0x5567, 0x04 },
+{ "linux/uinput.h", "UI_SET_EVBIT", _IOC_WRITE, 0x5564, 0x04 },
+{ "linux/uinput.h", "UI_SET_FFBIT", _IOC_WRITE, 0x556b, 0x04 },
+{ "linux/uinput.h", "UI_SET_KEYBIT", _IOC_WRITE, 0x5565, 0x04 },
+{ "linux/uinput.h", "UI_SET_LEDBIT", _IOC_WRITE, 0x5569, 0x04 },
+{ "linux/uinput.h", "UI_SET_MSCBIT", _IOC_WRITE, 0x5568, 0x04 },
+{ "linux/uinput.h", "UI_SET_PHYS", _IOC_WRITE, 0x556c, 0x08 },
+{ "linux/uinput.h", "UI_SET_PROPBIT", _IOC_WRITE, 0x556e, 0x04 },
+{ "linux/uinput.h", "UI_SET_RELBIT", _IOC_WRITE, 0x5566, 0x04 },
+{ "linux/uinput.h", "UI_SET_SNDBIT", _IOC_WRITE, 0x556a, 0x04 },
+{ "linux/uinput.h", "UI_SET_SWBIT", _IOC_WRITE, 0x556d, 0x04 },
+{ "linux/usb/cdc-wdm.h", "IOCTL_WDM_MAX_COMMAND", _IOC_READ, 0x48a0, 0x02 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_DESC", _IOC_READ, 0x6782, 0x09 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_REVMAP", _IOC_NONE, 0x6781, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_INTERFACE_REVMAP", _IOC_NONE, 0x6780, 0x00 },
+{ "linux/usb/g_printer.h", "GADGET_GET_PRINTER_STATUS", _IOC_READ, 0x6721, 0x01 },
+{ "linux/usb/g_printer.h", "GADGET_SET_PRINTER_STATUS", _IOC_READ|_IOC_WRITE, 0x6722, 0x01 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/iowarrior.h", "IOW_GETINFO", _IOC_READ, 0xc003, 0x28 },
+{ "linux/usb/iowarrior.h", "IOW_READ", _IOC_WRITE, 0xc002, 0x08 },
+{ "linux/usb/iowarrior.h", "IOW_WRITE", _IOC_WRITE, 0xc001, 0x08 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_IN", _IOC_NONE, 0x5b04, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_OUT", _IOC_NONE, 0x5b03, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR", _IOC_NONE, 0x5b02, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_IN_HALT", _IOC_NONE, 0x5b07, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_OUT_HALT", _IOC_NONE, 0x5b06, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_INDICATOR_PULSE", _IOC_NONE, 0x5b01, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_ALLOC_STREAMS", _IOC_READ, 0x551c, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK", _IOC_READ|_IOC_WRITE, 0x5502, 0x18 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK32", _IOC_READ|_IOC_WRITE, 0x5502, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIMINTERFACE", _IOC_READ, 0x550f, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIM_PORT", _IOC_READ, 0x5518, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLEAR_HALT", _IOC_READ, 0x5515, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECT", _IOC_NONE, 0x5517, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECTINFO", _IOC_WRITE, 0x5511, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL", _IOC_READ|_IOC_WRITE, 0x5500, 0x18 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL32", _IOC_READ|_IOC_WRITE, 0x5500, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCARDURB", _IOC_NONE, 0x550b, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT", _IOC_NONE, 0x5516, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT_CLAIM", _IOC_READ, 0x551b, 0x108 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL", _IOC_READ, 0x550e, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL32", _IOC_READ, 0x550e, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_FREE_STREAMS", _IOC_READ, 0x551d, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GETDRIVER", _IOC_WRITE, 0x5508, 0x104 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GET_CAPABILITIES", _IOC_READ, 0x551a, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_HUB_PORTINFO", _IOC_READ, 0x5513, 0x80 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL", _IOC_READ|_IOC_WRITE, 0x5512, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL32", _IOC_READ|_IOC_WRITE, 0x5512, 0x0c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB", _IOC_WRITE, 0x550c, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB32", _IOC_WRITE, 0x550c, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY", _IOC_WRITE, 0x550d, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY32", _IOC_WRITE, 0x550d, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASEINTERFACE", _IOC_READ, 0x5510, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASE_PORT", _IOC_READ, 0x5519, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESET", _IOC_NONE, 0x5514, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESETEP", _IOC_READ, 0x5503, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETCONFIGURATION", _IOC_READ, 0x5505, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETINTERFACE", _IOC_READ, 0x5504, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB", _IOC_READ, 0x550a, 0x38 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB32", _IOC_READ, 0x550a, 0x2a },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_MAP", _IOC_READ|_IOC_WRITE, 0x7520, 0x60 },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_QUERY", _IOC_READ|_IOC_WRITE, 0x7521, 0x10 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x564b, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_SIZE", _IOC_READ|_IOC_WRITE, 0x564a, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_MBUS_CODE", _IOC_READ|_IOC_WRITE, 0x5602, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x28 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5615, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x563d, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_CROP", _IOC_READ|_IOC_WRITE, 0x563c, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x28 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5616, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x563e, 0x40 },
+{ "linux/vfio.h", "VFIO_CHECK_EXTENSION", _IOC_NONE, 0x3b65, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_INFO", _IOC_NONE, 0x3b6b, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_IRQ_INFO", _IOC_NONE, 0x3b6d, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_PCI_HOT_RESET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_REGION_INFO", _IOC_NONE, 0x3b6c, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_PCI_HOT_RESET", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_RESET", _IOC_NONE, 0x3b6f, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_SET_IRQS", _IOC_NONE, 0x3b6e, 0x00 },
+{ "linux/vfio.h", "VFIO_EEH_PE_OP", _IOC_NONE, 0x3b79, 0x00 },
+{ "linux/vfio.h", "VFIO_GET_API_VERSION", _IOC_NONE, 0x3b64, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_DEVICE_FD", _IOC_NONE, 0x3b6a, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_STATUS", _IOC_NONE, 0x3b67, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_SET_CONTAINER", _IOC_NONE, 0x3b68, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_UNSET_CONTAINER", _IOC_NONE, 0x3b69, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_DISABLE", _IOC_NONE, 0x3b74, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_ENABLE", _IOC_NONE, 0x3b73, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_MAP_DMA", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_SPAPR_TCE_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_UNMAP_DMA", _IOC_NONE, 0x3b72, 0x00 },
+{ "linux/vfio.h", "VFIO_SET_IOMMU", _IOC_NONE, 0x3b66, 0x00 },
+{ "linux/vhost.h", "VHOST_GET_FEATURES", _IOC_READ, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_GET_VRING_BASE", _IOC_READ|_IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_NET_SET_BACKEND", _IOC_WRITE, 0xaf30, 0x08 },
+{ "linux/vhost.h", "VHOST_RESET_OWNER", _IOC_NONE, 0xaf02, 0x00 },
+{ "linux/vhost.h", "VHOST_SCSI_CLEAR_ENDPOINT", _IOC_WRITE, 0xaf41, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_ABI_VERSION", _IOC_WRITE, 0xaf42, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_EVENTS_MISSED", _IOC_WRITE, 0xaf44, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_ENDPOINT", _IOC_WRITE, 0xaf40, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_EVENTS_MISSED", _IOC_WRITE, 0xaf43, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_FEATURES", _IOC_WRITE, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_BASE", _IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_FD", _IOC_WRITE, 0xaf07, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_MEM_TABLE", _IOC_WRITE, 0xaf03, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_OWNER", _IOC_NONE, 0xaf01, 0x00 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ADDR", _IOC_WRITE, 0xaf11, 0x28 },
+{ "linux/vhost.h", "VHOST_SET_VRING_BASE", _IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_CALL", _IOC_WRITE, 0xaf21, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ERR", _IOC_WRITE, 0xaf22, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_KICK", _IOC_WRITE, 0xaf20, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_NUM", _IOC_WRITE, 0xaf10, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_CREATE_BUFS", _IOC_READ|_IOC_WRITE, 0x565c, 0x100 },
+{ "linux/videodev2.h", "VIDIOC_CROPCAP", _IOC_READ|_IOC_WRITE, 0x563a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_CHIP_INFO", _IOC_READ|_IOC_WRITE, 0x5666, 0xc8 },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_REGISTER", _IOC_READ|_IOC_WRITE, 0x5650, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DBG_S_REGISTER", _IOC_WRITE, 0x564f, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5660, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_DQBUF", _IOC_READ|_IOC_WRITE, 0x5611, 0x58 },
+{ "linux/videodev2.h", "VIDIOC_DQEVENT", _IOC_READ, 0x5659, 0x88 },
+{ "linux/videodev2.h", "VIDIOC_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/videodev2.h", "VIDIOC_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564d, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDIO", _IOC_READ|_IOC_WRITE, 0x5641, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDOUT", _IOC_READ|_IOC_WRITE, 0x5642, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMINPUT", _IOC_READ|_IOC_WRITE, 0x561a, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_ENUMOUTPUT", _IOC_READ|_IOC_WRITE, 0x5630, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_ENUMSTD", _IOC_READ|_IOC_WRITE, 0x5619, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FMT", _IOC_READ|_IOC_WRITE, 0x5602, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMEINTERVALS", _IOC_READ|_IOC_WRITE, 0x564b, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMESIZES", _IOC_READ|_IOC_WRITE, 0x564a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FREQ_BANDS", _IOC_READ|_IOC_WRITE, 0x5665, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_EXPBUF", _IOC_READ|_IOC_WRITE, 0x5610, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDIO", _IOC_READ, 0x5621, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDOUT", _IOC_READ, 0x5631, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_G_CTRL", _IOC_READ|_IOC_WRITE, 0x561b, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_G_ENC_INDEX", _IOC_READ, 0x564c, 0x818 },
+{ "linux/videodev2.h", "VIDIOC_G_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5647, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_G_FBUF", _IOC_READ, 0x560a, 0x30 },
+{ "linux/videodev2.h", "VIDIOC_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0xd0 },
+{ "linux/videodev2.h", "VIDIOC_G_FREQUENCY", _IOC_READ|_IOC_WRITE, 0x5638, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_G_INPUT", _IOC_READ, 0x5626, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_JPEGCOMP", _IOC_READ, 0x563d, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_G_MODULATOR", _IOC_READ|_IOC_WRITE, 0x5636, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_G_OUTPUT", _IOC_READ, 0x562e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_PARM", _IOC_READ|_IOC_WRITE, 0x5615, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_G_PRIORITY", _IOC_READ, 0x5643, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x565e, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_SLICED_VBI_CAP", _IOC_READ|_IOC_WRITE, 0x5645, 0x74 },
+{ "linux/videodev2.h", "VIDIOC_G_STD", _IOC_READ, 0x5617, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_TUNER", _IOC_READ|_IOC_WRITE, 0x561d, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_LOG_STATUS", _IOC_NONE, 0x5646, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_OVERLAY", _IOC_WRITE, 0x560e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_PREPARE_BUF", _IOC_READ|_IOC_WRITE, 0x565d, 0x58 },
+{ "linux/videodev2.h", "VIDIOC_QBUF", _IOC_READ|_IOC_WRITE, 0x560f, 0x58 },
+{ "linux/videodev2.h", "VIDIOC_QUERYBUF", _IOC_READ|_IOC_WRITE, 0x5609, 0x58 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCAP", _IOC_READ, 0x5600, 0x68 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCTRL", _IOC_READ|_IOC_WRITE, 0x5624, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QUERYMENU", _IOC_READ|_IOC_WRITE, 0x5625, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_QUERYSTD", _IOC_READ, 0x563f, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_EXT_CTRL", _IOC_READ|_IOC_WRITE, 0x5667, 0xe8 },
+{ "linux/videodev2.h", "VIDIOC_REQBUFS", _IOC_READ|_IOC_WRITE, 0x5608, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_RESERVED", _IOC_NONE, 0x5601, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_STREAMOFF", _IOC_WRITE, 0x5613, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_STREAMON", _IOC_WRITE, 0x5612, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_SUBSCRIBE_EVENT", _IOC_WRITE, 0x565a, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDIO", _IOC_WRITE, 0x5622, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDOUT", _IOC_WRITE, 0x5632, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_CROP", _IOC_WRITE, 0x563c, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_S_CTRL", _IOC_READ|_IOC_WRITE, 0x561c, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_S_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5648, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_S_FBUF", _IOC_WRITE, 0x560b, 0x30 },
+{ "linux/videodev2.h", "VIDIOC_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0xd0 },
+{ "linux/videodev2.h", "VIDIOC_S_FREQUENCY", _IOC_WRITE, 0x5639, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_S_HW_FREQ_SEEK", _IOC_WRITE, 0x5652, 0x30 },
+{ "linux/videodev2.h", "VIDIOC_S_INPUT", _IOC_READ|_IOC_WRITE, 0x5627, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_JPEGCOMP", _IOC_WRITE, 0x563e, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_S_MODULATOR", _IOC_WRITE, 0x5637, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_S_OUTPUT", _IOC_READ|_IOC_WRITE, 0x562f, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_PARM", _IOC_READ|_IOC_WRITE, 0x5616, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_S_PRIORITY", _IOC_WRITE, 0x5644, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x565f, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_S_STD", _IOC_WRITE, 0x5618, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_TUNER", _IOC_WRITE, 0x561e, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_TRY_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5661, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_TRY_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564e, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_TRY_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5649, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_TRY_FMT", _IOC_READ|_IOC_WRITE, 0x5640, 0xd0 },
+{ "linux/videodev2.h", "VIDIOC_UNSUBSCRIBE_EVENT", _IOC_WRITE, 0x565b, 0x20 },
+{ "linux/vm_sockets.h", "IOCTL_VM_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_ADD_NOTIFICATION", _IOC_NONE, 0x07af, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_GET_CPT_STATE", _IOC_NONE, 0x07b1, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_REMOVE_NOTIFICATION", _IOC_NONE, 0x07b0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_SET_CPT_STATE", _IOC_NONE, 0x07b2, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_RECEIVE", _IOC_NONE, 0x07ac, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_SEND", _IOC_NONE, 0x07ab, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_GET_CONTEXT_ID", _IOC_NONE, 0x07b3, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_INIT_CONTEXT", _IOC_NONE, 0x07a0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFICATIONS_RECEIVE", _IOC_NONE, 0x07a6, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFY_RESOURCE", _IOC_NONE, 0x07a5, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_ALLOC", _IOC_NONE, 0x07a8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_DETACH", _IOC_NONE, 0x07aa, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETPAGEFILE", _IOC_NONE, 0x07a9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETVA", _IOC_NONE, 0x07a4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SET_NOTIFY", _IOC_NONE, 0x07cb, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_AF_VALUE", _IOC_NONE, 0x07b8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_VERSION", _IOC_NONE, 0x07b4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION", _IOC_NONE, 0x079f, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION2", _IOC_NONE, 0x07a7, 0x00 },
+{ "linux/vsp1.h", "VIDIOC_VSP1_LUT_CONFIG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x400 },
+{ "linux/vt.h", "VT_ACTIVATE", 0, 0x5606, 0 },
+{ "linux/vt.h", "VT_DISALLOCATE", 0, 0x5608, 0 },
+{ "linux/vt.h", "VT_GETHIFONTMASK", 0, 0x560D, 0 },
+{ "linux/vt.h", "VT_GETMODE", 0, 0x5601, 0 },
+{ "linux/vt.h", "VT_GETSTATE", 0, 0x5603, 0 },
+{ "linux/vt.h", "VT_LOCKSWITCH", 0, 0x560B, 0 },
+{ "linux/vt.h", "VT_OPENQRY", 0, 0x5600, 0 },
+{ "linux/vt.h", "VT_RELDISP", 0, 0x5605, 0 },
+{ "linux/vt.h", "VT_RESIZE", 0, 0x5609, 0 },
+{ "linux/vt.h", "VT_RESIZEX", 0, 0x560A, 0 },
+{ "linux/vt.h", "VT_SENDSIG", 0, 0x5604, 0 },
+{ "linux/vt.h", "VT_SETACTIVATE", 0, 0x560F, 0 },
+{ "linux/vt.h", "VT_SETMODE", 0, 0x5602, 0 },
+{ "linux/vt.h", "VT_UNLOCKSWITCH", 0, 0x560C, 0 },
+{ "linux/vt.h", "VT_WAITACTIVE", 0, 0x5607, 0 },
+{ "linux/vt.h", "VT_WAITEVENT", 0, 0x560E, 0 },
+{ "linux/watchdog.h", "WDIOC_GETBOOTSTATUS", _IOC_READ, 0x5702, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETPRETIMEOUT", _IOC_READ, 0x5709, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSTATUS", _IOC_READ, 0x5701, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSUPPORT", _IOC_READ, 0x5700, 0x28 },
+{ "linux/watchdog.h", "WDIOC_GETTEMP", _IOC_READ, 0x5703, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMELEFT", _IOC_READ, 0x570a, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMEOUT", _IOC_READ, 0x5707, 0x04 },
+{ "linux/watchdog.h", "WDIOC_KEEPALIVE", _IOC_READ, 0x5705, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETOPTIONS", _IOC_READ, 0x5704, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETPRETIMEOUT", _IOC_READ|_IOC_WRITE, 0x5708, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x5706, 0x04 },
+{ "linux/wireless.h", "SIOCGIWAP", 0, 0x8B15, 0 },
+{ "linux/wireless.h", "SIOCGIWAPLIST", 0, 0x8B17, 0 },
+{ "linux/wireless.h", "SIOCGIWAUTH", 0, 0x8B33, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODE", 0, 0x8B2B, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODEEXT", 0, 0x8B35, 0 },
+{ "linux/wireless.h", "SIOCGIWESSID", 0, 0x8B1B, 0 },
+{ "linux/wireless.h", "SIOCGIWFRAG", 0, 0x8B25, 0 },
+{ "linux/wireless.h", "SIOCGIWFREQ", 0, 0x8B05, 0 },
+{ "linux/wireless.h", "SIOCGIWGENIE", 0, 0x8B31, 0 },
+{ "linux/wireless.h", "SIOCGIWMODE", 0, 0x8B07, 0 },
+{ "linux/wireless.h", "SIOCGIWNAME", 0, 0x8B01, 0 },
+{ "linux/wireless.h", "SIOCGIWNICKN", 0, 0x8B1D, 0 },
+{ "linux/wireless.h", "SIOCGIWNWID", 0, 0x8B03, 0 },
+{ "linux/wireless.h", "SIOCGIWPOWER", 0, 0x8B2D, 0 },
+{ "linux/wireless.h", "SIOCGIWPRIV", 0, 0x8B0D, 0 },
+{ "linux/wireless.h", "SIOCGIWRANGE", 0, 0x8B0B, 0 },
+{ "linux/wireless.h", "SIOCGIWRATE", 0, 0x8B21, 0 },
+{ "linux/wireless.h", "SIOCGIWRETRY", 0, 0x8B29, 0 },
+{ "linux/wireless.h", "SIOCGIWRTS", 0, 0x8B23, 0 },
+{ "linux/wireless.h", "SIOCGIWSCAN", 0, 0x8B19, 0 },
+{ "linux/wireless.h", "SIOCGIWSENS", 0, 0x8B09, 0 },
+{ "linux/wireless.h", "SIOCGIWSPY", 0, 0x8B11, 0 },
+{ "linux/wireless.h", "SIOCGIWSTATS", 0, 0x8B0F, 0 },
+{ "linux/wireless.h", "SIOCGIWTHRSPY", 0, 0x8B13, 0 },
+{ "linux/wireless.h", "SIOCGIWTXPOW", 0, 0x8B27, 0 },
+{ "linux/wireless.h", "SIOCIWFIRST", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCIWFIRSTPRIV", 0, 0x8BE0, 0 },
+{ "linux/wireless.h", "SIOCIWLASTPRIV", 0, 0x8BFF, 0 },
+{ "linux/wireless.h", "SIOCSIWAP", 0, 0x8B14, 0 },
+{ "linux/wireless.h", "SIOCSIWAUTH", 0, 0x8B32, 0 },
+{ "linux/wireless.h", "SIOCSIWCOMMIT", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODE", 0, 0x8B2A, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODEEXT", 0, 0x8B34, 0 },
+{ "linux/wireless.h", "SIOCSIWESSID", 0, 0x8B1A, 0 },
+{ "linux/wireless.h", "SIOCSIWFRAG", 0, 0x8B24, 0 },
+{ "linux/wireless.h", "SIOCSIWFREQ", 0, 0x8B04, 0 },
+{ "linux/wireless.h", "SIOCSIWGENIE", 0, 0x8B30, 0 },
+{ "linux/wireless.h", "SIOCSIWMLME", 0, 0x8B16, 0 },
+{ "linux/wireless.h", "SIOCSIWMODE", 0, 0x8B06, 0 },
+{ "linux/wireless.h", "SIOCSIWNICKN", 0, 0x8B1C, 0 },
+{ "linux/wireless.h", "SIOCSIWNWID", 0, 0x8B02, 0 },
+{ "linux/wireless.h", "SIOCSIWPMKSA", 0, 0x8B36, 0 },
+{ "linux/wireless.h", "SIOCSIWPOWER", 0, 0x8B2C, 0 },
+{ "linux/wireless.h", "SIOCSIWPRIV", 0, 0x8B0C, 0 },
+{ "linux/wireless.h", "SIOCSIWRANGE", 0, 0x8B0A, 0 },
+{ "linux/wireless.h", "SIOCSIWRATE", 0, 0x8B20, 0 },
+{ "linux/wireless.h", "SIOCSIWRETRY", 0, 0x8B28, 0 },
+{ "linux/wireless.h", "SIOCSIWRTS", 0, 0x8B22, 0 },
+{ "linux/wireless.h", "SIOCSIWSCAN", 0, 0x8B18, 0 },
+{ "linux/wireless.h", "SIOCSIWSENS", 0, 0x8B08, 0 },
+{ "linux/wireless.h", "SIOCSIWSPY", 0, 0x8B10, 0 },
+{ "linux/wireless.h", "SIOCSIWSTATS", 0, 0x8B0E, 0 },
+{ "linux/wireless.h", "SIOCSIWTHRSPY", 0, 0x8B12, 0 },
+{ "linux/wireless.h", "SIOCSIWTXPOW", 0, 0x8B26, 0 },
+{ "media/adv7842.h", "ADV7842_CMD_RAM_TEST", _IOC_NONE, 0x56c0, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_HIGH", _IOC_NONE, 0x6201, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_LOW", _IOC_NONE, 0x6200, 0x00 },
+{ "media/davinci/vpfe_capture.h", "VPFE_CMD_S_CCDC_RAW_PARAMS", _IOC_WRITE, 0x56c1, 0x08 },
+{ "media/exynos-fimc.h", "S5P_FIMC_TX_END_NOTIFY", _IOC_NONE, 0x6500, 0x00 },
+{ "media/lirc.h", "LIRC_GET_FEATURES", _IOC_READ, 0x6900, 0x04 },
+{ "media/lirc.h", "LIRC_GET_LENGTH", _IOC_READ, 0x690f, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_PULSE", _IOC_READ, 0x690b, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_SPACE", _IOC_READ, 0x690d, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_TIMEOUT", _IOC_READ, 0x6909, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_PULSE", _IOC_READ, 0x690a, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_SPACE", _IOC_READ, 0x690c, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_TIMEOUT", _IOC_READ, 0x6908, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_CARRIER", _IOC_READ, 0x6904, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_DUTY_CYCLE", _IOC_READ, 0x6906, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_MODE", _IOC_READ, 0x6902, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_RESOLUTION", _IOC_READ, 0x6907, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_CARRIER", _IOC_READ, 0x6903, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_DUTY_CYCLE", _IOC_READ, 0x6905, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_MODE", _IOC_READ, 0x6901, 0x04 },
+{ "media/lirc.h", "LIRC_NOTIFY_DECODE", _IOC_NONE, 0x6920, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_END", _IOC_NONE, 0x6922, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_START", _IOC_NONE, 0x6921, 0x00 },
+{ "media/lirc.h", "LIRC_SET_MEASURE_CARRIER_MODE", _IOC_WRITE, 0x691d, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER", _IOC_WRITE, 0x6914, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER_RANGE", _IOC_WRITE, 0x691f, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE", _IOC_WRITE, 0x6916, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE_RANGE", _IOC_WRITE, 0x691e, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER", _IOC_WRITE, 0x691c, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_PULSE", _IOC_WRITE, 0x691a, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_SPACE", _IOC_WRITE, 0x691b, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_MODE", _IOC_WRITE, 0x6912, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT", _IOC_WRITE, 0x6918, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT_REPORTS", _IOC_WRITE, 0x6919, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_CARRIER", _IOC_WRITE, 0x6913, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_DUTY_CYCLE", _IOC_WRITE, 0x6915, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_MODE", _IOC_WRITE, 0x6911, 0x04 },
+{ "media/lirc.h", "LIRC_SET_TRANSMITTER_MASK", _IOC_WRITE, 0x6917, 0x04 },
+{ "media/lirc.h", "LIRC_SET_WIDEBAND_RECEIVER", _IOC_WRITE, 0x6923, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_CLOSE", _IOC_WRITE, 0x5202, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_POLL", _IOC_READ, 0x5204, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_READ", _IOC_READ, 0x5203, 0x04 },
+{ "media/si4713.h", "SI4713_IOC_MEASURE_RNL", _IOC_READ|_IOC_WRITE, 0x56c0, 0x1c },
+{ "media/v4l2-common.h", "TUNER_SET_CONFIG", _IOC_WRITE, 0x645c, 0x10 },
+{ "media/v4l2-common.h", "VIDIOC_INT_RESET", _IOC_WRITE, 0x6466, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_RX_NOTIFY", _IOC_WRITE, 0x7600, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_TX_NOTIFY", _IOC_WRITE, 0x7601, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_GET_PROCESS_ELEMENT", _IOC_READ, 0xca01, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_START_WORK", _IOC_WRITE, 0xca00, 0x40 },
+{ "mtd/mtd-abi.h", "ECCGETLAYOUT", _IOC_READ, 0x4d11, 0x148 },
+{ "mtd/mtd-abi.h", "ECCGETSTATS", _IOC_READ, 0x4d12, 0x10 },
+{ "mtd/mtd-abi.h", "MEMERASE", _IOC_WRITE, 0x4d02, 0x08 },
+{ "mtd/mtd-abi.h", "MEMERASE64", _IOC_WRITE, 0x4d14, 0x10 },
+{ "mtd/mtd-abi.h", "MEMGETBADBLOCK", _IOC_WRITE, 0x4d0b, 0x08 },
+{ "mtd/mtd-abi.h", "MEMGETINFO", _IOC_READ, 0x4d01, 0x20 },
+{ "mtd/mtd-abi.h", "MEMGETOOBSEL", _IOC_READ, 0x4d0a, 0xc8 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONCOUNT", _IOC_READ, 0x4d07, 0x04 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONINFO", _IOC_READ|_IOC_WRITE, 0x4d08, 0x10 },
+{ "mtd/mtd-abi.h", "MEMISLOCKED", _IOC_READ, 0x4d17, 0x08 },
+{ "mtd/mtd-abi.h", "MEMLOCK", _IOC_WRITE, 0x4d05, 0x08 },
+{ "mtd/mtd-abi.h", "MEMREADOOB", _IOC_READ|_IOC_WRITE, 0x4d04, 0x10 },
+{ "mtd/mtd-abi.h", "MEMREADOOB64", _IOC_READ|_IOC_WRITE, 0x4d16, 0x18 },
+{ "mtd/mtd-abi.h", "MEMSETBADBLOCK", _IOC_WRITE, 0x4d0c, 0x08 },
+{ "mtd/mtd-abi.h", "MEMUNLOCK", _IOC_WRITE, 0x4d06, 0x08 },
+{ "mtd/mtd-abi.h", "MEMWRITE", _IOC_READ|_IOC_WRITE, 0x4d18, 0x30 },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB", _IOC_READ|_IOC_WRITE, 0x4d03, 0x10 },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB64", _IOC_READ|_IOC_WRITE, 0x4d15, 0x18 },
+{ "mtd/mtd-abi.h", "MTDFILEMODE", _IOC_NONE, 0x4d13, 0x00 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONCOUNT", _IOC_WRITE, 0x4d0e, 0x04 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONINFO", _IOC_WRITE, 0x4d0f, 0x0c },
+{ "mtd/mtd-abi.h", "OTPLOCK", _IOC_READ, 0x4d10, 0x0c },
+{ "mtd/mtd-abi.h", "OTPSELECT", _IOC_READ, 0x4d0d, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCATT", _IOC_WRITE, 0x6f40, 0x18 },
+{ "mtd/ubi-user.h", "UBI_IOCDET", _IOC_WRITE, 0x6f41, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBCH", _IOC_WRITE, 0x4f02, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBER", _IOC_WRITE, 0x4f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBISMAP", _IOC_READ, 0x4f05, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBMAP", _IOC_WRITE, 0x4f03, 0x08 },
+{ "mtd/ubi-user.h", "UBI_IOCEBUNMAP", _IOC_WRITE, 0x4f04, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCMKVOL", _IOC_WRITE, 0x6f00, 0x98 },
+{ "mtd/ubi-user.h", "UBI_IOCRMVOL", _IOC_WRITE, 0x6f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCRNVOL", _IOC_WRITE, 0x6f03, 0x1110 },
+{ "mtd/ubi-user.h", "UBI_IOCRSVOL", _IOC_WRITE, 0x6f02, 0x0c },
+{ "mtd/ubi-user.h", "UBI_IOCSETVOLPROP", _IOC_WRITE, 0x4f06, 0x10 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLCRBLK", _IOC_WRITE, 0x4f07, 0x80 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLRMBLK", _IOC_NONE, 0x4f08, 0x00 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLUP", _IOC_WRITE, 0x4f00, 0x08 },
+{ "net/bluetooth/hci_sock.h", "HCIBLOCKADDR", _IOC_WRITE, 0x48e6, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVDOWN", _IOC_WRITE, 0x48ca, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESET", _IOC_WRITE, 0x48cb, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESTAT", _IOC_WRITE, 0x48cc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVUP", _IOC_WRITE, 0x48c9, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETAUTHINFO", _IOC_READ, 0x48d7, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNINFO", _IOC_READ, 0x48d5, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNLIST", _IOC_READ, 0x48d4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVINFO", _IOC_READ, 0x48d3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVLIST", _IOC_READ, 0x48d2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIINQUIRY", _IOC_READ, 0x48f0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETACLMTU", _IOC_WRITE, 0x48e3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETAUTH", _IOC_WRITE, 0x48de, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETENCRYPT", _IOC_WRITE, 0x48df, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKMODE", _IOC_WRITE, 0x48e2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKPOL", _IOC_WRITE, 0x48e1, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETPTYPE", _IOC_WRITE, 0x48e0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETRAW", _IOC_WRITE, 0x48dc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCAN", _IOC_WRITE, 0x48dd, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCOMTU", _IOC_WRITE, 0x48e4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIUNBLOCKADDR", _IOC_WRITE, 0x48e7, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMCREATEDEV", _IOC_WRITE, 0x52c8, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVINFO", _IOC_READ, 0x52d3, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVLIST", _IOC_READ, 0x52d2, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMRELEASEDEV", _IOC_WRITE, 0x52c9, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMSTEALDLC", _IOC_WRITE, 0x52dc, 0x04 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_ENABLE_PKEY", _IOC_NONE, 0x1b03, 0x00 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT", _IOC_READ|_IOC_WRITE, 0x1b01, 0x1c },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT2", _IOC_READ|_IOC_WRITE, 0x1b04, 0x28 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_UNREGISTER_AGENT", _IOC_WRITE, 0x1b02, 0x04 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_BUS_NUMBER", 0, 0x5386, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_IDLUN", 0, 0x5382, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_PCI", 0, 0x5387, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_PROBE_HOST", 0, 0x5385, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORLOCK", 0, 0x5380, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORUNLOCK", 0, 0x5381, 0 },
+{ "scsi/sg.h", "SG_EMULATED_HOST", 0, 0x2203, 0 },
+{ "scsi/sg.h", "SG_GET_ACCESS_COUNT", 0, 0x2289, 0 },
+{ "scsi/sg.h", "SG_GET_COMMAND_Q", 0, 0x2270, 0 },
+{ "scsi/sg.h", "SG_GET_KEEP_ORPHAN", 0, 0x2288, 0 },
+{ "scsi/sg.h", "SG_GET_LOW_DMA", 0, 0x227a, 0 },
+{ "scsi/sg.h", "SG_GET_NUM_WAITING", 0, 0x227d, 0 },
+{ "scsi/sg.h", "SG_GET_PACK_ID", 0, 0x227c, 0 },
+{ "scsi/sg.h", "SG_GET_REQUEST_TABLE", 0, 0x2286, 0 },
+{ "scsi/sg.h", "SG_GET_RESERVED_SIZE", 0, 0x2272, 0 },
+{ "scsi/sg.h", "SG_GET_SCSI_ID", 0, 0x2276, 0 },
+{ "scsi/sg.h", "SG_GET_SG_TABLESIZE", 0, 0x227F, 0 },
+{ "scsi/sg.h", "SG_GET_TIMEOUT", 0, 0x2202, 0 },
+{ "scsi/sg.h", "SG_GET_TRANSFORM", 0, 0x2205, 0 },
+{ "scsi/sg.h", "SG_GET_VERSION_NUM", 0, 0x2282, 0 },
+{ "scsi/sg.h", "SG_IO", 0, 0x2285, 0 },
+{ "scsi/sg.h", "SG_NEXT_CMD_LEN", 0, 0x2283, 0 },
+{ "scsi/sg.h", "SG_SCSI_RESET", 0, 0x2284, 0 },
+{ "scsi/sg.h", "SG_SET_COMMAND_Q", 0, 0x2271, 0 },
+{ "scsi/sg.h", "SG_SET_DEBUG", 0, 0x227e, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_LOW_DMA", 0, 0x2279, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_PACK_ID", 0, 0x227b, 0 },
+{ "scsi/sg.h", "SG_SET_KEEP_ORPHAN", 0, 0x2287, 0 },
+{ "scsi/sg.h", "SG_SET_RESERVED_SIZE", 0, 0x2275, 0 },
+{ "scsi/sg.h", "SG_SET_TIMEOUT", 0, 0x2201, 0 },
+{ "scsi/sg.h", "SG_SET_TRANSFORM", 0, 0x2204, 0 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CLIENT_ID", _IOC_READ, 0x5301, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_PORT", _IOC_READ|_IOC_WRITE, 0x5320, 0xa8 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x5332, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_PORT", _IOC_WRITE, 0x5321, 0xa8 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_QUEUE", _IOC_WRITE, 0x5333, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_INFO", _IOC_READ|_IOC_WRITE, 0x5310, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_POOL", _IOC_READ|_IOC_WRITE, 0x534b, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_NAMED_QUEUE", _IOC_READ|_IOC_WRITE, 0x5336, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_PORT_INFO", _IOC_READ|_IOC_WRITE, 0x5322, 0xa8 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_CLIENT", _IOC_READ|_IOC_WRITE, 0x5349, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5334, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_OWNER", _IOC_READ|_IOC_WRITE, 0x5343, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS", _IOC_READ|_IOC_WRITE, 0x5340, 0x5c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TEMPO", _IOC_READ|_IOC_WRITE, 0x5341, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TIMER", _IOC_READ|_IOC_WRITE, 0x5345, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_SUBSCRIPTION", _IOC_READ|_IOC_WRITE, 0x5350, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_PVERSION", _IOC_READ, 0x5300, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT", _IOC_READ|_IOC_WRITE, 0x5351, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_PORT", _IOC_READ|_IOC_WRITE, 0x5352, 0xa8 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_SUBS", _IOC_READ|_IOC_WRITE, 0x534f, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_REMOVE_EVENTS", _IOC_WRITE, 0x534e, 0x40 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_RUNNING_MODE", _IOC_READ|_IOC_WRITE, 0x5303, 0x10 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_INFO", _IOC_WRITE, 0x5311, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_POOL", _IOC_WRITE, 0x534c, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_PORT_INFO", _IOC_WRITE, 0x5323, 0xa8 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_CLIENT", _IOC_WRITE, 0x534a, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5335, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_OWNER", _IOC_WRITE, 0x5344, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TEMPO", _IOC_WRITE, 0x5342, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TIMER", _IOC_WRITE, 0x5346, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SUBSCRIBE_PORT", _IOC_WRITE, 0x5330, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SYSTEM_INFO", _IOC_READ|_IOC_WRITE, 0x5302, 0x30 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_UNSUBSCRIBE_PORT", _IOC_WRITE, 0x5331, 0x50 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_CARD_INFO", _IOC_READ, 0x5501, 0x178 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_ADD", _IOC_READ|_IOC_WRITE, 0x5517, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_INFO", _IOC_READ|_IOC_WRITE, 0x5511, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LIST", _IOC_READ|_IOC_WRITE, 0x5510, 0x50 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LOCK", _IOC_WRITE, 0x5514, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_READ", _IOC_READ|_IOC_WRITE, 0x5512, 0x4c8 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REMOVE", _IOC_READ|_IOC_WRITE, 0x5519, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REPLACE", _IOC_READ|_IOC_WRITE, 0x5518, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_UNLOCK", _IOC_WRITE, 0x5515, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_WRITE", _IOC_READ|_IOC_WRITE, 0x5513, 0x4c8 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_INFO", _IOC_READ, 0x5521, 0xdc },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5520, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_INFO", _IOC_READ|_IOC_WRITE, 0x5531, 0x120 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE", _IOC_READ, 0x5530, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE", _IOC_WRITE, 0x5532, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER", _IOC_READ|_IOC_WRITE, 0x55d0, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER_STATE", _IOC_READ, 0x55d1, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PVERSION", _IOC_READ, 0x5500, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_INFO", _IOC_READ|_IOC_WRITE, 0x5541, 0x10c },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5540, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE", _IOC_WRITE, 0x5542, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS", _IOC_READ|_IOC_WRITE, 0x5516, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_COMMAND", _IOC_READ|_IOC_WRITE, 0x551c, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_READ", _IOC_READ|_IOC_WRITE, 0x551a, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_WRITE", _IOC_READ|_IOC_WRITE, 0x551b, 0x08 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_LOAD", _IOC_WRITE, 0x4803, 0x60 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_STATUS", _IOC_READ, 0x4802, 0x40 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_INFO", _IOC_READ, 0x4801, 0xdc },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_PVERSION", _IOC_READ, 0x4800, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_CHANNEL_INFO", _IOC_READ, 0x4132, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DELAY", _IOC_READ, 0x4121, 0x08 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DRAIN", _IOC_NONE, 0x4144, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DROP", _IOC_NONE, 0x4143, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_FORWARD", _IOC_WRITE, 0x4149, 0x08 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HWSYNC", _IOC_NONE, 0x4122, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_FREE", _IOC_NONE, 0x4112, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4111, 0x260 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_REFINE", _IOC_READ|_IOC_WRITE, 0x4110, 0x260 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_INFO", _IOC_READ, 0x4101, 0x120 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_LINK", _IOC_WRITE, 0x4160, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PAUSE", _IOC_WRITE, 0x4145, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PREPARE", _IOC_NONE, 0x4140, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PVERSION", _IOC_READ, 0x4100, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READI_FRAMES", _IOC_READ, 0x4151, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READN_FRAMES", _IOC_READ, 0x4153, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESET", _IOC_NONE, 0x4141, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESUME", _IOC_NONE, 0x4147, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_REWIND", _IOC_WRITE, 0x4146, 0x08 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_START", _IOC_NONE, 0x4142, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_STATUS", _IOC_READ, 0x4120, 0x98 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4113, 0x88 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SYNC_PTR", _IOC_READ|_IOC_WRITE, 0x4123, 0x88 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TSTAMP", _IOC_WRITE, 0x4102, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TTSTAMP", _IOC_WRITE, 0x4103, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_UNLINK", _IOC_NONE, 0x4161, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEI_FRAMES", _IOC_WRITE, 0x4150, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEN_FRAMES", _IOC_WRITE, 0x4152, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_XRUN", _IOC_NONE, 0x4148, 0x00 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DRAIN", _IOC_WRITE, 0x5731, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DROP", _IOC_WRITE, 0x5730, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_INFO", _IOC_READ, 0x5701, 0x10c },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PARAMS", _IOC_READ|_IOC_WRITE, 0x5710, 0x30 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PVERSION", _IOC_READ, 0x5700, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_STATUS", _IOC_READ|_IOC_WRITE, 0x5720, 0x38 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_CONTINUE", _IOC_NONE, 0x54a2, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GINFO", _IOC_READ|_IOC_WRITE, 0x5403, 0xf8 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GPARAMS", _IOC_WRITE, 0x5404, 0x48 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GSTATUS", _IOC_READ|_IOC_WRITE, 0x5405, 0x50 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_INFO", _IOC_READ, 0x5411, 0xe8 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5401, 0x14 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PARAMS", _IOC_WRITE, 0x5412, 0x50 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PAUSE", _IOC_NONE, 0x54a3, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PVERSION", _IOC_READ, 0x5400, 0x04 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_SELECT", _IOC_WRITE, 0x5410, 0x34 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_START", _IOC_NONE, 0x54a0, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STATUS", _IOC_READ, 0x5414, 0x60 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STOP", _IOC_NONE, 0x54a1, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_TREAD", _IOC_WRITE, 0x5402, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_CLEAR_PATCHES", _IOC_NONE, 0x4840, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_INFO", _IOC_READ, 0x4820, 0x02 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_PLAY_NOTE", _IOC_WRITE, 0x4822, 0x0c },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_RESET", _IOC_NONE, 0x4821, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_CONNECTION", _IOC_WRITE, 0x4826, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_MODE", _IOC_WRITE, 0x4825, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_PARAMS", _IOC_WRITE, 0x4824, 0x09 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_VOICE", _IOC_WRITE, 0x4823, 0x12 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_AVAIL", _IOC_READ, 0x4321, 0x1c },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_DRAIN", _IOC_NONE, 0x4334, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CAPS", _IOC_READ|_IOC_WRITE, 0x4310, 0xc4 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CODEC_CAPS", _IOC_READ|_IOC_WRITE, 0x4311, 0x2b88 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_METADATA", _IOC_READ|_IOC_WRITE, 0x4315, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_PARAMS", _IOC_READ, 0x4313, 0x78 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_IOCTL_VERSION", _IOC_READ, 0x4300, 0x04 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_NEXT_TRACK", _IOC_NONE, 0x4335, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PARTIAL_DRAIN", _IOC_NONE, 0x4336, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PAUSE", _IOC_NONE, 0x4330, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_RESUME", _IOC_NONE, 0x4331, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_METADATA", _IOC_WRITE, 0x4314, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_PARAMS", _IOC_WRITE, 0x4312, 0x84 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_START", _IOC_NONE, 0x4332, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_STOP", _IOC_NONE, 0x4333, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_TSTAMP", _IOC_READ, 0x4320, 0x14 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_PEEK", _IOC_READ|_IOC_WRITE, 0x4812, 0x1b0 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_POKE", _IOC_WRITE, 0x4811, 0x1b0 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CONTINUE", _IOC_NONE, 0x4881, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_DBG_READ", _IOC_READ, 0x4884, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_INFO", _IOC_READ, 0x4810, 0x80c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_PEEK", _IOC_READ|_IOC_WRITE, 0x4831, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_POKE", _IOC_WRITE, 0x4830, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PVERSION", _IOC_READ, 0x4840, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_SINGLE_STEP", _IOC_WRITE, 0x4883, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_STOP", _IOC_NONE, 0x4880, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_PEEK", _IOC_READ|_IOC_WRITE, 0x4822, 0x10 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_POKE", _IOC_WRITE, 0x4821, 0x10 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_SETUP", _IOC_WRITE, 0x4820, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_ZERO_TRAM_COUNTER", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_GET_INFO", _IOC_READ, 0x48f8, 0x20 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_LOCK", _IOC_NONE, 0x48f9, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_UNLOCK", _IOC_NONE, 0x48fa, 0x00 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_GET_WCAP", _IOC_READ|_IOC_WRITE, 0x4812, 0x08 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_PVERSION", _IOC_READ, 0x4810, 0x04 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_VERB_WRITE", _IOC_READ|_IOC_WRITE, 0x4811, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_9632_AEB", _IOC_READ, 0x4845, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_CONFIG_INFO", _IOC_READ, 0x4841, 0x24 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x1000 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4840, 0x3b0 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_VERSION", _IOC_READ, 0x4843, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE", _IOC_WRITE, 0x4842, 0x08 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_CONFIG", _IOC_READ, 0x4841, 0x18 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_LTC", _IOC_READ, 0x4846, 0x10 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x08 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4842, 0x908 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_STATUS", _IOC_READ, 0x4847, 0x20 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_VERSION", _IOC_READ, 0x4848, 0x24 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_INFO", _IOC_READ, 0x4810, 0x28 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_LOAD_CODE", _IOC_WRITE, 0x4811, 0x3012 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_PAUSE", _IOC_NONE, 0x4815, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_RESTART", _IOC_NONE, 0x4816, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_START", _IOC_WRITE, 0x4813, 0x08 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_STOP", _IOC_NONE, 0x4814, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_UNLOAD_CODE", _IOC_NONE, 0x4812, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_LOAD_PATCH", _IOC_READ|_IOC_WRITE, 0x4881, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MEM_AVAIL", _IOC_WRITE, 0x4884, 0x04 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MISC_MODE", _IOC_READ|_IOC_WRITE, 0x4884, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_REMOVE_LAST_SAMPLES", _IOC_NONE, 0x4883, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_RESET_SAMPLES", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_VERSION", _IOC_READ, 0x4880, 0x04 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_SET_RTC", _IOC_WRITE, 0x6105, 0x10 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_WAIT", _IOC_NONE, 0x6101, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_NAME", _IOC_READ, 0x7702, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PIN_STATUS", _IOC_NONE, 0x7709, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PROT_MASK", _IOC_NONE, 0x7706, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_SIZE", _IOC_NONE, 0x7704, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_PIN", _IOC_WRITE, 0x7707, 0x08 },
+{ "staging/android/ashmem.h", "ASHMEM_PURGE_ALL_CACHES", _IOC_NONE, 0x770a, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_NAME", _IOC_WRITE, 0x7701, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_PROT_MASK", _IOC_WRITE, 0x7705, 0x08 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_SIZE", _IOC_WRITE, 0x7703, 0x08 },
+{ "staging/android/ashmem.h", "ASHMEM_UNPIN", _IOC_WRITE, 0x7708, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_ALLOC", _IOC_READ|_IOC_WRITE, 0x4900, 0x20 },
+{ "staging/android/ion.h", "ION_IOC_CUSTOM", _IOC_READ|_IOC_WRITE, 0x4906, 0x10 },
+{ "staging/android/ion.h", "ION_IOC_FREE", _IOC_READ|_IOC_WRITE, 0x4901, 0x04 },
+{ "staging/android/ion.h", "ION_IOC_IMPORT", _IOC_READ|_IOC_WRITE, 0x4905, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_MAP", _IOC_READ|_IOC_WRITE, 0x4902, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SHARE", _IOC_READ|_IOC_WRITE, 0x4904, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SYNC", _IOC_READ|_IOC_WRITE, 0x4907, 0x08 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_DMA_MAPPING", _IOC_WRITE, 0x49f1, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_KERNEL_MAPPING", _IOC_WRITE, 0x49f2, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_SET_FD", _IOC_NONE, 0x49f0, 0x00 },
+{ "staging/android/logger.h", "LOGGER_FLUSH_LOG", _IOC_NONE, 0xae04, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_BUF_SIZE", _IOC_NONE, 0xae01, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_LEN", _IOC_NONE, 0xae02, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_NEXT_ENTRY_LEN", _IOC_NONE, 0xae03, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_VERSION", _IOC_NONE, 0xae05, 0x00 },
+{ "staging/android/logger.h", "LOGGER_SET_VERSION", _IOC_NONE, 0xae06, 0x00 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_CREATE_FENCE", _IOC_READ|_IOC_WRITE, 0x5700, 0x28 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_INC", _IOC_WRITE, 0x5701, 0x04 },
+{ "staging/android/sync.h", "SYNC_IOC_FENCE_INFO", _IOC_READ|_IOC_WRITE, 0x3e02, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_MERGE", _IOC_READ|_IOC_WRITE, 0x3e01, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_WAIT", _IOC_WRITE, 0x3e00, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_BRIGHTNESS", _IOC_READ, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_COLOR", _IOC_READ, 0x4605, 0x04 },
+{ "video/da8xx-fb.h", "FBIOGET_CONTRAST", _IOC_READ, 0x4601, 0x04 },
+{ "video/da8xx-fb.h", "FBIOPUT_CONTRAST", _IOC_WRITE, 0x4602, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_BRIGHTNESS", _IOC_WRITE, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_COLOR", _IOC_WRITE, 0x4606, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_HSYNC", _IOC_WRITE, 0x4609, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_VSYNC", _IOC_WRITE, 0x460a, 0x04 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_CREATE", _IOC_NONE, 0x6b00, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_OFFSET", _IOC_NONE, 0x6b04, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_VIEWPORT_SET", _IOC_NONE, 0x6b01, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_SET_VIDEO_MODE", _IOC_NONE, 0x6b02, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_STRIDE", _IOC_NONE, 0x6b05, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_UVSTRIDE", _IOC_NONE, 0x6b03, 0x00 },
+{ "video/mbxfb.h", "MBXFB_IOCG_ALPHA", _IOC_READ, 0xf401, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_ALPHA", _IOC_WRITE, 0xf402, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_PLANEORDER", _IOC_READ, 0xf403, 0x02 },
+{ "video/mbxfb.h", "MBXFB_IOCS_REG", _IOC_WRITE, 0xf404, 0x0c },
+{ "video/mbxfb.h", "MBXFB_IOCX_OVERLAY", _IOC_READ|_IOC_WRITE, 0xf400, 0x30 },
+{ "video/mbxfb.h", "MBXFB_IOCX_REG", _IOC_READ|_IOC_WRITE, 0xf405, 0x0c },
+{ "video/sisfb.h", "SISFB_COMMAND", _IOC_READ|_IOC_WRITE, 0xf305, 0x54 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE", _IOC_READ, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE_OLD", _IOC_READ, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO", _IOC_READ, 0xf301, 0x11c },
+{ "video/sisfb.h", "SISFB_GET_INFO_OLD", _IOC_READ, 0x6ef8, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO_SIZE", _IOC_READ, 0xf300, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_TVPOSOFFSET", _IOC_READ, 0xf304, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS", _IOC_READ, 0xf302, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS_OLD", _IOC_READ, 0x6ef9, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE", _IOC_WRITE, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE_OLD", _IOC_WRITE, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_LOCK", _IOC_WRITE, 0xf306, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_TVPOSOFFSET", _IOC_WRITE, 0xf304, 0x04 },
+{ "video/sstfb.h", "SSTFB_GET_VGAPASS", _IOC_READ, 0x46dd, 0x04 },
+{ "video/sstfb.h", "SSTFB_SET_VGAPASS", _IOC_WRITE, 0x46dd, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_INTERDOMAIN", _IOC_NONE, 0x4501, 0x08 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_UNBOUND_PORT", _IOC_NONE, 0x4502, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_VIRQ", _IOC_NONE, 0x4500, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_NOTIFY", _IOC_NONE, 0x4504, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_RESET", _IOC_NONE, 0x4505, 0x00 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_UNBIND", _IOC_NONE, 0x4503, 0x04 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_EVTCHN", _IOC_NONE, 0x4200, 0x00 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_SETUP", _IOC_NONE, 0x4201, 0x00 },
diff --git a/linux/64/syscallent.h b/linux/64/syscallent.h
new file mode 100644
index 0000000..dda9be9
--- /dev/null
+++ b/linux/64/syscallent.h
@@ -0,0 +1,267 @@
+[ 0] = { 2, 0, sys_io_setup, "io_setup" },
+[ 1] = { 1, 0, sys_io_destroy, "io_destroy" },
+[ 2] = { 3, 0, sys_io_submit, "io_submit" },
+[ 3] = { 3, 0, sys_io_cancel, "io_cancel" },
+[ 4] = { 5, 0, sys_io_getevents, "io_getevents" },
+[ 5] = { 5, TF, sys_setxattr, "setxattr" },
+[ 6] = { 5, TF, sys_setxattr, "lsetxattr" },
+[ 7] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[ 8] = { 4, TF, sys_getxattr, "getxattr" },
+[ 9] = { 4, TF, sys_getxattr, "lgetxattr" },
+[ 10] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[ 11] = { 3, TF, sys_listxattr, "listxattr" },
+[ 12] = { 3, TF, sys_listxattr, "llistxattr" },
+[ 13] = { 3, TD, sys_flistxattr, "flistxattr" },
+[ 14] = { 2, TF, sys_removexattr, "removexattr" },
+[ 15] = { 2, TF, sys_removexattr, "lremovexattr" },
+[ 16] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[ 17] = { 2, TF, sys_getcwd, "getcwd" },
+[ 18] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[ 19] = { 2, TD, sys_eventfd2, "eventfd2" },
+[ 20] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[ 21] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[ 22] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[ 23] = { 1, TD, sys_dup, "dup" },
+[ 24] = { 3, TD, sys_dup3, "dup3" },
+[ 25] = { 3, TD, sys_fcntl, "fcntl" },
+[ 26] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[ 27] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[ 28] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[ 29] = { 3, TD, sys_ioctl, "ioctl" },
+[ 30] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[ 31] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[ 32] = { 2, TD, sys_flock, "flock" },
+[ 33] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[ 34] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[ 35] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[ 36] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[ 37] = { 5, TD|TF, sys_linkat, "linkat" },
+[ 38] = { 4, TD|TF, sys_renameat, "renameat" },
+[ 39] = { 2, TF, sys_umount2, "umount2" },
+[ 40] = { 5, TF, sys_mount, "mount" },
+[ 41] = { 2, TF, sys_pivotroot, "pivot_root" },
+[ 42] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[ 43] = { 2, TF, sys_statfs, "statfs" },
+[ 44] = { 2, TD, sys_fstatfs, "fstatfs" },
+[ 45] = { 2, TF, sys_truncate, "truncate" },
+[ 46] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 47] = { 4, TD, sys_fallocate, "fallocate" },
+[ 48] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[ 49] = { 1, TF, sys_chdir, "chdir" },
+[ 50] = { 1, TD, sys_fchdir, "fchdir" },
+[ 51] = { 1, TF, sys_chroot, "chroot" },
+[ 52] = { 2, TD, sys_fchmod, "fchmod" },
+[ 53] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[ 54] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[ 55] = { 3, TD, sys_fchown, "fchown" },
+[ 56] = { 4, TD|TF, sys_openat, "openat" },
+[ 57] = { 1, TD, sys_close, "close" },
+[ 58] = { 0, 0, sys_vhangup, "vhangup" },
+[ 59] = { 2, TD, sys_pipe2, "pipe2" },
+[ 60] = { 4, TF, sys_quotactl, "quotactl" },
+[ 61] = { 3, TD, sys_getdents64, "getdents64" },
+[ 62] = { 3, TD, sys_lseek, "lseek" },
+[ 63] = { 3, TD, sys_read, "read" },
+[ 64] = { 3, TD, sys_write, "write" },
+[ 65] = { 3, TD, sys_readv, "readv" },
+[ 66] = { 3, TD, sys_writev, "writev" },
+[ 67] = { 4, TD, sys_pread, "pread64" },
+[ 68] = { 4, TD, sys_pwrite, "pwrite64" },
+[ 69] = { 4, TD, sys_preadv, "preadv" },
+[ 70] = { 4, TD, sys_pwritev, "pwritev" },
+[ 71] = { 4, TD|TN, sys_sendfile64, "sendfile" },
+[ 72] = { 6, TD, sys_pselect6, "pselect6" },
+[ 73] = { 5, TD, sys_ppoll, "ppoll" },
+[ 74] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[ 75] = { 4, TD, sys_vmsplice, "vmsplice" },
+[ 76] = { 6, TD, sys_splice, "splice" },
+[ 77] = { 4, TD, sys_tee, "tee" },
+[ 78] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[ 79] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[ 80] = { 2, TD, sys_fstat, "fstat" },
+[ 81] = { 0, 0, sys_sync, "sync" },
+[ 82] = { 1, TD, sys_fsync, "fsync" },
+[ 83] = { 1, TD, sys_fdatasync, "fdatasync" },
+[ 84] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[ 85] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[ 86] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[ 87] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[ 88] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[ 89] = { 1, TF, sys_acct, "acct" },
+[ 90] = { 2, 0, sys_capget, "capget" },
+[ 91] = { 2, 0, sys_capset, "capset" },
+[ 92] = { 1, 0, sys_personality, "personality" },
+[ 93] = { 1, TP|SE, sys_exit, "exit" },
+[ 94] = { 1, TP|SE, sys_exit, "exit_group" },
+[ 95] = { 5, TP, sys_waitid, "waitid" },
+[ 96] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[ 97] = { 1, TP, sys_unshare, "unshare" },
+[ 98] = { 6, 0, sys_futex, "futex" },
+[ 99] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[100] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[101] = { 2, 0, sys_nanosleep, "nanosleep" },
+[102] = { 2, 0, sys_getitimer, "getitimer" },
+[103] = { 3, 0, sys_setitimer, "setitimer" },
+[104] = { 4, 0, sys_kexec_load, "kexec_load" },
+[105] = { 3, 0, sys_init_module, "init_module" },
+[106] = { 2, 0, sys_delete_module, "delete_module" },
+[107] = { 3, 0, sys_timer_create, "timer_create" },
+[108] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[109] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[110] = { 4, 0, sys_timer_settime, "timer_settime" },
+[111] = { 1, 0, sys_timer_delete, "timer_delete" },
+[112] = { 2, 0, sys_clock_settime, "clock_settime" },
+[113] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[114] = { 2, 0, sys_clock_getres, "clock_getres" },
+[115] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[116] = { 3, 0, sys_syslog, "syslog" },
+[117] = { 4, 0, sys_ptrace, "ptrace" },
+[118] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[119] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[120] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[121] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[122] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[123] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[124] = { 0, 0, sys_sched_yield, "sched_yield" },
+[125] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[126] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[127] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[128] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[129] = { 2, TS, sys_kill, "kill" },
+[130] = { 2, TS, sys_kill, "tkill" },
+[131] = { 3, TS, sys_tgkill, "tgkill" },
+[132] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[133] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[134] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[135] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[136] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[137] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[138] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[139] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[140] = { 3, 0, sys_setpriority, "setpriority" },
+[141] = { 2, 0, sys_getpriority, "getpriority" },
+[142] = { 4, 0, sys_reboot, "reboot" },
+[143] = { 2, 0, sys_setregid, "setregid" },
+[144] = { 1, 0, sys_setgid, "setgid" },
+[145] = { 2, 0, sys_setreuid, "setreuid" },
+[146] = { 1, 0, sys_setuid, "setuid" },
+[147] = { 3, 0, sys_setresuid, "setresuid" },
+[148] = { 3, 0, sys_getresuid, "getresuid" },
+[149] = { 3, 0, sys_setresgid, "setresgid" },
+[150] = { 3, 0, sys_getresgid, "getresgid" },
+[151] = { 1, NF, sys_setfsuid, "setfsuid" },
+[152] = { 1, NF, sys_setfsgid, "setfsgid" },
+[153] = { 1, 0, sys_times, "times" },
+[154] = { 2, 0, sys_setpgid, "setpgid" },
+[155] = { 1, 0, sys_getpgid, "getpgid" },
+[156] = { 1, 0, sys_getsid, "getsid" },
+[157] = { 0, 0, sys_setsid, "setsid" },
+[158] = { 2, 0, sys_getgroups, "getgroups" },
+[159] = { 2, 0, sys_setgroups, "setgroups" },
+[160] = { 1, 0, sys_uname, "uname" },
+[161] = { 2, 0, sys_sethostname, "sethostname" },
+[162] = { 2, 0, sys_setdomainname, "setdomainname" },
+[163] = { 2, 0, sys_getrlimit, "getrlimit" },
+[164] = { 2, 0, sys_setrlimit, "setrlimit" },
+[165] = { 2, 0, sys_getrusage, "getrusage" },
+[166] = { 1, 0, sys_umask, "umask" },
+[167] = { 5, 0, sys_prctl, "prctl" },
+[168] = { 3, 0, sys_getcpu, "getcpu" },
+[169] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[170] = { 2, 0, sys_settimeofday, "settimeofday" },
+[171] = { 1, 0, sys_adjtimex, "adjtimex" },
+[172] = { 0, 0, sys_getpid, "getpid" },
+[173] = { 0, 0, sys_getppid, "getppid" },
+[174] = { 0, NF, sys_getuid, "getuid" },
+[175] = { 0, NF, sys_geteuid, "geteuid" },
+[176] = { 0, NF, sys_getgid, "getgid" },
+[177] = { 0, NF, sys_getegid, "getegid" },
+[178] = { 0, 0, sys_gettid, "gettid" },
+[179] = { 1, 0, sys_sysinfo, "sysinfo" },
+[180] = { 4, 0, sys_mq_open, "mq_open" },
+[181] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[182] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[183] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[184] = { 2, 0, sys_mq_notify, "mq_notify" },
+[185] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[186] = { 2, TI, sys_msgget, "msgget" },
+[187] = { 3, TI, sys_msgctl, "msgctl" },
+[188] = { 5, TI, sys_msgrcv, "msgrcv" },
+[189] = { 4, TI, sys_msgsnd, "msgsnd" },
+[190] = { 3, TI, sys_semget, "semget" },
+[191] = { 4, TI, sys_semctl, "semctl" },
+[192] = { 4, TI, sys_semtimedop, "semtimedop" },
+[193] = { 3, TI, sys_semop, "semop" },
+[194] = { 3, TI, sys_shmget, "shmget" },
+[195] = { 3, TI, sys_shmctl, "shmctl" },
+[196] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[197] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[198] = { 3, TN, sys_socket, "socket" },
+[199] = { 4, TN, sys_socketpair, "socketpair" },
+[200] = { 3, TN, sys_bind, "bind" },
+[201] = { 2, TN, sys_listen, "listen" },
+[202] = { 3, TN, sys_accept, "accept" },
+[203] = { 3, TN, sys_connect, "connect" },
+[204] = { 3, TN, sys_getsockname, "getsockname" },
+[205] = { 3, TN, sys_getpeername, "getpeername" },
+[206] = { 6, TN, sys_sendto, "sendto" },
+[207] = { 6, TN, sys_recvfrom, "recvfrom" },
+[208] = { 5, TN, sys_setsockopt, "setsockopt" },
+[209] = { 5, TN, sys_getsockopt, "getsockopt" },
+[210] = { 2, TN, sys_shutdown, "shutdown" },
+[211] = { 3, TN, sys_sendmsg, "sendmsg" },
+[212] = { 3, TN, sys_recvmsg, "recvmsg" },
+[213] = { 3, TD, sys_readahead, "readahead" },
+[214] = { 1, TM|SI, sys_brk, "brk" },
+[215] = { 2, TM|SI, sys_munmap, "munmap" },
+[216] = { 5, TM|SI, sys_mremap, "mremap" },
+[217] = { 5, 0, sys_add_key, "add_key" },
+[218] = { 4, 0, sys_request_key, "request_key" },
+[219] = { 5, 0, sys_keyctl, "keyctl" },
+[220] = { 5, TP, sys_clone, "clone" },
+[221] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[222] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[223] = { 4, TD, sys_fadvise64, "fadvise64" },
+[224] = { 2, TF, sys_swapon, "swapon" },
+[225] = { 1, TF, sys_swapoff, "swapoff" },
+[226] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[227] = { 3, TM, sys_msync, "msync" },
+[228] = { 2, TM, sys_mlock, "mlock" },
+[229] = { 2, TM, sys_munlock, "munlock" },
+[230] = { 1, TM, sys_mlockall, "mlockall" },
+[231] = { 0, TM, sys_munlockall, "munlockall" },
+[232] = { 3, TM, sys_mincore, "mincore" },
+[233] = { 3, TM, sys_madvise, "madvise" },
+[234] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[235] = { 6, TM, sys_mbind, "mbind" },
+[236] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[237] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[238] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[239] = { 6, TM, sys_move_pages, "move_pages" },
+[240] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[241] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[242] = { 4, TN, sys_accept4, "accept4" },
+[243] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+/* [244 ... 259] are arch specific */
+[260] = { 4, TP, sys_wait4, "wait4" },
+[261] = { 4, 0, sys_prlimit64, "prlimit64" },
+[262] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[263] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[264] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[265] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[266] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[267] = { 1, TD, sys_syncfs, "syncfs" },
+[268] = { 2, TD, sys_setns, "setns" },
+[269] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[270] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[271] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[272] = { 5, 0, sys_kcmp, "kcmp" },
+[273] = { 3, TD, sys_finit_module, "finit_module" },
+[274] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[275] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[276] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[277] = { 3, 0, sys_seccomp, "seccomp", },
+[278] = { 3, 0, sys_getrandom, "getrandom", },
+[279] = { 2, TD, sys_memfd_create, "memfd_create", },
+[280] = { 3, TD, sys_bpf, "bpf", },
+[281] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/aarch64/arch_regs.h b/linux/aarch64/arch_regs.h
new file mode 100644
index 0000000..9a5e33e
--- /dev/null
+++ b/linux/aarch64/arch_regs.h
@@ -0,0 +1,2 @@
+extern uint64_t *const aarch64_sp_ptr;
+extern uint32_t *const arm_sp_ptr;
diff --git a/linux/aarch64/errnoent1.h b/linux/aarch64/errnoent1.h
index e1cbe33..babc7f2 100644
--- a/linux/aarch64/errnoent1.h
+++ b/linux/aarch64/errnoent1.h
@@ -1,2 +1,2 @@
/* Native AArch64 */
-#include "../errnoent.h"
+#include "errnoent.h"
diff --git a/linux/aarch64/ioctlent.h.in b/linux/aarch64/ioctlent.h.in
deleted file mode 100644
index 83e6eb2..0000000
--- a/linux/aarch64/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../arm/ioctlent.h.in"
diff --git a/linux/aarch64/ioctlent1.h b/linux/aarch64/ioctlent1.h
deleted file mode 100644
index 72eeaf1..0000000
--- a/linux/aarch64/ioctlent1.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "ioctlent.h"
diff --git a/linux/aarch64/ioctls_arch0.h b/linux/aarch64/ioctls_arch0.h
new file mode 100644
index 0000000..b722d22
--- /dev/null
+++ b/linux/aarch64/ioctls_arch0.h
@@ -0,0 +1 @@
+#include "arm/ioctls_arch0.h"
diff --git a/linux/aarch64/ioctls_arch1.h b/linux/aarch64/ioctls_arch1.h
new file mode 100644
index 0000000..6a674cc
--- /dev/null
+++ b/linux/aarch64/ioctls_arch1.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/arm64/include/ tree. */
diff --git a/linux/aarch64/ioctls_inc0.h b/linux/aarch64/ioctls_inc0.h
new file mode 100644
index 0000000..46c11b1
--- /dev/null
+++ b/linux/aarch64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "arm/ioctls_inc0.h"
diff --git a/linux/aarch64/ioctls_inc1.h b/linux/aarch64/ioctls_inc1.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/aarch64/ioctls_inc1.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/aarch64/signalent1.h b/linux/aarch64/signalent1.h
index d31e6a4..093cba7 100644
--- a/linux/aarch64/signalent1.h
+++ b/linux/aarch64/signalent1.h
@@ -1 +1 @@
-#include "../signalent.h"
+#include "signalent.h"
diff --git a/linux/aarch64/syscallent1.h b/linux/aarch64/syscallent1.h
index c7c1496..a72bb7b 100644
--- a/linux/aarch64/syscallent1.h
+++ b/linux/aarch64/syscallent1.h
@@ -1,335 +1,71 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount2" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 42 */
- { 2, TF, sys_statfs, "statfs64" }, /* 43 */
- { 2, TD, sys_fstatfs, "fstatfs64" }, /* 44 */
- { 2, TF, sys_truncate, "truncate64" }, /* 45 */
- { 2, TD, sys_ftruncate, "ftruncate64" }, /* 46 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 3, TD, sys_lseek, "lseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 4, TD, sys_pread, "pread64" }, /* 67 */
- { 4, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 4, TD, sys_preadv, "preadv" }, /* 69 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 79 */
- { 2, TD, sys_fstat, "fstat" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 4, TI, sys_msgget, "msgget" }, /* 186 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 4, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 4, TI, sys_semop, "semop" }, /* 193 */
- { 4, TI, sys_shmget, "shmget" }, /* 194 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 3, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 222 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 223 */
- { 2, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 3, TM, sys_msync, "msync" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
+#include "64/syscallent.h"
- /* Arch-specific block, not used on AArch64 */
- [244 ... 259] = { },
+/* Arch-specific block, not used on AArch64 */
+[244 ... 259] = { },
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 274 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 275 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 276 */
+/* Quote from asm-generic/unistd.h:
+ *
+ * All syscalls below here should go away really,
+ * these are provided for both review and as a porting
+ * help for the C library version.
+ *
+ * Last chance: are any of these important enough to
+ * enable by default?
+ */
- /* Blank down to 1023 */
- [277 ... 1023] = { },
-
- /* Quote from asm-generic/unistd.h:
- *
- * All syscalls below here should go away really,
- * these are provided for both review and as a porting
- * help for the C library version.
- *
- * Last chance: are any of these important enough to
- * enable by default?
- */
-
- { 3, TD|TF, sys_open, "open" }, /* 1024 */
- { 2, TF, sys_link, "link" }, /* 1025 */
- { 1, TF, sys_unlink, "unlink" }, /* 1026 */
- { 3, TF, sys_mknod, "mknod" }, /* 1027 */
- { 2, TF, sys_chmod, "chmod" }, /* 1028 */
- { 3, TF, sys_chown, "chown" }, /* 1029 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 1030 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 1031 */
- { 3, TF, sys_chown, "lchown" }, /* 1032 */
- { 2, TF, sys_access, "access" }, /* 1033 */
- { 2, TF, sys_rename, "rename" }, /* 1034 */
- { 3, TF, sys_readlink, "readlink" }, /* 1035 */
- { 2, TF, sys_symlink, "symlink" }, /* 1036 */
- { 2, TF, sys_utimes, "utimes" }, /* 1037 */
- { 2, TF, sys_stat, "stat" }, /* 1038 */
- { 2, TF, sys_lstat, "lstat" }, /* 1039 */
- { 1, TD, sys_pipe, "pipe" }, /* 1040 */
- { 2, TD, sys_dup2, "dup2" }, /* 1041 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 1042 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 1043 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 1044 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 1045 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 1046 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 1047 */
- { 2, TF, sys_truncate, "truncate" }, /* 1048 */
- { 2, TF, sys_stat, "stat" }, /* 1049 */
- { 2, TF, sys_lstat, "lstat" }, /* 1050 */
- { 2, TD, sys_fstat, "fstat" }, /* 1051 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 1052 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 1053 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 1054 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 1055 */
- { 2, TF, sys_statfs, "statfs" }, /* 1056 */
- { 3, TD, sys_lseek, "lseek" }, /* 1057 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 1058 */
- { 1, 0, sys_alarm, "alarm" }, /* 1059 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 1060 */
- { 0, TS, sys_pause, "pause" }, /* 1061 */
- { 1, 0, sys_time, "time" }, /* 1062 */
- { 2, TF, sys_utime, "utime" }, /* 1063 */
- { 2, TD|TF, sys_creat, "creat" }, /* 1064 */
- { 3, TD, sys_getdents, "getdents" }, /* 1065 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 1066 */
- { 5, TD, sys_select, "select" }, /* 1067 */
- { 3, TD, sys_poll, "poll" }, /* 1068 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 1069 */
- { 2, 0, sys_ustat, "ustat" }, /* 1070 */
- { 0, TP, sys_vfork, "vfork" }, /* 1071 */
- { 4, TP, sys_wait4, "wait4" }, /* 1072 */
- { 6, TN, sys_recv, "recv" }, /* 1073 */
- { 4, TN, sys_send, "send" }, /* 1074 */
- { 2, 0, sys_bdflush, "bdflush" }, /* 1075 */
- { 2, TF, sys_umount, "umount" }, /* 1076 */
- { 1, TF, sys_uselib, "uselib" }, /* 1077 */
- { 1, 0, sys_sysctl, "sysctl" }, /* 1078 */
- { 0, TP, sys_fork, "fork" }, /* 1079 */
+[1024] = { 3, TD|TF, sys_open, "open" },
+[1025] = { 2, TF, sys_link, "link" },
+[1026] = { 1, TF, sys_unlink, "unlink" },
+[1027] = { 3, TF, sys_mknod, "mknod" },
+[1028] = { 2, TF, sys_chmod, "chmod" },
+[1029] = { 3, TF, sys_chown, "chown" },
+[1030] = { 2, TF, sys_mkdir, "mkdir" },
+[1031] = { 1, TF, sys_rmdir, "rmdir" },
+[1032] = { 3, TF, sys_chown, "lchown" },
+[1033] = { 2, TF, sys_access, "access" },
+[1034] = { 2, TF, sys_rename, "rename" },
+[1035] = { 3, TF, sys_readlink, "readlink" },
+[1036] = { 2, TF, sys_symlink, "symlink" },
+[1037] = { 2, TF, sys_utimes, "utimes" },
+[1038] = { 2, TF, sys_stat, "stat" },
+[1039] = { 2, TF, sys_lstat, "lstat" },
+[1040] = { 1, TD, sys_pipe, "pipe" },
+[1041] = { 2, TD, sys_dup2, "dup2" },
+[1042] = { 1, TD, sys_epoll_create, "epoll_create" },
+[1043] = { 0, TD, sys_inotify_init, "inotify_init" },
+[1044] = { 1, TD, sys_eventfd, "eventfd" },
+[1045] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[1046] = { 4, TD|TN, sys_sendfile64, "sendfile" },
+[1047] = { 2, TD, sys_ftruncate, "ftruncate" },
+[1048] = { 2, TF, sys_truncate, "truncate" },
+[1049] = { 2, TF, sys_stat, "stat" },
+[1050] = { 2, TF, sys_lstat, "lstat" },
+[1051] = { 2, TD, sys_fstat, "fstat" },
+[1052] = { 3, TD, sys_fcntl, "fcntl" },
+[1053] = { 4, TD, sys_fadvise64, "fadvise64" },
+[1054] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[1055] = { 2, TD, sys_fstatfs, "fstatfs" },
+[1056] = { 2, TF, sys_statfs, "statfs" },
+[1057] = { 3, TD, sys_lseek, "lseek" },
+[1058] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[1059] = { 1, 0, sys_alarm, "alarm" },
+[1060] = { 0, 0, sys_getpgrp, "getpgrp" },
+[1061] = { 0, TS, sys_pause, "pause" },
+[1062] = { 1, 0, sys_time, "time" },
+[1063] = { 2, TF, sys_utime, "utime" },
+[1064] = { 2, TD|TF, sys_creat, "creat" },
+[1065] = { 3, TD, sys_getdents, "getdents" },
+[1066] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[1067] = { 5, TD, sys_select, "select" },
+[1068] = { 3, TD, sys_poll, "poll" },
+[1069] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[1070] = { 2, 0, sys_ustat, "ustat" },
+[1071] = { 0, TP, sys_vfork, "vfork" },
+[1072] = { 4, TP, sys_wait4, "wait4" },
+[1073] = { 6, TN, sys_recv, "recv" },
+[1074] = { 4, TN, sys_send, "send" },
+[1075] = { 2, 0, sys_bdflush, "bdflush" },
+[1076] = { 1, TF, sys_umount, "umount" },
+[1077] = { 1, TF, sys_uselib, "uselib" },
+[1078] = { 1, 0, sys_sysctl, "sysctl" },
+[1079] = { 0, TP, sys_fork, "fork" },
diff --git a/linux/alpha/arch_regs.h b/linux/alpha/arch_regs.h
new file mode 100644
index 0000000..66277fd
--- /dev/null
+++ b/linux/alpha/arch_regs.h
@@ -0,0 +1,5 @@
+#define REG_R0 0
+#define REG_A0 16
+#define REG_A3 19
+#define REG_FP 30
+#define REG_PC 64
diff --git a/linux/alpha/errnoent.h b/linux/alpha/errnoent.h
index 4ffaff9..b9157cf 100644
--- a/linux/alpha/errnoent.h
+++ b/linux/alpha/errnoent.h
@@ -1,516 +1,148 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EDEADLK", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "EAGAIN", /* 35 */
- "EINPROGRESS", /* 36 */
- "EALREADY", /* 37 */
- "ENOTSOCK", /* 38 */
- "EDESTADDRREQ", /* 39 */
- "EMSGSIZE", /* 40 */
- "EPROTOTYPE", /* 41 */
- "ENOPROTOOPT", /* 42 */
- "EPROTONOSUPPORT", /* 43 */
- "ESOCKTNOSUPPORT", /* 44 */
- "EOPNOTSUPP", /* 45 */
- "EPFNOSUPPORT", /* 46 */
- "EAFNOSUPPORT", /* 47 */
- "EADDRINUSE", /* 48 */
- "EADDRNOTAVAIL", /* 49 */
- "ENETDOWN", /* 50 */
- "ENETUNREACH", /* 51 */
- "ENETRESET", /* 52 */
- "ECONNABORTED", /* 53 */
- "ECONNRESET", /* 54 */
- "ENOBUFS", /* 55 */
- "EISCONN", /* 56 */
- "ENOTCONN", /* 57 */
- "ESHUTDOWN", /* 58 */
- "ETOOMANYREFS", /* 59 */
- "ETIMEDOUT", /* 60 */
- "ECONNREFUSED", /* 61 */
- "ELOOP", /* 62 */
- "ENAMETOOLONG", /* 63 */
- "EHOSTDOWN", /* 64 */
- "EHOSTUNREACH", /* 65 */
- "ENOTEMPTY", /* 66 */
- "ERRNO_67", /* 67 */
- "EUSERS", /* 68 */
- "EDQUOT", /* 69 */
- "ESTALE", /* 70 */
- "EREMOTE", /* 71 */
- "ERRNO_72", /* 72 */
- "ERRNO_73", /* 73 */
- "ERRNO_74", /* 74 */
- "ERRNO_75", /* 75 */
- "ERRNO_76", /* 76 */
- "ENOLCK", /* 77 */
- "ENOSYS", /* 78 */
- "ERRNO_79", /* 79 */
- "ENOMSG", /* 80 */
- "EIDRM", /* 81 */
- "ENOSR", /* 82 */
- "ETIME", /* 83 */
- "EBADMSG", /* 84 */
- "EPROTO", /* 85 */
- "ENODATA", /* 86 */
- "ENOSTR", /* 87 */
- "ECHRNG", /* 88 */
- "EL2NSYNC", /* 89 */
- "EL3HLT", /* 90 */
- "EL3RST", /* 91 */
- "ENOPKG", /* 92 */
- "ELNRNG", /* 93 */
- "EUNATCH", /* 94 */
- "ENOCSI", /* 95 */
- "EL2HLT", /* 96 */
- "EBADE", /* 97 */
- "EBADR", /* 98 */
- "EXFULL", /* 99 */
- "ENOANO", /* 100 */
- "EBADRQC", /* 101 */
- "EBADSLT", /* 102 */
- "EDEADLOCK", /* 103 */
- "EBFONT", /* 104 */
- "ENONET", /* 105 */
- "ENOLINK", /* 106 */
- "EADV", /* 107 */
- "ESRMNT", /* 108 */
- "ECOMM", /* 109 */
- "EMULTIHOP", /* 110 */
- "EDOTDOT", /* 111 */
- "EOVERFLOW", /* 112 */
- "ENOTUNIQ", /* 113 */
- "EBADFD", /* 114 */
- "EREMCHG", /* 115 */
- "EILSEQ", /* 116 */
- "EUCLEAN", /* 117 */
- "ENOTNAM", /* 118 */
- "ENAVAIL", /* 119 */
- "EISNAM", /* 120 */
- "EREMOTEIO", /* 121 */
- "ELIBACC", /* 122 */
- "ELIBBAD", /* 123 */
- "ELIBSCN", /* 124 */
- "ELIBMAX", /* 125 */
- "ELIBEXEC", /* 126 */
- "ERESTART", /* 127 */
- "ESTRPIPE", /* 128 */
- "ERRNO_129", /* 129 */
- "ERRNO_130", /* 130 */
- "ERRNO_131", /* 131 */
- "ERRNO_132", /* 132 */
- "ERRNO_133", /* 133 */
- "ERRNO_134", /* 134 */
- "ERRNO_135", /* 135 */
- "ERRNO_136", /* 136 */
- "ERRNO_137", /* 137 */
- "ERRNO_138", /* 138 */
- "ERRNO_139", /* 139 */
- "ERRNO_140", /* 140 */
- "ERRNO_141", /* 141 */
- "ERRNO_142", /* 142 */
- "ERRNO_143", /* 143 */
- "ERRNO_144", /* 144 */
- "ERRNO_145", /* 145 */
- "ERRNO_146", /* 146 */
- "ERRNO_147", /* 147 */
- "ERRNO_148", /* 148 */
- "ERRNO_149", /* 149 */
- "ERRNO_150", /* 150 */
- "ERRNO_151", /* 151 */
- "ERRNO_152", /* 152 */
- "ERRNO_153", /* 153 */
- "ERRNO_154", /* 154 */
- "ERRNO_155", /* 155 */
- "ERRNO_156", /* 156 */
- "ERRNO_157", /* 157 */
- "ERRNO_158", /* 158 */
- "ERRNO_159", /* 159 */
- "ERRNO_160", /* 160 */
- "ERRNO_161", /* 161 */
- "ERRNO_162", /* 162 */
- "ERRNO_163", /* 163 */
- "ERRNO_164", /* 164 */
- "ERRNO_165", /* 165 */
- "ERRNO_166", /* 166 */
- "ERRNO_167", /* 167 */
- "ERRNO_168", /* 168 */
- "ERRNO_169", /* 169 */
- "ERRNO_170", /* 170 */
- "ERRNO_171", /* 171 */
- "ERRNO_172", /* 172 */
- "ERRNO_173", /* 173 */
- "ERRNO_174", /* 174 */
- "ERRNO_175", /* 175 */
- "ERRNO_176", /* 176 */
- "ERRNO_177", /* 177 */
- "ERRNO_178", /* 178 */
- "ERRNO_179", /* 179 */
- "ERRNO_180", /* 180 */
- "ERRNO_181", /* 181 */
- "ERRNO_182", /* 182 */
- "ERRNO_183", /* 183 */
- "ERRNO_184", /* 184 */
- "ERRNO_185", /* 185 */
- "ERRNO_186", /* 186 */
- "ERRNO_187", /* 187 */
- "ERRNO_188", /* 188 */
- "ERRNO_189", /* 189 */
- "ERRNO_190", /* 190 */
- "ERRNO_191", /* 191 */
- "ERRNO_192", /* 192 */
- "ERRNO_193", /* 193 */
- "ERRNO_194", /* 194 */
- "ERRNO_195", /* 195 */
- "ERRNO_196", /* 196 */
- "ERRNO_197", /* 197 */
- "ERRNO_198", /* 198 */
- "ERRNO_199", /* 199 */
- "ERRNO_200", /* 200 */
- "ERRNO_201", /* 201 */
- "ERRNO_202", /* 202 */
- "ERRNO_203", /* 203 */
- "ERRNO_204", /* 204 */
- "ERRNO_205", /* 205 */
- "ERRNO_206", /* 206 */
- "ERRNO_207", /* 207 */
- "ERRNO_208", /* 208 */
- "ERRNO_209", /* 209 */
- "ERRNO_210", /* 210 */
- "ERRNO_211", /* 211 */
- "ERRNO_212", /* 212 */
- "ERRNO_213", /* 213 */
- "ERRNO_214", /* 214 */
- "ERRNO_215", /* 215 */
- "ERRNO_216", /* 216 */
- "ERRNO_217", /* 217 */
- "ERRNO_218", /* 218 */
- "ERRNO_219", /* 219 */
- "ERRNO_220", /* 220 */
- "ERRNO_221", /* 221 */
- "ERRNO_222", /* 222 */
- "ERRNO_223", /* 223 */
- "ERRNO_224", /* 224 */
- "ERRNO_225", /* 225 */
- "ERRNO_226", /* 226 */
- "ERRNO_227", /* 227 */
- "ERRNO_228", /* 228 */
- "ERRNO_229", /* 229 */
- "ERRNO_230", /* 230 */
- "ERRNO_231", /* 231 */
- "ERRNO_232", /* 232 */
- "ERRNO_233", /* 233 */
- "ERRNO_234", /* 234 */
- "ERRNO_235", /* 235 */
- "ERRNO_236", /* 236 */
- "ERRNO_237", /* 237 */
- "ERRNO_238", /* 238 */
- "ERRNO_239", /* 239 */
- "ERRNO_240", /* 240 */
- "ERRNO_241", /* 241 */
- "ERRNO_242", /* 242 */
- "ERRNO_243", /* 243 */
- "ERRNO_244", /* 244 */
- "ERRNO_245", /* 245 */
- "ERRNO_246", /* 246 */
- "ERRNO_247", /* 247 */
- "ERRNO_248", /* 248 */
- "ERRNO_249", /* 249 */
- "ERRNO_250", /* 250 */
- "ERRNO_251", /* 251 */
- "ERRNO_252", /* 252 */
- "ERRNO_253", /* 253 */
- "ERRNO_254", /* 254 */
- "ERRNO_255", /* 255 */
- "ERRNO_256", /* 256 */
- "ERRNO_257", /* 257 */
- "ERRNO_258", /* 258 */
- "ERRNO_259", /* 259 */
- "ERRNO_260", /* 260 */
- "ERRNO_261", /* 261 */
- "ERRNO_262", /* 262 */
- "ERRNO_263", /* 263 */
- "ERRNO_264", /* 264 */
- "ERRNO_265", /* 265 */
- "ERRNO_266", /* 266 */
- "ERRNO_267", /* 267 */
- "ERRNO_268", /* 268 */
- "ERRNO_269", /* 269 */
- "ERRNO_270", /* 270 */
- "ERRNO_271", /* 271 */
- "ERRNO_272", /* 272 */
- "ERRNO_273", /* 273 */
- "ERRNO_274", /* 274 */
- "ERRNO_275", /* 275 */
- "ERRNO_276", /* 276 */
- "ERRNO_277", /* 277 */
- "ERRNO_278", /* 278 */
- "ERRNO_279", /* 279 */
- "ERRNO_280", /* 280 */
- "ERRNO_281", /* 281 */
- "ERRNO_282", /* 282 */
- "ERRNO_283", /* 283 */
- "ERRNO_284", /* 284 */
- "ERRNO_285", /* 285 */
- "ERRNO_286", /* 286 */
- "ERRNO_287", /* 287 */
- "ERRNO_288", /* 288 */
- "ERRNO_289", /* 289 */
- "ERRNO_290", /* 290 */
- "ERRNO_291", /* 291 */
- "ERRNO_292", /* 292 */
- "ERRNO_293", /* 293 */
- "ERRNO_294", /* 294 */
- "ERRNO_295", /* 295 */
- "ERRNO_296", /* 296 */
- "ERRNO_297", /* 297 */
- "ERRNO_298", /* 298 */
- "ERRNO_299", /* 299 */
- "ERRNO_300", /* 300 */
- "ERRNO_301", /* 301 */
- "ERRNO_302", /* 302 */
- "ERRNO_303", /* 303 */
- "ERRNO_304", /* 304 */
- "ERRNO_305", /* 305 */
- "ERRNO_306", /* 306 */
- "ERRNO_307", /* 307 */
- "ERRNO_308", /* 308 */
- "ERRNO_309", /* 309 */
- "ERRNO_310", /* 310 */
- "ERRNO_311", /* 311 */
- "ERRNO_312", /* 312 */
- "ERRNO_313", /* 313 */
- "ERRNO_314", /* 314 */
- "ERRNO_315", /* 315 */
- "ERRNO_316", /* 316 */
- "ERRNO_317", /* 317 */
- "ERRNO_318", /* 318 */
- "ERRNO_319", /* 319 */
- "ERRNO_320", /* 320 */
- "ERRNO_321", /* 321 */
- "ERRNO_322", /* 322 */
- "ERRNO_323", /* 323 */
- "ERRNO_324", /* 324 */
- "ERRNO_325", /* 325 */
- "ERRNO_326", /* 326 */
- "ERRNO_327", /* 327 */
- "ERRNO_328", /* 328 */
- "ERRNO_329", /* 329 */
- "ERRNO_330", /* 330 */
- "ERRNO_331", /* 331 */
- "ERRNO_332", /* 332 */
- "ERRNO_333", /* 333 */
- "ERRNO_334", /* 334 */
- "ERRNO_335", /* 335 */
- "ERRNO_336", /* 336 */
- "ERRNO_337", /* 337 */
- "ERRNO_338", /* 338 */
- "ERRNO_339", /* 339 */
- "ERRNO_340", /* 340 */
- "ERRNO_341", /* 341 */
- "ERRNO_342", /* 342 */
- "ERRNO_343", /* 343 */
- "ERRNO_344", /* 344 */
- "ERRNO_345", /* 345 */
- "ERRNO_346", /* 346 */
- "ERRNO_347", /* 347 */
- "ERRNO_348", /* 348 */
- "ERRNO_349", /* 349 */
- "ERRNO_350", /* 350 */
- "ERRNO_351", /* 351 */
- "ERRNO_352", /* 352 */
- "ERRNO_353", /* 353 */
- "ERRNO_354", /* 354 */
- "ERRNO_355", /* 355 */
- "ERRNO_356", /* 356 */
- "ERRNO_357", /* 357 */
- "ERRNO_358", /* 358 */
- "ERRNO_359", /* 359 */
- "ERRNO_360", /* 360 */
- "ERRNO_361", /* 361 */
- "ERRNO_362", /* 362 */
- "ERRNO_363", /* 363 */
- "ERRNO_364", /* 364 */
- "ERRNO_365", /* 365 */
- "ERRNO_366", /* 366 */
- "ERRNO_367", /* 367 */
- "ERRNO_368", /* 368 */
- "ERRNO_369", /* 369 */
- "ERRNO_370", /* 370 */
- "ERRNO_371", /* 371 */
- "ERRNO_372", /* 372 */
- "ERRNO_373", /* 373 */
- "ERRNO_374", /* 374 */
- "ERRNO_375", /* 375 */
- "ERRNO_376", /* 376 */
- "ERRNO_377", /* 377 */
- "ERRNO_378", /* 378 */
- "ERRNO_379", /* 379 */
- "ERRNO_380", /* 380 */
- "ERRNO_381", /* 381 */
- "ERRNO_382", /* 382 */
- "ERRNO_383", /* 383 */
- "ERRNO_384", /* 384 */
- "ERRNO_385", /* 385 */
- "ERRNO_386", /* 386 */
- "ERRNO_387", /* 387 */
- "ERRNO_388", /* 388 */
- "ERRNO_389", /* 389 */
- "ERRNO_390", /* 390 */
- "ERRNO_391", /* 391 */
- "ERRNO_392", /* 392 */
- "ERRNO_393", /* 393 */
- "ERRNO_394", /* 394 */
- "ERRNO_395", /* 395 */
- "ERRNO_396", /* 396 */
- "ERRNO_397", /* 397 */
- "ERRNO_398", /* 398 */
- "ERRNO_399", /* 399 */
- "ERRNO_400", /* 400 */
- "ERRNO_401", /* 401 */
- "ERRNO_402", /* 402 */
- "ERRNO_403", /* 403 */
- "ERRNO_404", /* 404 */
- "ERRNO_405", /* 405 */
- "ERRNO_406", /* 406 */
- "ERRNO_407", /* 407 */
- "ERRNO_408", /* 408 */
- "ERRNO_409", /* 409 */
- "ERRNO_410", /* 410 */
- "ERRNO_411", /* 411 */
- "ERRNO_412", /* 412 */
- "ERRNO_413", /* 413 */
- "ERRNO_414", /* 414 */
- "ERRNO_415", /* 415 */
- "ERRNO_416", /* 416 */
- "ERRNO_417", /* 417 */
- "ERRNO_418", /* 418 */
- "ERRNO_419", /* 419 */
- "ERRNO_420", /* 420 */
- "ERRNO_421", /* 421 */
- "ERRNO_422", /* 422 */
- "ERRNO_423", /* 423 */
- "ERRNO_424", /* 424 */
- "ERRNO_425", /* 425 */
- "ERRNO_426", /* 426 */
- "ERRNO_427", /* 427 */
- "ERRNO_428", /* 428 */
- "ERRNO_429", /* 429 */
- "ERRNO_430", /* 430 */
- "ERRNO_431", /* 431 */
- "ERRNO_432", /* 432 */
- "ERRNO_433", /* 433 */
- "ERRNO_434", /* 434 */
- "ERRNO_435", /* 435 */
- "ERRNO_436", /* 436 */
- "ERRNO_437", /* 437 */
- "ERRNO_438", /* 438 */
- "ERRNO_439", /* 439 */
- "ERRNO_440", /* 440 */
- "ERRNO_441", /* 441 */
- "ERRNO_442", /* 442 */
- "ERRNO_443", /* 443 */
- "ERRNO_444", /* 444 */
- "ERRNO_445", /* 445 */
- "ERRNO_446", /* 446 */
- "ERRNO_447", /* 447 */
- "ERRNO_448", /* 448 */
- "ERRNO_449", /* 449 */
- "ERRNO_450", /* 450 */
- "ERRNO_451", /* 451 */
- "ERRNO_452", /* 452 */
- "ERRNO_453", /* 453 */
- "ERRNO_454", /* 454 */
- "ERRNO_455", /* 455 */
- "ERRNO_456", /* 456 */
- "ERRNO_457", /* 457 */
- "ERRNO_458", /* 458 */
- "ERRNO_459", /* 459 */
- "ERRNO_460", /* 460 */
- "ERRNO_461", /* 461 */
- "ERRNO_462", /* 462 */
- "ERRNO_463", /* 463 */
- "ERRNO_464", /* 464 */
- "ERRNO_465", /* 465 */
- "ERRNO_466", /* 466 */
- "ERRNO_467", /* 467 */
- "ERRNO_468", /* 468 */
- "ERRNO_469", /* 469 */
- "ERRNO_470", /* 470 */
- "ERRNO_471", /* 471 */
- "ERRNO_472", /* 472 */
- "ERRNO_473", /* 473 */
- "ERRNO_474", /* 474 */
- "ERRNO_475", /* 475 */
- "ERRNO_476", /* 476 */
- "ERRNO_477", /* 477 */
- "ERRNO_478", /* 478 */
- "ERRNO_479", /* 479 */
- "ERRNO_480", /* 480 */
- "ERRNO_481", /* 481 */
- "ERRNO_482", /* 482 */
- "ERRNO_483", /* 483 */
- "ERRNO_484", /* 484 */
- "ERRNO_485", /* 485 */
- "ERRNO_486", /* 486 */
- "ERRNO_487", /* 487 */
- "ERRNO_488", /* 488 */
- "ERRNO_489", /* 489 */
- "ERRNO_490", /* 490 */
- "ERRNO_491", /* 491 */
- "ERRNO_492", /* 492 */
- "ERRNO_493", /* 493 */
- "ERRNO_494", /* 494 */
- "ERRNO_495", /* 495 */
- "ERRNO_496", /* 496 */
- "ERRNO_497", /* 497 */
- "ERRNO_498", /* 498 */
- "ERRNO_499", /* 499 */
- "ERRNO_500", /* 500 */
- "ERRNO_501", /* 501 */
- "ERRNO_502", /* 502 */
- "ERRNO_503", /* 503 */
- "ERRNO_504", /* 504 */
- "ERRNO_505", /* 505 */
- "ERRNO_506", /* 506 */
- "ERRNO_507", /* 507 */
- "ERRNO_508", /* 508 */
- "ERRNO_509", /* 509 */
- "ERRNO_510", /* 510 */
- "ERRNO_511", /* 511 */
- "ERESTARTSYS", /* 512 */
- "ERESTARTNOINTR", /* 513 */
- "ERESTARTNOHAND", /* 514 */
- "ENOIOCTLCMD", /* 515 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EDEADLK",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "EAGAIN",
+[ 36] = "EINPROGRESS",
+[ 37] = "EALREADY",
+[ 38] = "ENOTSOCK",
+[ 39] = "EDESTADDRREQ",
+[ 40] = "EMSGSIZE",
+[ 41] = "EPROTOTYPE",
+[ 42] = "ENOPROTOOPT",
+[ 43] = "EPROTONOSUPPORT",
+[ 44] = "ESOCKTNOSUPPORT",
+[ 45] = "EOPNOTSUPP",
+[ 46] = "EPFNOSUPPORT",
+[ 47] = "EAFNOSUPPORT",
+[ 48] = "EADDRINUSE",
+[ 49] = "EADDRNOTAVAIL",
+[ 50] = "ENETDOWN",
+[ 51] = "ENETUNREACH",
+[ 52] = "ENETRESET",
+[ 53] = "ECONNABORTED",
+[ 54] = "ECONNRESET",
+[ 55] = "ENOBUFS",
+[ 56] = "EISCONN",
+[ 57] = "ENOTCONN",
+[ 58] = "ESHUTDOWN",
+[ 59] = "ETOOMANYREFS",
+[ 60] = "ETIMEDOUT",
+[ 61] = "ECONNREFUSED",
+[ 62] = "ELOOP",
+[ 63] = "ENAMETOOLONG",
+[ 64] = "EHOSTDOWN",
+[ 65] = "EHOSTUNREACH",
+[ 66] = "ENOTEMPTY",
+[ 68] = "EUSERS",
+[ 69] = "EDQUOT",
+[ 70] = "ESTALE",
+[ 71] = "EREMOTE",
+[ 77] = "ENOLCK",
+[ 78] = "ENOSYS",
+[ 80] = "ENOMSG",
+[ 81] = "EIDRM",
+[ 82] = "ENOSR",
+[ 83] = "ETIME",
+[ 84] = "EBADMSG",
+[ 85] = "EPROTO",
+[ 86] = "ENODATA",
+[ 87] = "ENOSTR",
+[ 88] = "ECHRNG",
+[ 89] = "EL2NSYNC",
+[ 90] = "EL3HLT",
+[ 91] = "EL3RST",
+[ 92] = "ENOPKG",
+[ 93] = "ELNRNG",
+[ 94] = "EUNATCH",
+[ 95] = "ENOCSI",
+[ 96] = "EL2HLT",
+[ 97] = "EBADE",
+[ 98] = "EBADR",
+[ 99] = "EXFULL",
+[100] = "ENOANO",
+[101] = "EBADRQC",
+[102] = "EBADSLT",
+[103] = "EDEADLOCK",
+[104] = "EBFONT",
+[105] = "ENONET",
+[106] = "ENOLINK",
+[107] = "EADV",
+[108] = "ESRMNT",
+[109] = "ECOMM",
+[110] = "EMULTIHOP",
+[111] = "EDOTDOT",
+[112] = "EOVERFLOW",
+[113] = "ENOTUNIQ",
+[114] = "EBADFD",
+[115] = "EREMCHG",
+[116] = "EILSEQ",
+[117] = "EUCLEAN",
+[118] = "ENOTNAM",
+[119] = "ENAVAIL",
+[120] = "EISNAM",
+[121] = "EREMOTEIO",
+[122] = "ELIBACC",
+[123] = "ELIBBAD",
+[124] = "ELIBSCN",
+[125] = "ELIBMAX",
+[126] = "ELIBEXEC",
+[127] = "ERESTART",
+[128] = "ESTRPIPE",
+[129] = "ENOMEDIUM",
+[130] = "EMEDIUMTYPE",
+[131] = "ECANCELED",
+[132] = "ENOKEY",
+[133] = "EKEYEXPIRED",
+[134] = "EKEYREVOKED",
+[135] = "EKEYREJECTED",
+[136] = "EOWNERDEAD",
+[137] = "ENOTRECOVERABLE",
+[138] = "ERFKILL",
+[139] = "EHWPOISON",
+[512] = "ERESTARTSYS",
+[513] = "ERESTARTNOINTR",
+[514] = "ERESTARTNOHAND",
+[515] = "ENOIOCTLCMD",
+[516] = "ERESTART_RESTARTBLOCK",
+[517] = "EPROBE_DEFER",
+[518] = "EOPENSTALE",
+[521] = "EBADHANDLE",
+[522] = "ENOTSYNC",
+[523] = "EBADCOOKIE",
+[524] = "ENOTSUPP",
+[525] = "ETOOSMALL",
+[526] = "ESERVERFAULT",
+[527] = "EBADTYPE",
+[528] = "EJUKEBOX",
+[529] = "EIOCBQUEUED",
diff --git a/linux/alpha/ioctlent.h.in b/linux/alpha/ioctlent.h.in
deleted file mode 100644
index db7d328..0000000
--- a/linux/alpha/ioctlent.h.in
+++ /dev/null
@@ -1,73 +0,0 @@
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "TIOCGHAYESESP", 0x545e},
- {"asm/ioctls.h", "TIOCSHAYESESP", 0x545f},
- {"asm/ioctls.h", "FIOCLEX", 0x6601},
- {"asm/ioctls.h", "FIONCLEX", 0x6602},
- {"asm/sockios.h", "FIOGETOWN", 0x667b},
- {"asm/sockios.h", "FIOSETOWN", 0x667c},
- {"asm/ioctls.h", "FIOASYNC", 0x667d},
- {"asm/ioctls.h", "FIONBIO", 0x667e},
- {"asm/ioctls.h", "FIONREAD", 0x667f},
- {"asm/sockios.h", "SIOCATMARK", 0x7307},
- {"asm/sockios.h", "SIOCSPGRP", 0x7308},
- {"asm/sockios.h", "SIOCGPGRP", 0x7309},
- {"asm/ioctls.h", "TIOCGETP", 0x7408},
- {"asm/ioctls.h", "TIOCSETP", 0x7409},
- {"asm/ioctls.h", "TIOCSETN", 0x740a},
- {"asm/ioctls.h", "TIOCSETC", 0x7411},
- {"asm/ioctls.h", "TIOCGETC", 0x7412},
- {"asm/ioctls.h", "TCGETS", 0x7413},
- {"asm/ioctls.h", "TCSETS", 0x7414},
- {"asm/ioctls.h", "TCSETSW", 0x7415},
- {"asm/ioctls.h", "TCSETSF", 0x7416},
- {"asm/ioctls.h", "TCGETA", 0x7417},
- {"asm/ioctls.h", "TCSETA", 0x7418},
- {"asm/ioctls.h", "TCSETAW", 0x7419},
- {"asm/ioctls.h", "TCSETAF", 0x741c},
- {"asm/ioctls.h", "TCSBRK", 0x741d},
- {"asm/ioctls.h", "TCXONC", 0x741e},
- {"asm/ioctls.h", "TCFLSH", 0x741f},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x7467},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x7468},
- {"asm/ioctls.h", "TIOCSTART", 0x746e},
- {"asm/ioctls.h", "TIOCSTOP", 0x746f},
- {"asm/ioctls.h", "TIOCOUTQ", 0x7473},
- {"asm/ioctls.h", "TIOCGLTC", 0x7474},
- {"asm/ioctls.h", "TIOCSLTC", 0x7475},
- {"asm/ioctls.h", "TIOCSPGRP", 0x7476},
- {"asm/ioctls.h", "TIOCGPGRP", 0x7477},
diff --git a/linux/alpha/ioctls_arch0.h b/linux/alpha/ioctls_arch0.h
new file mode 100644
index 0000000..526f3fe
--- /dev/null
+++ b/linux/alpha/ioctls_arch0.h
@@ -0,0 +1,82 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/alpha/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x741f, 0x00 },
+{ "asm/ioctls.h", "TCGETA", _IOC_READ, 0x7417, 0x12 },
+{ "asm/ioctls.h", "TCGETS", _IOC_READ, 0x7413, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x741d, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm/ioctls.h", "TCSETA", _IOC_WRITE, 0x7418, 0x12 },
+{ "asm/ioctls.h", "TCSETAF", _IOC_WRITE, 0x741c, 0x12 },
+{ "asm/ioctls.h", "TCSETAW", _IOC_WRITE, 0x7419, 0x12 },
+{ "asm/ioctls.h", "TCSETS", _IOC_WRITE, 0x7414, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", _IOC_WRITE, 0x7416, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", _IOC_WRITE, 0x7415, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x741e, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETC", _IOC_READ, 0x7412, 0x06 },
+{ "asm/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm/ioctls.h", "TIOCGETP", _IOC_READ, 0x7408, 0x06 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGLTC", _IOC_READ, 0x7474, 0x06 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm/ioctls.h", "TIOCGSID", 0, 0x5429, 0 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm/ioctls.h", "TIOCGWINSZ", _IOC_READ, 0x7468, 0x08 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm/ioctls.h", "TIOCSETC", _IOC_WRITE, 0x7411, 0x06 },
+{ "asm/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm/ioctls.h", "TIOCSETN", _IOC_WRITE, 0x740a, 0x06 },
+{ "asm/ioctls.h", "TIOCSETP", _IOC_WRITE, 0x7409, 0x06 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSLTC", _IOC_WRITE, 0x7475, 0x06 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCSWINSZ", _IOC_WRITE, 0x7467, 0x08 },
+{ "asm/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm/sockios.h", "FIOGETOWN", _IOC_READ, 0x667b, 0x04 },
+{ "asm/sockios.h", "FIOSETOWN", _IOC_WRITE, 0x667c, 0x04 },
+{ "asm/sockios.h", "SIOCATMARK", _IOC_READ, 0x7307, 0x04 },
+{ "asm/sockios.h", "SIOCGPGRP", _IOC_READ, 0x7309, 0x04 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", _IOC_WRITE, 0x7308, 0x04 },
diff --git a/linux/alpha/ioctls_inc0.h b/linux/alpha/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/alpha/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/alpha/signalent.h b/linux/alpha/signalent.h
index 2b507e3..174b17b 100644
--- a/linux/alpha/signalent.h
+++ b/linux/alpha/signalent.h
@@ -30,3 +30,4 @@
"SIGINFO", /* 29 */
"SIGUSR1", /* 30 */
"SIGUSR2", /* 31 */
+ "SIGRTMIN", /* 32 */
diff --git a/linux/alpha/syscallent.h b/linux/alpha/syscallent.h
index 408854e..5b17165 100644
--- a/linux/alpha/syscallent.h
+++ b/linux/alpha/syscallent.h
@@ -26,511 +26,445 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 6, 0, printargs, "osf_syscall" }, /* 0, not implemented */
- { 1, TP|SE, sys_exit, "exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 5, 0, printargs, "osf_old_open" }, /* 5, not implemented */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 4, TP, sys_osf_wait4, "osf_wait4" }, /* 7 */
- { 5, 0, printargs, "osf_old_creat" }, /* 8, not implemented */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 5, 0, printargs, "osf_execve" }, /* 11, not implemented */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown, "chown" }, /* 16 */
- { 1, TM|SI, sys_brk, "brk" }, /* 17 */
- { 5, 0, printargs, "osf_getfsstat" }, /* 18, not implemented */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getxpid" }, /* 20 */
- { 4, 0, printargs, "osf_mount" }, /* 21 */
- { 2, TF, sys_umount2, "umount" }, /* 22 */
- { 1, 0, sys_setuid, "setuid" }, /* 23 */
- { 0, NF, sys_getuid, "getxuid" }, /* 24 */
- { 5, 0, printargs, "exec_with_loader" }, /* 25, not implemented */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 5, 0, printargs, "osf_nrecvmsg" }, /* 27, not implemented */
- { 5, 0, printargs, "osf_nsendmsg" }, /* 28, not implemented */
- { 5, 0, printargs, "osf_nrecvfrom" }, /* 29, not implemented */
- { 5, 0, printargs, "osf_naccept" }, /* 30, not implemented */
- { 5, 0, printargs, "osf_ngetpeername" }, /* 31, not implemented */
- { 5, 0, printargs, "osf_ngetsockname" }, /* 32, not implemented */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 5, 0, printargs, "osf_chflags" }, /* 34, not implemented */
- { 5, 0, printargs, "osf_fchflags" }, /* 35, not implemented */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 5, 0, printargs, "osf_old_stat" }, /* 38, not implemented */
- { 2, 0, sys_setpgid, "setpgid" }, /* 39 */
- { 5, 0, printargs, "osf_old_lstat" }, /* 40, not implemented */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 5, 0, printargs, "osf_set_program_attributes" }, /* 43 */
- { 5, 0, printargs, "osf_profil" }, /* 44, not implemented */
- { 3, TD|TF, sys_open, "open" }, /* 45 */
- { 5, 0, printargs, "osf_old_sigaction" }, /* 46, not implemented */
- { 1, NF, sys_getgid, "getxgid" }, /* 47 */
- { 2, TS, sys_sigprocmask, "osf_sigprocmask" }, /* 48 */
- { 5, 0, printargs, "osf_getlogin" }, /* 49, not implemented */
- { 5, 0, printargs, "osf_setlogin" }, /* 50, not implemented */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 52 */
- { 5, 0, NULL, NULL }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 5, 0, printargs, "osf_reboot" }, /* 55, not implemented */
- { 5, 0, printargs, "osf_revoke" }, /* 56, not implemented */
- { 2, TF, sys_symlink, "symlink" }, /* 57 */
- { 3, TF, sys_readlink, "readlink" }, /* 58 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 5, 0, printargs, "osf_old_fstat" }, /* 62, not implemented */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 63 */
- { 0, 0, sys_getpagesize, "getpagesize" }, /* 64 */
- { 5, TM, printargs, "osf_mremap" }, /* 65, not implemented */
- { 0, TP, sys_vfork, "vfork" }, /* 66 */
- { 2, TF, sys_stat, "stat" }, /* 67 */
- { 2, TF, sys_lstat, "lstat" }, /* 68 */
- { 5, TM, printargs, "osf_sbrk" }, /* 69, not implemented */
- { 5, 0, printargs, "osf_sstk" }, /* 70, not implemented */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 71 */
- { 5, 0, printargs, "osf_old_vadvise" }, /* 72, not implemented */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 73 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 74 */
- { 3, TM, sys_madvise, "madvise" }, /* 75 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 76 */
- { 5, 0, printargs, "osf_kmodcall" }, /* 77, not implemented */
- { 5, TM, printargs, "osf_mincore" }, /* 78, not implemented */
- { 2, 0, sys_getgroups, "getgroups" }, /* 79 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 80 */
- { 5, 0, printargs, "osf_old_getpgrp" }, /* 81, not implemented */
- { 2, 0, sys_setpgrp, "setpgrp" }, /* 82 */
- { 3, 0, sys_osf_setitimer, "osf_setitimer" }, /* 83 */
- { 5, 0, printargs, "osf_old_wait" }, /* 84, not implemented */
- { 5, 0, printargs, "osf_table" }, /* 85, not implemented */
- { 2, 0, sys_osf_getitimer, "osf_getitimer" }, /* 86 */
- { 2, 0, sys_gethostname, "gethostname" }, /* 87 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 88 */
- { 0, 0, sys_getdtablesize, "getdtablesize" }, /* 89 */
- { 2, TD, sys_dup2, "dup2" }, /* 90 */
- { 2, TD, sys_fstat, "fstat" }, /* 91 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 92 */
- { 5, 0, sys_osf_select, "osf_select" }, /* 93 */
- { 3, TD, sys_poll, "poll" }, /* 94 */
- { 1, TD, sys_fsync, "fsync" }, /* 95 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 96 */
- { 3, TN, sys_socket, "socket" }, /* 97 */
- { 3, TN, sys_connect, "connect" }, /* 98 */
- { 3, TN, sys_accept, "accept" }, /* 99 */
- { 2, 0, sys_getpriority, "osf_getpriority" }, /* 100 */
- { 4, TN, sys_send, "send" }, /* 101 */
- { 4, TN, sys_recv, "recv" }, /* 102 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 103 */
- { 3, TN, sys_bind, "bind" }, /* 104 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 105 */
- { 2, TN, sys_listen, "listen" }, /* 106 */
- { 5, 0, printargs, "osf_plock" }, /* 107, not implemented */
- { 5, 0, printargs, "osf_old_sigvec" }, /* 108, not implemented */
- { 5, 0, printargs, "osf_old_sigblock" }, /* 109, not implemented */
- { 5, 0, printargs, "osf_old_sigsetmask" }, /* 110, not implemented */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 111 */
- { 5, 0, printargs, "sigstack" }, /* 112 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 113 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 114 */
- { 5, 0, printargs, "osf_old_vtrace" }, /* 115, not implemented */
- { 2, 0, sys_osf_gettimeofday, "osf_gettimeofday" }, /* 116 */
- { 2, 0, sys_osf_getrusage, "osf_getrusage" }, /* 117 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 118 */
- { 5, 0, NULL, NULL }, /* 119 */
- { 3, TD, sys_readv, "readv" }, /* 120 */
- { 3, TD, sys_writev, "writev" }, /* 121 */
- { 2, 0, sys_osf_settimeofday, "osf_settimeofday" }, /* 122 */
- { 3, TD, sys_fchown, "fchown" }, /* 123 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 124 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 125 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 126 */
- { 2, 0, sys_setregid, "setregid" }, /* 127 */
- { 2, TF, sys_rename, "rename" }, /* 128 */
- { 2, TF, sys_truncate, "truncate" }, /* 129 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 130 */
- { 2, TD, sys_flock, "flock" }, /* 131 */
- { 1, 0, sys_setgid, "setgid" }, /* 132 */
- { 6, TN, sys_sendto, "sendto" }, /* 133 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 134 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 135 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 136 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 137 */
- { 2, 0, sys_osf_utimes, "osf_utimes" }, /* 138 */
- { 5, 0, printargs, "osf_old_sigreturn" }, /* 139 */
- { 5, 0, printargs, "osf_adjtime" }, /* 140, not implemented */
- { 3, TN, sys_getpeername, "getpeername" }, /* 141 */
- { 5, 0, printargs, "osf_gethostid" }, /* 142, not implemented */
- { 5, 0, printargs, "osf_sethostid" }, /* 143, not implemented */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 144 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 145 */
- { 5, 0, printargs, "osf_old_killpg" }, /* 146, not implemented */
- { 0, 0, sys_setsid, "setsid" }, /* 147 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 148 */
- { 5, 0, printargs, "osf_oldquota" }, /* 149, not implemented */
- { 3, TN, sys_getsockname, "getsockname" }, /* 150 */
- { 5, 0, NULL, NULL }, /* 151 */
- { 5, 0, NULL, NULL }, /* 152 */
- { 5, 0, printargs, "osf_pid_block" }, /* 153, not implemented */
- { 5, 0, printargs, "osf_pid_unblock" }, /* 154, not implemented */
- { 5, 0, NULL, NULL }, /* 155 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 156 */
- { 5, 0, printargs, "osf_sigwaitprim" }, /* 157, not implemented */
- { 5, 0, printargs, "osf_nfssvc" }, /* 158, not implemented */
- { 4, 0, printargs, "osf_getdirentries" }, /* 159 */
- { 3, 0, osf_statfs, "osf_statfs" }, /* 160 */
- { 3, 0, osf_fstatfs, "osf_fstatfs" }, /* 161 */
- { 5, 0, NULL, NULL }, /* 162 */
- { 5, 0, printargs, "osf_asynch_daemon" }, /* 163, not implemented */
- { 5, 0, printargs, "osf_getfh" }, /* 164, not implemented */
- { 2, 0, printargs, "osf_getdomainname" }, /* 165 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 166 */
- { 5, 0, NULL, NULL }, /* 167 */
- { 5, 0, NULL, NULL }, /* 168 */
- { 5, 0, printargs, "osf_exportfs" }, /* 169, not implemented */
- { 5, 0, NULL, NULL }, /* 170 */
- { 5, 0, NULL, NULL }, /* 171 */
- { 5, 0, NULL, NULL }, /* 172 */
- { 5, 0, NULL, NULL }, /* 173 */
- { 5, 0, NULL, NULL }, /* 174 */
- { 5, 0, NULL, NULL }, /* 175 */
- { 5, 0, NULL, NULL }, /* 176 */
- { 5, 0, NULL, NULL }, /* 177 */
- { 5, 0, NULL, NULL }, /* 178 */
- { 5, 0, NULL, NULL }, /* 179 */
- { 5, 0, NULL, NULL }, /* 180 */
- { 5, 0, printargs, "osf_alt_plock" }, /* 181, not implemented */
- { 5, 0, NULL, NULL }, /* 182 */
- { 5, 0, NULL, NULL }, /* 183 */
- { 5, 0, printargs, "osf_getmnt" }, /* 184, not implemented */
- { 5, 0, NULL, NULL }, /* 185 */
- { 5, 0, NULL, NULL }, /* 186 */
- { 5, 0, printargs, "osf_alt_sigpending" }, /* 187, not implemented */
- { 5, 0, printargs, "osf_alt_setsid" }, /* 188, not implemented */
- { 5, 0, NULL, NULL }, /* 189 */
- { 5, 0, NULL, NULL }, /* 190 */
- { 5, 0, NULL, NULL }, /* 191 */
- { 5, 0, NULL, NULL }, /* 192 */
- { 5, 0, NULL, NULL }, /* 193 */
- { 5, 0, NULL, NULL }, /* 194 */
- { 5, 0, NULL, NULL }, /* 195 */
- { 5, 0, NULL, NULL }, /* 196 */
- { 5, 0, NULL, NULL }, /* 197 */
- { 5, 0, NULL, NULL }, /* 198 */
- { 4, 0, printargs, "osf_swapon" }, /* 199 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 200 */
- { 4, TI, sys_msgget, "msgget" }, /* 201 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 202 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 203 */
- { 4, TI, sys_semctl, "semctl" }, /* 204 */
- { 4, TI, sys_semget, "semget" }, /* 205 */
- { 4, TI, printargs, "semop" }, /* 206 */
- { 1, 0, printargs, "osf_utsname" }, /* 207 */
- { 3, TF, sys_chown, "lchown" }, /* 208 */
- { 3, TI|TM, printargs, "osf_shmat" }, /* 209 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 210 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 211 */
- { 4, TI, sys_shmget, "shmget" }, /* 212 */
- { 5, 0, printargs, "osf_mvalid" }, /* 213, not implemented */
- { 5, 0, printargs, "osf_getaddressconf" }, /* 214, not implemented */
- { 5, 0, printargs, "osf_msleep" }, /* 215, not implemented */
- { 5, 0, printargs, "osf_mwakeup" }, /* 216, not implemented */
- { 3, TM, sys_msync, "msync" }, /* 217 */
- { 5, 0, printargs, "osf_signal" }, /* 218, not implemented */
- { 5, 0, printargs, "osf_utc_gettime" }, /* 219, not implemented */
- { 5, 0, printargs, "osf_utc_adjtime" }, /* 220, not implemented */
- { 5, 0, NULL, NULL }, /* 221 */
- { 5, 0, printargs, "osf_security" }, /* 222, not implemented */
- { 5, 0, printargs, "osf_kloadcall" }, /* 223, not implemented */
- { 5, 0, NULL, NULL }, /* 224 */
- { 5, 0, NULL, NULL }, /* 225 */
- { 5, 0, NULL, NULL }, /* 226 */
- { 5, 0, NULL, NULL }, /* 227 */
- { 5, 0, NULL, NULL }, /* 228 */
- { 5, 0, NULL, NULL }, /* 229 */
- { 5, 0, NULL, NULL }, /* 230 */
- { 5, 0, NULL, NULL }, /* 231 */
- { 5, 0, NULL, NULL }, /* 232 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 233 */
- { 1, 0, sys_getsid, "getsid" }, /* 234 */
- { 5, TS, sys_sigaltstack, "sigaltstack" }, /* 235 */
- { 5, 0, printargs, "osf_waitid" }, /* 236, not implemented */
- { 5, 0, printargs, "osf_priocntlset" }, /* 237, not implemented */
- { 5, 0, printargs, "osf_sigsendset" }, /* 238, not implemented */
- { 5, 0, printargs, "osf_set_speculative" }, /* 239, not implemented */
- { 5, 0, printargs, "osf_msfs_syscall" }, /* 240, not implemented */
- { 5, 0, printargs, "osf_sysinfo" }, /* 241 */
- { 5, 0, printargs, "osf_uadmin" }, /* 242, not implemented */
- { 5, 0, printargs, "osf_fuser" }, /* 243, not implemented */
- { 2, 0, printargs, "osf_proplist_syscall" }, /* 244 */
- { 5, 0, printargs, "osf_ntp_adjtime" }, /* 245, not implemented */
- { 5, 0, printargs, "osf_ntp_gettime" }, /* 246, not implemented */
- { 5, 0, printargs, "osf_pathconf" }, /* 247, not implemented */
- { 5, 0, printargs, "osf_fpathconf" }, /* 248, not implemented */
- { 5, 0, NULL, NULL }, /* 249 */
- { 5, 0, printargs, "osf_uswitch" }, /* 250, not implemented */
- { 2, 0, printargs, "osf_usleep_thread" }, /* 251 */
- { 5, 0, printargs, "osf_audcntl" }, /* 252, not implemented */
- { 5, 0, printargs, "osf_audgen" }, /* 253, not implemented */
- { 5, 0, sys_sysfs, "sysfs" }, /* 254 */
- { 5, 0, printargs, "osf_subsysinfo" }, /* 255, not implemented */
- { 5, 0, printargs, "osf_getsysinfo" }, /* 256 */
- { 5, 0, printargs, "osf_setsysinfo" }, /* 257 */
- { 5, 0, printargs, "osf_afs_syscall" }, /* 258, not implemented */
- { 5, 0, printargs, "osf_swapctl" }, /* 259, not implemented */
- { 5, 0, printargs, "osf_memcntl" }, /* 260, not implemented */
- { 5, 0, printargs, "osf_fdatasync" }, /* 261, not implemented */
- { 5, 0, NULL, NULL }, /* 262 */
- { 5, 0, NULL, NULL }, /* 263 */
- { 5, 0, NULL, NULL }, /* 264 */
- { 5, 0, NULL, NULL }, /* 265 */
- { 5, 0, NULL, NULL }, /* 266 */
- { 5, 0, NULL, NULL }, /* 267 */
- { 5, 0, NULL, NULL }, /* 268 */
- { 5, 0, NULL, NULL }, /* 269 */
- { 5, 0, NULL, NULL }, /* 270 */
- { 5, 0, NULL, NULL }, /* 271 */
- { 5, 0, NULL, NULL }, /* 272 */
- { 5, 0, NULL, NULL }, /* 273 */
- { 5, 0, NULL, NULL }, /* 274 */
- { 5, 0, NULL, NULL }, /* 275 */
- { 5, 0, NULL, NULL }, /* 276 */
- { 5, 0, NULL, NULL }, /* 277 */
- { 5, 0, NULL, NULL }, /* 278 */
- { 5, 0, NULL, NULL }, /* 279 */
- { 5, 0, NULL, NULL }, /* 280 */
- { 5, 0, NULL, NULL }, /* 281 */
- { 5, 0, NULL, NULL }, /* 282 */
- { 5, 0, NULL, NULL }, /* 283 */
- { 5, 0, NULL, NULL }, /* 284 */
- { 5, 0, NULL, NULL }, /* 285 */
- { 5, 0, NULL, NULL }, /* 286 */
- { 5, 0, NULL, NULL }, /* 287 */
- { 5, 0, NULL, NULL }, /* 288 */
- { 5, 0, NULL, NULL }, /* 289 */
- { 5, 0, NULL, NULL }, /* 290 */
- { 5, 0, NULL, NULL }, /* 291 */
- { 5, 0, NULL, NULL }, /* 292 */
- { 5, 0, NULL, NULL }, /* 293 */
- { 5, 0, NULL, NULL }, /* 294 */
- { 5, 0, NULL, NULL }, /* 295 */
- { 5, 0, NULL, NULL }, /* 296 */
- { 5, 0, NULL, NULL }, /* 297 */
- { 5, 0, NULL, NULL }, /* 298 */
- { 5, 0, NULL, NULL }, /* 299 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 300 */
- { 3, 0, printargs, "sethae" }, /* 301 */
- { 5, TF, sys_mount, "mount" }, /* 302 */
- { 1, 0, sys_adjtimex, "adjtimex32" }, /* 303 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 304 */
- { 3, TD, sys_getdents, "getdents" }, /* 305 */
- { 2, 0, sys_create_module, "create_module" }, /* 306 */
- { 4, 0, sys_init_module, "init_module" }, /* 307 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 308 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms" }, /* 309 */
- { 3, 0, sys_syslog, "syslog" }, /* 310 */
- { 4, 0, sys_reboot, "reboot" }, /* 311 */
- { 5, TP, sys_clone, "clone" }, /* 312 */
- { 1, TF, sys_uselib, "uselib" }, /* 313 */
- { 2, TM, sys_mlock, "mlock" }, /* 314 */
- { 2, TM, sys_munlock, "munlock" }, /* 315 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 316 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 317 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 318 */
- { 1, 0, sys_sysctl, "sysctl" }, /* 319 */
- { 0, 0, sys_idle, "idle" }, /* 320 */
- { 1, TF, sys_umount, "oldumount" }, /* 321 */
- { 2, TF, sys_swapon, "swapon" }, /* 322 */
- { 1, 0, sys_times, "times" }, /* 323 */
- { 1, 0, sys_personality, "personality" }, /* 324 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 325 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 326 */
- { 2, 0, sys_ustat, "ustat" }, /* 327 */
- { 2, TF, sys_statfs, "statfs" }, /* 328 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 329 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 330 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 331 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 332 */
- { 2, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 333 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 334 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max" }, /* 335 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min" }, /* 336 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval" }, /* 337 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 338 */
- { 1, 0, sys_uname, "uname" }, /* 339 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 340 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 341 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 342 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 343 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 344 */
- { 5, 0, printargs, "pciconfig_read" }, /* 345 */
- { 5, 0, printargs, "pciconfig_write" }, /* 346 */
- { 5, 0, sys_query_module, "query_module" }, /* 347 */
- { 5, 0, sys_prctl, "prctl" }, /* 348 */
- { 4, TD, sys_pread, "pread" }, /* 349 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 350 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 351 */
- { 5, TS, sys_rt_sigaction, "rt_sigaction" }, /* 352 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 353 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 354 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 355 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 356 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 357 */
- { 5, TD, sys_select, "select" }, /* 358 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 359 */
- { 3, 0, sys_settimeofday, "settimeofday" }, /* 360 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 361 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 362 */
- { 2, TF, sys_utimes, "utimes" }, /* 363 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 364 */
- { 4, TP, sys_wait4, "wait4" }, /* 365 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 366 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 367 */
- { 2, 0, sys_capget, "capget" }, /* 368 */
- { 2, 0, sys_capset, "capset" }, /* 369 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 370 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 371 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 372 */
- { 4, 0, printargs, "dipc" }, /* 373, not implemented */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 374 */
- { 3, TM, sys_mincore, "mincore" }, /* 375 */
- { 3, 0, printargs, "pciconfig_iobase" }, /* 376 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 377 */
- { 0, 0, sys_gettid, "gettid" }, /* 378 */
- { 3, TD, sys_readahead, "readahead" }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 2, TS, sys_kill, "tkill" }, /* 381 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 382 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 383 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 384 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 385 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 386 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 387 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 388 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 389 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 390 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 391 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 392 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 393 */
- { 6, 0, sys_futex, "futex" }, /* 394 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 395 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 396 */
- { 5, 0, sys_tuxcall, "tuxcall" }, /* 397 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 398 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 399 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 400 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 401 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 402 */
- { 5, 0, NULL, NULL }, /* 403 */
- { 5, 0, NULL, NULL }, /* 404 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 405 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 406 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 407 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 408 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 409 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 410 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 411 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 412 */
- { 4, TD, sys_fadvise64, "fadvise" }, /* 413 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 414 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 415 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 416 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 417 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 418 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 419 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 420 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 421 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 422 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 423 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 424 */
- { 2, TF, sys_stat64, "stat64" }, /* 425 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 426 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 427 */
- { 5, 0, sys_vserver, "vserver" }, /* 428 ??? */
- { 5, TM, printargs, "mbind" }, /* 429 ??? */
- { 5, TM, printargs, "get_mempolicy" }, /* 430 ??? */
- { 5, TM, printargs, "set_mempolicy" }, /* 431 ??? */
- { 4, 0, sys_mq_open, "mq_open" }, /* 432 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 433 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 434 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 435 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 436 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 437 */
- { 5, TP, sys_waitid, "waitid" }, /* 438 */
- { 5, 0, sys_add_key, "add_key" }, /* 439 */
- { 4, 0, sys_request_key, "request_key" }, /* 440 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 441 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 442 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 443 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 444 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 445 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 446 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 447 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 448 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 449 */
- { 4, TD|TF, sys_openat, "openat" }, /* 450 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 451 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 452 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 453 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 454 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 455 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 456 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 457 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 458 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 459 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 460 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 461 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 462 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 463 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 464 */
- { 1, TP, sys_unshare, "unshare" }, /* 465 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 466 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 467 */
- { 6, TD, sys_splice, "splice" }, /* 468 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 469 */
- { 4, TD, sys_tee, "tee" }, /* 470 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 471 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 472 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 473 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 474 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 475 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 476 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 477 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 478 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 479 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 480 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 481 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 482 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 483 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 484 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 485 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 486 */
- { 3, TD, sys_dup3, "dup3" }, /* 487 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 488 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 489 */
- { 4, TD, sys_preadv, "preadv" }, /* 490 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 491 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 492 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 493 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 494 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 495 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 496 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 497 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 498 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 499 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 500 */
- { 2, TD, sys_setns, "setns" }, /* 501 */
- { 4, TN, sys_accept4, "accept4" }, /* 502 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 503 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 504 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 505 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 506 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 507 */
+[ 0] = { 6, 0, printargs, "osf_syscall" }, /*not implemented */
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 5, 0, printargs, "osf_old_open" }, /*not implemented */
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 4, TP, sys_osf_wait4, "osf_wait4" },
+[ 8] = { 5, 0, printargs, "osf_old_creat" }, /*not implemented */
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 5, 0, printargs, "osf_execve" }, /*not implemented */
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, TD, sys_fchdir, "fchdir" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown, "chown" },
+[ 17] = { 1, TM|SI, sys_brk, "brk" },
+[ 18] = { 5, 0, printargs, "osf_getfsstat" }, /*not implemented */
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getxpid" },
+[ 21] = { 4, 0, printargs, "osf_mount" },
+[ 22] = { 2, TF, sys_umount2, "umount" },
+[ 23] = { 1, 0, sys_setuid, "setuid" },
+[ 24] = { 0, NF, sys_getuid, "getxuid" },
+[ 25] = { 5, 0, printargs, "exec_with_loader" }, /*not implemented */
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 5, 0, printargs, "osf_nrecvmsg" }, /*not implemented */
+[ 28] = { 5, 0, printargs, "osf_nsendmsg" }, /*not implemented */
+[ 29] = { 5, 0, printargs, "osf_nrecvfrom" }, /*not implemented */
+[ 30] = { 5, 0, printargs, "osf_naccept" }, /*not implemented */
+[ 31] = { 5, 0, printargs, "osf_ngetpeername" }, /*not implemented */
+[ 32] = { 5, 0, printargs, "osf_ngetsockname" }, /*not implemented */
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 5, 0, printargs, "osf_chflags" }, /*not implemented */
+[ 35] = { 5, 0, printargs, "osf_fchflags" }, /*not implemented */
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 5, 0, printargs, "osf_old_stat" }, /*not implemented */
+[ 39] = { 2, 0, sys_setpgid, "setpgid" },
+[ 40] = { 5, 0, printargs, "osf_old_lstat" }, /*not implemented */
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 5, 0, printargs, "osf_set_program_attributes" },
+[ 44] = { 5, 0, printargs, "osf_profil" }, /*not implemented */
+[ 45] = { 3, TD|TF, sys_open, "open" },
+[ 46] = { 5, 0, printargs, "osf_old_sigaction" }, /*not implemented */
+[ 47] = { 1, NF, sys_getgid, "getxgid" },
+[ 48] = { 2, TS, sys_sigprocmask, "osf_sigprocmask" },
+[ 49] = { 5, 0, printargs, "osf_getlogin" }, /*not implemented */
+[ 50] = { 5, 0, printargs, "osf_setlogin" }, /*not implemented */
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 1, TS, sys_sigpending, "sigpending" },
+[ 53] = { },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 5, 0, printargs, "osf_reboot" }, /*not implemented */
+[ 56] = { 5, 0, printargs, "osf_revoke" }, /*not implemented */
+[ 57] = { 2, TF, sys_symlink, "symlink" },
+[ 58] = { 3, TF, sys_readlink, "readlink" },
+[ 59] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 5, 0, printargs, "osf_old_fstat" }, /*not implemented */
+[ 63] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 64] = { 0, 0, sys_getpagesize, "getpagesize" },
+[ 65] = { 5, TM, printargs, "osf_mremap" }, /*not implemented */
+[ 66] = { 0, TP, sys_vfork, "vfork" },
+[ 67] = { 2, TF, sys_stat, "stat" },
+[ 68] = { 2, TF, sys_lstat, "lstat" },
+[ 69] = { 5, TM, printargs, "osf_sbrk" }, /*not implemented */
+[ 70] = { 5, 0, printargs, "osf_sstk" }, /*not implemented */
+[ 71] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 72] = { 5, 0, printargs, "osf_old_vadvise" }, /*not implemented */
+[ 73] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 74] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[ 75] = { 3, TM, sys_madvise, "madvise" },
+[ 76] = { 0, 0, sys_vhangup, "vhangup" },
+[ 77] = { 5, 0, printargs, "osf_kmodcall" }, /*not implemented */
+[ 78] = { 5, TM, printargs, "osf_mincore" }, /*not implemented */
+[ 79] = { 2, 0, sys_getgroups, "getgroups" },
+[ 80] = { 2, 0, sys_setgroups, "setgroups" },
+[ 81] = { 5, 0, printargs, "osf_old_getpgrp" }, /*not implemented */
+[ 82] = { 2, 0, sys_setpgrp, "setpgrp" },
+[ 83] = { 3, 0, sys_osf_setitimer, "osf_setitimer" },
+[ 84] = { 5, 0, printargs, "osf_old_wait" }, /*not implemented */
+[ 85] = { 5, 0, printargs, "osf_table" }, /*not implemented */
+[ 86] = { 2, 0, sys_osf_getitimer, "osf_getitimer" },
+[ 87] = { 2, 0, sys_gethostname, "gethostname" },
+[ 88] = { 2, 0, sys_sethostname, "sethostname" },
+[ 89] = { 0, 0, sys_getdtablesize, "getdtablesize" },
+[ 90] = { 2, TD, sys_dup2, "dup2" },
+[ 91] = { 2, TD, sys_fstat, "fstat" },
+[ 92] = { 3, TD, sys_fcntl, "fcntl" },
+[ 93] = { 5, 0, sys_osf_select, "osf_select" },
+[ 94] = { 3, TD, sys_poll, "poll" },
+[ 95] = { 1, TD, sys_fsync, "fsync" },
+[ 96] = { 3, 0, sys_setpriority, "setpriority" },
+[ 97] = { 3, TN, sys_socket, "socket" },
+[ 98] = { 3, TN, sys_connect, "connect" },
+[ 99] = { 3, TN, sys_accept, "accept" },
+[100] = { 2, 0, sys_getpriority, "osf_getpriority" },
+[101] = { 4, TN, sys_send, "send" },
+[102] = { 4, TN, sys_recv, "recv" },
+[103] = { 0, TS, sys_sigreturn, "sigreturn" },
+[104] = { 3, TN, sys_bind, "bind" },
+[105] = { 5, TN, sys_setsockopt, "setsockopt" },
+[106] = { 2, TN, sys_listen, "listen" },
+[107] = { 5, 0, printargs, "osf_plock" }, /*not implemented */
+[108] = { 5, 0, printargs, "osf_old_sigvec" }, /*not implemented */
+[109] = { 5, 0, printargs, "osf_old_sigblock" }, /*not implemented */
+[110] = { 5, 0, printargs, "osf_old_sigsetmask" }, /*not implemented */
+[111] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[112] = { 5, 0, printargs, "sigstack" },
+[113] = { 3, TN, sys_recvmsg, "recvmsg" },
+[114] = { 3, TN, sys_sendmsg, "sendmsg" },
+[115] = { 5, 0, printargs, "osf_old_vtrace" }, /*not implemented */
+[116] = { 2, 0, sys_osf_gettimeofday, "osf_gettimeofday" },
+[117] = { 2, 0, sys_osf_getrusage, "osf_getrusage" },
+[118] = { 5, TN, sys_getsockopt, "getsockopt" },
+[119] = { },
+[120] = { 3, TD, sys_readv, "readv" },
+[121] = { 3, TD, sys_writev, "writev" },
+[122] = { 2, 0, sys_osf_settimeofday, "osf_settimeofday" },
+[123] = { 3, TD, sys_fchown, "fchown" },
+[124] = { 2, TD, sys_fchmod, "fchmod" },
+[125] = { 6, TN, sys_recvfrom, "recvfrom" },
+[126] = { 2, 0, sys_setreuid, "setreuid" },
+[127] = { 2, 0, sys_setregid, "setregid" },
+[128] = { 2, TF, sys_rename, "rename" },
+[129] = { 2, TF, sys_truncate, "truncate" },
+[130] = { 2, TD, sys_ftruncate, "ftruncate" },
+[131] = { 2, TD, sys_flock, "flock" },
+[132] = { 1, 0, sys_setgid, "setgid" },
+[133] = { 6, TN, sys_sendto, "sendto" },
+[134] = { 2, TN, sys_shutdown, "shutdown" },
+[135] = { 4, TN, sys_socketpair, "socketpair" },
+[136] = { 2, TF, sys_mkdir, "mkdir" },
+[137] = { 1, TF, sys_rmdir, "rmdir" },
+[138] = { 2, 0, sys_osf_utimes, "osf_utimes" },
+[139] = { 5, 0, printargs, "osf_old_sigreturn" },
+[140] = { 5, 0, printargs, "osf_adjtime" }, /*not implemented */
+[141] = { 3, TN, sys_getpeername, "getpeername" },
+[142] = { 5, 0, printargs, "osf_gethostid" }, /*not implemented */
+[143] = { 5, 0, printargs, "osf_sethostid" }, /*not implemented */
+[144] = { 2, 0, sys_getrlimit, "getrlimit" },
+[145] = { 2, 0, sys_setrlimit, "setrlimit" },
+[146] = { 5, 0, printargs, "osf_old_killpg" }, /*not implemented */
+[147] = { 0, 0, sys_setsid, "setsid" },
+[148] = { 4, TF, sys_quotactl, "quotactl" },
+[149] = { 5, 0, printargs, "osf_oldquota" }, /*not implemented */
+[150] = { 3, TN, sys_getsockname, "getsockname" },
+[151 ... 152] = { },
+[153] = { 5, 0, printargs, "osf_pid_block" }, /*not implemented */
+[154] = { 5, 0, printargs, "osf_pid_unblock" }, /*not implemented */
+[155] = { },
+[156] = { 3, TS, sys_sigaction, "sigaction" },
+[157] = { 5, 0, printargs, "osf_sigwaitprim" }, /*not implemented */
+[158] = { 5, 0, printargs, "osf_nfssvc" }, /*not implemented */
+[159] = { 4, 0, printargs, "osf_getdirentries" },
+[160] = { 3, 0, osf_statfs, "osf_statfs" },
+[161] = { 3, 0, osf_fstatfs, "osf_fstatfs" },
+[162] = { },
+[163] = { 5, 0, printargs, "osf_asynch_daemon" }, /*not implemented */
+[164] = { 5, 0, printargs, "osf_getfh" }, /*not implemented */
+[165] = { 2, 0, printargs, "osf_getdomainname" },
+[166] = { 2, 0, sys_setdomainname, "setdomainname" },
+[167 ... 168] = { },
+[169] = { 5, 0, printargs, "osf_exportfs" }, /*not implemented */
+[170 ... 180] = { },
+[181] = { 5, 0, printargs, "osf_alt_plock" }, /*not implemented */
+[182 ... 183] = { },
+[184] = { 5, 0, printargs, "osf_getmnt" }, /*not implemented */
+[185 ... 186] = { },
+[187] = { 5, 0, printargs, "osf_alt_sigpending" }, /*not implemented */
+[188] = { 5, 0, printargs, "osf_alt_setsid" }, /*not implemented */
+[189 ... 198] = { },
+[199] = { 4, 0, printargs, "osf_swapon" },
+[200] = { 3, TI, sys_msgctl, "msgctl" },
+[201] = { 2, TI, sys_msgget, "msgget" },
+[202] = { 5, TI, sys_msgrcv, "msgrcv" },
+[203] = { 4, TI, sys_msgsnd, "msgsnd" },
+[204] = { 4, TI, sys_semctl, "semctl" },
+[205] = { 3, TI, sys_semget, "semget" },
+[206] = { 4, TI, printargs, "semop" },
+[207] = { 1, 0, printargs, "osf_utsname" },
+[208] = { 3, TF, sys_chown, "lchown" },
+[209] = { 3, TI|TM, printargs, "osf_shmat" },
+[210] = { 3, TI, sys_shmctl, "shmctl" },
+[211] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[212] = { 3, TI, sys_shmget, "shmget" },
+[213] = { 5, 0, printargs, "osf_mvalid" }, /*not implemented */
+[214] = { 5, 0, printargs, "osf_getaddressconf" }, /*not implemented */
+[215] = { 5, 0, printargs, "osf_msleep" }, /*not implemented */
+[216] = { 5, 0, printargs, "osf_mwakeup" }, /*not implemented */
+[217] = { 3, TM, sys_msync, "msync" },
+[218] = { 5, 0, printargs, "osf_signal" }, /*not implemented */
+[219] = { 5, 0, printargs, "osf_utc_gettime" }, /*not implemented */
+[220] = { 5, 0, printargs, "osf_utc_adjtime" }, /*not implemented */
+[221] = { },
+[222] = { 5, 0, printargs, "osf_security" }, /*not implemented */
+[223] = { 5, 0, printargs, "osf_kloadcall" }, /*not implemented */
+[224 ... 232] = { },
+[233] = { 1, 0, sys_getpgid, "getpgid" },
+[234] = { 1, 0, sys_getsid, "getsid" },
+[235] = { 5, TS, sys_sigaltstack, "sigaltstack" },
+[236] = { 5, 0, printargs, "osf_waitid" }, /*not implemented */
+[237] = { 5, 0, printargs, "osf_priocntlset" }, /*not implemented */
+[238] = { 5, 0, printargs, "osf_sigsendset" }, /*not implemented */
+[239] = { 5, 0, printargs, "osf_set_speculative" }, /*not implemented */
+[240] = { 5, 0, printargs, "osf_msfs_syscall" }, /*not implemented */
+[241] = { 5, 0, printargs, "osf_sysinfo" },
+[242] = { 5, 0, printargs, "osf_uadmin" }, /*not implemented */
+[243] = { 5, 0, printargs, "osf_fuser" }, /*not implemented */
+[244] = { 2, 0, printargs, "osf_proplist_syscall" },
+[245] = { 5, 0, printargs, "osf_ntp_adjtime" }, /*not implemented */
+[246] = { 5, 0, printargs, "osf_ntp_gettime" }, /*not implemented */
+[247] = { 5, 0, printargs, "osf_pathconf" }, /*not implemented */
+[248] = { 5, 0, printargs, "osf_fpathconf" }, /*not implemented */
+[249] = { },
+[250] = { 5, 0, printargs, "osf_uswitch" }, /*not implemented */
+[251] = { 2, 0, printargs, "osf_usleep_thread" },
+[252] = { 5, 0, printargs, "osf_audcntl" }, /*not implemented */
+[253] = { 5, 0, printargs, "osf_audgen" }, /*not implemented */
+[254] = { 5, 0, sys_sysfs, "sysfs" },
+[255] = { 5, 0, printargs, "osf_subsysinfo" }, /*not implemented */
+[256] = { 5, 0, printargs, "osf_getsysinfo" },
+[257] = { 5, 0, printargs, "osf_setsysinfo" },
+[258] = { 5, 0, printargs, "osf_afs_syscall" }, /*not implemented */
+[259] = { 5, 0, printargs, "osf_swapctl" }, /*not implemented */
+[260] = { 5, 0, printargs, "osf_memcntl" }, /*not implemented */
+[261] = { 5, 0, printargs, "osf_fdatasync" }, /*not implemented */
+[262 ... 299] = { },
+[300] = { 0, 0, sys_bdflush, "bdflush" },
+[301] = { 3, 0, printargs, "sethae" },
+[302] = { 5, TF, sys_mount, "mount" },
+[303] = { 1, 0, sys_adjtimex, "adjtimex32" },
+[304] = { 1, TF, sys_swapoff, "swapoff" },
+[305] = { 3, TD, sys_getdents, "getdents" },
+[306] = { 2, 0, sys_create_module, "create_module" },
+[307] = { 4, 0, sys_init_module, "init_module" },
+[308] = { 2, 0, sys_delete_module, "delete_module" },
+[309] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[310] = { 3, 0, sys_syslog, "syslog" },
+[311] = { 4, 0, sys_reboot, "reboot" },
+[312] = { 5, TP, sys_clone, "clone" },
+[313] = { 1, TF, sys_uselib, "uselib" },
+[314] = { 2, TM, sys_mlock, "mlock" },
+[315] = { 2, TM, sys_munlock, "munlock" },
+[316] = { 1, TM, sys_mlockall, "mlockall" },
+[317] = { 0, TM, sys_munlockall, "munlockall" },
+[318] = { 1, 0, sys_sysinfo, "sysinfo" },
+[319] = { 1, 0, sys_sysctl, "sysctl" },
+[320] = { 0, 0, sys_idle, "idle" },
+[321] = { 1, TF, sys_umount, "oldumount" },
+[322] = { 2, TF, sys_swapon, "swapon" },
+[323] = { 1, 0, sys_times, "times" },
+[324] = { 1, 0, sys_personality, "personality" },
+[325] = { 1, NF, sys_setfsuid, "setfsuid" },
+[326] = { 1, NF, sys_setfsgid, "setfsgid" },
+[327] = { 2, 0, sys_ustat, "ustat" },
+[328] = { 2, TF, sys_statfs, "statfs" },
+[329] = { 2, TD, sys_fstatfs, "fstatfs" },
+[330] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[331] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[332] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[333] = { 2, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[334] = { 0, 0, sys_sched_yield, "sched_yield" },
+[335] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[336] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[337] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[338] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[339] = { 1, 0, sys_uname, "uname" },
+[340] = { 2, 0, sys_nanosleep, "nanosleep" },
+[341] = { 5, TM|SI, sys_mremap, "mremap" },
+[342] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[343] = { 3, 0, sys_setresuid, "setresuid" },
+[344] = { 3, 0, sys_getresuid, "getresuid" },
+[345] = { 5, 0, printargs, "pciconfig_read" },
+[346] = { 5, 0, printargs, "pciconfig_write" },
+[347] = { 5, 0, sys_query_module, "query_module" },
+[348] = { 5, 0, sys_prctl, "prctl" },
+[349] = { 4, TD, sys_pread, "pread" },
+[350] = { 4, TD, sys_pwrite, "pwrite" },
+[351] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[352] = { 5, TS, sys_rt_sigaction, "rt_sigaction" },
+[353] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[354] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[355] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[356] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[357] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[358] = { 5, TD, sys_select, "select" },
+[359] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[360] = { 3, 0, sys_settimeofday, "settimeofday" },
+[361] = { 2, 0, sys_getitimer, "getitimer" },
+[362] = { 3, 0, sys_setitimer, "setitimer" },
+[363] = { 2, TF, sys_utimes, "utimes" },
+[364] = { 2, 0, sys_getrusage, "getrusage" },
+[365] = { 4, TP, sys_wait4, "wait4" },
+[366] = { 1, 0, sys_adjtimex, "adjtimex" },
+[367] = { 2, TF, sys_getcwd, "getcwd" },
+[368] = { 2, 0, sys_capget, "capget" },
+[369] = { 2, 0, sys_capset, "capset" },
+[370] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[371] = { 3, 0, sys_setresgid, "setresgid" },
+[372] = { 3, 0, sys_getresgid, "getresgid" },
+[373] = { 4, 0, printargs, "dipc" }, /*not implemented */
+[374] = { 2, TF, sys_pivotroot, "pivot_root" },
+[375] = { 3, TM, sys_mincore, "mincore" },
+[376] = { 3, 0, printargs, "pciconfig_iobase" },
+[377] = { 3, TD, sys_getdents64, "getdents64" },
+[378] = { 0, 0, sys_gettid, "gettid" },
+[379] = { 3, TD, sys_readahead, "readahead" },
+[380] = { },
+[381] = { 2, TS, sys_kill, "tkill" },
+[382] = { 5, TF, sys_setxattr, "setxattr" },
+[383] = { 5, TF, sys_setxattr, "lsetxattr" },
+[384] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[385] = { 4, TF, sys_getxattr, "getxattr" },
+[386] = { 4, TF, sys_getxattr, "lgetxattr" },
+[387] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[388] = { 3, TF, sys_listxattr, "listxattr" },
+[389] = { 3, TF, sys_listxattr, "llistxattr" },
+[390] = { 3, TD, sys_flistxattr, "flistxattr" },
+[391] = { 2, TF, sys_removexattr, "removexattr" },
+[392] = { 2, TF, sys_removexattr, "lremovexattr" },
+[393] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[394] = { 6, 0, sys_futex, "futex" },
+[395] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[396] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[397] = { 5, 0, sys_tuxcall, "tuxcall" },
+[398] = { 2, 0, sys_io_setup, "io_setup" },
+[399] = { 1, 0, sys_io_destroy, "io_destroy" },
+[400] = { 5, 0, sys_io_getevents, "io_getevents" },
+[401] = { 3, 0, sys_io_submit, "io_submit" },
+[402] = { 3, 0, sys_io_cancel, "io_cancel" },
+[403 ... 404] = { },
+[405] = { 1, TP|SE, sys_exit, "exit_group" },
+[406] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[407] = { 1, TD, sys_epoll_create, "epoll_create" },
+[408] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[409] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[410] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[411] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[412] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[413] = { 4, TD, sys_fadvise64, "fadvise64" },
+[414] = { 3, 0, sys_timer_create, "timer_create" },
+[415] = { 4, 0, sys_timer_settime, "timer_settime" },
+[416] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[417] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[418] = { 1, 0, sys_timer_delete, "timer_delete" },
+[419] = { 2, 0, sys_clock_settime, "clock_settime" },
+[420] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[421] = { 2, 0, sys_clock_getres, "clock_getres" },
+[422] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[423] = { 4, TI, sys_semtimedop, "semtimedop" },
+[424] = { 3, TS, sys_tgkill, "tgkill" },
+[425] = { 2, TF, sys_stat64, "stat64" },
+[426] = { 2, TF, sys_lstat64, "lstat64" },
+[427] = { 2, TD, sys_fstat64, "fstat64" },
+[428] = { 5, 0, sys_vserver, "vserver" },
+[429] = { 6, TM, sys_mbind, "mbind" },
+[430] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[431] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[432] = { 4, 0, sys_mq_open, "mq_open" },
+[433] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[434] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[435] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[436] = { 2, 0, sys_mq_notify, "mq_notify" },
+[437] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[438] = { 5, TP, sys_waitid, "waitid" },
+[439] = { 5, 0, sys_add_key, "add_key" },
+[440] = { 4, 0, sys_request_key, "request_key" },
+[441] = { 5, 0, sys_keyctl, "keyctl" },
+[442] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[443] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[444] = { 0, TD, sys_inotify_init, "inotify_init" },
+[445] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[446] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[447] = { 1, TD, sys_fdatasync, "fdatasync" },
+[448] = { 4, 0, sys_kexec_load, "kexec_load" },
+[449] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[450] = { 4, TD|TF, sys_openat, "openat" },
+[451] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[452] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[453] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[454] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[455] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[456] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[457] = { 4, TD|TF, sys_renameat, "renameat" },
+[458] = { 5, TD|TF, sys_linkat, "linkat" },
+[459] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[460] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[461] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[462] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[463] = { 6, TD, sys_pselect6, "pselect6" },
+[464] = { 5, TD, sys_ppoll, "ppoll" },
+[465] = { 1, TP, sys_unshare, "unshare" },
+[466] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[467] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[468] = { 6, TD, sys_splice, "splice" },
+[469] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[470] = { 4, TD, sys_tee, "tee" },
+[471] = { 4, TD, sys_vmsplice, "vmsplice" },
+[472] = { 6, TM, sys_move_pages, "move_pages" },
+[473] = { 3, 0, sys_getcpu, "getcpu" },
+[474] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[475] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[476] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[477] = { 4, TD, sys_timerfd, "timerfd" },
+[478] = { 1, TD, sys_eventfd, "eventfd" },
+[479] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[480] = { 4, TD, sys_fallocate, "fallocate" },
+[481] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[482] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[483] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[484] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[485] = { 2, TD, sys_eventfd2, "eventfd2" },
+[486] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[487] = { 3, TD, sys_dup3, "dup3" },
+[488] = { 2, TD, sys_pipe2, "pipe2" },
+[489] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[490] = { 4, TD, sys_preadv, "preadv" },
+[491] = { 4, TD, sys_pwritev, "pwritev" },
+[492] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[493] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[494] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[495] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[496] = { 4, 0, sys_prlimit64, "prlimit64" },
+[497] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[498] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[499] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[500] = { 1, TD, sys_syncfs, "syncfs" },
+[501] = { 2, TD, sys_setns, "setns" },
+[502] = { 4, TN, sys_accept4, "accept4" },
+[503] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[504] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[505] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[506] = { 5, 0, sys_kcmp, "kcmp" },
+[507] = { 3, TD, sys_finit_module, "finit_module" },
+[508] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[509] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[510] = { 5, TD|TF, sys_renameat2, "renameat2" },
diff --git a/linux/arc/ioctlent.h.in b/linux/arc/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/arc/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/arc/ioctls_arch0.h b/linux/arc/ioctls_arch0.h
new file mode 100644
index 0000000..2103d5b
--- /dev/null
+++ b/linux/arc/ioctls_arch0.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/arc/include/ tree. */
diff --git a/linux/arc/ioctls_inc0.h b/linux/arc/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/arc/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/arc/syscallent.h b/linux/arc/syscallent.h
index 6bc9f27..6f1e90d 100644
--- a/linux/arc/syscallent.h
+++ b/linux/arc/syscallent.h
@@ -1,264 +1,6 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount2" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { }, /* 42 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 43 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 44 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 45 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 46 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 5, TD, sys_llseek, "_llseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 5, TD, sys_pread, "pread64" }, /* 67 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 5, TD, sys_preadv, "preadv" }, /* 69 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 79 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"}, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"}, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 2, TI, sys_msgget, "msgget" }, /* 186 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 3, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 4, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 3, TI, sys_semop, "semop" }, /* 193 */
- { 3, TI, sys_shmget, "shmget" }, /* 194 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 4, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap, "mmap2" }, /* 222 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 223 */
- { 2, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 2, TM, sys_mlock, "mlock" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
- { 3, 0, printargs, "arc_cacheflush" }, /* 244 */
- { 1, 0, printargs, "arc_settls" }, /* 245 */
- { 0, 0, printargs, "arc_gettls" }, /* 246 */
-
- [247 ... 259] = { },
-
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
+#define ARCH_sys_mmap sys_mmap_pgoff
+#include "32/syscallent.h"
+[244] = { 3, 0, printargs, "arc_cacheflush"},
+[245] = { 1, 0, printargs, "arc_settls" },
+[246] = { 0, 0, printargs, "arc_gettls" },
+[247 ... 259] = { },
diff --git a/linux/arch_regs.h b/linux/arch_regs.h
new file mode 100644
index 0000000..da84fa5
--- /dev/null
+++ b/linux/arch_regs.h
@@ -0,0 +1 @@
+/* nothing */
diff --git a/linux/arm/arch_regs.h b/linux/arm/arch_regs.h
new file mode 100644
index 0000000..bdbc8e9
--- /dev/null
+++ b/linux/arm/arch_regs.h
@@ -0,0 +1 @@
+extern long *const arm_sp_ptr;
diff --git a/linux/arm/ioctlent.h.in b/linux/arm/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/arm/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/arm/ioctls_arch0.h b/linux/arm/ioctls_arch0.h
new file mode 100644
index 0000000..f3cce0f
--- /dev/null
+++ b/linux/arm/ioctls_arch0.h
@@ -0,0 +1,2 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/arm/include/ tree. */
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x545E, 0 },
diff --git a/linux/arm/ioctls_inc0.h b/linux/arm/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/arm/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/arm/syscallent.h b/linux/arm/syscallent.h
index 6dff25e..b66a5a2 100644
--- a/linux/arm/syscallent.h
+++ b/linux/arm/syscallent.h
@@ -26,478 +26,417 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 0 */
- { 1, TP|SE, sys_exit, "exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 1, TD|TM|SI, sys_old_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 5, 0, printargs, "syscall" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, sys_vm86, "vm86" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 1, TD|TM|SI, sys_old_mmap, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 5, 0, printargs, "syscall" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, sys_vm86, "vm86" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 6, TD, sys_pread, "pread64" },
+[181] = { 6, TD, sys_pwrite, "pwrite64" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[193] = { 4, TF, sys_truncate64, "truncate64" },
+[194] = { 4, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_geteuid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 3, TD, sys_getdents64, "getdents64" },
+[218] = { 2, TF, sys_pivotroot, "pivot_root" },
+[219] = { 3, TM, sys_mincore, "mincore" },
+[220] = { 3, TM, sys_madvise, "madvise" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222 ... 223] = { },
+[224] = { 0, 0, sys_gettid, "gettid" },
+[225] = { 5, TD, sys_readahead, "readahead" },
+[226] = { 5, TF, sys_setxattr, "setxattr" },
+[227] = { 5, TF, sys_setxattr, "lsetxattr" },
+[228] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[229] = { 4, TF, sys_getxattr, "getxattr" },
+[230] = { 4, TF, sys_getxattr, "lgetxattr" },
+[231] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[232] = { 3, TF, sys_listxattr, "listxattr" },
+[233] = { 3, TF, sys_listxattr, "llistxattr" },
+[234] = { 3, TD, sys_flistxattr, "flistxattr" },
+[235] = { 2, TF, sys_removexattr, "removexattr" },
+[236] = { 2, TF, sys_removexattr, "lremovexattr" },
+[237] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[238] = { 2, TS, sys_kill, "tkill" },
+[239] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[240] = { 6, 0, sys_futex, "futex" },
+[241] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[242] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[243] = { 2, 0, sys_io_setup, "io_setup" },
+[244] = { 1, 0, sys_io_destroy, "io_destroy" },
+[245] = { 5, 0, sys_io_getevents, "io_getevents" },
+[246] = { 3, 0, sys_io_submit, "io_submit" },
+[247] = { 3, 0, sys_io_cancel, "io_cancel" },
+[248] = { 1, TP|SE, sys_exit, "exit_group" },
+[249] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[250] = { 1, TD, sys_epoll_create, "epoll_create" },
+[251] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[252] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[253] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[254 ... 255] = { },
+[256] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[257] = { 3, 0, sys_timer_create, "timer_create" },
+[258] = { 4, 0, sys_timer_settime, "timer_settime" },
+[259] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[260] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[261] = { 1, 0, sys_timer_delete, "timer_delete" },
+[262] = { 2, 0, sys_clock_settime, "clock_settime" },
+[263] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[264] = { 2, 0, sys_clock_getres, "clock_getres" },
+[265] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[266] = { 3, TF, sys_statfs64, "statfs64" },
+[267] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[268] = { 3, TS, sys_tgkill, "tgkill" },
+[269] = { 2, TF, sys_utimes, "utimes" },
+[270] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[271] = { 5, 0, printargs, "pciconfig_iobase" },
+[272] = { 5, 0, printargs, "pciconfig_read" },
+[273] = { 5, 0, printargs, "pciconfig_write" },
+[274] = { 4, 0, sys_mq_open, "mq_open" },
+[275] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[276] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[277] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[278] = { 2, 0, sys_mq_notify, "mq_notify" },
+[279] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[280] = { 5, TP, sys_waitid, "waitid" },
+[281] = { 3, TN, sys_socket, "socket" },
+[282] = { 3, TN, sys_bind, "bind" },
+[283] = { 3, TN, sys_connect, "connect" },
+[284] = { 2, TN, sys_listen, "listen" },
+[285] = { 3, TN, sys_accept, "accept" },
+[286] = { 3, TN, sys_getsockname, "getsockname" },
+[287] = { 3, TN, sys_getpeername, "getpeername" },
+[288] = { 4, TN, sys_socketpair, "socketpair" },
+[289] = { 4, TN, sys_send, "send" },
+[290] = { 6, TN, sys_sendto, "sendto" },
+[291] = { 4, TN, sys_recv, "recv" },
+[292] = { 6, TN, sys_recvfrom, "recvfrom" },
+[293] = { 2, TN, sys_shutdown, "shutdown" },
+[294] = { 5, TN, sys_setsockopt, "setsockopt" },
+[295] = { 5, TN, sys_getsockopt, "getsockopt" },
+[296] = { 3, TN, sys_sendmsg, "sendmsg" },
+[297] = { 3, TN, sys_recvmsg, "recvmsg" },
+[298] = { 4, TI, sys_semop, "semop" },
+[299] = { 3, TI, sys_semget, "semget" },
+[300] = { 4, TI, sys_semctl, "semctl" },
+[301] = { 4, TI, sys_msgsnd, "msgsnd" },
+[302] = { 4, TI, sys_msgrcv, "msgrcv" },
+[303] = { 2, TI, sys_msgget, "msgget" },
+[304] = { 4, TI, sys_msgctl, "msgctl" },
+[305] = { 4, TI|TM|SI, sys_shmat, "shmat" },
+[306] = { 4, TI|TM|SI, sys_shmdt, "shmdt" },
+[307] = { 3, TI, sys_shmget, "shmget" },
+[308] = { 4, TI, sys_shmctl, "shmctl" },
+[309] = { 5, 0, sys_add_key, "add_key" },
+[310] = { 4, 0, sys_request_key, "request_key" },
+[311] = { 5, 0, sys_keyctl, "keyctl" },
+[312] = { 5, TI, sys_semtimedop, "semtimedop" },
+[313] = { 5, 0, sys_vserver, "vserver" },
+[314] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[315] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[316] = { 0, TD, sys_inotify_init, "inotify_init" },
+[317] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[318] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[319] = { 6, TM, sys_mbind, "mbind" },
+[320] = { 3, TM, sys_get_mempolicy, "get_mempolicy" },
+[321] = { 5, TM, sys_set_mempolicy, "set_mempolicy" },
+[322] = { 4, TD|TF, sys_openat, "openat" },
+[323] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[324] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[325] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[326] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[327] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[328] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[329] = { 4, TD|TF, sys_renameat, "renameat" },
+[330] = { 5, TD|TF, sys_linkat, "linkat" },
+[331] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[332] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[333] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[334] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[335] = { 6, TD, sys_pselect6, "pselect6" },
+[336] = { 5, TD, sys_ppoll, "ppoll" },
+[337] = { 1, TP, sys_unshare, "unshare" },
+[338] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[339] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[340] = { 6, TD, sys_splice, "splice" },
+[341] = { 6, TD, sys_sync_file_range2, "sync_file_range2" },
+[342] = { 4, TD, sys_tee, "tee" },
+[343] = { 4, TD, sys_vmsplice, "vmsplice" },
+[344] = { 6, TM, sys_move_pages, "move_pages" },
+[345] = { 3, 0, sys_getcpu, "getcpu" },
+[346] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[347] = { 4, 0, sys_kexec_load, "kexec_load" },
+[348] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[349] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[350] = { 4, TD, sys_timerfd_create, "timerfd_create" },
+[351] = { 1, TD, sys_eventfd, "eventfd" },
+[352] = { 6, TD, sys_fallocate, "fallocate" },
+[353] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[354] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[355] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[356] = { 2, TD, sys_eventfd2, "eventfd2" },
+[357] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[358] = { 3, TD, sys_dup3, "dup3" },
+[359] = { 2, TD, sys_pipe2, "pipe2" },
+[360] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[361] = { 5, TD, sys_preadv, "preadv" },
+[362] = { 5, TD, sys_pwritev, "pwritev" },
+[363] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[364] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[365] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[366] = { 4, TN, sys_accept4, "accept4" },
+[367] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[368] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[369] = { 4, 0, sys_prlimit64, "prlimit64" },
+[370] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[371] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[372] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[373] = { 1, TD, sys_syncfs, "syncfs" },
+[374] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[375] = { 2, TD, sys_setns, "setns" },
+[376] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[377] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[378] = { 5, 0, sys_kcmp, "kcmp" },
+[379] = { 3, TD, sys_finit_module, "finit_module" },
+[380] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[381] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[382] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[383] = { 3, 0, sys_seccomp, "seccomp", },
+[384] = { 3, 0, sys_getrandom, "getrandom", },
+[385] = { 2, TD, sys_memfd_create, "memfd_create", },
+[386] = { 3, TD, sys_bpf, "bpf", },
+[387] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[388 ... 399] = { },
- { 6, TD, sys_pread, "pread" }, /* 180 */
- { 6, TD, sys_pwrite, "pwrite" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 192 */
- { 4, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 4, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
-
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_geteuid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 217 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 218 */
- { 3, TM, sys_mincore, "mincore" }, /* 219 */
- { 3, TM, sys_madvise, "madvise" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 5, 0, NULL, NULL }, /* 222 */
- { 5, 0, NULL, NULL }, /* 223 */
- { 0, 0, sys_gettid, "gettid" }, /* 224 */
- { 5, TD, sys_readahead, "readahead" }, /* 225 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 226 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 228 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 229 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 231 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 232 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 234 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 235 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 237 */
- { 2, TS, sys_kill, "tkill" }, /* 238 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 239 */
- { 6, 0, sys_futex, "futex" }, /* 240 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 241 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 242 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 243 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 244 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 245 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 246 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 247 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 248 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 249 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 250 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 251 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 252 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 253 */
- { 5, 0, NULL, NULL }, /* 254 */
- { 5, 0, NULL, NULL }, /* 255 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 256 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 257 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 258 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 259 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 260 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 261 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 262 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 263 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 264 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 265 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 266 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 267 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 268 */
- { 2, TF, sys_utimes, "utimes" }, /* 269 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 270 */
- { 5, 0, printargs, "pciconfig_iobase" }, /* 271 */
- { 5, 0, printargs, "pciconfig_read" }, /* 272 */
- { 5, 0, printargs, "pciconfig_write" }, /* 273 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 274 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 275 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 276 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 277 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 278 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 279 */
- { 5, TP, sys_waitid, "waitid" }, /* 280 */
- { 3, TN, sys_socket, "socket" }, /* 281 */
- { 3, TN, sys_bind, "bind" }, /* 282 */
- { 3, TN, sys_connect, "connect" }, /* 283 */
- { 2, TN, sys_listen, "listen" }, /* 284 */
- { 3, TN, sys_accept, "accept" }, /* 285 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 286 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 287 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 288 */
- { 4, TN, sys_send, "send" }, /* 289 */
- { 6, TN, sys_sendto, "sendto" }, /* 290 */
- { 4, TN, sys_recv, "recv" }, /* 291 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 292 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 293 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 294 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 295 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 296 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 297 */
- { 4, TI, sys_semop, "semop" }, /* 298 */
- { 4, TI, sys_semget, "semget" }, /* 299 */
- { 4, TI, sys_semctl, "semctl" }, /* 300 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 301 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 302 */
- { 4, TI, sys_msgget, "msgget" }, /* 303 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 304 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 305 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 306 */
- { 4, TI, sys_shmget, "shmget" }, /* 307 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 308 */
- { 5, 0, sys_add_key, "add_key" }, /* 309 */
- { 4, 0, sys_request_key, "request_key" }, /* 310 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 311 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 312 */
- { 5, 0, sys_vserver, "vserver" }, /* 313 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 314 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 315 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 316 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 317 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 318 */
- { 6, TM, sys_mbind, "mbind" }, /* 319 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 320 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 321 */
- { 4, TD|TF, sys_openat, "openat" }, /* 322 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 323 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 324 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 325 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 326 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 327 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 328 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 329 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 330 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 331 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 332 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 333 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 334 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 335 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 336 */
- { 1, TP, sys_unshare, "unshare" }, /* 337 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 338 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 339 */
- { 6, TD, sys_splice, "splice" }, /* 340 */
- { 6, TD, sys_sync_file_range2, "sync_file_range2"}, /* 341 */
- { 4, TD, sys_tee, "tee" }, /* 342 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 343 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 344 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 345 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 346 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 347 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 348 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 349 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 350 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 351 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 352 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 353 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 354 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 355 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 356 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 357 */
- { 3, TD, sys_dup3, "dup3" }, /* 358 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 359 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 360 */
- { 5, TD, sys_preadv, "preadv" }, /* 361 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 362 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 363 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 364 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 365 */
- { 4, TN, sys_accept4, "accept4" }, /* 366 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 367 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 368 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 369 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 370 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 371 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 372 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 373 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 374 */
- { 2, TD, sys_setns, "setns" }, /* 375 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 376 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 377 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 378 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 379 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 380 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 381 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 382 */
#ifdef __ARM_EABI__
-# define ARM_LAST_ORDINARY_SYSCALL 382
+# define ARM_FIRST_SHUFFLED_SYSCALL 400
#else
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
-#define SYS_socket_subcall 400
-#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
+# define SYS_socket_subcall 400
+# include "subcall.h"
+# define ARM_FIRST_SHUFFLED_SYSCALL (SYS_ipc_subcall + SYS_ipc_nsubcalls)
+#endif /* !__ARM_EABI__ */
-# if SYS_ipc_subcall != 420
-# error fix me
-# endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
-# define ARM_LAST_ORDINARY_SYSCALL 444
-#endif /* !EABI */
+/*
+ * __ARM_NR_cmpxchg (0x000ffff0).
+ * Remapped by shuffle_scno() to be directly after ordinary syscalls
+ * in this table.
+ */
+[ARM_FIRST_SHUFFLED_SYSCALL ] = { 5, 0, printargs, "cmpxchg" },
- /* __ARM_NR_cmpxchg (0x000ffff0).
- * Remapped by shuffle_scno() to be directly after ordinary syscalls
- * in this table.
- */
- { 5, 0, printargs, "cmpxchg" },
-
- /* ARM specific syscalls. Encoded with scno 0x000f00xx.
- * Remapped by shuffle_scno() to be directly after __ARM_NR_cmpxchg.
- */
- { 5, 0, NULL, NULL }, /* 0 */
- { 5, 0, printargs, "breakpoint" }, /* 1 */
- { 5, 0, printargs, "cacheflush" }, /* 2 */
- { 5, 0, printargs, "usr26" }, /* 3 */
- { 5, 0, printargs, "usr32" }, /* 4 */
- { 5, 0, printargs, "set_tls" }, /* 5 */
+/*
+ * ARM specific syscalls. Encoded with scno 0x000f00xx.
+ * Remapped by shuffle_scno() to be directly after __ARM_NR_cmpxchg.
+ */
+[ARM_FIRST_SHUFFLED_SYSCALL+1+0] = { },
+[ARM_FIRST_SHUFFLED_SYSCALL+1+1] = { 5, 0, printargs, "breakpoint" },
+[ARM_FIRST_SHUFFLED_SYSCALL+1+2] = { 5, 0, printargs, "cacheflush" },
+[ARM_FIRST_SHUFFLED_SYSCALL+1+3] = { 5, 0, printargs, "usr26" },
+[ARM_FIRST_SHUFFLED_SYSCALL+1+4] = { 5, 0, printargs, "usr32" },
+[ARM_FIRST_SHUFFLED_SYSCALL+1+5] = { 5, 0, printargs, "set_tls" },
#define ARM_LAST_SPECIAL_SYSCALL 5
diff --git a/linux/avr32/ioctlent.h.in b/linux/avr32/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/avr32/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/avr32/ioctls_arch0.h b/linux/avr32/ioctls_arch0.h
new file mode 100644
index 0000000..c50a25c
--- /dev/null
+++ b/linux/avr32/ioctls_arch0.h
@@ -0,0 +1,8 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/avr32/include/ tree. */
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
diff --git a/linux/avr32/ioctls_inc0.h b/linux/avr32/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/avr32/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/avr32/syscallent.h b/linux/avr32/syscallent.h
index b47653c..7487022 100644
--- a/linux/avr32/syscallent.h
+++ b/linux/avr32/syscallent.h
@@ -25,287 +25,287 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_setup, "setup" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 1, 0, sys_umask, "umask" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown, "chown" }, /* 16 */
- { 3, TF, sys_chown, "lchown" }, /* 17 */
- { 3, TD, sys_lseek, "lseek" }, /* 18 */
- { 5, TD, sys_llseek, "_llseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 2, TF, sys_umount, "umount" }, /* 22 */
- { 1, 0, sys_setuid, "setuid" }, /* 23 */
- { 0, NF, sys_getuid, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 0, TS, sys_pause, "pause" }, /* 28 */
- { 2, TF, sys_utime, "utime" }, /* 29 */
- { 2, TF, sys_stat, "stat" }, /* 30 */
- { 2, TD, sys_fstat, "fstat" }, /* 31 */
- { 2, TF, sys_lstat, "lstat" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, TF, sys_chroot, "chroot" }, /* 34 */
- { 0, 0, sys_sync, "sync" }, /* 35 */
- { 1, TD, sys_fsync, "fsync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 5, TP, sys_clone, "clone" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid, "setgid" }, /* 46 */
- { 0, NF, sys_getgid, "getgid" }, /* 47 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 48 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 52 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 56 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 57 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 58 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 59 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 60 */
- { 2, 0, sys_setregid, "setregid" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 67 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 68 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 69 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 70 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 71 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 72 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 81 */
- { 5, TD, sys_select, "select" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 5, TD, sys_pread, "pread" }, /* 86 */
- { 5, TD, sys_pwrite, "pwrite" }, /* 87 */
- { 2, TF, sys_swapon, "swapon" }, /* 88 */
- { 4, 0, sys_reboot, "reboot" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, TP, sys_wait4, "wait4" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 101 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 106 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 107 */
- { 6, TI, sys_ipc, "ipc" }, /* 108 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 109 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 110 */
- { 1, 0, sys_uname, "uname" }, /* 111 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 112 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 113 */
- { 0, TP, sys_vfork, "vfork" }, /* 114 */
- { 3, 0, sys_init_module, "init_module" }, /* 115 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 116 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 117 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 118 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 119 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 120 */
- { 1, 0, sys_personality, "personality" }, /* 121 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 122 */
- { 3, TD, sys_getdents, "getdents" }, /* 123 */
- { 2, TD, sys_flock, "flock" }, /* 124 */
- { 3, TM, sys_msync, "msync" }, /* 125 */
- { 3, TD, sys_readv, "readv" }, /* 126 */
- { 3, TD, sys_writev, "writev" }, /* 127 */
- { 1, 0, sys_getsid, "getsid" }, /* 128 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 129 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 130 */
- { 2, TM, sys_mlock, "mlock" }, /* 131 */
- { 2, TM, sys_munlock, "munlock" }, /* 132 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 133 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 134 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 135 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 136 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 137 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 138 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 139 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 140 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 141 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 142 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 143 */
- { 3, TD, sys_poll, "poll" }, /* 144 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 145 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 146 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 147 */
- { 5, 0, sys_prctl, "prctl" }, /* 148 */
- { 3, TN, sys_socket, "socket" }, /* 149 */
- { 3, TN, sys_bind, "bind" }, /* 150 */
- { 3, TN, sys_connect, "connect" }, /* 151 */
- { 2, TN, sys_listen, "listen" }, /* 152 */
- { 3, TN, sys_accept, "accept" }, /* 153 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 154 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 155 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 156 */
- { 4, TN, sys_send, "send" }, /* 157 */
- { 4, TN, sys_recv, "recv" }, /* 158 */
- { 6, TN, sys_sendto, "sendto" }, /* 159 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 160 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 161 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 162 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 163 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 164 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 165 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 166 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 167 */
- { 2, TF, sys_stat64, "stat64" }, /* 168 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 169 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 170 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 171 */
- { 3, TM, sys_mincore, "mincore" }, /* 172 */
- { 3, TM, sys_madvise, "madvise" }, /* 173 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 174 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 175 */
- { 0, 0, sys_gettid, "gettid" }, /* 176 */
- { 4, TD, sys_readahead, "readahead" }, /* 177 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 178 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 179 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 180 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 181 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 182 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 183 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 184 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 185 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 186 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 187 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 188 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 189 */
- { 2, TS, sys_kill, "tkill" }, /* 190 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 191 */
- { 6, 0, sys_futex, "futex" }, /* 192 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 193 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 194 */
- { 2, 0, sys_capget, "capget" }, /* 195 */
- { 2, 0, sys_capset, "capset" }, /* 196 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 197 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 198 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 199 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 200 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 201 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 202 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 203 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 204 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 205 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 206 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 207 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 208 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 209 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 210 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 211 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 212 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 213 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 214 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 215 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 216 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 217 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 218 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 219 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 220 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 221 */
- { 5, 0, NULL, NULL }, /* 222 */
- { 2, TF, sys_utimes, "utimes" }, /* 223 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 224 */
- { 3, 0, printargs, "cacheflush" }, /* 225 */
- { 5, 0, sys_vserver, "vserver" }, /* 226 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 227 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 228 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 229 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 230 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 231 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 232 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 233 */
- { 5, TP, sys_waitid, "waitid" }, /* 234 */
- { 5, 0, sys_add_key, "add_key" }, /* 235 */
- { 4, 0, sys_request_key, "request_key" }, /* 236 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 237 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 238 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 239 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 240 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 241 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 242 */
- { 4, TD|TF, sys_openat, "openat" }, /* 243 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 244 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 245 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 246 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 247 */
- { 4, TD|TF, printargs, "fstatat64" }, /* 248 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 249 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 250 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 251 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 252 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 253 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 254 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 255 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 256 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 257 */
- { 1, TP, sys_unshare, "unshare" }, /* 258 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 259 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 260 */
- { 6, TD, sys_splice, "splice" }, /* 261 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 262 */
- { 4, TD, sys_tee, "tee" }, /* 263 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 264 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 265 */
- { 4, TI, sys_msgget, "msgget" }, /* 266 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 267 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 268 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 269 */
- { 4, TI, sys_semget, "semget" }, /* 270 */
- { 4, TI, sys_semop, "semop" }, /* 271 */
- { 4, TI, sys_semctl, "semctl" }, /* 272 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 273 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 274 */
- { 4, TI, sys_shmget, "shmget" }, /* 275 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 276 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 277 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 278 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 279 */
- { 2, TD, sys_timerfd, "timerfd_create" }, /* 280 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 281 */
- { 5, 0, NULL, NULL }, /* 282 */
- { 2, TD, sys_setns, "setns" }, /* 283 */
+[ 0] = { 0, 0, sys_setup, "setup" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 1, 0, sys_umask, "umask" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown, "chown" },
+[ 17] = { 3, TF, sys_chown, "lchown" },
+[ 18] = { 3, TD, sys_lseek, "lseek" },
+[ 19] = { 5, TD, sys_llseek, "_llseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid, "setuid" },
+[ 24] = { 0, NF, sys_getuid, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 0, TS, sys_pause, "pause" },
+[ 29] = { 2, TF, sys_utime, "utime" },
+[ 30] = { 2, TF, sys_stat, "stat" },
+[ 31] = { 2, TD, sys_fstat, "fstat" },
+[ 32] = { 2, TF, sys_lstat, "lstat" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, TF, sys_chroot, "chroot" },
+[ 35] = { 0, 0, sys_sync, "sync" },
+[ 36] = { 1, TD, sys_fsync, "fsync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 5, TP, sys_clone, "clone" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid, "setgid" },
+[ 47] = { 0, NF, sys_getgid, "getgid" },
+[ 48] = { 2, TF, sys_getcwd, "getcwd" },
+[ 49] = { 0, NF, sys_geteuid, "geteuid" },
+[ 50] = { 0, NF, sys_getegid, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 1, NF, sys_setfsuid, "setfsuid" },
+[ 53] = { 1, NF, sys_setfsgid, "setfsgid" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 2, 0, sys_setpgid, "setpgid" },
+[ 57] = { 5, TM|SI, sys_mremap, "mremap" },
+[ 58] = { 3, 0, sys_setresuid, "setresuid" },
+[ 59] = { 3, 0, sys_getresuid, "getresuid" },
+[ 60] = { 2, 0, sys_setreuid, "setreuid" },
+[ 61] = { 2, 0, sys_setregid, "setregid" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[ 68] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[ 69] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[ 70] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[ 71] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[ 72] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[ 73] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups, "setgroups" },
+[ 82] = { 5, TD, sys_select, "select" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 1, TD, sys_fchdir, "fchdir" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 5, TD, sys_pread, "pread" },
+[ 87] = { 5, TD, sys_pwrite, "pwrite" },
+[ 88] = { 2, TF, sys_swapon, "swapon" },
+[ 89] = { 4, 0, sys_reboot, "reboot" },
+[ 90] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, TP, sys_wait4, "wait4" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 0, 0, sys_vhangup, "vhangup" },
+[102] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 1, TF, sys_swapoff, "swapoff" },
+[107] = { 1, 0, sys_sysinfo, "sysinfo" },
+[108] = { 6, TI, sys_ipc, "ipc" },
+[109] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[110] = { 2, 0, sys_setdomainname, "setdomainname" },
+[111] = { 1, 0, sys_uname, "uname" },
+[112] = { 1, 0, sys_adjtimex, "adjtimex" },
+[113] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[114] = { 0, TP, sys_vfork, "vfork" },
+[115] = { 3, 0, sys_init_module, "init_module" },
+[116] = { 2, 0, sys_delete_module, "delete_module" },
+[117] = { 4, TF, sys_quotactl, "quotactl" },
+[118] = { 1, 0, sys_getpgid, "getpgid" },
+[119] = { 0, 0, sys_bdflush, "bdflush" },
+[120] = { 3, 0, sys_sysfs, "sysfs" },
+[121] = { 1, 0, sys_personality, "personality" },
+[122] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[123] = { 3, TD, sys_getdents, "getdents" },
+[124] = { 2, TD, sys_flock, "flock" },
+[125] = { 3, TM, sys_msync, "msync" },
+[126] = { 3, TD, sys_readv, "readv" },
+[127] = { 3, TD, sys_writev, "writev" },
+[128] = { 1, 0, sys_getsid, "getsid" },
+[129] = { 1, TD, sys_fdatasync, "fdatasync" },
+[130] = { 1, 0, sys_sysctl, "_sysctl" },
+[131] = { 2, TM, sys_mlock, "mlock" },
+[132] = { 2, TM, sys_munlock, "munlock" },
+[133] = { 1, TM, sys_mlockall, "mlockall" },
+[134] = { 0, TM, sys_munlockall, "munlockall" },
+[135] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[136] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[137] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[138] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[139] = { 0, 0, sys_sched_yield, "sched_yield" },
+[140] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[141] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[142] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[143] = { 2, 0, sys_nanosleep, "nanosleep" },
+[144] = { 3, TD, sys_poll, "poll" },
+[145] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[146] = { 3, 0, sys_setresgid, "setresgid" },
+[147] = { 3, 0, sys_getresgid, "getresgid" },
+[148] = { 5, 0, sys_prctl, "prctl" },
+[149] = { 3, TN, sys_socket, "socket" },
+[150] = { 3, TN, sys_bind, "bind" },
+[151] = { 3, TN, sys_connect, "connect" },
+[152] = { 2, TN, sys_listen, "listen" },
+[153] = { 3, TN, sys_accept, "accept" },
+[154] = { 3, TN, sys_getsockname, "getsockname" },
+[155] = { 3, TN, sys_getpeername, "getpeername" },
+[156] = { 4, TN, sys_socketpair, "socketpair" },
+[157] = { 4, TN, sys_send, "send" },
+[158] = { 4, TN, sys_recv, "recv" },
+[159] = { 6, TN, sys_sendto, "sendto" },
+[160] = { 6, TN, sys_recvfrom, "recvfrom" },
+[161] = { 2, TN, sys_shutdown, "shutdown" },
+[162] = { 5, TN, sys_setsockopt, "setsockopt" },
+[163] = { 5, TN, sys_getsockopt, "getsockopt" },
+[164] = { 3, TN, sys_sendmsg, "sendmsg" },
+[165] = { 3, TN, sys_recvmsg, "recvmsg" },
+[166] = { 3, TF, sys_truncate64, "truncate64" },
+[167] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[168] = { 2, TF, sys_stat64, "stat64" },
+[169] = { 2, TF, sys_lstat64, "lstat64" },
+[170] = { 2, TD, sys_fstat64, "fstat64" },
+[171] = { 2, TF, sys_pivotroot, "pivot_root" },
+[172] = { 3, TM, sys_mincore, "mincore" },
+[173] = { 3, TM, sys_madvise, "madvise" },
+[174] = { 3, TD, sys_getdents64, "getdents64" },
+[175] = { 3, TD, sys_fcntl, "fcntl64" },
+[176] = { 0, 0, sys_gettid, "gettid" },
+[177] = { 4, TD, sys_readahead, "readahead" },
+[178] = { 5, TF, sys_setxattr, "setxattr" },
+[179] = { 5, TF, sys_setxattr, "lsetxattr" },
+[180] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[181] = { 4, TF, sys_getxattr, "getxattr" },
+[182] = { 4, TF, sys_getxattr, "lgetxattr" },
+[183] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[184] = { 3, TF, sys_listxattr, "listxattr" },
+[185] = { 3, TF, sys_listxattr, "llistxattr" },
+[186] = { 3, TD, sys_flistxattr, "flistxattr" },
+[187] = { 2, TF, sys_removexattr, "removexattr" },
+[188] = { 2, TF, sys_removexattr, "lremovexattr" },
+[189] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[190] = { 2, TS, sys_kill, "tkill" },
+[191] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[192] = { 6, 0, sys_futex, "futex" },
+[193] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[194] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[195] = { 2, 0, sys_capget, "capget" },
+[196] = { 2, 0, sys_capset, "capset" },
+[197] = { 2, 0, sys_io_setup, "io_setup" },
+[198] = { 1, 0, sys_io_destroy, "io_destroy" },
+[199] = { 5, 0, sys_io_getevents, "io_getevents" },
+[200] = { 3, 0, sys_io_submit, "io_submit" },
+[201] = { 3, 0, sys_io_cancel, "io_cancel" },
+[202] = { 5, TD, sys_fadvise64, "fadvise64" },
+[203] = { 1, TP|SE, sys_exit, "exit_group" },
+[204] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[205] = { 1, TD, sys_epoll_create, "epoll_create" },
+[206] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[207] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[208] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[209] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[210] = { 3, 0, sys_timer_create, "timer_create" },
+[211] = { 4, 0, sys_timer_settime, "timer_settime" },
+[212] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[213] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[214] = { 1, 0, sys_timer_delete, "timer_delete" },
+[215] = { 2, 0, sys_clock_settime, "clock_settime" },
+[216] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[217] = { 2, 0, sys_clock_getres, "clock_getres" },
+[218] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[219] = { 3, TF, sys_statfs64, "statfs64" },
+[220] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[221] = { 3, TS, sys_tgkill, "tgkill" },
+[222] = { },
+[223] = { 2, TF, sys_utimes, "utimes" },
+[224] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[225] = { 3, 0, printargs, "cacheflush" },
+[226] = { 5, 0, sys_vserver, "vserver" },
+[227] = { 4, 0, sys_mq_open, "mq_open" },
+[228] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[229] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[230] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[231] = { 2, 0, sys_mq_notify, "mq_notify" },
+[232] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[233] = { 4, 0, sys_kexec_load, "kexec_load" },
+[234] = { 5, TP, sys_waitid, "waitid" },
+[235] = { 5, 0, sys_add_key, "add_key" },
+[236] = { 4, 0, sys_request_key, "request_key" },
+[237] = { 5, 0, sys_keyctl, "keyctl" },
+[238] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[239] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[240] = { 0, TD, sys_inotify_init, "inotify_init" },
+[241] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[242] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[243] = { 4, TD|TF, sys_openat, "openat" },
+[244] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[245] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[246] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[247] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[248] = { 4, TD|TF, printargs, "fstatat64" },
+[249] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[250] = { 4, TD|TF, sys_renameat, "renameat" },
+[251] = { 5, TD|TF, sys_linkat, "linkat" },
+[252] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[253] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[254] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[255] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[256] = { 6, TD, sys_pselect6, "pselect6" },
+[257] = { 5, TD, sys_ppoll, "ppoll" },
+[258] = { 1, TP, sys_unshare, "unshare" },
+[259] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[260] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[261] = { 6, TD, sys_splice, "splice" },
+[262] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[263] = { 4, TD, sys_tee, "tee" },
+[264] = { 4, TD, sys_vmsplice, "vmsplice" },
+[265] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[266] = { 2, TI, sys_msgget, "msgget" },
+[267] = { 4, TI, sys_msgsnd, "msgsnd" },
+[268] = { 5, TI, sys_msgrcv, "msgrcv" },
+[269] = { 3, TI, sys_msgctl, "msgctl" },
+[270] = { 3, TI, sys_semget, "semget" },
+[271] = { 3, TI, sys_semop, "semop" },
+[272] = { 4, TI, sys_semctl, "semctl" },
+[273] = { 4, TI, sys_semtimedop, "semtimedop" },
+[274] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[275] = { 3, TI, sys_shmget, "shmget" },
+[276] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[277] = { 3, TI, sys_shmctl, "shmctl" },
+[278] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[279] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[280] = { 2, TD, sys_timerfd, "timerfd" },
+[281] = { 1, TD, sys_eventfd, "eventfd" },
+[282] = { },
+[283] = { 2, TD, sys_setns, "setns" },
diff --git a/linux/bfin/ioctlent.h.in b/linux/bfin/ioctlent.h.in
deleted file mode 100644
index 791d8e3..0000000
--- a/linux/bfin/ioctlent.h.in
+++ /dev/null
@@ -1,8 +0,0 @@
- {"asm/bfin_sport.h", "SPORT_IOC_CONFIG", 0x5001},
- {"asm/bfin_sport.h", "SPORT_IOC_GET_SYSTEMCLOCK", 0x5002},
- {"asm/bfin_sport.h", "SPORT_IOC_SET_BAUDRATE", 0x5003},
- {"asm/ioctls.h", "FIOQSIZE", 0x545e},
- {"asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_SET_PERIOD", 0x7402},
- {"asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_START", 0x7406},
- {"asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_STOP", 0x7408},
- {"asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_READ", 0x740a},
diff --git a/linux/bfin/ioctls_arch0.h b/linux/bfin/ioctls_arch0.h
new file mode 100644
index 0000000..7d9804d
--- /dev/null
+++ b/linux/bfin/ioctls_arch0.h
@@ -0,0 +1,12 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/blackfin/include/ tree. */
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_READ", _IOC_NONE, 0x740a, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_READ_COUNTER", _IOC_NONE, 0x740b, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_SET_MODE", _IOC_NONE, 0x7404, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_SET_PERIOD", _IOC_NONE, 0x7402, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_SET_WIDTH", _IOC_NONE, 0x7403, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_START", _IOC_NONE, 0x7406, 0x00 },
+{ "asm/bfin_simple_timer.h", "BFIN_SIMPLE_TIMER_STOP", _IOC_NONE, 0x7408, 0x00 },
+{ "asm/bfin_sport.h", "SPORT_IOC_CONFIG", _IOC_READ|_IOC_WRITE, 0x5001, 0x24 },
+{ "asm/bfin_sport.h", "SPORT_IOC_GET_SYSTEMCLOCK", _IOC_READ, 0x5002, 0x04 },
+{ "asm/bfin_sport.h", "SPORT_IOC_SET_BAUDRATE", _IOC_WRITE, 0x5003, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x545E, 0 },
diff --git a/linux/bfin/ioctls_inc0.h b/linux/bfin/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/bfin/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/bfin/syscallent.h b/linux/bfin/syscallent.h
index 8200d44..81346cb 100644
--- a/linux/bfin/syscallent.h
+++ b/linux/bfin/syscallent.h
@@ -26,386 +26,386 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "chown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, printargs, "old_mmap" }, /* 90: not implemented in kernel */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, sys_vm86old, "vm86old" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 1, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms" }, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 158 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 159 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 160 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, sys_vm86, "vm86" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 5, TD, sys_pread, "pread" }, /* 180 */
- { 5, TD, sys_pwrite, "pwrite" }, /* 181 */
- { 3, TF, sys_chown16, "lchown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "chown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_geteuid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "lchown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 4, 0, NULL, NULL }, /* 222 */
- { 5, 0, sys_security, "security" }, /* 223 */
- { 0, 0, sys_gettid, "gettid" }, /* 224 */
- { 4, TD, sys_readahead, "readahead" }, /* 225 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 226 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 228 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 229 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 231 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 232 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 234 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 235 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 237 */
- { 2, TS, sys_kill, "tkill" }, /* 238 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 239 */
- { 6, 0, sys_futex, "futex" }, /* 240 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 241 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 242 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 243 */
- { 1, 0, sys_get_thread_area, "get_thread_area" }, /* 244 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 245 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 246 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 247 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 248 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */
- { 5, 0, printargs, "alloc_hugepages" }, /* 250 */
- { 1, 0, printargs, "free_hugepages" }, /* 251 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 252 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 253 */
- { 1, 0, printargs, "bfin_spinlock" }, /* 254 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 255 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 256 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 257 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 258 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 259 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 260 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 261 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 262 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 263 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 264 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 265 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 266 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 267 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 268 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 269 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 270 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 271 */
- { 2, TF, sys_utimes, "utimes" }, /* 272 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 273 */
- { 5, 0, sys_vserver, "vserver" }, /* 274 */
- { 6, TM, sys_mbind, "mbind" }, /* 275 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 276 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 277 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 278 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 279 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 280 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 281 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 282 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 283 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 284 */
- { 5, TP, sys_waitid, "waitid" }, /* 285 */
- { 5, 0, sys_add_key, "add_key" }, /* 286 */
- { 4, 0, sys_request_key, "request_key" }, /* 287 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 288 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 289 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 290 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 291 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 292 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 293 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 294 */
- { 4, TD|TF, sys_openat, "openat" }, /* 295 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 296 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 297 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 298 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 299 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 300 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 301 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 302 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 303 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 304 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 305 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 306 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 307 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 308 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 309 */
- { 1, TP, sys_unshare, "unshare" }, /* 310 */
- { 2, 0, sys_sram_alloc, "sram_alloc" }, /* 311 */
- { 1, 0, printargs, "sram_free" }, /* 312 */
- { 3, 0, printargs, "dma_memcpy" }, /* 313 */
- { 3, TN, sys_accept, "accept" }, /* 314 */
- { 3, TN, sys_bind, "bind" }, /* 315 */
- { 3, TN, sys_connect, "connect" }, /* 316 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 317 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 318 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 319 */
- { 2, TN, sys_listen, "listen" }, /* 320 */
- { 4, TN, sys_recv, "recv" }, /* 321 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 322 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 323 */
- { 4, TN, sys_send, "send" }, /* 324 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 325 */
- { 6, TN, sys_sendto, "sendto" }, /* 326 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 327 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 328 */
- { 3, TN, sys_socket, "socket" }, /* 329 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 330 */
- { 4, TI, sys_semctl, "semctl" }, /* 331 */
- { 4, TI, sys_semget, "semget" }, /* 332 */
- { 4, TI, sys_semop, "semop" }, /* 333 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 334 */
- { 4, TI, sys_msgget, "msgget" }, /* 335 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 336 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 337 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 338 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 339 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 340 */
- { 4, TI, sys_shmget, "shmget" }, /* 341 */
- { 6, TD, sys_splice, "splice" }, /* 342 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 343 */
- { 4, TD, sys_tee, "tee" }, /* 344 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 345 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 346 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 347 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 348 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 349 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 350 */
- { 5, TD, sys_pread, "pread64" }, /* 351 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 352 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 353 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 354 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 355 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 356 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 357 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 358 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 359 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 360 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 361 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 362 */
- { 3, TD, sys_dup3, "dup3" }, /* 363 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 364 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 365 */
- { 5, TD, sys_preadv, "preadv" }, /* 366 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 367 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 368 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 369 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 370 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 371 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 372 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 373 */
- { 3, 0, sys_cacheflush, "cacheflush" }, /* 374 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 375 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 376 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 377 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 378 */
- { 2, TD, sys_setns, "setns" }, /* 379 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 380 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 381 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 382 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "chown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "old_getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, printargs, "old_mmap" }, /*not implemented in kernel */
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 1, 0, sys_vm86old, "vm86old" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 1, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, sys_vm86, "vm86" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 5, TD, sys_pread, "pread" },
+[181] = { 5, TD, sys_pwrite, "pwrite" },
+[182] = { 3, TF, sys_chown16, "lchown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "getrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "chown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_geteuid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "lchown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222] = { },
+[223] = { 5, 0, sys_security, "security" },
+[224] = { 0, 0, sys_gettid, "gettid" },
+[225] = { 4, TD, sys_readahead, "readahead" },
+[226] = { 5, TF, sys_setxattr, "setxattr" },
+[227] = { 5, TF, sys_setxattr, "lsetxattr" },
+[228] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[229] = { 4, TF, sys_getxattr, "getxattr" },
+[230] = { 4, TF, sys_getxattr, "lgetxattr" },
+[231] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[232] = { 3, TF, sys_listxattr, "listxattr" },
+[233] = { 3, TF, sys_listxattr, "llistxattr" },
+[234] = { 3, TD, sys_flistxattr, "flistxattr" },
+[235] = { 2, TF, sys_removexattr, "removexattr" },
+[236] = { 2, TF, sys_removexattr, "lremovexattr" },
+[237] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[238] = { 2, TS, sys_kill, "tkill" },
+[239] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[240] = { 6, 0, sys_futex, "futex" },
+[241] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[242] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[243] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[244] = { 1, 0, sys_get_thread_area, "get_thread_area" },
+[245] = { 2, 0, sys_io_setup, "io_setup" },
+[246] = { 1, 0, sys_io_destroy, "io_destroy" },
+[247] = { 5, 0, sys_io_getevents, "io_getevents" },
+[248] = { 3, 0, sys_io_submit, "io_submit" },
+[249] = { 3, 0, sys_io_cancel, "io_cancel" },
+[250] = { 5, 0, printargs, "alloc_hugepages" },
+[251] = { 1, 0, printargs, "free_hugepages" },
+[252] = { 1, TP|SE, sys_exit, "exit_group" },
+[253] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[254] = { 1, 0, printargs, "bfin_spinlock" },
+[255] = { 1, TD, sys_epoll_create, "epoll_create" },
+[256] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[257] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[258] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[259] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[260] = { 3, 0, sys_timer_create, "timer_create" },
+[261] = { 4, 0, sys_timer_settime, "timer_settime" },
+[262] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[263] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[264] = { 1, 0, sys_timer_delete, "timer_delete" },
+[265] = { 2, 0, sys_clock_settime, "clock_settime" },
+[266] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[267] = { 2, 0, sys_clock_getres, "clock_getres" },
+[268] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[269] = { 3, TF, sys_statfs64, "statfs64" },
+[270] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[271] = { 3, TS, sys_tgkill, "tgkill" },
+[272] = { 2, TF, sys_utimes, "utimes" },
+[273] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[274] = { 5, 0, sys_vserver, "vserver" },
+[275] = { 6, TM, sys_mbind, "mbind" },
+[276] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[277] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[278] = { 4, 0, sys_mq_open, "mq_open" },
+[279] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[280] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[281] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[282] = { 2, 0, sys_mq_notify, "mq_notify" },
+[283] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[284] = { 4, 0, sys_kexec_load, "kexec_load" },
+[285] = { 5, TP, sys_waitid, "waitid" },
+[286] = { 5, 0, sys_add_key, "add_key" },
+[287] = { 4, 0, sys_request_key, "request_key" },
+[288] = { 5, 0, sys_keyctl, "keyctl" },
+[289] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[290] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[291] = { 0, TD, sys_inotify_init, "inotify_init" },
+[292] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[293] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[294] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[295] = { 4, TD|TF, sys_openat, "openat" },
+[296] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[297] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[298] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[299] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[300] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[301] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[302] = { 4, TD|TF, sys_renameat, "renameat" },
+[303] = { 5, TD|TF, sys_linkat, "linkat" },
+[304] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[305] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[306] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[307] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[308] = { 6, TD, sys_pselect6, "pselect6" },
+[309] = { 5, TD, sys_ppoll, "ppoll" },
+[310] = { 1, TP, sys_unshare, "unshare" },
+[311] = { 2, 0, sys_sram_alloc, "sram_alloc" },
+[312] = { 1, 0, printargs, "sram_free" },
+[313] = { 3, 0, printargs, "dma_memcpy" },
+[314] = { 3, TN, sys_accept, "accept" },
+[315] = { 3, TN, sys_bind, "bind" },
+[316] = { 3, TN, sys_connect, "connect" },
+[317] = { 3, TN, sys_getpeername, "getpeername" },
+[318] = { 3, TN, sys_getsockname, "getsockname" },
+[319] = { 5, TN, sys_getsockopt, "getsockopt" },
+[320] = { 2, TN, sys_listen, "listen" },
+[321] = { 4, TN, sys_recv, "recv" },
+[322] = { 6, TN, sys_recvfrom, "recvfrom" },
+[323] = { 3, TN, sys_recvmsg, "recvmsg" },
+[324] = { 4, TN, sys_send, "send" },
+[325] = { 3, TN, sys_sendmsg, "sendmsg" },
+[326] = { 6, TN, sys_sendto, "sendto" },
+[327] = { 5, TN, sys_setsockopt, "setsockopt" },
+[328] = { 2, TN, sys_shutdown, "shutdown" },
+[329] = { 3, TN, sys_socket, "socket" },
+[330] = { 4, TN, sys_socketpair, "socketpair" },
+[331] = { 4, TI, sys_semctl, "semctl" },
+[332] = { 3, TI, sys_semget, "semget" },
+[333] = { 3, TI, sys_semop, "semop" },
+[334] = { 3, TI, sys_msgctl, "msgctl" },
+[335] = { 2, TI, sys_msgget, "msgget" },
+[336] = { 5, TI, sys_msgrcv, "msgrcv" },
+[337] = { 4, TI, sys_msgsnd, "msgsnd" },
+[338] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[339] = { 3, TI, sys_shmctl, "shmctl" },
+[340] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[341] = { 3, TI, sys_shmget, "shmget" },
+[342] = { 6, TD, sys_splice, "splice" },
+[343] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[344] = { 4, TD, sys_tee, "tee" },
+[345] = { 4, TD, sys_vmsplice, "vmsplice" },
+[346] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[347] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[348] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[349] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[350] = { 1, TD, sys_eventfd, "eventfd" },
+[351] = { 5, TD, sys_pread, "pread64" },
+[352] = { 5, TD, sys_pwrite, "pwrite64" },
+[353] = { 5, TD, sys_fadvise64, "fadvise64" },
+[354] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[355] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[356] = { 6, TD, sys_fallocate, "fallocate" },
+[357] = { 4, TI, sys_semtimedop, "semtimedop" },
+[358] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[359] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[360] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[361] = { 2, TD, sys_eventfd2, "eventfd2" },
+[362] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[363] = { 3, TD, sys_dup3, "dup3" },
+[364] = { 2, TD, sys_pipe2, "pipe2" },
+[365] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[366] = { 5, TD, sys_preadv, "preadv" },
+[367] = { 5, TD, sys_pwritev, "pwritev" },
+[368] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[369] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[370] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[371] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[372] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[373] = { 4, 0, sys_prlimit64, "prlimit64" },
+[374] = { 3, 0, sys_cacheflush, "cacheflush" },
+[375] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[376] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[377] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[378] = { 1, TD, sys_syncfs, "syncfs" },
+[379] = { 2, TD, sys_setns, "setns" },
+[380] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[381] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[382] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
diff --git a/linux/dummy.h b/linux/dummy.h
index 30ee94c..0c2c682 100644
--- a/linux/dummy.h
+++ b/linux/dummy.h
@@ -32,17 +32,21 @@
#endif
/* still unfinished */
+#define sys_bpf printargs
+#define sys_execveat printargs
#define sys_ioperm printargs
#define sys_iopl printargs
#define sys_kcmp printargs
+#define sys_kexec_file_load printargs
#define sys_lookup_dcookie printargs
+#define sys_memfd_create printargs
#define sys_name_to_handle_at printargs
#define sys_open_by_handle_at printargs
#define sys_sched_getattr printargs
#define sys_sched_setattr printargs
#define sys_sysfs printargs
-#define sys_vm86old printargs
#define sys_vm86 printargs
+#define sys_vm86old printargs
/* machine-specific */
#if !(defined I386 || defined X86_64 || defined X32)
diff --git a/linux/errnoent.h b/linux/errnoent.h
index c2ac683..012f099 100644
--- a/linux/errnoent.h
+++ b/linux/errnoent.h
@@ -1,535 +1,147 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "EDEADLK", /* 35 */
- "ENAMETOOLONG", /* 36 */
- "ENOLCK", /* 37 */
- "ENOSYS", /* 38 */
- "ENOTEMPTY", /* 39 */
- "ELOOP", /* 40 */
- "ERRNO_41", /* 41 */
- "ENOMSG", /* 42 */
- "EIDRM", /* 43 */
- "ECHRNG", /* 44 */
- "EL2NSYNC", /* 45 */
- "EL3HLT", /* 46 */
- "EL3RST", /* 47 */
- "ELNRNG", /* 48 */
- "EUNATCH", /* 49 */
- "ENOCSI", /* 50 */
- "EL2HLT", /* 51 */
- "EBADE", /* 52 */
- "EBADR", /* 53 */
- "EXFULL", /* 54 */
- "ENOANO", /* 55 */
- "EBADRQC", /* 56 */
- "EBADSLT", /* 57 */
-#ifdef POWERPC
- "EDEADLOCK", /* 58 */
-#else
- "ERRNO_58", /* 58 */
-#endif
- "EBFONT", /* 59 */
- "ENOSTR", /* 60 */
- "ENODATA", /* 61 */
- "ETIME", /* 62 */
- "ENOSR", /* 63 */
- "ENONET", /* 64 */
- "ENOPKG", /* 65 */
- "EREMOTE", /* 66 */
- "ENOLINK", /* 67 */
- "EADV", /* 68 */
- "ESRMNT", /* 69 */
- "ECOMM", /* 70 */
- "EPROTO", /* 71 */
- "EMULTIHOP", /* 72 */
- "EDOTDOT", /* 73 */
- "EBADMSG", /* 74 */
- "EOVERFLOW", /* 75 */
- "ENOTUNIQ", /* 76 */
- "EBADFD", /* 77 */
- "EREMCHG", /* 78 */
- "ELIBACC", /* 79 */
- "ELIBBAD", /* 80 */
- "ELIBSCN", /* 81 */
- "ELIBMAX", /* 82 */
- "ELIBEXEC", /* 83 */
- "EILSEQ", /* 84 */
- "ERESTART", /* 85 */
- "ESTRPIPE", /* 86 */
- "EUSERS", /* 87 */
- "ENOTSOCK", /* 88 */
- "EDESTADDRREQ", /* 89 */
- "EMSGSIZE", /* 90 */
- "EPROTOTYPE", /* 91 */
- "ENOPROTOOPT", /* 92 */
- "EPROTONOSUPPORT", /* 93 */
- "ESOCKTNOSUPPORT", /* 94 */
- "EOPNOTSUPP", /* 95 */
- "EPFNOSUPPORT", /* 96 */
- "EAFNOSUPPORT", /* 97 */
- "EADDRINUSE", /* 98 */
- "EADDRNOTAVAIL", /* 99 */
- "ENETDOWN", /* 100 */
- "ENETUNREACH", /* 101 */
- "ENETRESET", /* 102 */
- "ECONNABORTED", /* 103 */
- "ECONNRESET", /* 104 */
- "ENOBUFS", /* 105 */
- "EISCONN", /* 106 */
- "ENOTCONN", /* 107 */
- "ESHUTDOWN", /* 108 */
- "ETOOMANYREFS", /* 109 */
- "ETIMEDOUT", /* 110 */
- "ECONNREFUSED", /* 111 */
- "EHOSTDOWN", /* 112 */
- "EHOSTUNREACH", /* 113 */
- "EALREADY", /* 114 */
- "EINPROGRESS", /* 115 */
- "ESTALE", /* 116 */
- "EUCLEAN", /* 117 */
- "ENOTNAM", /* 118 */
- "ENAVAIL", /* 119 */
- "EISNAM", /* 120 */
- "EREMOTEIO", /* 121 */
- "EDQUOT", /* 122 */
- "ENOMEDIUM", /* 123 */
- "EMEDIUMTYPE", /* 124 */
- "ECANCELED", /* 125 */
- "ENOKEY", /* 126 */
- "EKEYEXPIRED", /* 127 */
- "EKEYREVOKED", /* 128 */
- "EKEYREJECTED", /* 129 */
- "EOWNERDEAD", /* 130 */
- "ENOTRECOVERABLE", /* 131 */
- "ERFKILL", /* 132 */
- "EHWPOISON", /* 133 */
- "ERRNO_134", /* 134 */
- "ERRNO_135", /* 135 */
- "ERRNO_136", /* 136 */
- "ERRNO_137", /* 137 */
- "ERRNO_138", /* 138 */
- "ERRNO_139", /* 139 */
- "ERRNO_140", /* 140 */
- "ERRNO_141", /* 141 */
- "ERRNO_142", /* 142 */
- "ERRNO_143", /* 143 */
- "ERRNO_144", /* 144 */
- "ERRNO_145", /* 145 */
- "ERRNO_146", /* 146 */
- "ERRNO_147", /* 147 */
- "ERRNO_148", /* 148 */
- "ERRNO_149", /* 149 */
- "ERRNO_150", /* 150 */
- "ERRNO_151", /* 151 */
- "ERRNO_152", /* 152 */
- "ERRNO_153", /* 153 */
- "ERRNO_154", /* 154 */
- "ERRNO_155", /* 155 */
- "ERRNO_156", /* 156 */
- "ERRNO_157", /* 157 */
- "ERRNO_158", /* 158 */
- "ERRNO_159", /* 159 */
- "ERRNO_160", /* 160 */
- "ERRNO_161", /* 161 */
- "ERRNO_162", /* 162 */
- "ERRNO_163", /* 163 */
- "ERRNO_164", /* 164 */
- "ERRNO_165", /* 165 */
- "ERRNO_166", /* 166 */
- "ERRNO_167", /* 167 */
- "ERRNO_168", /* 168 */
- "ERRNO_169", /* 169 */
- "ERRNO_170", /* 170 */
- "ERRNO_171", /* 171 */
- "ERRNO_172", /* 172 */
- "ERRNO_173", /* 173 */
- "ERRNO_174", /* 174 */
- "ERRNO_175", /* 175 */
- "ERRNO_176", /* 176 */
- "ERRNO_177", /* 177 */
- "ERRNO_178", /* 178 */
- "ERRNO_179", /* 179 */
- "ERRNO_180", /* 180 */
- "ERRNO_181", /* 181 */
- "ERRNO_182", /* 182 */
- "ERRNO_183", /* 183 */
- "ERRNO_184", /* 184 */
- "ERRNO_185", /* 185 */
- "ERRNO_186", /* 186 */
- "ERRNO_187", /* 187 */
- "ERRNO_188", /* 188 */
- "ERRNO_189", /* 189 */
- "ERRNO_190", /* 190 */
- "ERRNO_191", /* 191 */
- "ERRNO_192", /* 192 */
- "ERRNO_193", /* 193 */
- "ERRNO_194", /* 194 */
- "ERRNO_195", /* 195 */
- "ERRNO_196", /* 196 */
- "ERRNO_197", /* 197 */
- "ERRNO_198", /* 198 */
- "ERRNO_199", /* 199 */
- "ERRNO_200", /* 200 */
- "ERRNO_201", /* 201 */
- "ERRNO_202", /* 202 */
- "ERRNO_203", /* 203 */
- "ERRNO_204", /* 204 */
- "ERRNO_205", /* 205 */
- "ERRNO_206", /* 206 */
- "ERRNO_207", /* 207 */
- "ERRNO_208", /* 208 */
- "ERRNO_209", /* 209 */
- "ERRNO_210", /* 210 */
- "ERRNO_211", /* 211 */
- "ERRNO_212", /* 212 */
- "ERRNO_213", /* 213 */
- "ERRNO_214", /* 214 */
- "ERRNO_215", /* 215 */
- "ERRNO_216", /* 216 */
- "ERRNO_217", /* 217 */
- "ERRNO_218", /* 218 */
- "ERRNO_219", /* 219 */
- "ERRNO_220", /* 220 */
- "ERRNO_221", /* 221 */
- "ERRNO_222", /* 222 */
- "ERRNO_223", /* 223 */
- "ERRNO_224", /* 224 */
- "ERRNO_225", /* 225 */
- "ERRNO_226", /* 226 */
- "ERRNO_227", /* 227 */
- "ERRNO_228", /* 228 */
- "ERRNO_229", /* 229 */
- "ERRNO_230", /* 230 */
- "ERRNO_231", /* 231 */
- "ERRNO_232", /* 232 */
- "ERRNO_233", /* 233 */
- "ERRNO_234", /* 234 */
- "ERRNO_235", /* 235 */
- "ERRNO_236", /* 236 */
- "ERRNO_237", /* 237 */
- "ERRNO_238", /* 238 */
- "ERRNO_239", /* 239 */
- "ERRNO_240", /* 240 */
- "ERRNO_241", /* 241 */
- "ERRNO_242", /* 242 */
- "ERRNO_243", /* 243 */
- "ERRNO_244", /* 244 */
- "ERRNO_245", /* 245 */
- "ERRNO_246", /* 246 */
- "ERRNO_247", /* 247 */
- "ERRNO_248", /* 248 */
- "ERRNO_249", /* 249 */
- "ERRNO_250", /* 250 */
- "ERRNO_251", /* 251 */
- "ERRNO_252", /* 252 */
- "ERRNO_253", /* 253 */
- "ERRNO_254", /* 254 */
- "ERRNO_255", /* 255 */
- "ERRNO_256", /* 256 */
- "ERRNO_257", /* 257 */
- "ERRNO_258", /* 258 */
- "ERRNO_259", /* 259 */
- "ERRNO_260", /* 260 */
- "ERRNO_261", /* 261 */
- "ERRNO_262", /* 262 */
- "ERRNO_263", /* 263 */
- "ERRNO_264", /* 264 */
- "ERRNO_265", /* 265 */
- "ERRNO_266", /* 266 */
- "ERRNO_267", /* 267 */
- "ERRNO_268", /* 268 */
- "ERRNO_269", /* 269 */
- "ERRNO_270", /* 270 */
- "ERRNO_271", /* 271 */
- "ERRNO_272", /* 272 */
- "ERRNO_273", /* 273 */
- "ERRNO_274", /* 274 */
- "ERRNO_275", /* 275 */
- "ERRNO_276", /* 276 */
- "ERRNO_277", /* 277 */
- "ERRNO_278", /* 278 */
- "ERRNO_279", /* 279 */
- "ERRNO_280", /* 280 */
- "ERRNO_281", /* 281 */
- "ERRNO_282", /* 282 */
- "ERRNO_283", /* 283 */
- "ERRNO_284", /* 284 */
- "ERRNO_285", /* 285 */
- "ERRNO_286", /* 286 */
- "ERRNO_287", /* 287 */
- "ERRNO_288", /* 288 */
- "ERRNO_289", /* 289 */
- "ERRNO_290", /* 290 */
- "ERRNO_291", /* 291 */
- "ERRNO_292", /* 292 */
- "ERRNO_293", /* 293 */
- "ERRNO_294", /* 294 */
- "ERRNO_295", /* 295 */
- "ERRNO_296", /* 296 */
- "ERRNO_297", /* 297 */
- "ERRNO_298", /* 298 */
- "ERRNO_299", /* 299 */
- "ERRNO_300", /* 300 */
- "ERRNO_301", /* 301 */
- "ERRNO_302", /* 302 */
- "ERRNO_303", /* 303 */
- "ERRNO_304", /* 304 */
- "ERRNO_305", /* 305 */
- "ERRNO_306", /* 306 */
- "ERRNO_307", /* 307 */
- "ERRNO_308", /* 308 */
- "ERRNO_309", /* 309 */
- "ERRNO_310", /* 310 */
- "ERRNO_311", /* 311 */
- "ERRNO_312", /* 312 */
- "ERRNO_313", /* 313 */
- "ERRNO_314", /* 314 */
- "ERRNO_315", /* 315 */
- "ERRNO_316", /* 316 */
- "ERRNO_317", /* 317 */
- "ERRNO_318", /* 318 */
- "ERRNO_319", /* 319 */
- "ERRNO_320", /* 320 */
- "ERRNO_321", /* 321 */
- "ERRNO_322", /* 322 */
- "ERRNO_323", /* 323 */
- "ERRNO_324", /* 324 */
- "ERRNO_325", /* 325 */
- "ERRNO_326", /* 326 */
- "ERRNO_327", /* 327 */
- "ERRNO_328", /* 328 */
- "ERRNO_329", /* 329 */
- "ERRNO_330", /* 330 */
- "ERRNO_331", /* 331 */
- "ERRNO_332", /* 332 */
- "ERRNO_333", /* 333 */
- "ERRNO_334", /* 334 */
- "ERRNO_335", /* 335 */
- "ERRNO_336", /* 336 */
- "ERRNO_337", /* 337 */
- "ERRNO_338", /* 338 */
- "ERRNO_339", /* 339 */
- "ERRNO_340", /* 340 */
- "ERRNO_341", /* 341 */
- "ERRNO_342", /* 342 */
- "ERRNO_343", /* 343 */
- "ERRNO_344", /* 344 */
- "ERRNO_345", /* 345 */
- "ERRNO_346", /* 346 */
- "ERRNO_347", /* 347 */
- "ERRNO_348", /* 348 */
- "ERRNO_349", /* 349 */
- "ERRNO_350", /* 350 */
- "ERRNO_351", /* 351 */
- "ERRNO_352", /* 352 */
- "ERRNO_353", /* 353 */
- "ERRNO_354", /* 354 */
- "ERRNO_355", /* 355 */
- "ERRNO_356", /* 356 */
- "ERRNO_357", /* 357 */
- "ERRNO_358", /* 358 */
- "ERRNO_359", /* 359 */
- "ERRNO_360", /* 360 */
- "ERRNO_361", /* 361 */
- "ERRNO_362", /* 362 */
- "ERRNO_363", /* 363 */
- "ERRNO_364", /* 364 */
- "ERRNO_365", /* 365 */
- "ERRNO_366", /* 366 */
- "ERRNO_367", /* 367 */
- "ERRNO_368", /* 368 */
- "ERRNO_369", /* 369 */
- "ERRNO_370", /* 370 */
- "ERRNO_371", /* 371 */
- "ERRNO_372", /* 372 */
- "ERRNO_373", /* 373 */
- "ERRNO_374", /* 374 */
- "ERRNO_375", /* 375 */
- "ERRNO_376", /* 376 */
- "ERRNO_377", /* 377 */
- "ERRNO_378", /* 378 */
- "ERRNO_379", /* 379 */
- "ERRNO_380", /* 380 */
- "ERRNO_381", /* 381 */
- "ERRNO_382", /* 382 */
- "ERRNO_383", /* 383 */
- "ERRNO_384", /* 384 */
- "ERRNO_385", /* 385 */
- "ERRNO_386", /* 386 */
- "ERRNO_387", /* 387 */
- "ERRNO_388", /* 388 */
- "ERRNO_389", /* 389 */
- "ERRNO_390", /* 390 */
- "ERRNO_391", /* 391 */
- "ERRNO_392", /* 392 */
- "ERRNO_393", /* 393 */
- "ERRNO_394", /* 394 */
- "ERRNO_395", /* 395 */
- "ERRNO_396", /* 396 */
- "ERRNO_397", /* 397 */
- "ERRNO_398", /* 398 */
- "ERRNO_399", /* 399 */
- "ERRNO_400", /* 400 */
- "ERRNO_401", /* 401 */
- "ERRNO_402", /* 402 */
- "ERRNO_403", /* 403 */
- "ERRNO_404", /* 404 */
- "ERRNO_405", /* 405 */
- "ERRNO_406", /* 406 */
- "ERRNO_407", /* 407 */
- "ERRNO_408", /* 408 */
- "ERRNO_409", /* 409 */
- "ERRNO_410", /* 410 */
- "ERRNO_411", /* 411 */
- "ERRNO_412", /* 412 */
- "ERRNO_413", /* 413 */
- "ERRNO_414", /* 414 */
- "ERRNO_415", /* 415 */
- "ERRNO_416", /* 416 */
- "ERRNO_417", /* 417 */
- "ERRNO_418", /* 418 */
- "ERRNO_419", /* 419 */
- "ERRNO_420", /* 420 */
- "ERRNO_421", /* 421 */
- "ERRNO_422", /* 422 */
- "ERRNO_423", /* 423 */
- "ERRNO_424", /* 424 */
- "ERRNO_425", /* 425 */
- "ERRNO_426", /* 426 */
- "ERRNO_427", /* 427 */
- "ERRNO_428", /* 428 */
- "ERRNO_429", /* 429 */
- "ERRNO_430", /* 430 */
- "ERRNO_431", /* 431 */
- "ERRNO_432", /* 432 */
- "ERRNO_433", /* 433 */
- "ERRNO_434", /* 434 */
- "ERRNO_435", /* 435 */
- "ERRNO_436", /* 436 */
- "ERRNO_437", /* 437 */
- "ERRNO_438", /* 438 */
- "ERRNO_439", /* 439 */
- "ERRNO_440", /* 440 */
- "ERRNO_441", /* 441 */
- "ERRNO_442", /* 442 */
- "ERRNO_443", /* 443 */
- "ERRNO_444", /* 444 */
- "ERRNO_445", /* 445 */
- "ERRNO_446", /* 446 */
- "ERRNO_447", /* 447 */
- "ERRNO_448", /* 448 */
- "ERRNO_449", /* 449 */
- "ERRNO_450", /* 450 */
- "ERRNO_451", /* 451 */
- "ERRNO_452", /* 452 */
- "ERRNO_453", /* 453 */
- "ERRNO_454", /* 454 */
- "ERRNO_455", /* 455 */
- "ERRNO_456", /* 456 */
- "ERRNO_457", /* 457 */
- "ERRNO_458", /* 458 */
- "ERRNO_459", /* 459 */
- "ERRNO_460", /* 460 */
- "ERRNO_461", /* 461 */
- "ERRNO_462", /* 462 */
- "ERRNO_463", /* 463 */
- "ERRNO_464", /* 464 */
- "ERRNO_465", /* 465 */
- "ERRNO_466", /* 466 */
- "ERRNO_467", /* 467 */
- "ERRNO_468", /* 468 */
- "ERRNO_469", /* 469 */
- "ERRNO_470", /* 470 */
- "ERRNO_471", /* 471 */
- "ERRNO_472", /* 472 */
- "ERRNO_473", /* 473 */
- "ERRNO_474", /* 474 */
- "ERRNO_475", /* 475 */
- "ERRNO_476", /* 476 */
- "ERRNO_477", /* 477 */
- "ERRNO_478", /* 478 */
- "ERRNO_479", /* 479 */
- "ERRNO_480", /* 480 */
- "ERRNO_481", /* 481 */
- "ERRNO_482", /* 482 */
- "ERRNO_483", /* 483 */
- "ERRNO_484", /* 484 */
- "ERRNO_485", /* 485 */
- "ERRNO_486", /* 486 */
- "ERRNO_487", /* 487 */
- "ERRNO_488", /* 488 */
- "ERRNO_489", /* 489 */
- "ERRNO_490", /* 490 */
- "ERRNO_491", /* 491 */
- "ERRNO_492", /* 492 */
- "ERRNO_493", /* 493 */
- "ERRNO_494", /* 494 */
- "ERRNO_495", /* 495 */
- "ERRNO_496", /* 496 */
- "ERRNO_497", /* 497 */
- "ERRNO_498", /* 498 */
- "ERRNO_499", /* 499 */
- "ERRNO_500", /* 500 */
- "ERRNO_501", /* 501 */
- "ERRNO_502", /* 502 */
- "ERRNO_503", /* 503 */
- "ERRNO_504", /* 504 */
- "ERRNO_505", /* 505 */
- "ERRNO_506", /* 506 */
- "ERRNO_507", /* 507 */
- "ERRNO_508", /* 508 */
- "ERRNO_509", /* 509 */
- "ERRNO_510", /* 510 */
- "ERRNO_511", /* 511 */
- "ERESTARTSYS", /* 512 */
- "ERESTARTNOINTR", /* 513 */
- "ERESTARTNOHAND", /* 514 */
- "ENOIOCTLCMD", /* 515 */
- "ERESTART_RESTARTBLOCK", /* 516 */
- "EPROBE_DEFER", /* 517 */
- "EOPENSTALE", /* 518 */
- "ERRNO_519", /* 519 */
- "ERRNO_520", /* 520 */
- "EBADHANDLE", /* 521 */
- "ENOTSYNC", /* 522 */
- "EBADCOOKIE", /* 523 */
- "ENOTSUPP", /* 524 */
- "ETOOSMALL", /* 525 */
- "ESERVERFAULT", /* 526 */
- "EBADTYPE", /* 527 */
- "EJUKEBOX", /* 528 */
- "EIOCBQUEUED", /* 529 */
- "EIOCBRETRY", /* 530 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EAGAIN",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "EDEADLK",
+[ 36] = "ENAMETOOLONG",
+[ 37] = "ENOLCK",
+[ 38] = "ENOSYS",
+[ 39] = "ENOTEMPTY",
+[ 40] = "ELOOP",
+[ 42] = "ENOMSG",
+[ 43] = "EIDRM",
+[ 44] = "ECHRNG",
+[ 45] = "EL2NSYNC",
+[ 46] = "EL3HLT",
+[ 47] = "EL3RST",
+[ 48] = "ELNRNG",
+[ 49] = "EUNATCH",
+[ 50] = "ENOCSI",
+[ 51] = "EL2HLT",
+[ 52] = "EBADE",
+[ 53] = "EBADR",
+[ 54] = "EXFULL",
+[ 55] = "ENOANO",
+[ 56] = "EBADRQC",
+[ 57] = "EBADSLT",
+[ 59] = "EBFONT",
+[ 60] = "ENOSTR",
+[ 61] = "ENODATA",
+[ 62] = "ETIME",
+[ 63] = "ENOSR",
+[ 64] = "ENONET",
+[ 65] = "ENOPKG",
+[ 66] = "EREMOTE",
+[ 67] = "ENOLINK",
+[ 68] = "EADV",
+[ 69] = "ESRMNT",
+[ 70] = "ECOMM",
+[ 71] = "EPROTO",
+[ 72] = "EMULTIHOP",
+[ 73] = "EDOTDOT",
+[ 74] = "EBADMSG",
+[ 75] = "EOVERFLOW",
+[ 76] = "ENOTUNIQ",
+[ 77] = "EBADFD",
+[ 78] = "EREMCHG",
+[ 79] = "ELIBACC",
+[ 80] = "ELIBBAD",
+[ 81] = "ELIBSCN",
+[ 82] = "ELIBMAX",
+[ 83] = "ELIBEXEC",
+[ 84] = "EILSEQ",
+[ 85] = "ERESTART",
+[ 86] = "ESTRPIPE",
+[ 87] = "EUSERS",
+[ 88] = "ENOTSOCK",
+[ 89] = "EDESTADDRREQ",
+[ 90] = "EMSGSIZE",
+[ 91] = "EPROTOTYPE",
+[ 92] = "ENOPROTOOPT",
+[ 93] = "EPROTONOSUPPORT",
+[ 94] = "ESOCKTNOSUPPORT",
+[ 95] = "EOPNOTSUPP",
+[ 96] = "EPFNOSUPPORT",
+[ 97] = "EAFNOSUPPORT",
+[ 98] = "EADDRINUSE",
+[ 99] = "EADDRNOTAVAIL",
+[100] = "ENETDOWN",
+[101] = "ENETUNREACH",
+[102] = "ENETRESET",
+[103] = "ECONNABORTED",
+[104] = "ECONNRESET",
+[105] = "ENOBUFS",
+[106] = "EISCONN",
+[107] = "ENOTCONN",
+[108] = "ESHUTDOWN",
+[109] = "ETOOMANYREFS",
+[110] = "ETIMEDOUT",
+[111] = "ECONNREFUSED",
+[112] = "EHOSTDOWN",
+[113] = "EHOSTUNREACH",
+[114] = "EALREADY",
+[115] = "EINPROGRESS",
+[116] = "ESTALE",
+[117] = "EUCLEAN",
+[118] = "ENOTNAM",
+[119] = "ENAVAIL",
+[120] = "EISNAM",
+[121] = "EREMOTEIO",
+[122] = "EDQUOT",
+[123] = "ENOMEDIUM",
+[124] = "EMEDIUMTYPE",
+[125] = "ECANCELED",
+[126] = "ENOKEY",
+[127] = "EKEYEXPIRED",
+[128] = "EKEYREVOKED",
+[129] = "EKEYREJECTED",
+[130] = "EOWNERDEAD",
+[131] = "ENOTRECOVERABLE",
+[132] = "ERFKILL",
+[133] = "EHWPOISON",
+[512] = "ERESTARTSYS",
+[513] = "ERESTARTNOINTR",
+[514] = "ERESTARTNOHAND",
+[515] = "ENOIOCTLCMD",
+[516] = "ERESTART_RESTARTBLOCK",
+[517] = "EPROBE_DEFER",
+[518] = "EOPENSTALE",
+[521] = "EBADHANDLE",
+[522] = "ENOTSYNC",
+[523] = "EBADCOOKIE",
+[524] = "ENOTSUPP",
+[525] = "ETOOSMALL",
+[526] = "ESERVERFAULT",
+[527] = "EBADTYPE",
+[528] = "EJUKEBOX",
+[529] = "EIOCBQUEUED",
diff --git a/linux/fanotify.h b/linux/fanotify.h
deleted file mode 100644
index f780e5a..0000000
--- a/linux/fanotify.h
+++ /dev/null
@@ -1,116 +0,0 @@
-#ifndef _LINUX_FANOTIFY_H
-#define _LINUX_FANOTIFY_H
-
-#include <linux/types.h>
-
-/* the following events that user-space can register for */
-#define FAN_ACCESS 0x00000001 /* File was accessed */
-#define FAN_MODIFY 0x00000002 /* File was modified */
-#define FAN_CLOSE_WRITE 0x00000008 /* Writtable file closed */
-#define FAN_CLOSE_NOWRITE 0x00000010 /* Unwrittable file closed */
-#define FAN_OPEN 0x00000020 /* File was opened */
-
-#define FAN_Q_OVERFLOW 0x00004000 /* Event queued overflowed */
-
-#define FAN_OPEN_PERM 0x00010000 /* File open in perm check */
-#define FAN_ACCESS_PERM 0x00020000 /* File accessed in perm check */
-
-#define FAN_ONDIR 0x40000000 /* event occurred against dir */
-
-#define FAN_EVENT_ON_CHILD 0x08000000 /* interested in child events */
-
-/* helper events */
-#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE) /* close */
-
-/* flags used for fanotify_init() */
-#define FAN_CLOEXEC 0x00000001
-#define FAN_NONBLOCK 0x00000002
-
-/* These are NOT bitwise flags. Both bits are used togther. */
-#define FAN_CLASS_NOTIF 0x00000000
-#define FAN_CLASS_CONTENT 0x00000004
-#define FAN_CLASS_PRE_CONTENT 0x00000008
-#define FAN_ALL_CLASS_BITS (FAN_CLASS_NOTIF | FAN_CLASS_CONTENT | \
- FAN_CLASS_PRE_CONTENT)
-
-#define FAN_UNLIMITED_QUEUE 0x00000010
-#define FAN_UNLIMITED_MARKS 0x00000020
-
-#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | \
- FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE |\
- FAN_UNLIMITED_MARKS)
-
-/* flags used for fanotify_modify_mark() */
-#define FAN_MARK_ADD 0x00000001
-#define FAN_MARK_REMOVE 0x00000002
-#define FAN_MARK_DONT_FOLLOW 0x00000004
-#define FAN_MARK_ONLYDIR 0x00000008
-#define FAN_MARK_MOUNT 0x00000010
-#define FAN_MARK_IGNORED_MASK 0x00000020
-#define FAN_MARK_IGNORED_SURV_MODIFY 0x00000040
-#define FAN_MARK_FLUSH 0x00000080
-
-#define FAN_ALL_MARK_FLAGS (FAN_MARK_ADD |\
- FAN_MARK_REMOVE |\
- FAN_MARK_DONT_FOLLOW |\
- FAN_MARK_ONLYDIR |\
- FAN_MARK_MOUNT |\
- FAN_MARK_IGNORED_MASK |\
- FAN_MARK_IGNORED_SURV_MODIFY |\
- FAN_MARK_FLUSH)
-
-/*
- * All of the events - we build the list by hand so that we can add flags in
- * the future and not break backward compatibility. Apps will get only the
- * events that they originally wanted. Be sure to add new events here!
- */
-#define FAN_ALL_EVENTS (FAN_ACCESS |\
- FAN_MODIFY |\
- FAN_CLOSE |\
- FAN_OPEN)
-
-/*
- * All events which require a permission response from userspace
- */
-#define FAN_ALL_PERM_EVENTS (FAN_OPEN_PERM |\
- FAN_ACCESS_PERM)
-
-#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS |\
- FAN_ALL_PERM_EVENTS |\
- FAN_Q_OVERFLOW)
-
-#define FANOTIFY_METADATA_VERSION 3
-
-struct fanotify_event_metadata {
- __u32 event_len;
- __u8 vers;
- __u8 reserved;
- __u16 metadata_len;
- __aligned_u64 mask;
- __s32 fd;
- __s32 pid;
-};
-
-struct fanotify_response {
- __s32 fd;
- __u32 response;
-};
-
-/* Legit userspace responses to a _PERM event */
-#define FAN_ALLOW 0x01
-#define FAN_DENY 0x02
-/* No fd set in event */
-#define FAN_NOFD -1
-
-/* Helper functions to deal with fanotify_event_metadata buffers */
-#define FAN_EVENT_METADATA_LEN (sizeof(struct fanotify_event_metadata))
-
-#define FAN_EVENT_NEXT(meta, len) ((len) -= (meta)->event_len, \
- (struct fanotify_event_metadata*)(((char *)(meta)) + \
- (meta)->event_len))
-
-#define FAN_EVENT_OK(meta, len) ((long)(len) >= (long)FAN_EVENT_METADATA_LEN && \
- (long)(meta)->event_len >= (long)FAN_EVENT_METADATA_LEN && \
- (long)(meta)->event_len <= (long)(len))
-
-#endif /* _LINUX_FANOTIFY_H */
diff --git a/linux/hppa/arch_regs.h b/linux/hppa/arch_regs.h
new file mode 100644
index 0000000..d42fc14
--- /dev/null
+++ b/linux/hppa/arch_regs.h
@@ -0,0 +1,5 @@
+#define PT_GR20 (20*4)
+#define PT_GR26 (26*4)
+#define PT_GR28 (28*4)
+#define PT_IAOQ0 (106*4)
+#define PT_IAOQ1 (107*4)
diff --git a/linux/hppa/errnoent.h b/linux/hppa/errnoent.h
index d866f7e..c78c03f 100644
--- a/linux/hppa/errnoent.h
+++ b/linux/hppa/errnoent.h
@@ -1,258 +1,151 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "ENOMSG", /* 35 */
- "EIDRM", /* 36 */
- "ECHRNG", /* 37 */
- "EL2NSYNC", /* 38 */
- "EL3HLT", /* 39 */
- "EL3RST", /* 40 */
- "ELNRNG", /* 41 */
- "EUNATCH", /* 42 */
- "ENOCSI", /* 43 */
- "EL2HLT", /* 44 */
- "EDEADLK", /* 45 */
- "ENOLCK", /* 46 */
- "EILSEQ", /* 47 */
- "ERRNO_48", /* 48 */
- "ERRNO_49", /* 49 */
- "ENONET", /* 50 */
- "ENODATA", /* 51 */
- "ETIME", /* 52 */
- "ENOSR", /* 53 */
- "ENOSTR", /* 54 */
- "ENOPKG", /* 55 */
- "ERRNO_56", /* 56 */
- "ENOLINK", /* 57 */
- "EADV", /* 58 */
- "ESRMNT", /* 59 */
- "ECOMM", /* 60 */
- "EPROTO", /* 61 */
- "ERRNO_62", /* 62 */
- "ERRNO_63", /* 63 */
- "EMULTIHOP", /* 64 */
- "ERRNO_65", /* 65 */
- "EDOTDOT", /* 66 */
- "EBADMSG", /* 67 */
- "EUSERS", /* 68 */
- "EDQUOT", /* 69 */
- "ESTALE", /* 70 */
- "EREMOTE", /* 71 */
- "EOVERFLOW", /* 72 */
- "ERRNO_73", /* 73 */
- "ERRNO_74", /* 74 */
- "ERRNO_75", /* 75 */
- "ERRNO_76", /* 76 */
- "ERRNO_77", /* 77 */
- "ERRNO_78", /* 78 */
- "ERRNO_79", /* 79 */
- "ERRNO_80", /* 80 */
- "ERRNO_81", /* 81 */
- "ERRNO_82", /* 82 */
- "ERRNO_83", /* 83 */
- "ERRNO_84", /* 84 */
- "ERRNO_85", /* 85 */
- "ERRNO_86", /* 86 */
- "ERRNO_87", /* 87 */
- "ERRNO_88", /* 88 */
- "ERRNO_89", /* 89 */
- "ERRNO_90", /* 90 */
- "ERRNO_91", /* 91 */
- "ERRNO_92", /* 92 */
- "ERRNO_93", /* 93 */
- "ERRNO_94", /* 94 */
- "ERRNO_95", /* 95 */
- "ERRNO_96", /* 96 */
- "ERRNO_97", /* 97 */
- "ERRNO_98", /* 98 */
- "ERRNO_99", /* 99 */
- "ERRNO_100", /* 100 */
- "ERRNO_101", /* 101 */
- "ERRNO_102", /* 102 */
- "ERRNO_103", /* 103 */
- "ERRNO_104", /* 104 */
- "ERRNO_105", /* 105 */
- "ERRNO_106", /* 106 */
- "ERRNO_107", /* 107 */
- "ERRNO_108", /* 108 */
- "ERRNO_109", /* 109 */
- "ERRNO_110", /* 110 */
- "ERRNO_111", /* 111 */
- "ERRNO_112", /* 112 */
- "ERRNO_113", /* 113 */
- "ERRNO_114", /* 114 */
- "ERRNO_115", /* 115 */
- "ERRNO_116", /* 116 */
- "ERRNO_117", /* 117 */
- "ERRNO_118", /* 118 */
- "ERRNO_119", /* 119 */
- "ERRNO_120", /* 120 */
- "ERRNO_121", /* 121 */
- "ERRNO_122", /* 122 */
- "ERRNO_123", /* 123 */
- "ERRNO_124", /* 124 */
- "ERRNO_125", /* 125 */
- "ERRNO_126", /* 126 */
- "ERRNO_127", /* 127 */
- "ERRNO_128", /* 128 */
- "ERRNO_129", /* 129 */
- "ERRNO_130", /* 130 */
- "ERRNO_131", /* 131 */
- "ERRNO_132", /* 132 */
- "ERRNO_133", /* 133 */
- "ERRNO_134", /* 134 */
- "ERRNO_135", /* 135 */
- "ERRNO_136", /* 136 */
- "ERRNO_137", /* 137 */
- "ERRNO_138", /* 138 */
- "ERRNO_139", /* 139 */
- "ERRNO_140", /* 140 */
- "ERRNO_141", /* 141 */
- "ERRNO_142", /* 142 */
- "ERRNO_143", /* 143 */
- "ERRNO_144", /* 144 */
- "ERRNO_145", /* 145 */
- "ERRNO_146", /* 146 */
- "ERRNO_147", /* 147 */
- "ERRNO_148", /* 148 */
- "ERRNO_149", /* 149 */
- "ERRNO_150", /* 150 */
- "ERRNO_151", /* 151 */
- "ERRNO_152", /* 152 */
- "ERRNO_153", /* 153 */
- "ERRNO_154", /* 154 */
- "ERRNO_155", /* 155 */
- "ERRNO_156", /* 156 */
- "ERRNO_157", /* 157 */
- "ERRNO_158", /* 158 */
- "ERRNO_159", /* 159 */
- "EBADE", /* 160 */
- "EBADR", /* 161 */
- "EXFULL", /* 162 */
- "ENOANO", /* 163 */
- "EBADRQC", /* 164 */
- "EBADSLT", /* 165 */
- "EBFONT", /* 166 */
- "ENOTUNIQ", /* 167 */
- "EBADFD", /* 168 */
- "EREMCHG", /* 169 */
- "ELIBACC", /* 170 */
- "ELIBBAD", /* 171 */
- "ELIBSCN", /* 172 */
- "ELIBMAX", /* 173 */
- "ELIBEXEC", /* 174 */
- "ERESTART", /* 175 */
- "ESTRPIPE", /* 176 */
- "EUCLEAN", /* 177 */
- "ENOTNAM", /* 178 */
- "ENAVAIL", /* 179 */
- "EISNAM", /* 180 */
- "EREMOTEIO", /* 181 */
- "ENOMEDIUM", /* 182 */
- "EMEDIUMTYPE", /* 183 */
- "ENOKEY", /* 184 */
- "EKEYEXPIRED", /* 185 */
- "EKEYREVOKED", /* 186 */
- "EKEYREJECTED", /* 187 */
- "ERRNO_188", /* 188 */
- "ERRNO_189", /* 189 */
- "ERRNO_190", /* 190 */
- "ERRNO_191", /* 191 */
- "ERRNO_192", /* 192 */
- "ERRNO_193", /* 193 */
- "ERRNO_194", /* 194 */
- "ERRNO_195", /* 195 */
- "ERRNO_196", /* 196 */
- "ERRNO_197", /* 197 */
- "ERRNO_198", /* 198 */
- "ERRNO_199", /* 199 */
- "ERRNO_200", /* 200 */
- "ERRNO_201", /* 201 */
- "ERRNO_202", /* 202 */
- "ERRNO_203", /* 203 */
- "ERRNO_204", /* 204 */
- "ERRNO_205", /* 205 */
- "ERRNO_206", /* 206 */
- "ERRNO_207", /* 207 */
- "ERRNO_208", /* 208 */
- "ERRNO_209", /* 209 */
- "ERRNO_210", /* 210 */
- "ERRNO_211", /* 211 */
- "ERRNO_212", /* 212 */
- "ERRNO_213", /* 213 */
- "ERRNO_214", /* 214 */
- "ENOSYM", /* 215 */
- "ENOTSOCK", /* 216 */
- "EDESTADDRREQ", /* 217 */
- "EMSGSIZE", /* 218 */
- "EPROTOTYPE", /* 219 */
- "ENOPROTOOPT", /* 220 */
- "EPROTONOSUPPORT", /* 221 */
- "ESOCKTNOSUPPORT", /* 222 */
- "EOPNOTSUPP", /* 223 */
- "EPFNOSUPPORT", /* 224 */
- "EAFNOSUPPORT", /* 225 */
- "EADDRINUSE", /* 226 */
- "EADDRNOTAVAIL", /* 227 */
- "ENETDOWN", /* 228 */
- "ENETUNREACH", /* 229 */
- "ENETRESET", /* 230 */
- "ECONNABORTED", /* 231 */
- "ECONNRESET", /* 232 */
- "ENOBUFS", /* 233 */
- "EISCONN", /* 234 */
- "ENOTCONN", /* 235 */
- "ESHUTDOWN", /* 236 */
- "ETOOMANYREFS", /* 237 */
- "ETIMEDOUT", /* 238 */
- "ECONNREFUSED", /* 239 */
- "EREMOTERELEASE", /* 240 */
- "EHOSTDOWN", /* 241 */
- "EHOSTUNREACH", /* 242 */
- "ERRNO_243", /* 243 */
- "EALREADY", /* 244 */
- "EINPROGRESS", /* 245 */
- "EWOULDBLOCK_OLD", /* 246 */ /* was EWOULDBLOCK before kernel 3.14 */
- "ENOTEMPTY", /* 247 */
- "ENAMETOOLONG", /* 248 */
- "ELOOP", /* 249 */
- "ERRNO_250", /* 250 */
- "ENOSYS", /* 251 */
- "ENOTSUP", /* 252 */
- "ECANCELLED", /* 253 */
- "EOWNERDEAD", /* 254 */
- "ENOTRECOVERABLE", /* 255 */
- "ERFKILL", /* 256 */
- "EHWPOISON", /* 257 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EAGAIN",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "ENOMSG",
+[ 36] = "EIDRM",
+[ 37] = "ECHRNG",
+[ 38] = "EL2NSYNC",
+[ 39] = "EL3HLT",
+[ 40] = "EL3RST",
+[ 41] = "ELNRNG",
+[ 42] = "EUNATCH",
+[ 43] = "ENOCSI",
+[ 44] = "EL2HLT",
+[ 45] = "EDEADLK",
+[ 46] = "ENOLCK",
+[ 47] = "EILSEQ",
+[ 50] = "ENONET",
+[ 51] = "ENODATA",
+[ 52] = "ETIME",
+[ 53] = "ENOSR",
+[ 54] = "ENOSTR",
+[ 55] = "ENOPKG",
+[ 57] = "ENOLINK",
+[ 58] = "EADV",
+[ 59] = "ESRMNT",
+[ 60] = "ECOMM",
+[ 61] = "EPROTO",
+[ 64] = "EMULTIHOP",
+[ 66] = "EDOTDOT",
+[ 67] = "EBADMSG",
+[ 68] = "EUSERS",
+[ 69] = "EDQUOT",
+[ 70] = "ESTALE",
+[ 71] = "EREMOTE",
+[ 72] = "EOVERFLOW",
+[160] = "EBADE",
+[161] = "EBADR",
+[162] = "EXFULL",
+[163] = "ENOANO",
+[164] = "EBADRQC",
+[165] = "EBADSLT",
+[166] = "EBFONT",
+[167] = "ENOTUNIQ",
+[168] = "EBADFD",
+[169] = "EREMCHG",
+[170] = "ELIBACC",
+[171] = "ELIBBAD",
+[172] = "ELIBSCN",
+[173] = "ELIBMAX",
+[174] = "ELIBEXEC",
+[175] = "ERESTART",
+[176] = "ESTRPIPE",
+[177] = "EUCLEAN",
+[178] = "ENOTNAM",
+[179] = "ENAVAIL",
+[180] = "EISNAM",
+[181] = "EREMOTEIO",
+[182] = "ENOMEDIUM",
+[183] = "EMEDIUMTYPE",
+[184] = "ENOKEY",
+[185] = "EKEYEXPIRED",
+[186] = "EKEYREVOKED",
+[187] = "EKEYREJECTED",
+[215] = "ENOSYM",
+[216] = "ENOTSOCK",
+[217] = "EDESTADDRREQ",
+[218] = "EMSGSIZE",
+[219] = "EPROTOTYPE",
+[220] = "ENOPROTOOPT",
+[221] = "EPROTONOSUPPORT",
+[222] = "ESOCKTNOSUPPORT",
+[223] = "EOPNOTSUPP",
+[224] = "EPFNOSUPPORT",
+[225] = "EAFNOSUPPORT",
+[226] = "EADDRINUSE",
+[227] = "EADDRNOTAVAIL",
+[228] = "ENETDOWN",
+[229] = "ENETUNREACH",
+[230] = "ENETRESET",
+[231] = "ECONNABORTED",
+[232] = "ECONNRESET",
+[233] = "ENOBUFS",
+[234] = "EISCONN",
+[235] = "ENOTCONN",
+[236] = "ESHUTDOWN",
+[237] = "ETOOMANYREFS",
+[238] = "ETIMEDOUT",
+[239] = "ECONNREFUSED",
+[240] = "EREMOTERELEASE",
+[241] = "EHOSTDOWN",
+[242] = "EHOSTUNREACH",
+[244] = "EALREADY",
+[245] = "EINPROGRESS",
+[246] = "EWOULDBLOCK",
+[247] = "ENOTEMPTY",
+[248] = "ENAMETOOLONG",
+[249] = "ELOOP",
+[251] = "ENOSYS",
+[252] = "ENOTSUP",
+[253] = "ECANCELLED",
+[254] = "EOWNERDEAD",
+[255] = "ENOTRECOVERABLE",
+[256] = "ERFKILL",
+[257] = "EHWPOISON",
+[512] = "ERESTARTSYS",
+[513] = "ERESTARTNOINTR",
+[514] = "ERESTARTNOHAND",
+[515] = "ENOIOCTLCMD",
+[516] = "ERESTART_RESTARTBLOCK",
+[517] = "EPROBE_DEFER",
+[518] = "EOPENSTALE",
+[521] = "EBADHANDLE",
+[522] = "ENOTSYNC",
+[523] = "EBADCOOKIE",
+[524] = "ENOTSUPP",
+[525] = "ETOOSMALL",
+[526] = "ESERVERFAULT",
+[527] = "EBADTYPE",
+[528] = "EJUKEBOX",
+[529] = "EIOCBQUEUED",
diff --git a/linux/hppa/ioctlent.h.in b/linux/hppa/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/hppa/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/hppa/ioctls_arch0.h b/linux/hppa/ioctls_arch0.h
new file mode 100644
index 0000000..ba93971
--- /dev/null
+++ b/linux/hppa/ioctls_arch0.h
@@ -0,0 +1,101 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/parisc/include/ tree. */
+{ "asm/grfioctl.h", "GCAOFF", _IOC_NONE, 0x4704, 0x00 },
+{ "asm/grfioctl.h", "GCAON", _IOC_NONE, 0x4703, 0x00 },
+{ "asm/grfioctl.h", "GCDESCRIBE", _IOC_READ, 0x4715, 0x70 },
+{ "asm/grfioctl.h", "GCFASTLOCK", _IOC_NONE, 0x471a, 0x00 },
+{ "asm/grfioctl.h", "GCID", _IOC_READ, 0x4700, 0x04 },
+{ "asm/grfioctl.h", "GCLOCK", _IOC_NONE, 0x4707, 0x00 },
+{ "asm/grfioctl.h", "GCLOCK_MINIMUM", _IOC_NONE, 0x4709, 0x00 },
+{ "asm/grfioctl.h", "GCMAP", _IOC_READ|_IOC_WRITE, 0x4705, 0x04 },
+{ "asm/grfioctl.h", "GCMAP_HPUX", _IOC_NONE, 0x4705, 0x00 },
+{ "asm/grfioctl.h", "GCOFF", _IOC_NONE, 0x4702, 0x00 },
+{ "asm/grfioctl.h", "GCON", _IOC_NONE, 0x4701, 0x00 },
+{ "asm/grfioctl.h", "GCSTATIC_CMAP", _IOC_NONE, 0x470b, 0x00 },
+{ "asm/grfioctl.h", "GCTERM", _IOC_READ|_IOC_WRITE, 0x4714, 0x04 },
+{ "asm/grfioctl.h", "GCUNLOCK", _IOC_NONE, 0x4708, 0x00 },
+{ "asm/grfioctl.h", "GCUNLOCK_MINIMUM", _IOC_NONE, 0x470a, 0x00 },
+{ "asm/grfioctl.h", "GCUNMAP", _IOC_READ|_IOC_WRITE, 0x4706, 0x04 },
+{ "asm/grfioctl.h", "GCUNMAP_HPUX", _IOC_NONE, 0x4706, 0x00 },
+{ "asm/grfioctl.h", "GCVARIABLE_CMAP", _IOC_NONE, 0x470c, 0x00 },
+{ "asm/ioctls.h", "FIOASYNC", 0, 0x5452, 0 },
+{ "asm/ioctls.h", "FIOCLEX", 0, 0x5451, 0 },
+{ "asm/ioctls.h", "FIONBIO", 0, 0x5421, 0 },
+{ "asm/ioctls.h", "FIONCLEX", 0, 0x5450, 0 },
+{ "asm/ioctls.h", "FIONREAD", 0, 0x541B, 0 },
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x5460, 0 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x5407, 0x00 },
+{ "asm/ioctls.h", "TCGETA", _IOC_READ, 0x5401, 0x12 },
+{ "asm/ioctls.h", "TCGETS", _IOC_READ, 0x5410, 0x24 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x5405, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm/ioctls.h", "TCSETA", _IOC_WRITE, 0x5402, 0x12 },
+{ "asm/ioctls.h", "TCSETAF", _IOC_WRITE, 0x5404, 0x12 },
+{ "asm/ioctls.h", "TCSETAW", _IOC_WRITE, 0x5403, 0x12 },
+{ "asm/ioctls.h", "TCSETS", _IOC_WRITE, 0x5411, 0x24 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", _IOC_WRITE, 0x5413, 0x24 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", _IOC_WRITE, 0x5412, 0x24 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x5406, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x541e, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x5414, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm/ioctls.h", "TIOCGWINSZ", 0, 0x5413, 0 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm/ioctls.h", "TIOCOUTQ", 0, 0x5411, 0 },
+{ "asm/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSLTC", 0, 0x5462, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x541d, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm/ioctls.h", "TIOCSTART", 0, 0x5461, 0 },
+{ "asm/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm/ioctls.h", "TIOCSTOP", 0, 0x5462, 0 },
+{ "asm/ioctls.h", "TIOCSWINSZ", 0, 0x5414, 0 },
+{ "asm/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm/perf.h", "PA_PERF_OFF", _IOC_READ, 0x7002, 0x04 },
+{ "asm/perf.h", "PA_PERF_ON", _IOC_NONE, 0x7001, 0x00 },
+{ "asm/perf.h", "PA_PERF_VERSION", _IOC_READ, 0x7003, 0x04 },
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
diff --git a/linux/hppa/ioctls_inc0.h b/linux/hppa/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/hppa/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/hppa/signalent.h b/linux/hppa/signalent.h
index 9fbc212..6d69987 100644
--- a/linux/hppa/signalent.h
+++ b/linux/hppa/signalent.h
@@ -29,5 +29,5 @@
"SIGTTOU", /* 28 */
"SIGURG", /* 29 */
"SIGXFSZ", /* 30 */
- "SIGUNUSED", /* 31 */
+ "SIGSYS", /* 31 */
"SIGRTMIN", /* 32 */
diff --git a/linux/hppa/syscallent.h b/linux/hppa/syscallent.h
index 0a58c5d..d502e6a 100644
--- a/linux/hppa/syscallent.h
+++ b/linux/hppa/syscallent.h
@@ -2,341 +2,346 @@
* Copyright (c) 2001 Hewlett-Packard, Matthew Wilcox
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown, "lchown" }, /* 16 */
- { 3, TN, sys_socket, "socket" }, /* 17 */
- { 2, TF, sys_stat, "newstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 3, TN, sys_bind, "bind" }, /* 22 */
- { 1, 0, sys_setuid, "setuid" }, /* 23 */
- { 0, NF, sys_getuid, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_fstat, "newfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 3, TN, sys_connect, "connect" }, /* 31 */
- { 2, TN, sys_listen, "listen" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 3, TN, sys_accept, "accept" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid, "setgid" }, /* 46 */
- { 0, NF, sys_getgid, "getgid" }, /* 47 */
- { 2, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount2" }, /* 52 */
- { 3, TN, sys_getpeername, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 4, TN, sys_send, "send" }, /* 58 */
- { 1, 0, sys_uname, "newuname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid, "setregid" }, /* 71 */
- { 3, TM, sys_mincore, "mincore" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 81 */
- { 6, TN, sys_sendto, "sendto" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_lstat, "newlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, TN, sys_recv, "recv" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 2, TF, sys_stat64, "stat64" }, /* 101 */
- { 5, 0, NULL, NULL }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, 0, sys_capget, "capget" }, /* 106 */
- { 2, 0, sys_capset, "capset" }, /* 107 */
- { 5, TD, sys_pread, "pread" }, /* 108 */
- { 5, TD, sys_pwrite, "pwrite" }, /* 109 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 112 */
- { 0, TP, sys_vfork, "vfork" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 3, TM, sys_madvise, "madvise" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 122 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 4, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms" }, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 5, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "_newselect" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 1, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 156 */
- { 2, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 164 */
- { 3, 0, sys_setresuid, "getresuid" }, /* 165 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 170 */
- { 3, 0, sys_setresgid, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 3, TF, sys_chown, "chown" }, /* 180 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 181 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 182 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 183 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 184 */
- { 4, TI, sys_semop, "semop" }, /* 185 */
- { 4, TI, sys_semget, "semget" }, /* 186 */
- { 4, TI, sys_semctl, "semctl" }, /* 187 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 188 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 189 */
- { 4, TI, sys_msgget, "msgget" }, /* 190 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 191 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 192 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 193 */
- { 3, TI, sys_shmget, "shmget" }, /* 194 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 196 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 197 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 198 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 199 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 200 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 201 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 202 */
- { 5, 0, printargs, "attrctl" }, /* 203 */
- { 5, 0, printargs, "acl_get" }, /* 204 */
- { 5, 0, printargs, "acl_set" }, /* 205 */
- { 0, 0, sys_gettid, "gettid" }, /* 206 */
- { 4, TD, sys_readahead, "readahead" }, /* 207 */
- { 2, TS, sys_kill, "tkill" }, /* 208 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 209 */
- { 6, 0, sys_futex, "futex" }, /* 210 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 211 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 212 */
- { 5, 0, printargs, "set_thread_area" }, /* 213 */
- { 5, 0, printargs, "get_thread_area" }, /* 214 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 215 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 216 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 217 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 218 */
- { 4, 0, sys_io_cancel, "io_cancel" }, /* 219 */
- { 5, 0, printargs, "alloc_hugepages" }, /* 220 */
- { 1, 0, printargs, "free_hugepages" }, /* 221 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 222 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 223 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 224 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 225 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 226 */
- { 5, TM|SI, printargs, "remap_file_pages" }, /* 227 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 228 */
- { 5, 0, printargs, "mq_open" }, /* 229 */
- { 5, 0, printargs, "mq_unlink" }, /* 230 */
- { 5, 0, printargs, "mq_timedsend" }, /* 231 */
- { 5, 0, printargs, "mq_timedreceive" }, /* 232 */
- { 5, 0, printargs, "mq_notify" }, /* 233 */
- { 5, 0, printargs, "mq_getsetattr" }, /* 234 */
- { 5, TP, sys_waitid, "waitid" }, /* 235 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 236 */
- { 5, 0, sys_set_tid_address, "set_tid_address" }, /* 237 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 238 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 239 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 240 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 241 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 242 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 243 */
- { 5, TF, sys_listxattr, "listxattr" }, /* 244 */
- { 5, TF, sys_listxattr, "llistxattr" }, /* 245 */
- { 5, TD, sys_flistxattr, "flistxattr" }, /* 246 */
- { 5, TF, sys_removexattr, "removexattr" }, /* 247 */
- { 5, TF, sys_removexattr, "lremovexattr" }, /* 248 */
- { 5, TD, sys_fremovexattr, "fremovexattr" }, /* 249 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 250 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 251 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 252 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 253 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 254 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 255 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 256 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 257 */
- { 5, 0, printargs, "clock_nanosleep" }, /* 258 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 259 */
- { 5, TM, printargs, "mbind" }, /* 260 */
- { 5, TM, printargs, "get_mempolicy" }, /* 261 */
- { 5, TM, printargs, "set_mempolicy" }, /* 262 */
- { 5, 0, sys_vserver, "vserver" }, /* 263 */
- { 5, 0, sys_add_key, "add_key" }, /* 264 */
- { 4, 0, sys_request_key, "request_key" }, /* 265 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 266 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 267 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 268 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 269 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 270 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 271 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 272 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 273 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 274 */
- { 4, TD|TF, sys_openat, "openat" }, /* 275 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 276 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 277 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 278 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 279 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 280 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 281 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 282 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 283 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 284 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 285 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 286 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 287 */
- { 1, TP, sys_unshare, "unshare" }, /* 288 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 289 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 290 */
- { 6, TD, sys_splice, "splice" }, /* 291 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 292 */
- { 4, TD, sys_tee, "tee" }, /* 293 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 294 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 295 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 296 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 297 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 298 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 299 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 300 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 301 */
- { 3, TD, printargs, "signalfd" }, /* 302 */
- { 4, TD, printargs, "timerfd" }, /* 303 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 304 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 305 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 306 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 307 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 308 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 309 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 310 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 311 */
- { 3, TD, sys_dup3, "dup3" }, /* 312 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 313 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 314 */
- { 5, TD, sys_preadv, "preadv" }, /* 315 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 316 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 317 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 318 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 319 */
- { 4, TN, sys_accept4, "accept4" }, /* 320 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 321 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 322 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 323 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 324 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 325 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 326 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 327 */
- { 2, TD, sys_setns, "setns" }, /* 328 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 329 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 330 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 331 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 332 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 333 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 334 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 335 */
- { 2, TF, sys_utimes, "utimes" }, /* 336 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 337 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown, "lchown" },
+[ 17] = { 3, TN, sys_socket, "socket" },
+[ 18] = { 2, TF, sys_stat, "stat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 3, TN, sys_bind, "bind" },
+[ 23] = { 1, 0, sys_setuid, "setuid" },
+[ 24] = { 0, NF, sys_getuid, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_fstat, "fstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 3, TN, sys_connect, "connect" },
+[ 32] = { 2, TN, sys_listen, "listen" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 3, TN, sys_accept, "accept" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 3, TN, sys_getsockname, "getsockname" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid, "setgid" },
+[ 47] = { 0, NF, sys_getgid, "getgid" },
+[ 48] = { 2, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid, "geteuid" },
+[ 50] = { 0, NF, sys_getegid, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 3, TN, sys_getpeername, "getpeername" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 4, TN, sys_socketpair, "socketpair" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 4, TN, sys_send, "send" },
+[ 59] = { 1, 0, sys_uname, "uname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 2, TF, sys_pivotroot, "pivot_root" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid, "setreuid" },
+[ 71] = { 2, 0, sys_setregid, "setregid" },
+[ 72] = { 3, TM, sys_mincore, "mincore" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups, "setgroups" },
+[ 82] = { 6, TN, sys_sendto, "sendto" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_lstat, "lstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[ 90] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, TN, sys_recv, "recv" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 2, TF, sys_stat64, "stat64" },
+[102] = { },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, 0, sys_capget, "capget" },
+[107] = { 2, 0, sys_capset, "capset" },
+[108] = { 5, TD, sys_pread, "pread64" },
+[109] = { 5, TD, sys_pwrite, "pwrite64" },
+[110] = { 2, TF, sys_getcwd, "getcwd" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 2, TD, sys_fstat64, "fstat64" },
+[113] = { 0, TP, sys_vfork, "vfork" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 2, TN, sys_shutdown, "shutdown" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 3, TM, sys_madvise, "madvise" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[123] = { 6, TN, sys_recvfrom, "recvfrom" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 4, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 5, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 1, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 2, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid, "setresuid" },
+[165] = { 3, 0, sys_getresuid, "getresuid" },
+[166] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid, "setresgid" },
+[171] = { 3, 0, sys_getresgid, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 3, TF, sys_chown, "chown" },
+[181] = { 5, TN, sys_setsockopt, "setsockopt" },
+[182] = { 5, TN, sys_getsockopt, "getsockopt" },
+[183] = { 3, TN, sys_sendmsg, "sendmsg" },
+[184] = { 3, TN, sys_recvmsg, "recvmsg" },
+[185] = { 3, TI, sys_semop, "semop" },
+[186] = { 3, TI, sys_semget, "semget" },
+[187] = { 4, TI, sys_semctl, "semctl" },
+[188] = { 4, TI, sys_msgsnd, "msgsnd" },
+[189] = { 5, TI, sys_msgrcv, "msgrcv" },
+[190] = { 2, TI, sys_msgget, "msgget" },
+[191] = { 3, TI, sys_msgctl, "msgctl" },
+[192] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[193] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[194] = { 3, TI, sys_shmget, "shmget" },
+[195] = { 3, TI, sys_shmctl, "shmctl" },
+[196] = { 5, 0, sys_getpmsg, "getpmsg" },
+[197] = { 5, 0, sys_putpmsg, "putpmsg" },
+[198] = { 2, TF, sys_lstat64, "lstat64" },
+[199] = { 3, TF, sys_truncate64, "truncate64" },
+[200] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[201] = { 3, TD, sys_getdents64, "getdents64" },
+[202] = { 3, TD, sys_fcntl, "fcntl64" },
+[203] = { 5, 0, printargs, "attrctl" },
+[204] = { 5, 0, printargs, "acl_get" },
+[205] = { 5, 0, printargs, "acl_set" },
+[206] = { 0, 0, sys_gettid, "gettid" },
+[207] = { 4, TD, sys_readahead, "readahead" },
+[208] = { 2, TS, sys_kill, "tkill" },
+[209] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[210] = { 6, 0, sys_futex, "futex" },
+[211] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[212] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[213] = { 5, 0, printargs, "set_thread_area" },
+[214] = { 5, 0, printargs, "get_thread_area" },
+[215] = { 2, 0, sys_io_setup, "io_setup" },
+[216] = { 1, 0, sys_io_destroy, "io_destroy" },
+[217] = { 5, 0, sys_io_getevents, "io_getevents" },
+[218] = { 3, 0, sys_io_submit, "io_submit" },
+[219] = { 4, 0, sys_io_cancel, "io_cancel" },
+[220] = { 5, 0, printargs, "alloc_hugepages" },
+[221] = { 1, 0, printargs, "free_hugepages" },
+[222] = { 1, TP|SE, sys_exit, "exit_group" },
+[223] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[224] = { 1, TD, sys_epoll_create, "epoll_create" },
+[225] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[226] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[227] = { 5, TM|SI, printargs, "remap_file_pages" },
+[228] = { 4, TI, sys_semtimedop, "semtimedop" },
+[229] = { 5, 0, printargs, "mq_open" },
+[230] = { 5, 0, printargs, "mq_unlink" },
+[231] = { 5, 0, printargs, "mq_timedsend" },
+[232] = { 5, 0, printargs, "mq_timedreceive" },
+[233] = { 5, 0, printargs, "mq_notify" },
+[234] = { 5, 0, printargs, "mq_getsetattr" },
+[235] = { 5, TP, sys_waitid, "waitid" },
+[236] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[237] = { 5, 0, sys_set_tid_address, "set_tid_address" },
+[238] = { 5, TF, sys_setxattr, "setxattr" },
+[239] = { 5, TF, sys_setxattr, "lsetxattr" },
+[240] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[241] = { 4, TF, sys_getxattr, "getxattr" },
+[242] = { 4, TF, sys_getxattr, "lgetxattr" },
+[243] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[244] = { 5, TF, sys_listxattr, "listxattr" },
+[245] = { 5, TF, sys_listxattr, "llistxattr" },
+[246] = { 5, TD, sys_flistxattr, "flistxattr" },
+[247] = { 5, TF, sys_removexattr, "removexattr" },
+[248] = { 5, TF, sys_removexattr, "lremovexattr" },
+[249] = { 5, TD, sys_fremovexattr, "fremovexattr" },
+[250] = { 3, 0, sys_timer_create, "timer_create" },
+[251] = { 4, 0, sys_timer_settime, "timer_settime" },
+[252] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[253] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[254] = { 1, 0, sys_timer_delete, "timer_delete" },
+[255] = { 2, 0, sys_clock_settime, "clock_settime" },
+[256] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[257] = { 2, 0, sys_clock_getres, "clock_getres" },
+[258] = { 5, 0, printargs, "clock_nanosleep" },
+[259] = { 3, TS, sys_tgkill, "tgkill" },
+[260] = { 6, TM, sys_mbind, "mbind" },
+[261] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[262] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[263] = { 5, 0, sys_vserver, "vserver" },
+[264] = { 5, 0, sys_add_key, "add_key" },
+[265] = { 4, 0, sys_request_key, "request_key" },
+[266] = { 5, 0, sys_keyctl, "keyctl" },
+[267] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[268] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[269] = { 0, TD, sys_inotify_init, "inotify_init" },
+[270] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[271] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[272] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[273] = { 6, TD, sys_pselect6, "pselect6" },
+[274] = { 5, TD, sys_ppoll, "ppoll" },
+[275] = { 4, TD|TF, sys_openat, "openat" },
+[276] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[277] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[278] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[279] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[280] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[281] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[282] = { 4, TD|TF, sys_renameat, "renameat" },
+[283] = { 5, TD|TF, sys_linkat, "linkat" },
+[284] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[285] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[286] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[287] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[288] = { 1, TP, sys_unshare, "unshare" },
+[289] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[290] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[291] = { 6, TD, sys_splice, "splice" },
+[292] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[293] = { 4, TD, sys_tee, "tee" },
+[294] = { 4, TD, sys_vmsplice, "vmsplice" },
+[295] = { 6, TM, sys_move_pages, "move_pages" },
+[296] = { 3, 0, sys_getcpu, "getcpu" },
+[297] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[298] = { 3, TF, sys_statfs64, "statfs64" },
+[299] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[300] = { 4, 0, sys_kexec_load, "kexec_load" },
+[301] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[302] = { 3, TD, printargs, "signalfd" },
+[303] = { 4, TD, printargs, "timerfd" },
+[304] = { 1, TD, sys_eventfd, "eventfd" },
+[305] = { 6, TD, sys_fallocate, "fallocate" },
+[306] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[307] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[308] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[309] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[310] = { 2, TD, sys_eventfd2, "eventfd2" },
+[311] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[312] = { 3, TD, sys_dup3, "dup3" },
+[313] = { 2, TD, sys_pipe2, "pipe2" },
+[314] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[315] = { 5, TD, sys_preadv, "preadv" },
+[316] = { 5, TD, sys_pwritev, "pwritev" },
+[317] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[318] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[319] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[320] = { 4, TN, sys_accept4, "accept4" },
+[321] = { 4, 0, sys_prlimit64, "prlimit64" },
+[322] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[323] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[324] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[325] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[326] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[327] = { 1, TD, sys_syncfs, "syncfs" },
+[328] = { 2, TD, sys_setns, "setns" },
+[329] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[330] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[331] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[332] = { 5, 0, sys_kcmp, "kcmp" },
+[333] = { 3, TD, sys_finit_module, "finit_module" },
+[334] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[335] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[336] = { 2, TF, sys_utimes, "utimes" },
+[337] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[338] = { 3, 0, sys_seccomp, "seccomp", },
+[339] = { 3, 0, sys_getrandom, "getrandom", },
+[340] = { 2, TD, sys_memfd_create, "memfd_create", },
+[341] = { 3, TD, sys_bpf, "bpf", },
+[342] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/i386/arch_regs.h b/linux/i386/arch_regs.h
new file mode 100644
index 0000000..77984ff
--- /dev/null
+++ b/linux/i386/arch_regs.h
@@ -0,0 +1 @@
+extern long *const i386_esp_ptr;
diff --git a/linux/i386/ioctlent.h.in b/linux/i386/ioctlent.h.in
deleted file mode 100644
index 449ad40..0000000
--- a/linux/i386/ioctlent.h.in
+++ /dev/null
@@ -1,15 +0,0 @@
- {"asm/mtrr.h", "MTRRIOC_ADD_ENTRY", 0x4d00},
- {"asm/mce.h", "MCE_GET_RECORD_LEN", 0x4d01},
- {"asm/mtrr.h", "MTRRIOC_SET_ENTRY", 0x4d01},
- {"asm/mce.h", "MCE_GET_LOG_LEN", 0x4d02},
- {"asm/mtrr.h", "MTRRIOC_DEL_ENTRY", 0x4d02},
- {"asm/mce.h", "MCE_GETCLEAR_FLAGS", 0x4d03},
- {"asm/mtrr.h", "MTRRIOC_GET_ENTRY", 0x4d03},
- {"asm/mtrr.h", "MTRRIOC_KILL_ENTRY", 0x4d04},
- {"asm/mtrr.h", "MTRRIOC_ADD_PAGE_ENTRY", 0x4d05},
- {"asm/mtrr.h", "MTRRIOC_SET_PAGE_ENTRY", 0x4d06},
- {"asm/mtrr.h", "MTRRIOC_DEL_PAGE_ENTRY", 0x4d07},
- {"asm/mtrr.h", "MTRRIOC_GET_PAGE_ENTRY", 0x4d08},
- {"asm/mtrr.h", "MTRRIOC_KILL_PAGE_ENTRY", 0x4d09},
- {"asm/msr.h", "X86_IOC_RDMSR_REGS", 0x63a0},
- {"asm/msr.h", "X86_IOC_WRMSR_REGS", 0x63a1},
diff --git a/linux/i386/ioctls_arch0.h b/linux/i386/ioctls_arch0.h
new file mode 100644
index 0000000..0a35935
--- /dev/null
+++ b/linux/i386/ioctls_arch0.h
@@ -0,0 +1,16 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/x86/include/ tree. */
+{ "asm/mce.h", "MCE_GETCLEAR_FLAGS", _IOC_READ, 0x4d03, 0x04 },
+{ "asm/mce.h", "MCE_GET_LOG_LEN", _IOC_READ, 0x4d02, 0x04 },
+{ "asm/mce.h", "MCE_GET_RECORD_LEN", _IOC_READ, 0x4d01, 0x04 },
+{ "asm/msr.h", "X86_IOC_RDMSR_REGS", _IOC_READ|_IOC_WRITE, 0x63a0, 0x20 },
+{ "asm/msr.h", "X86_IOC_WRMSR_REGS", _IOC_READ|_IOC_WRITE, 0x63a1, 0x20 },
+{ "asm/mtrr.h", "MTRRIOC_ADD_ENTRY", _IOC_WRITE, 0x4d00, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_ADD_PAGE_ENTRY", _IOC_WRITE, 0x4d05, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_DEL_ENTRY", _IOC_WRITE, 0x4d02, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_DEL_PAGE_ENTRY", _IOC_WRITE, 0x4d07, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_GET_ENTRY", _IOC_READ|_IOC_WRITE, 0x4d03, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_GET_PAGE_ENTRY", _IOC_READ|_IOC_WRITE, 0x4d08, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_KILL_ENTRY", _IOC_WRITE, 0x4d04, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_KILL_PAGE_ENTRY", _IOC_WRITE, 0x4d09, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_SET_ENTRY", _IOC_WRITE, 0x4d01, 0x0c },
+{ "asm/mtrr.h", "MTRRIOC_SET_PAGE_ENTRY", _IOC_WRITE, 0x4d06, 0x0c },
diff --git a/linux/i386/ioctls_inc0.h b/linux/i386/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/i386/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/i386/syscallent.h b/linux/i386/syscallent.h
index fea5a25..21f9a9e 100644
--- a/linux/i386/syscallent.h
+++ b/linux/i386/syscallent.h
@@ -26,456 +26,366 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_old_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, sys_vm86old, "vm86old" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, sys_vm86, "vm86" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_old_mmap, "old_mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 1, 0, sys_vm86old, "vm86old" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, sys_vm86, "vm86" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 5, TD, sys_pread, "pread64" },
+[181] = { 5, TD, sys_pwrite, "pwrite64" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_getegid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222] = { },
+[223] = { 5, 0, sys_security, "security" },
+[224] = { 0, 0, sys_gettid, "gettid" },
+[225] = { 4, TD, sys_readahead, "readahead" },
+[226] = { 5, TF, sys_setxattr, "setxattr" },
+[227] = { 5, TF, sys_setxattr, "lsetxattr" },
+[228] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[229] = { 4, TF, sys_getxattr, "getxattr" },
+[230] = { 4, TF, sys_getxattr, "lgetxattr" },
+[231] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[232] = { 3, TF, sys_listxattr, "listxattr" },
+[233] = { 3, TF, sys_listxattr, "llistxattr" },
+[234] = { 3, TD, sys_flistxattr, "flistxattr" },
+[235] = { 2, TF, sys_removexattr, "removexattr" },
+[236] = { 2, TF, sys_removexattr, "lremovexattr" },
+[237] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[238] = { 2, TS, sys_kill, "tkill" },
+[239] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[240] = { 6, 0, sys_futex, "futex" },
+[241] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[242] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[243] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[244] = { 1, 0, sys_get_thread_area, "get_thread_area" },
+[245] = { 2, 0, sys_io_setup, "io_setup" },
+[246] = { 1, 0, sys_io_destroy, "io_destroy" },
+[247] = { 5, 0, sys_io_getevents, "io_getevents" },
+[248] = { 3, 0, sys_io_submit, "io_submit" },
+[249] = { 3, 0, sys_io_cancel, "io_cancel" },
+[250] = { 5, TD, sys_fadvise64, "fadvise64" },
+[251] = { }, /* sys_set_zone_reclaim */
+[252] = { 1, TP|SE, sys_exit, "exit_group" },
+[253] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[254] = { 1, TD, sys_epoll_create, "epoll_create" },
+[255] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[256] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[257] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[258] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[259] = { 3, 0, sys_timer_create, "timer_create" },
+[260] = { 4, 0, sys_timer_settime, "timer_settime" },
+[261] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[262] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[263] = { 1, 0, sys_timer_delete, "timer_delete" },
+[264] = { 2, 0, sys_clock_settime, "clock_settime" },
+[265] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[266] = { 2, 0, sys_clock_getres, "clock_getres" },
+[267] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[268] = { 3, TF, sys_statfs64, "statfs64" },
+[269] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[270] = { 3, TS, sys_tgkill, "tgkill" },
+[271] = { 2, TF, sys_utimes, "utimes" },
+[272] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[273] = { 5, 0, sys_vserver, "vserver" },
+[274] = { 6, TM, sys_mbind, "mbind" },
+[275] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[276] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[277] = { 4, 0, sys_mq_open, "mq_open" },
+[278] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[279] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[280] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[281] = { 2, 0, sys_mq_notify, "mq_notify" },
+[282] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[283] = { 4, 0, sys_kexec_load, "kexec_load" },
+[284] = { 5, TP, sys_waitid, "waitid" },
+[285] = { }, /* sys_setaltroot */
+[286] = { 5, 0, sys_add_key, "add_key" },
+[287] = { 4, 0, sys_request_key, "request_key" },
+[288] = { 5, 0, sys_keyctl, "keyctl" },
+[289] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[290] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[291] = { 0, TD, sys_inotify_init, "inotify_init" },
+[292] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[293] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[294] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[295] = { 4, TD|TF, sys_openat, "openat" },
+[296] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[297] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[298] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[299] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[300] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[301] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[302] = { 4, TD|TF, sys_renameat, "renameat" },
+[303] = { 5, TD|TF, sys_linkat, "linkat" },
+[304] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[305] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[306] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[307] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[308] = { 6, TD, sys_pselect6, "pselect6" },
+[309] = { 5, TD, sys_ppoll, "ppoll" },
+[310] = { 1, TP, sys_unshare, "unshare" },
+[311] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[312] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[313] = { 6, TD, sys_splice, "splice" },
+[314] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[315] = { 4, TD, sys_tee, "tee" },
+[316] = { 4, TD, sys_vmsplice, "vmsplice" },
+[317] = { 6, TM, sys_move_pages, "move_pages" },
+[318] = { 3, 0, sys_getcpu, "getcpu" },
+[319] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[320] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[321] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[322] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[323] = { 1, TD, sys_eventfd, "eventfd" },
+[324] = { 6, TD, sys_fallocate, "fallocate" },
+[325] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[326] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[327] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[328] = { 2, TD, sys_eventfd2, "eventfd2" },
+[329] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[330] = { 3, TD, sys_dup3, "dup3" },
+[331] = { 2, TD, sys_pipe2, "pipe2" },
+[332] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[333] = { 5, TD, sys_preadv, "preadv" },
+[334] = { 5, TD, sys_pwritev, "pwritev" },
+[335] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[336] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[337] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[338] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[339] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[340] = { 4, 0, sys_prlimit64, "prlimit64" },
+[341] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[342] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[343] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[344] = { 1, TD, sys_syncfs, "syncfs" },
+[345] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[346] = { 2, TD, sys_setns, "setns" },
+[347] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[348] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[349] = { 5, 0, sys_kcmp, "kcmp" },
+[350] = { 3, TD, sys_finit_module, "finit_module" },
+[351] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[352] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[353] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[354] = { 3, 0, sys_seccomp, "seccomp", },
+[355] = { 3, 0, sys_getrandom, "getrandom", },
+[356] = { 2, TD, sys_memfd_create, "memfd_create", },
+[357] = { 3, TD, sys_bpf, "bpf", },
+[358] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[359 ... 399] = { },
- { 5, TD, sys_pread, "pread64" }, /* 180 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
-
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_getegid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 6, 0, NULL, NULL }, /* 222 */
- { 5, 0, sys_security, "security" }, /* 223 */
- { 0, 0, sys_gettid, "gettid" }, /* 224 */
- { 4, TD, sys_readahead, "readahead" }, /* 225 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 226 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 228 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 229 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 231 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 232 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 234 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 235 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 237 */
- { 2, TS, sys_kill, "tkill" }, /* 238 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 239 */
- { 6, 0, sys_futex, "futex" }, /* 240 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 241 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 242 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 243 */
- { 1, 0, sys_get_thread_area, "get_thread_area" }, /* 244 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 245 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 246 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 247 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 248 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 250 */
- { 6, 0, NULL, NULL }, /* 251 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 252 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 253 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 254 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 255 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 256 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 257 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 258 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 259 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 260 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 261 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 262 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 263 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 264 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 265 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 266 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 267 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 268 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 269 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 270 */
- { 2, TF, sys_utimes, "utimes" }, /* 271 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 272 */
- { 5, 0, sys_vserver, "vserver" }, /* 273 */
- { 6, TM, sys_mbind, "mbind" }, /* 274 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 275 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 276 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 277 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 278 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 279 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 280 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 281 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 282 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 283 */
- { 5, TP, sys_waitid, "waitid" }, /* 284 */
- { 6, 0, NULL, NULL }, /* 285 */
- { 5, 0, sys_add_key, "add_key" }, /* 286 */
- { 4, 0, sys_request_key, "request_key" }, /* 287 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 288 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 289 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 290 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 291 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 292 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 293 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 294 */
- { 4, TD|TF, sys_openat, "openat" }, /* 295 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 296 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 297 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 298 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 299 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 300 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 301 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 302 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 303 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 304 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 305 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 306 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 307 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 308 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 309 */
- { 1, TP, sys_unshare, "unshare" }, /* 310 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 311 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 312 */
- { 6, TD, sys_splice, "splice" }, /* 313 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 314 */
- { 4, TD, sys_tee, "tee" }, /* 315 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 316 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 317 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 318 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 319 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 320 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 321 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 322 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 323 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 324 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 325 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 326 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 327 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 328 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 329 */
- { 3, TD, sys_dup3, "dup3" }, /* 330 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 331 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 332 */
- { 5, TD, sys_preadv, "preadv" }, /* 333 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 334 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 335 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 336 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 337 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 338 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 339 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 340 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 341 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 342 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 343 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 344 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 345 */
- { 2, TD, sys_setns, "setns" }, /* 346 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 347 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 348 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 349 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 350 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 351 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 352 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 353 */
- { 5, 0, NULL, NULL }, /* 354 */
- { 5, 0, NULL, NULL }, /* 355 */
- { 5, 0, NULL, NULL }, /* 356 */
- { 5, 0, NULL, NULL }, /* 357 */
- { 5, 0, NULL, NULL }, /* 358 */
- { 5, 0, NULL, NULL }, /* 359 */
- { 5, 0, NULL, NULL }, /* 360 */
- { 5, 0, NULL, NULL }, /* 361 */
- { 5, 0, NULL, NULL }, /* 362 */
- { 5, 0, NULL, NULL }, /* 363 */
- { 5, 0, NULL, NULL }, /* 364 */
- { 5, 0, NULL, NULL }, /* 365 */
- { 5, 0, NULL, NULL }, /* 366 */
- { 5, 0, NULL, NULL }, /* 367 */
- { 5, 0, NULL, NULL }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
diff --git a/linux/ia64/arch_regs.h b/linux/ia64/arch_regs.h
new file mode 100644
index 0000000..7ad969c
--- /dev/null
+++ b/linux/ia64/arch_regs.h
@@ -0,0 +1,2 @@
+#include <asm/ptrace_offsets.h>
+extern unsigned long *const ia64_frame_ptr;
diff --git a/linux/ia64/ioctlent.h.in b/linux/ia64/ioctlent.h.in
deleted file mode 100644
index 970ba55..0000000
--- a/linux/ia64/ioctlent.h.in
+++ /dev/null
@@ -1,66 +0,0 @@
- {"asm/ioctls.h", "TCGETS", 0x5401},
- {"asm/ioctls.h", "TCSETS", 0x5402},
- {"asm/ioctls.h", "TCSETSW", 0x5403},
- {"asm/ioctls.h", "TCSETSF", 0x5404},
- {"asm/ioctls.h", "TCGETA", 0x5405},
- {"asm/ioctls.h", "TCSETA", 0x5406},
- {"asm/ioctls.h", "TCSETAW", 0x5407},
- {"asm/ioctls.h", "TCSETAF", 0x5408},
- {"asm/ioctls.h", "TCSBRK", 0x5409},
- {"asm/ioctls.h", "TCXONC", 0x540a},
- {"asm/ioctls.h", "TCFLSH", 0x540b},
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCGPGRP", 0x540f},
- {"asm/ioctls.h", "TIOCSPGRP", 0x5410},
- {"asm/ioctls.h", "TIOCOUTQ", 0x5411},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x5413},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x5414},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "FIONREAD", 0x541b},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "FIONBIO", 0x5421},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "FIONCLEX", 0x5450},
- {"asm/ioctls.h", "FIOCLEX", 0x5451},
- {"asm/ioctls.h", "FIOASYNC", 0x5452},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "TIOCGHAYESESP", 0x545e},
- {"asm/ioctls.h", "TIOCSHAYESESP", 0x545f},
- {"asm/ioctls.h", "FIOQSIZE", 0x5460},
- {"asm/sockios.h", "FIOSETOWN", 0x8901},
- {"asm/sockios.h", "SIOCSPGRP", 0x8902},
- {"asm/sockios.h", "FIOGETOWN", 0x8903},
- {"asm/sockios.h", "SIOCGPGRP", 0x8904},
- {"asm/sockios.h", "SIOCATMARK", 0x8905},
- {"asm/sockios.h", "SIOCGSTAMP", 0x8906},
diff --git a/linux/ia64/ioctls_arch0.h b/linux/ia64/ioctls_arch0.h
new file mode 100644
index 0000000..6a6e400
--- /dev/null
+++ b/linux/ia64/ioctls_arch0.h
@@ -0,0 +1,8 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/ia64/include/ tree. */
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
diff --git a/linux/ia64/ioctls_inc0.h b/linux/ia64/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/ia64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/ia64/signalent.h b/linux/ia64/signalent.h
deleted file mode 100644
index e791a64..0000000
--- a/linux/ia64/signalent.h
+++ /dev/null
@@ -1,64 +0,0 @@
- "SIG_0", /* 0 */
- "SIGHUP", /* 1 */
- "SIGINT", /* 2 */
- "SIGQUIT", /* 3 */
- "SIGILL", /* 4 */
- "SIGTRAP", /* 5 */
- "SIGABRT", /* 6 */
- "SIGBUS", /* 7 */
- "SIGFPE", /* 8 */
- "SIGKILL", /* 9 */
- "SIGUSR1", /* 10 */
- "SIGSEGV", /* 11 */
- "SIGUSR2", /* 12 */
- "SIGPIPE", /* 13 */
- "SIGALRM", /* 14 */
- "SIGTERM", /* 15 */
- "SIGSTKFLT", /* 16 */
- "SIGCHLD", /* 17 */
- "SIGCONT", /* 18 */
- "SIGSTOP", /* 19 */
- "SIGTSTP", /* 20 */
- "SIGTTIN", /* 21 */
- "SIGTTOU", /* 22 */
- "SIGURG", /* 23 */
- "SIGXCPU", /* 24 */
- "SIGXFSZ", /* 25 */
- "SIGVTALRM", /* 26 */
- "SIGPROF", /* 27 */
- "SIGWINCH", /* 28 */
- "SIGIO", /* 29 */
- "SIGPWR", /* 30 */
- "SIGSYS", /* 31 */
- "SIGRT0", /* 32 */
- "SIGRT1", /* 33 */
- "SIGRT2", /* 34 */
- "SIGRT3", /* 35 */
- "SIGRT4", /* 36 */
- "SIGRT5", /* 37 */
- "SIGRT6", /* 38 */
- "SIGRT7", /* 39 */
- "SIGRT8", /* 40 */
- "SIGRT9", /* 41 */
- "SIGRT10", /* 42 */
- "SIGRT11", /* 43 */
- "SIGRT12", /* 44 */
- "SIGRT13", /* 45 */
- "SIGRT14", /* 46 */
- "SIGRT15", /* 47 */
- "SIGRT16", /* 48 */
- "SIGRT17", /* 49 */
- "SIGRT18", /* 50 */
- "SIGRT19", /* 51 */
- "SIGRT20", /* 52 */
- "SIGRT21", /* 53 */
- "SIGRT22", /* 54 */
- "SIGRT23", /* 55 */
- "SIGRT24", /* 56 */
- "SIGRT25", /* 57 */
- "SIGRT26", /* 58 */
- "SIGRT27", /* 59 */
- "SIGRT28", /* 60 */
- "SIGRT29", /* 61 */
- "SIGRT30", /* 62 */
- "SIGRT31", /* 63 */
diff --git a/linux/ia64/syscallent.h b/linux/ia64/syscallent.h
index 48422d9..0f93a3d 100644
--- a/linux/ia64/syscallent.h
+++ b/linux/ia64/syscallent.h
@@ -40,6 +40,7 @@
#define sys_break printargs
#define sys_oldstat printargs
#define sys_lseek printargs
+#undef sys_stime
#define sys_stime printargs
#define sys_ptrace printargs
#define sys_oldfstat printargs
@@ -232,901 +233,323 @@
/* You must be careful to check ../i386/syscallent.h so that this table
starts where that one leaves off.
*/
-#if SYS_ipc_subcall + SYS_ipc_nsubcalls != 445
-# error fix me
-#endif
-
- { MA, 0, NULL, NULL }, /* 445 */
- { MA, 0, NULL, NULL }, /* 446 */
- { MA, 0, NULL, NULL }, /* 447 */
- { MA, 0, NULL, NULL }, /* 448 */
- { MA, 0, NULL, NULL }, /* 449 */
- { MA, 0, NULL, NULL }, /* 450 */
- { MA, 0, NULL, NULL }, /* 451 */
- { MA, 0, NULL, NULL }, /* 452 */
- { MA, 0, NULL, NULL }, /* 453 */
- { MA, 0, NULL, NULL }, /* 454 */
- { MA, 0, NULL, NULL }, /* 455 */
- { MA, 0, NULL, NULL }, /* 456 */
- { MA, 0, NULL, NULL }, /* 457 */
- { MA, 0, NULL, NULL }, /* 458 */
- { MA, 0, NULL, NULL }, /* 459 */
- { MA, 0, NULL, NULL }, /* 460 */
- { MA, 0, NULL, NULL }, /* 461 */
- { MA, 0, NULL, NULL }, /* 462 */
- { MA, 0, NULL, NULL }, /* 463 */
- { MA, 0, NULL, NULL }, /* 464 */
- { MA, 0, NULL, NULL }, /* 465 */
- { MA, 0, NULL, NULL }, /* 466 */
- { MA, 0, NULL, NULL }, /* 467 */
- { MA, 0, NULL, NULL }, /* 468 */
- { MA, 0, NULL, NULL }, /* 469 */
- { MA, 0, NULL, NULL }, /* 470 */
- { MA, 0, NULL, NULL }, /* 471 */
- { MA, 0, NULL, NULL }, /* 472 */
- { MA, 0, NULL, NULL }, /* 473 */
- { MA, 0, NULL, NULL }, /* 474 */
- { MA, 0, NULL, NULL }, /* 475 */
- { MA, 0, NULL, NULL }, /* 476 */
- { MA, 0, NULL, NULL }, /* 477 */
- { MA, 0, NULL, NULL }, /* 478 */
- { MA, 0, NULL, NULL }, /* 479 */
- { MA, 0, NULL, NULL }, /* 480 */
- { MA, 0, NULL, NULL }, /* 481 */
- { MA, 0, NULL, NULL }, /* 482 */
- { MA, 0, NULL, NULL }, /* 483 */
- { MA, 0, NULL, NULL }, /* 484 */
- { MA, 0, NULL, NULL }, /* 485 */
- { MA, 0, NULL, NULL }, /* 486 */
- { MA, 0, NULL, NULL }, /* 487 */
- { MA, 0, NULL, NULL }, /* 488 */
- { MA, 0, NULL, NULL }, /* 489 */
- { MA, 0, NULL, NULL }, /* 490 */
- { MA, 0, NULL, NULL }, /* 491 */
- { MA, 0, NULL, NULL }, /* 492 */
- { MA, 0, NULL, NULL }, /* 493 */
- { MA, 0, NULL, NULL }, /* 494 */
- { MA, 0, NULL, NULL }, /* 495 */
- { MA, 0, NULL, NULL }, /* 496 */
- { MA, 0, NULL, NULL }, /* 497 */
- { MA, 0, NULL, NULL }, /* 498 */
- { MA, 0, NULL, NULL }, /* 499 */
- { MA, 0, NULL, NULL }, /* 500 */
- { MA, 0, NULL, NULL }, /* 501 */
- { MA, 0, NULL, NULL }, /* 502 */
- { MA, 0, NULL, NULL }, /* 503 */
- { MA, 0, NULL, NULL }, /* 504 */
- { MA, 0, NULL, NULL }, /* 505 */
- { MA, 0, NULL, NULL }, /* 506 */
- { MA, 0, NULL, NULL }, /* 507 */
- { MA, 0, NULL, NULL }, /* 508 */
- { MA, 0, NULL, NULL }, /* 509 */
- { MA, 0, NULL, NULL }, /* 510 */
- { MA, 0, NULL, NULL }, /* 511 */
- { MA, 0, NULL, NULL }, /* 512 */
- { MA, 0, NULL, NULL }, /* 513 */
- { MA, 0, NULL, NULL }, /* 514 */
- { MA, 0, NULL, NULL }, /* 515 */
- { MA, 0, NULL, NULL }, /* 516 */
- { MA, 0, NULL, NULL }, /* 517 */
- { MA, 0, NULL, NULL }, /* 518 */
- { MA, 0, NULL, NULL }, /* 519 */
- { MA, 0, NULL, NULL }, /* 520 */
- { MA, 0, NULL, NULL }, /* 521 */
- { MA, 0, NULL, NULL }, /* 522 */
- { MA, 0, NULL, NULL }, /* 523 */
- { MA, 0, NULL, NULL }, /* 524 */
- { MA, 0, NULL, NULL }, /* 525 */
- { MA, 0, NULL, NULL }, /* 526 */
- { MA, 0, NULL, NULL }, /* 527 */
- { MA, 0, NULL, NULL }, /* 528 */
- { MA, 0, NULL, NULL }, /* 529 */
- { MA, 0, NULL, NULL }, /* 530 */
- { MA, 0, NULL, NULL }, /* 531 */
- { MA, 0, NULL, NULL }, /* 532 */
- { MA, 0, NULL, NULL }, /* 533 */
- { MA, 0, NULL, NULL }, /* 534 */
- { MA, 0, NULL, NULL }, /* 535 */
- { MA, 0, NULL, NULL }, /* 536 */
- { MA, 0, NULL, NULL }, /* 537 */
- { MA, 0, NULL, NULL }, /* 538 */
- { MA, 0, NULL, NULL }, /* 539 */
- { MA, 0, NULL, NULL }, /* 540 */
- { MA, 0, NULL, NULL }, /* 541 */
- { MA, 0, NULL, NULL }, /* 542 */
- { MA, 0, NULL, NULL }, /* 543 */
- { MA, 0, NULL, NULL }, /* 544 */
- { MA, 0, NULL, NULL }, /* 545 */
- { MA, 0, NULL, NULL }, /* 546 */
- { MA, 0, NULL, NULL }, /* 547 */
- { MA, 0, NULL, NULL }, /* 548 */
- { MA, 0, NULL, NULL }, /* 549 */
- { MA, 0, NULL, NULL }, /* 550 */
- { MA, 0, NULL, NULL }, /* 551 */
- { MA, 0, NULL, NULL }, /* 552 */
- { MA, 0, NULL, NULL }, /* 553 */
- { MA, 0, NULL, NULL }, /* 554 */
- { MA, 0, NULL, NULL }, /* 555 */
- { MA, 0, NULL, NULL }, /* 556 */
- { MA, 0, NULL, NULL }, /* 557 */
- { MA, 0, NULL, NULL }, /* 558 */
- { MA, 0, NULL, NULL }, /* 559 */
- { MA, 0, NULL, NULL }, /* 560 */
- { MA, 0, NULL, NULL }, /* 561 */
- { MA, 0, NULL, NULL }, /* 562 */
- { MA, 0, NULL, NULL }, /* 563 */
- { MA, 0, NULL, NULL }, /* 564 */
- { MA, 0, NULL, NULL }, /* 565 */
- { MA, 0, NULL, NULL }, /* 566 */
- { MA, 0, NULL, NULL }, /* 567 */
- { MA, 0, NULL, NULL }, /* 568 */
- { MA, 0, NULL, NULL }, /* 569 */
- { MA, 0, NULL, NULL }, /* 570 */
- { MA, 0, NULL, NULL }, /* 571 */
- { MA, 0, NULL, NULL }, /* 572 */
- { MA, 0, NULL, NULL }, /* 573 */
- { MA, 0, NULL, NULL }, /* 574 */
- { MA, 0, NULL, NULL }, /* 575 */
- { MA, 0, NULL, NULL }, /* 576 */
- { MA, 0, NULL, NULL }, /* 577 */
- { MA, 0, NULL, NULL }, /* 578 */
- { MA, 0, NULL, NULL }, /* 579 */
- { MA, 0, NULL, NULL }, /* 580 */
- { MA, 0, NULL, NULL }, /* 581 */
- { MA, 0, NULL, NULL }, /* 582 */
- { MA, 0, NULL, NULL }, /* 583 */
- { MA, 0, NULL, NULL }, /* 584 */
- { MA, 0, NULL, NULL }, /* 585 */
- { MA, 0, NULL, NULL }, /* 586 */
- { MA, 0, NULL, NULL }, /* 587 */
- { MA, 0, NULL, NULL }, /* 588 */
- { MA, 0, NULL, NULL }, /* 589 */
- { MA, 0, NULL, NULL }, /* 590 */
- { MA, 0, NULL, NULL }, /* 591 */
- { MA, 0, NULL, NULL }, /* 592 */
- { MA, 0, NULL, NULL }, /* 593 */
- { MA, 0, NULL, NULL }, /* 594 */
- { MA, 0, NULL, NULL }, /* 595 */
- { MA, 0, NULL, NULL }, /* 596 */
- { MA, 0, NULL, NULL }, /* 597 */
- { MA, 0, NULL, NULL }, /* 598 */
- { MA, 0, NULL, NULL }, /* 599 */
- { MA, 0, NULL, NULL }, /* 600 */
- { MA, 0, NULL, NULL }, /* 601 */
- { MA, 0, NULL, NULL }, /* 602 */
- { MA, 0, NULL, NULL }, /* 603 */
- { MA, 0, NULL, NULL }, /* 604 */
- { MA, 0, NULL, NULL }, /* 605 */
- { MA, 0, NULL, NULL }, /* 606 */
- { MA, 0, NULL, NULL }, /* 607 */
- { MA, 0, NULL, NULL }, /* 608 */
- { MA, 0, NULL, NULL }, /* 609 */
- { MA, 0, NULL, NULL }, /* 610 */
- { MA, 0, NULL, NULL }, /* 611 */
- { MA, 0, NULL, NULL }, /* 612 */
- { MA, 0, NULL, NULL }, /* 613 */
- { MA, 0, NULL, NULL }, /* 614 */
- { MA, 0, NULL, NULL }, /* 615 */
- { MA, 0, NULL, NULL }, /* 616 */
- { MA, 0, NULL, NULL }, /* 617 */
- { MA, 0, NULL, NULL }, /* 618 */
- { MA, 0, NULL, NULL }, /* 619 */
- { MA, 0, NULL, NULL }, /* 620 */
- { MA, 0, NULL, NULL }, /* 621 */
- { MA, 0, NULL, NULL }, /* 622 */
- { MA, 0, NULL, NULL }, /* 623 */
- { MA, 0, NULL, NULL }, /* 624 */
- { MA, 0, NULL, NULL }, /* 625 */
- { MA, 0, NULL, NULL }, /* 626 */
- { MA, 0, NULL, NULL }, /* 627 */
- { MA, 0, NULL, NULL }, /* 628 */
- { MA, 0, NULL, NULL }, /* 629 */
- { MA, 0, NULL, NULL }, /* 630 */
- { MA, 0, NULL, NULL }, /* 631 */
- { MA, 0, NULL, NULL }, /* 632 */
- { MA, 0, NULL, NULL }, /* 633 */
- { MA, 0, NULL, NULL }, /* 634 */
- { MA, 0, NULL, NULL }, /* 635 */
- { MA, 0, NULL, NULL }, /* 636 */
- { MA, 0, NULL, NULL }, /* 637 */
- { MA, 0, NULL, NULL }, /* 638 */
- { MA, 0, NULL, NULL }, /* 639 */
- { MA, 0, NULL, NULL }, /* 640 */
- { MA, 0, NULL, NULL }, /* 641 */
- { MA, 0, NULL, NULL }, /* 642 */
- { MA, 0, NULL, NULL }, /* 643 */
- { MA, 0, NULL, NULL }, /* 644 */
- { MA, 0, NULL, NULL }, /* 645 */
- { MA, 0, NULL, NULL }, /* 646 */
- { MA, 0, NULL, NULL }, /* 647 */
- { MA, 0, NULL, NULL }, /* 648 */
- { MA, 0, NULL, NULL }, /* 649 */
- { MA, 0, NULL, NULL }, /* 650 */
- { MA, 0, NULL, NULL }, /* 651 */
- { MA, 0, NULL, NULL }, /* 652 */
- { MA, 0, NULL, NULL }, /* 653 */
- { MA, 0, NULL, NULL }, /* 654 */
- { MA, 0, NULL, NULL }, /* 655 */
- { MA, 0, NULL, NULL }, /* 656 */
- { MA, 0, NULL, NULL }, /* 657 */
- { MA, 0, NULL, NULL }, /* 658 */
- { MA, 0, NULL, NULL }, /* 659 */
- { MA, 0, NULL, NULL }, /* 660 */
- { MA, 0, NULL, NULL }, /* 661 */
- { MA, 0, NULL, NULL }, /* 662 */
- { MA, 0, NULL, NULL }, /* 663 */
- { MA, 0, NULL, NULL }, /* 664 */
- { MA, 0, NULL, NULL }, /* 665 */
- { MA, 0, NULL, NULL }, /* 666 */
- { MA, 0, NULL, NULL }, /* 667 */
- { MA, 0, NULL, NULL }, /* 668 */
- { MA, 0, NULL, NULL }, /* 669 */
- { MA, 0, NULL, NULL }, /* 670 */
- { MA, 0, NULL, NULL }, /* 671 */
- { MA, 0, NULL, NULL }, /* 672 */
- { MA, 0, NULL, NULL }, /* 673 */
- { MA, 0, NULL, NULL }, /* 674 */
- { MA, 0, NULL, NULL }, /* 675 */
- { MA, 0, NULL, NULL }, /* 676 */
- { MA, 0, NULL, NULL }, /* 677 */
- { MA, 0, NULL, NULL }, /* 678 */
- { MA, 0, NULL, NULL }, /* 679 */
- { MA, 0, NULL, NULL }, /* 680 */
- { MA, 0, NULL, NULL }, /* 681 */
- { MA, 0, NULL, NULL }, /* 682 */
- { MA, 0, NULL, NULL }, /* 683 */
- { MA, 0, NULL, NULL }, /* 684 */
- { MA, 0, NULL, NULL }, /* 685 */
- { MA, 0, NULL, NULL }, /* 686 */
- { MA, 0, NULL, NULL }, /* 687 */
- { MA, 0, NULL, NULL }, /* 688 */
- { MA, 0, NULL, NULL }, /* 689 */
- { MA, 0, NULL, NULL }, /* 690 */
- { MA, 0, NULL, NULL }, /* 691 */
- { MA, 0, NULL, NULL }, /* 692 */
- { MA, 0, NULL, NULL }, /* 693 */
- { MA, 0, NULL, NULL }, /* 694 */
- { MA, 0, NULL, NULL }, /* 695 */
- { MA, 0, NULL, NULL }, /* 696 */
- { MA, 0, NULL, NULL }, /* 697 */
- { MA, 0, NULL, NULL }, /* 698 */
- { MA, 0, NULL, NULL }, /* 699 */
- { MA, 0, NULL, NULL }, /* 700 */
- { MA, 0, NULL, NULL }, /* 701 */
- { MA, 0, NULL, NULL }, /* 702 */
- { MA, 0, NULL, NULL }, /* 703 */
- { MA, 0, NULL, NULL }, /* 704 */
- { MA, 0, NULL, NULL }, /* 705 */
- { MA, 0, NULL, NULL }, /* 706 */
- { MA, 0, NULL, NULL }, /* 707 */
- { MA, 0, NULL, NULL }, /* 708 */
- { MA, 0, NULL, NULL }, /* 709 */
- { MA, 0, NULL, NULL }, /* 710 */
- { MA, 0, NULL, NULL }, /* 711 */
- { MA, 0, NULL, NULL }, /* 712 */
- { MA, 0, NULL, NULL }, /* 713 */
- { MA, 0, NULL, NULL }, /* 714 */
- { MA, 0, NULL, NULL }, /* 715 */
- { MA, 0, NULL, NULL }, /* 716 */
- { MA, 0, NULL, NULL }, /* 717 */
- { MA, 0, NULL, NULL }, /* 718 */
- { MA, 0, NULL, NULL }, /* 719 */
- { MA, 0, NULL, NULL }, /* 720 */
- { MA, 0, NULL, NULL }, /* 721 */
- { MA, 0, NULL, NULL }, /* 722 */
- { MA, 0, NULL, NULL }, /* 723 */
- { MA, 0, NULL, NULL }, /* 724 */
- { MA, 0, NULL, NULL }, /* 725 */
- { MA, 0, NULL, NULL }, /* 726 */
- { MA, 0, NULL, NULL }, /* 727 */
- { MA, 0, NULL, NULL }, /* 728 */
- { MA, 0, NULL, NULL }, /* 729 */
- { MA, 0, NULL, NULL }, /* 730 */
- { MA, 0, NULL, NULL }, /* 731 */
- { MA, 0, NULL, NULL }, /* 732 */
- { MA, 0, NULL, NULL }, /* 733 */
- { MA, 0, NULL, NULL }, /* 734 */
- { MA, 0, NULL, NULL }, /* 735 */
- { MA, 0, NULL, NULL }, /* 736 */
- { MA, 0, NULL, NULL }, /* 737 */
- { MA, 0, NULL, NULL }, /* 738 */
- { MA, 0, NULL, NULL }, /* 739 */
- { MA, 0, NULL, NULL }, /* 740 */
- { MA, 0, NULL, NULL }, /* 741 */
- { MA, 0, NULL, NULL }, /* 742 */
- { MA, 0, NULL, NULL }, /* 743 */
- { MA, 0, NULL, NULL }, /* 744 */
- { MA, 0, NULL, NULL }, /* 745 */
- { MA, 0, NULL, NULL }, /* 746 */
- { MA, 0, NULL, NULL }, /* 747 */
- { MA, 0, NULL, NULL }, /* 748 */
- { MA, 0, NULL, NULL }, /* 749 */
- { MA, 0, NULL, NULL }, /* 750 */
- { MA, 0, NULL, NULL }, /* 751 */
- { MA, 0, NULL, NULL }, /* 752 */
- { MA, 0, NULL, NULL }, /* 753 */
- { MA, 0, NULL, NULL }, /* 754 */
- { MA, 0, NULL, NULL }, /* 755 */
- { MA, 0, NULL, NULL }, /* 756 */
- { MA, 0, NULL, NULL }, /* 757 */
- { MA, 0, NULL, NULL }, /* 758 */
- { MA, 0, NULL, NULL }, /* 759 */
- { MA, 0, NULL, NULL }, /* 760 */
- { MA, 0, NULL, NULL }, /* 761 */
- { MA, 0, NULL, NULL }, /* 762 */
- { MA, 0, NULL, NULL }, /* 763 */
- { MA, 0, NULL, NULL }, /* 764 */
- { MA, 0, NULL, NULL }, /* 765 */
- { MA, 0, NULL, NULL }, /* 766 */
- { MA, 0, NULL, NULL }, /* 767 */
- { MA, 0, NULL, NULL }, /* 768 */
- { MA, 0, NULL, NULL }, /* 769 */
- { MA, 0, NULL, NULL }, /* 770 */
- { MA, 0, NULL, NULL }, /* 771 */
- { MA, 0, NULL, NULL }, /* 772 */
- { MA, 0, NULL, NULL }, /* 773 */
- { MA, 0, NULL, NULL }, /* 774 */
- { MA, 0, NULL, NULL }, /* 775 */
- { MA, 0, NULL, NULL }, /* 776 */
- { MA, 0, NULL, NULL }, /* 777 */
- { MA, 0, NULL, NULL }, /* 778 */
- { MA, 0, NULL, NULL }, /* 779 */
- { MA, 0, NULL, NULL }, /* 780 */
- { MA, 0, NULL, NULL }, /* 781 */
- { MA, 0, NULL, NULL }, /* 782 */
- { MA, 0, NULL, NULL }, /* 783 */
- { MA, 0, NULL, NULL }, /* 784 */
- { MA, 0, NULL, NULL }, /* 785 */
- { MA, 0, NULL, NULL }, /* 786 */
- { MA, 0, NULL, NULL }, /* 787 */
- { MA, 0, NULL, NULL }, /* 788 */
- { MA, 0, NULL, NULL }, /* 789 */
- { MA, 0, NULL, NULL }, /* 790 */
- { MA, 0, NULL, NULL }, /* 791 */
- { MA, 0, NULL, NULL }, /* 792 */
- { MA, 0, NULL, NULL }, /* 793 */
- { MA, 0, NULL, NULL }, /* 794 */
- { MA, 0, NULL, NULL }, /* 795 */
- { MA, 0, NULL, NULL }, /* 796 */
- { MA, 0, NULL, NULL }, /* 797 */
- { MA, 0, NULL, NULL }, /* 798 */
- { MA, 0, NULL, NULL }, /* 799 */
- { MA, 0, NULL, NULL }, /* 800 */
- { MA, 0, NULL, NULL }, /* 801 */
- { MA, 0, NULL, NULL }, /* 802 */
- { MA, 0, NULL, NULL }, /* 803 */
- { MA, 0, NULL, NULL }, /* 804 */
- { MA, 0, NULL, NULL }, /* 805 */
- { MA, 0, NULL, NULL }, /* 806 */
- { MA, 0, NULL, NULL }, /* 807 */
- { MA, 0, NULL, NULL }, /* 808 */
- { MA, 0, NULL, NULL }, /* 809 */
- { MA, 0, NULL, NULL }, /* 810 */
- { MA, 0, NULL, NULL }, /* 811 */
- { MA, 0, NULL, NULL }, /* 812 */
- { MA, 0, NULL, NULL }, /* 813 */
- { MA, 0, NULL, NULL }, /* 814 */
- { MA, 0, NULL, NULL }, /* 815 */
- { MA, 0, NULL, NULL }, /* 816 */
- { MA, 0, NULL, NULL }, /* 817 */
- { MA, 0, NULL, NULL }, /* 818 */
- { MA, 0, NULL, NULL }, /* 819 */
- { MA, 0, NULL, NULL }, /* 820 */
- { MA, 0, NULL, NULL }, /* 821 */
- { MA, 0, NULL, NULL }, /* 822 */
- { MA, 0, NULL, NULL }, /* 823 */
- { MA, 0, NULL, NULL }, /* 824 */
- { MA, 0, NULL, NULL }, /* 825 */
- { MA, 0, NULL, NULL }, /* 826 */
- { MA, 0, NULL, NULL }, /* 827 */
- { MA, 0, NULL, NULL }, /* 828 */
- { MA, 0, NULL, NULL }, /* 829 */
- { MA, 0, NULL, NULL }, /* 830 */
- { MA, 0, NULL, NULL }, /* 831 */
- { MA, 0, NULL, NULL }, /* 832 */
- { MA, 0, NULL, NULL }, /* 833 */
- { MA, 0, NULL, NULL }, /* 834 */
- { MA, 0, NULL, NULL }, /* 835 */
- { MA, 0, NULL, NULL }, /* 836 */
- { MA, 0, NULL, NULL }, /* 837 */
- { MA, 0, NULL, NULL }, /* 838 */
- { MA, 0, NULL, NULL }, /* 839 */
- { MA, 0, NULL, NULL }, /* 840 */
- { MA, 0, NULL, NULL }, /* 841 */
- { MA, 0, NULL, NULL }, /* 842 */
- { MA, 0, NULL, NULL }, /* 843 */
- { MA, 0, NULL, NULL }, /* 844 */
- { MA, 0, NULL, NULL }, /* 845 */
- { MA, 0, NULL, NULL }, /* 846 */
- { MA, 0, NULL, NULL }, /* 847 */
- { MA, 0, NULL, NULL }, /* 848 */
- { MA, 0, NULL, NULL }, /* 849 */
- { MA, 0, NULL, NULL }, /* 850 */
- { MA, 0, NULL, NULL }, /* 851 */
- { MA, 0, NULL, NULL }, /* 852 */
- { MA, 0, NULL, NULL }, /* 853 */
- { MA, 0, NULL, NULL }, /* 854 */
- { MA, 0, NULL, NULL }, /* 855 */
- { MA, 0, NULL, NULL }, /* 856 */
- { MA, 0, NULL, NULL }, /* 857 */
- { MA, 0, NULL, NULL }, /* 858 */
- { MA, 0, NULL, NULL }, /* 859 */
- { MA, 0, NULL, NULL }, /* 860 */
- { MA, 0, NULL, NULL }, /* 861 */
- { MA, 0, NULL, NULL }, /* 862 */
- { MA, 0, NULL, NULL }, /* 863 */
- { MA, 0, NULL, NULL }, /* 864 */
- { MA, 0, NULL, NULL }, /* 865 */
- { MA, 0, NULL, NULL }, /* 866 */
- { MA, 0, NULL, NULL }, /* 867 */
- { MA, 0, NULL, NULL }, /* 868 */
- { MA, 0, NULL, NULL }, /* 869 */
- { MA, 0, NULL, NULL }, /* 870 */
- { MA, 0, NULL, NULL }, /* 871 */
- { MA, 0, NULL, NULL }, /* 872 */
- { MA, 0, NULL, NULL }, /* 873 */
- { MA, 0, NULL, NULL }, /* 874 */
- { MA, 0, NULL, NULL }, /* 875 */
- { MA, 0, NULL, NULL }, /* 876 */
- { MA, 0, NULL, NULL }, /* 877 */
- { MA, 0, NULL, NULL }, /* 878 */
- { MA, 0, NULL, NULL }, /* 879 */
- { MA, 0, NULL, NULL }, /* 880 */
- { MA, 0, NULL, NULL }, /* 881 */
- { MA, 0, NULL, NULL }, /* 882 */
- { MA, 0, NULL, NULL }, /* 883 */
- { MA, 0, NULL, NULL }, /* 884 */
- { MA, 0, NULL, NULL }, /* 885 */
- { MA, 0, NULL, NULL }, /* 886 */
- { MA, 0, NULL, NULL }, /* 887 */
- { MA, 0, NULL, NULL }, /* 888 */
- { MA, 0, NULL, NULL }, /* 889 */
- { MA, 0, NULL, NULL }, /* 890 */
- { MA, 0, NULL, NULL }, /* 891 */
- { MA, 0, NULL, NULL }, /* 892 */
- { MA, 0, NULL, NULL }, /* 893 */
- { MA, 0, NULL, NULL }, /* 894 */
- { MA, 0, NULL, NULL }, /* 895 */
- { MA, 0, NULL, NULL }, /* 896 */
- { MA, 0, NULL, NULL }, /* 897 */
- { MA, 0, NULL, NULL }, /* 898 */
- { MA, 0, NULL, NULL }, /* 899 */
- { MA, 0, NULL, NULL }, /* 900 */
- { MA, 0, NULL, NULL }, /* 901 */
- { MA, 0, NULL, NULL }, /* 902 */
- { MA, 0, NULL, NULL }, /* 903 */
- { MA, 0, NULL, NULL }, /* 904 */
- { MA, 0, NULL, NULL }, /* 905 */
- { MA, 0, NULL, NULL }, /* 906 */
- { MA, 0, NULL, NULL }, /* 907 */
- { MA, 0, NULL, NULL }, /* 908 */
- { MA, 0, NULL, NULL }, /* 909 */
- { MA, 0, NULL, NULL }, /* 910 */
- { MA, 0, NULL, NULL }, /* 911 */
- { MA, 0, NULL, NULL }, /* 912 */
- { MA, 0, NULL, NULL }, /* 913 */
- { MA, 0, NULL, NULL }, /* 914 */
- { MA, 0, NULL, NULL }, /* 915 */
- { MA, 0, NULL, NULL }, /* 916 */
- { MA, 0, NULL, NULL }, /* 917 */
- { MA, 0, NULL, NULL }, /* 918 */
- { MA, 0, NULL, NULL }, /* 919 */
- { MA, 0, NULL, NULL }, /* 920 */
- { MA, 0, NULL, NULL }, /* 921 */
- { MA, 0, NULL, NULL }, /* 922 */
- { MA, 0, NULL, NULL }, /* 923 */
- { MA, 0, NULL, NULL }, /* 924 */
- { MA, 0, NULL, NULL }, /* 925 */
- { MA, 0, NULL, NULL }, /* 926 */
- { MA, 0, NULL, NULL }, /* 927 */
- { MA, 0, NULL, NULL }, /* 928 */
- { MA, 0, NULL, NULL }, /* 929 */
- { MA, 0, NULL, NULL }, /* 930 */
- { MA, 0, NULL, NULL }, /* 931 */
- { MA, 0, NULL, NULL }, /* 932 */
- { MA, 0, NULL, NULL }, /* 933 */
- { MA, 0, NULL, NULL }, /* 934 */
- { MA, 0, NULL, NULL }, /* 935 */
- { MA, 0, NULL, NULL }, /* 936 */
- { MA, 0, NULL, NULL }, /* 937 */
- { MA, 0, NULL, NULL }, /* 938 */
- { MA, 0, NULL, NULL }, /* 939 */
- { MA, 0, NULL, NULL }, /* 940 */
- { MA, 0, NULL, NULL }, /* 941 */
- { MA, 0, NULL, NULL }, /* 942 */
- { MA, 0, NULL, NULL }, /* 943 */
- { MA, 0, NULL, NULL }, /* 944 */
- { MA, 0, NULL, NULL }, /* 945 */
- { MA, 0, NULL, NULL }, /* 946 */
- { MA, 0, NULL, NULL }, /* 947 */
- { MA, 0, NULL, NULL }, /* 948 */
- { MA, 0, NULL, NULL }, /* 949 */
- { MA, 0, NULL, NULL }, /* 950 */
- { MA, 0, NULL, NULL }, /* 951 */
- { MA, 0, NULL, NULL }, /* 952 */
- { MA, 0, NULL, NULL }, /* 953 */
- { MA, 0, NULL, NULL }, /* 954 */
- { MA, 0, NULL, NULL }, /* 955 */
- { MA, 0, NULL, NULL }, /* 956 */
- { MA, 0, NULL, NULL }, /* 957 */
- { MA, 0, NULL, NULL }, /* 958 */
- { MA, 0, NULL, NULL }, /* 959 */
- { MA, 0, NULL, NULL }, /* 960 */
- { MA, 0, NULL, NULL }, /* 961 */
- { MA, 0, NULL, NULL }, /* 962 */
- { MA, 0, NULL, NULL }, /* 963 */
- { MA, 0, NULL, NULL }, /* 964 */
- { MA, 0, NULL, NULL }, /* 965 */
- { MA, 0, NULL, NULL }, /* 966 */
- { MA, 0, NULL, NULL }, /* 967 */
- { MA, 0, NULL, NULL }, /* 968 */
- { MA, 0, NULL, NULL }, /* 969 */
- { MA, 0, NULL, NULL }, /* 970 */
- { MA, 0, NULL, NULL }, /* 971 */
- { MA, 0, NULL, NULL }, /* 972 */
- { MA, 0, NULL, NULL }, /* 973 */
- { MA, 0, NULL, NULL }, /* 974 */
- { MA, 0, NULL, NULL }, /* 975 */
- { MA, 0, NULL, NULL }, /* 976 */
- { MA, 0, NULL, NULL }, /* 977 */
- { MA, 0, NULL, NULL }, /* 978 */
- { MA, 0, NULL, NULL }, /* 979 */
- { MA, 0, NULL, NULL }, /* 980 */
- { MA, 0, NULL, NULL }, /* 981 */
- { MA, 0, NULL, NULL }, /* 982 */
- { MA, 0, NULL, NULL }, /* 983 */
- { MA, 0, NULL, NULL }, /* 984 */
- { MA, 0, NULL, NULL }, /* 985 */
- { MA, 0, NULL, NULL }, /* 986 */
- { MA, 0, NULL, NULL }, /* 987 */
- { MA, 0, NULL, NULL }, /* 988 */
- { MA, 0, NULL, NULL }, /* 989 */
- { MA, 0, NULL, NULL }, /* 990 */
- { MA, 0, NULL, NULL }, /* 991 */
- { MA, 0, NULL, NULL }, /* 992 */
- { MA, 0, NULL, NULL }, /* 993 */
- { MA, 0, NULL, NULL }, /* 994 */
- { MA, 0, NULL, NULL }, /* 995 */
- { MA, 0, NULL, NULL }, /* 996 */
- { MA, 0, NULL, NULL }, /* 997 */
- { MA, 0, NULL, NULL }, /* 998 */
- { MA, 0, NULL, NULL }, /* 999 */
- { MA, 0, NULL, NULL }, /* 1000 */
- { MA, 0, NULL, NULL }, /* 1001 */
- { MA, 0, NULL, NULL }, /* 1002 */
- { MA, 0, NULL, NULL }, /* 1003 */
- { MA, 0, NULL, NULL }, /* 1004 */
- { MA, 0, NULL, NULL }, /* 1005 */
- { MA, 0, NULL, NULL }, /* 1006 */
- { MA, 0, NULL, NULL }, /* 1007 */
- { MA, 0, NULL, NULL }, /* 1008 */
- { MA, 0, NULL, NULL }, /* 1009 */
- { MA, 0, NULL, NULL }, /* 1010 */
- { MA, 0, NULL, NULL }, /* 1011 */
- { MA, 0, NULL, NULL }, /* 1012 */
- { MA, 0, NULL, NULL }, /* 1013 */
- { MA, 0, NULL, NULL }, /* 1014 */
- { MA, 0, NULL, NULL }, /* 1015 */
- { MA, 0, NULL, NULL }, /* 1016 */
- { MA, 0, NULL, NULL }, /* 1017 */
- { MA, 0, NULL, NULL }, /* 1018 */
- { MA, 0, NULL, NULL }, /* 1019 */
- { MA, 0, NULL, NULL }, /* 1020 */
- { MA, 0, NULL, NULL }, /* 1021 */
- { MA, 0, NULL, NULL }, /* 1022 */
- { MA, 0, NULL, NULL }, /* 1023 */
- { 0, 0, printargs, "ni_syscall" }, /* 1024 */
- { 1, TP|SE, sys_exit, "exit" }, /* 1025 */
- { 3, TD, sys_read, "read" }, /* 1026 */
- { 3, TD, sys_write, "write" }, /* 1027 */
- { 3, TD|TF, sys_open, "open" }, /* 1028 */
- { 1, TD, sys_close, "close" }, /* 1029 */
- { 2, TD|TF, sys_creat, "creat" }, /* 1030 */
- { 2, TF, sys_link, "link" }, /* 1031 */
- { 1, TF, sys_unlink, "unlink" }, /* 1032 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 1033 */
- { 1, TF, sys_chdir, "chdir" }, /* 1034 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 1035 */
- { 2, TF, sys_utimes, "utimes" }, /* 1036 */
- { 3, TF, sys_mknod, "mknod" }, /* 1037 */
- { 2, TF, sys_chmod, "chmod" }, /* 1038 */
- { 3, TF, sys_chown, "chown" }, /* 1039 */
- { 3, TD, sys_lseek, "lseek" }, /* 1040 */
- { 0, 0, sys_getpid, "getpid" }, /* 1041 */
- { 0, 0, sys_getppid, "getppid" }, /* 1042 */
- { 5, TF, sys_mount, "mount" }, /* 1043 */
- { 1, TF, sys_umount2, "umount" }, /* 1044 */
- { 1, 0, sys_setuid, "setuid" }, /* 1045 */
- { 0, NF, sys_getuid, "getuid" }, /* 1046 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 1047 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 1048 */
- { 2, TF, sys_access, "access" }, /* 1049 */
- { 0, 0, sys_sync, "sync" }, /* 1050 */
- { 1, TD, sys_fsync, "fsync" }, /* 1051 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 1052 */
- { 2, TS, sys_kill, "kill" }, /* 1053 */
- { 2, TF, sys_rename, "rename" }, /* 1054 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 1055 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 1056 */
- { 1, TD, sys_dup, "dup" }, /* 1057 */
- { 1, TD, sys_pipe, "pipe" }, /* 1058 */
- { 1, 0, sys_times, "times" }, /* 1059 */
- { 1, TM|SI, sys_brk, "brk" }, /* 1060 */
- { 1, 0, sys_setgid, "setgid" }, /* 1061 */
- { 0, NF, sys_getgid, "getgid" }, /* 1062 */
- { 0, NF, sys_getegid, "getegid" }, /* 1063 */
- { 1, TF, sys_acct, "acct" }, /* 1064 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 1065 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 1066 */
- { 1, 0, sys_umask, "umask" }, /* 1067 */
- { 1, TF, sys_chroot, "chroot" }, /* 1068 */
- { 2, 0, sys_ustat, "ustat" }, /* 1069 */
- { 2, TD, sys_dup2, "dup2" }, /* 1070 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 1071 */
- { 2, 0, sys_setregid, "setregid" }, /* 1072 */
- { 3, 0, printargs, "getresuid" }, /* 1073 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 1074 */
- { 3, 0, sys_getresuid, "getresgid" }, /* 1075 */
- { 3, 0, printargs, "setresgid" }, /* 1076 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 1077 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 1078 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 1079 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 1080 */
- { 0, 0, sys_setsid, "setsid" }, /* 1081 */
- { 1, 0, sys_getsid, "getsid" }, /* 1082 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 1083 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 1084 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 1085 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 1086 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 1087 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 1088 */
- { 5, TD, sys_select, "select" }, /* 1089 */
- { 3, TD, sys_poll, "poll" }, /* 1090 */
- { 2, TF, sys_symlink, "symlink" }, /* 1091 */
- { 3, TF, sys_readlink, "readlink" }, /* 1092 */
- { 1, TF, sys_uselib, "uselib" }, /* 1093 */
- { 2, TF, sys_swapon, "swapon" }, /* 1094 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 1095 */
- { 4, 0, sys_reboot, "reboot" }, /* 1096 */
- { 2, TF, sys_truncate, "truncate" }, /* 1097 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 1098 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 1099 */
- { 3, TD, sys_fchown, "fchown" }, /* 1100 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 1101 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 1102 */
- { 2, TF, sys_statfs, "statfs" }, /* 1103 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 1104 */
- { 3, 0, sys_gettid, "gettid" }, /* 1105 */
- { 3, TI, sys_semget, "semget" }, /* 1106 */
- { 3, TI, printargs, "semop" }, /* 1107 */
- { 4, TI, sys_semctl, "semctl" }, /* 1108 */
- { 2, TI, sys_msgget, "msgget" }, /* 1109 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 1110 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 1111 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 1112 */
- { 3, TI, sys_shmget, "shmget" }, /* 1113 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 1114 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 1115 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 1116 */
- { 3, 0, sys_syslog, "syslog" }, /* 1117 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 1118 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 1119 */
- { 2, TF, sys_stat, "stat" }, /* 1120 */
- { 2, TF, sys_lstat, "lstat" }, /* 1121 */
- { 2, TD, sys_fstat, "fstat" }, /* 1122 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 1123 */
- { 3, TF, sys_chown, "lchown" }, /* 1124 */
- { 5, 0, sys_vm86, "vm86" }, /* 1125 */
- { 4, TP, sys_wait4, "wait4" }, /* 1126 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 1127 */
- { 5, TP, sys_clone, "clone" }, /* 1128 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 1129 */
- { 1, 0, sys_uname, "uname" }, /* 1130 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 1131 */
- { 2, 0, sys_create_module, "create_module" }, /* 1132 */
- { 4, 0, sys_init_module, "init_module" }, /* 1133 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 1134 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 1135 */
- { 5, 0, sys_query_module, "query_module" }, /* 1136 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 1137 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 1138 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 1139 */
- { 1, 0, sys_personality, "personality" }, /* 1140 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 1141 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 1142 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 1143 */
- { 3, TD, sys_getdents, "getdents" }, /* 1144 */
- { 2, TD, sys_flock, "flock" }, /* 1145 */
- { 5, TD, sys_readv, "readv" }, /* 1146 */
- { 5, TD, sys_writev, "writev" }, /* 1147 */
- { 4, TD, sys_pread, "pread" }, /* 1148 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 1149 */
- { 1, 0, printargs, "_sysctl" }, /* 1150 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 1151 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 1152 */
- { 2, TM, sys_mlock, "mlock" }, /* 1153 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 1154 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 1155 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 1156 */
- { 3, TM, sys_msync, "msync" }, /* 1157 */
- { 2, TM, sys_munlock, "munlock" }, /* 1158 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 1159 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 1160 */
- { 2, 0, sys_sched_setparam, "sched_setparam"}, /* 1161 */
- { 2, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 1162 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 1163 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 1164 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 1165 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 1166 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 1167 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 1168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 1169 */
- { 5, 0, sys_prctl, "prctl" }, /* 1170 */
- { 1, 0, sys_getpagesize, "getpagesize" }, /* 1171 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 1172 */
- { 5, 0, printargs, "pciconfig_read"}, /* 1173 */
- { 5, 0, printargs, "pciconfig_write"}, /* 1174 */
- { MA, 0, printargs, "perfmonctl" }, /* 1175 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 1176 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 1177 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 1178 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 1179 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 1180 */
- { 0, TS, sys_sigreturn, "rt_sigreturn" }, /* 1181 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 1182 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 1183 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 1184 */
- { 2, 0, sys_capget, "capget" }, /* 1185 */
- { 2, 0, sys_capset, "capset" }, /* 1186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 1187 */
- { 5, TN, printargs, "getpmsg" }, /* 1188 */
- { 5, TN, printargs, "putpmsg" }, /* 1189 */
- { 3, TN, sys_socket, "socket" }, /* 1190 */
- { 3, TN, sys_bind, "bind" }, /* 1191 */
- { 3, TN, sys_connect, "connect" }, /* 1192 */
- { 2, TN, sys_listen, "listen" }, /* 1193 */
- { 3, TN, sys_accept, "accept" }, /* 1194 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 1195 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 1196 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 1197 */
- { 4, TN, sys_send, "send" }, /* 1198 */
- { 6, TN, sys_sendto, "sendto" }, /* 1199 */
- { 4, TN, sys_recv, "recv" }, /* 1200 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 1201 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 1202 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 1203 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 1204 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 1205 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 1206 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 1207 */
- { 3, TM, sys_mincore, "mincore" }, /* 1208 */
- { 3, TM, sys_madvise, "madvise" }, /* 1209 */
- { 2, TF, sys_stat, "stat" }, /* 1210 */
- { 2, TF, sys_lstat, "lstat" }, /* 1211 */
- { 2, TD, sys_fstat, "fstat" }, /* 1212 */
- { 6, TP, sys_clone, "clone2" }, /* 1213 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 1214 */
- { 2, 0, printargs, "getunwind" }, /* 1215 */
- { 3, TD, sys_readahead, "readahead" }, /* 1216 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 1217 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 1218 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 1219 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 1220 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 1221 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 1222 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 1223 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 1224 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 1225 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 1226 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 1227 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 1228 */
- { 2, TS, sys_kill, "tkill" }, /* 1229 */
- { 6, 0, sys_futex, "futex" }, /* 1230 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"},/* 1231 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"},/* 1232 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 1233 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 1234 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 1235 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 1236 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 1237 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 1238 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1239 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 1240 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 1241 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 1242 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 1243 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 1244 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 1245 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 1246 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 1247 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 1248 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 1249 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 1250 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 1251 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 1252 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 1253 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 1254 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 1255 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 1256 */
- { MA, 0, printargs, "fstatfs64" }, /* 1257 */
- { MA, 0, printargs, "statfs64" }, /* 1258 */
- { 6, TM, sys_mbind, "mbind" }, /* 1259 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 1260 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 1261 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 1262 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 1263 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 1264 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 1265 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 1266 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 1267 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 1268 */
- { 5, 0, sys_vserver, "vserver" }, /* 1269 */
- { 5, TP, sys_waitid, "waitid" }, /* 1270 */
- { 5, 0, sys_add_key, "add_key" }, /* 1271 */
- { 4, 0, sys_request_key, "request_key" }, /* 1272 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 1273 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 1274 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 1275 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 1276 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 1277 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 1278 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 1279 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 1280 */
- { 4, TD|TF, sys_openat, "openat" }, /* 1281 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 1282 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 1283 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 1284 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 1285 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 1286 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 1287 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 1288 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 1289 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 1290 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 1291 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 1292 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 1293 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 1294 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 1295 */
- { 1, TP, sys_unshare, "unshare" }, /* 1296 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 1297 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 1298 */
- { 6, TD, sys_splice, "splice" }, /* 1299 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 1300 */
- { 4, TD, sys_tee, "tee" }, /* 1301 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 1302 */
- { MA, 0, NULL, NULL }, /* 1303 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 1304 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 1305 */
- { MA, 0, NULL, NULL }, /* 1306 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 1307 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 1308 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 1309 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 1310 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 1311 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 1312 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 1313 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 1314 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 1315 */
- { 3, TD, sys_dup3, "dup3" }, /* 1316 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 1317 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 1318 */
- { 4, TD, sys_preadv, "preadv" }, /* 1319 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 1320 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 1321 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 1322 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 1323 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 1324 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 1325 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 1326 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 1327 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 1328 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 1329 */
- { 2, TD, sys_setns, "setns" }, /* 1330 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 1331 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 1332 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 1333 */
- { 4, TN, sys_accept4, "accept4" }, /* 1334 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 1335 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 1336 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 1337 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 1338 */
+[(SYS_ipc_subcall + SYS_ipc_nsubcalls) ... 1023] = { },
+[1024] = { 0, 0, printargs, "ni_syscall" },
+[1025] = { 1, TP|SE, sys_exit, "exit" },
+[1026] = { 3, TD, sys_read, "read" },
+[1027] = { 3, TD, sys_write, "write" },
+[1028] = { 3, TD|TF, sys_open, "open" },
+[1029] = { 1, TD, sys_close, "close" },
+[1030] = { 2, TD|TF, sys_creat, "creat" },
+[1031] = { 2, TF, sys_link, "link" },
+[1032] = { 1, TF, sys_unlink, "unlink" },
+[1033] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[1034] = { 1, TF, sys_chdir, "chdir" },
+[1035] = { 1, TD, sys_fchdir, "fchdir" },
+[1036] = { 2, TF, sys_utimes, "utimes" },
+[1037] = { 3, TF, sys_mknod, "mknod" },
+[1038] = { 2, TF, sys_chmod, "chmod" },
+[1039] = { 3, TF, sys_chown, "chown" },
+[1040] = { 3, TD, sys_lseek, "lseek" },
+[1041] = { 0, 0, sys_getpid, "getpid" },
+[1042] = { 0, 0, sys_getppid, "getppid" },
+[1043] = { 5, TF, sys_mount, "mount" },
+[1044] = { 2, TF, sys_umount2, "umount" },
+[1045] = { 1, 0, sys_setuid, "setuid" },
+[1046] = { 0, NF, sys_getuid, "getuid" },
+[1047] = { 0, NF, sys_geteuid, "geteuid" },
+[1048] = { 4, 0, sys_ptrace, "ptrace" },
+[1049] = { 2, TF, sys_access, "access" },
+[1050] = { 0, 0, sys_sync, "sync" },
+[1051] = { 1, TD, sys_fsync, "fsync" },
+[1052] = { 1, TD, sys_fdatasync, "fdatasync" },
+[1053] = { 2, TS, sys_kill, "kill" },
+[1054] = { 2, TF, sys_rename, "rename" },
+[1055] = { 2, TF, sys_mkdir, "mkdir" },
+[1056] = { 1, TF, sys_rmdir, "rmdir" },
+[1057] = { 1, TD, sys_dup, "dup" },
+[1058] = { 1, TD, sys_pipe, "pipe" },
+[1059] = { 1, 0, sys_times, "times" },
+[1060] = { 1, TM|SI, sys_brk, "brk" },
+[1061] = { 1, 0, sys_setgid, "setgid" },
+[1062] = { 0, NF, sys_getgid, "getgid" },
+[1063] = { 0, NF, sys_getegid, "getegid" },
+[1064] = { 1, TF, sys_acct, "acct" },
+[1065] = { 3, TD, sys_ioctl, "ioctl" },
+[1066] = { 3, TD, sys_fcntl, "fcntl" },
+[1067] = { 1, 0, sys_umask, "umask" },
+[1068] = { 1, TF, sys_chroot, "chroot" },
+[1069] = { 2, 0, sys_ustat, "ustat" },
+[1070] = { 2, TD, sys_dup2, "dup2" },
+[1071] = { 2, 0, sys_setreuid, "setreuid" },
+[1072] = { 2, 0, sys_setregid, "setregid" },
+[1073] = { 3, 0, sys_getresuid, "getresuid" },
+[1074] = { 3, 0, sys_setresuid, "setresuid" },
+[1075] = { 3, 0, sys_getresgid, "getresgid" },
+[1076] = { 3, 0, sys_setresgid, "setresgid" },
+[1077] = { 2, 0, sys_getgroups, "getgroups" },
+[1078] = { 2, 0, sys_setgroups, "setgroups" },
+[1079] = { 1, 0, sys_getpgid, "getpgid" },
+[1080] = { 2, 0, sys_setpgid, "setpgid" },
+[1081] = { 0, 0, sys_setsid, "setsid" },
+[1082] = { 1, 0, sys_getsid, "getsid" },
+[1083] = { 2, 0, sys_sethostname, "sethostname" },
+[1084] = { 2, 0, sys_setrlimit, "setrlimit" },
+[1085] = { 2, 0, sys_getrlimit, "getrlimit" },
+[1086] = { 2, 0, sys_getrusage, "getrusage" },
+[1087] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[1088] = { 2, 0, sys_settimeofday, "settimeofday" },
+[1089] = { 5, TD, sys_select, "select" },
+[1090] = { 3, TD, sys_poll, "poll" },
+[1091] = { 2, TF, sys_symlink, "symlink" },
+[1092] = { 3, TF, sys_readlink, "readlink" },
+[1093] = { 1, TF, sys_uselib, "uselib" },
+[1094] = { 2, TF, sys_swapon, "swapon" },
+[1095] = { 1, TF, sys_swapoff, "swapoff" },
+[1096] = { 4, 0, sys_reboot, "reboot" },
+[1097] = { 2, TF, sys_truncate, "truncate" },
+[1098] = { 2, TD, sys_ftruncate, "ftruncate" },
+[1099] = { 2, TD, sys_fchmod, "fchmod" },
+[1100] = { 3, TD, sys_fchown, "fchown" },
+[1101] = { 2, 0, sys_getpriority, "getpriority" },
+[1102] = { 3, 0, sys_setpriority, "setpriority" },
+[1103] = { 2, TF, sys_statfs, "statfs" },
+[1104] = { 2, TD, sys_fstatfs, "fstatfs" },
+[1105] = { 3, 0, sys_gettid, "gettid" },
+[1106] = { 3, TI, sys_semget, "semget" },
+[1107] = { 3, TI, printargs, "semop" },
+[1108] = { 4, TI, sys_semctl, "semctl" },
+[1109] = { 2, TI, sys_msgget, "msgget" },
+[1110] = { 4, TI, sys_msgsnd, "msgsnd" },
+[1111] = { 5, TI, sys_msgrcv, "msgrcv" },
+[1112] = { 3, TI, sys_msgctl, "msgctl" },
+[1113] = { 3, TI, sys_shmget, "shmget" },
+[1114] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[1115] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[1116] = { 3, TI, sys_shmctl, "shmctl" },
+[1117] = { 3, 0, sys_syslog, "syslog" },
+[1118] = { 3, 0, sys_setitimer, "setitimer" },
+[1119] = { 2, 0, sys_getitimer, "getitimer" },
+[1120] = { 2, TF, sys_stat, "stat" },
+[1121] = { 2, TF, sys_lstat, "lstat" },
+[1122] = { 2, TD, sys_fstat, "fstat" },
+[1123] = { 0, 0, sys_vhangup, "vhangup" },
+[1124] = { 3, TF, sys_chown, "lchown" },
+[1125] = { 5, 0, sys_vm86, "vm86" },
+[1126] = { 4, TP, sys_wait4, "wait4" },
+[1127] = { 1, 0, sys_sysinfo, "sysinfo" },
+[1128] = { 5, TP, sys_clone, "clone" },
+[1129] = { 2, 0, sys_setdomainname, "setdomainname" },
+[1130] = { 1, 0, sys_uname, "uname" },
+[1131] = { 1, 0, sys_adjtimex, "adjtimex" },
+[1132] = { 2, 0, sys_create_module, "create_module" },
+[1133] = { 4, 0, sys_init_module, "init_module" },
+[1134] = { 2, 0, sys_delete_module, "delete_module" },
+[1135] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[1136] = { 5, 0, sys_query_module, "query_module" },
+[1137] = { 4, TF, sys_quotactl, "quotactl" },
+[1138] = { 0, 0, sys_bdflush, "bdflush" },
+[1139] = { 3, 0, sys_sysfs, "sysfs" },
+[1140] = { 1, 0, sys_personality, "personality" },
+[1141] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[1142] = { 1, NF, sys_setfsuid, "setfsuid" },
+[1143] = { 1, NF, sys_setfsgid, "setfsgid" },
+[1144] = { 3, TD, sys_getdents, "getdents" },
+[1145] = { 2, TD, sys_flock, "flock" },
+[1146] = { 5, TD, sys_readv, "readv" },
+[1147] = { 5, TD, sys_writev, "writev" },
+[1148] = { 4, TD, sys_pread, "pread" },
+[1149] = { 4, TD, sys_pwrite, "pwrite" },
+[1150] = { 1, 0, printargs, "_sysctl" },
+[1151] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[1152] = { 2, TM|SI, sys_munmap, "munmap" },
+[1153] = { 2, TM, sys_mlock, "mlock" },
+[1154] = { 1, TM, sys_mlockall, "mlockall" },
+[1155] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[1156] = { 5, TM|SI, sys_mremap, "mremap" },
+[1157] = { 3, TM, sys_msync, "msync" },
+[1158] = { 2, TM, sys_munlock, "munlock" },
+[1159] = { 0, TM, sys_munlockall, "munlockall" },
+[1160] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[1161] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[1162] = { 2, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[1163] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[1164] = { 0, 0, sys_sched_yield, "sched_yield" },
+[1165] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[1166] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[1167] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[1168] = { 2, 0, sys_nanosleep, "nanosleep" },
+[1169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[1170] = { 5, 0, sys_prctl, "prctl" },
+[1171] = { 1, 0, sys_getpagesize, "getpagesize" },
+[1172] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[1173] = { 5, 0, printargs, "pciconfig_read" },
+[1174] = { 5, 0, printargs, "pciconfig_write" },
+[1175] = { MA, 0, printargs, "perfmonctl" },
+[1176] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[1177] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[1178] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[1179] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[1180] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[1181] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[1182] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[1183] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[1184] = { 2, TF, sys_getcwd, "getcwd" },
+[1185] = { 2, 0, sys_capget, "capget" },
+[1186] = { 2, 0, sys_capset, "capset" },
+[1187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[1188] = { 5, TN, printargs, "getpmsg" },
+[1189] = { 5, TN, printargs, "putpmsg" },
+[1190] = { 3, TN, sys_socket, "socket" },
+[1191] = { 3, TN, sys_bind, "bind" },
+[1192] = { 3, TN, sys_connect, "connect" },
+[1193] = { 2, TN, sys_listen, "listen" },
+[1194] = { 3, TN, sys_accept, "accept" },
+[1195] = { 3, TN, sys_getsockname, "getsockname" },
+[1196] = { 3, TN, sys_getpeername, "getpeername" },
+[1197] = { 4, TN, sys_socketpair, "socketpair" },
+[1198] = { 4, TN, sys_send, "send" },
+[1199] = { 6, TN, sys_sendto, "sendto" },
+[1200] = { 4, TN, sys_recv, "recv" },
+[1201] = { 6, TN, sys_recvfrom, "recvfrom" },
+[1202] = { 2, TN, sys_shutdown, "shutdown" },
+[1203] = { 5, TN, sys_setsockopt, "setsockopt" },
+[1204] = { 5, TN, sys_getsockopt, "getsockopt" },
+[1205] = { 3, TN, sys_sendmsg, "sendmsg" },
+[1206] = { 3, TN, sys_recvmsg, "recvmsg" },
+[1207] = { 2, TF, sys_pivotroot, "pivot_root" },
+[1208] = { 3, TM, sys_mincore, "mincore" },
+[1209] = { 3, TM, sys_madvise, "madvise" },
+[1210] = { 2, TF, sys_stat, "stat" },
+[1211] = { 2, TF, sys_lstat, "lstat" },
+[1212] = { 2, TD, sys_fstat, "fstat" },
+[1213] = { 6, TP, sys_clone, "clone2" },
+[1214] = { 3, TD, sys_getdents64, "getdents64" },
+[1215] = { 2, 0, printargs, "getunwind" },
+[1216] = { 3, TD, sys_readahead, "readahead" },
+[1217] = { 5, TF, sys_setxattr, "setxattr" },
+[1218] = { 5, TF, sys_setxattr, "lsetxattr" },
+[1219] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[1220] = { 4, TF, sys_getxattr, "getxattr" },
+[1221] = { 4, TF, sys_getxattr, "lgetxattr" },
+[1222] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[1223] = { 3, TF, sys_listxattr, "listxattr" },
+[1224] = { 3, TF, sys_listxattr, "llistxattr" },
+[1225] = { 3, TD, sys_flistxattr, "flistxattr" },
+[1226] = { 2, TF, sys_removexattr, "removexattr" },
+[1227] = { 2, TF, sys_removexattr, "lremovexattr" },
+[1228] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[1229] = { 2, TS, sys_kill, "tkill" },
+[1230] = { 6, 0, sys_futex, "futex" },
+[1231] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[1232] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[1233] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[1234] = { 4, TD, sys_fadvise64, "fadvise64" },
+[1235] = { 3, TS, sys_tgkill, "tgkill" },
+[1236] = { 1, TP|SE, sys_exit, "exit_group" },
+[1237] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[1238] = { 2, 0, sys_io_setup, "io_setup" },
+[1239] = { 1, 0, sys_io_destroy, "io_destroy" },
+[1240] = { 5, 0, sys_io_getevents, "io_getevents" },
+[1241] = { 3, 0, sys_io_submit, "io_submit" },
+[1242] = { 3, 0, sys_io_cancel, "io_cancel" },
+[1243] = { 1, TD, sys_epoll_create, "epoll_create" },
+[1244] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[1245] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[1246] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[1247] = { 4, TI, sys_semtimedop, "semtimedop" },
+[1248] = { 3, 0, sys_timer_create, "timer_create" },
+[1249] = { 4, 0, sys_timer_settime, "timer_settime" },
+[1250] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[1251] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[1252] = { 1, 0, sys_timer_delete, "timer_delete" },
+[1253] = { 2, 0, sys_clock_settime, "clock_settime" },
+[1254] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[1255] = { 2, 0, sys_clock_getres, "clock_getres" },
+[1256] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[1257] = { MA, 0, printargs, "fstatfs64" },
+[1258] = { MA, 0, printargs, "statfs64" },
+[1259] = { 6, TM, sys_mbind, "mbind" },
+[1260] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[1261] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[1262] = { 4, 0, sys_mq_open, "mq_open" },
+[1263] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[1264] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[1265] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[1266] = { 2, 0, sys_mq_notify, "mq_notify" },
+[1267] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[1268] = { 4, 0, sys_kexec_load, "kexec_load" },
+[1269] = { 5, 0, sys_vserver, "vserver" },
+[1270] = { 5, TP, sys_waitid, "waitid" },
+[1271] = { 5, 0, sys_add_key, "add_key" },
+[1272] = { 4, 0, sys_request_key, "request_key" },
+[1273] = { 5, 0, sys_keyctl, "keyctl" },
+[1274] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[1275] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[1276] = { 6, TM, sys_move_pages, "move_pages" },
+[1277] = { 0, TD, sys_inotify_init, "inotify_init" },
+[1278] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[1279] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[1280] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[1281] = { 4, TD|TF, sys_openat, "openat" },
+[1282] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[1283] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[1284] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[1285] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[1286] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[1287] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[1288] = { 4, TD|TF, sys_renameat, "renameat" },
+[1289] = { 5, TD|TF, sys_linkat, "linkat" },
+[1290] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[1291] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[1292] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[1293] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[1294] = { 6, TD, sys_pselect6, "pselect6" },
+[1295] = { 5, TD, sys_ppoll, "ppoll" },
+[1296] = { 1, TP, sys_unshare, "unshare" },
+[1297] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[1298] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[1299] = { 6, TD, sys_splice, "splice" },
+[1300] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[1301] = { 4, TD, sys_tee, "tee" },
+[1302] = { 4, TD, sys_vmsplice, "vmsplice" },
+[1303] = { 4, TD, sys_fallocate, "fallocate" },
+[1304] = { 3, 0, sys_getcpu, "getcpu" },
+[1305] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[1306] = { },
+[1307] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[1308] = { 4, TD, sys_timerfd, "timerfd" },
+[1309] = { 1, TD, sys_eventfd, "eventfd" },
+[1310] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[1311] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[1312] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[1313] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[1314] = { 2, TD, sys_eventfd2, "eventfd2" },
+[1315] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[1316] = { 3, TD, sys_dup3, "dup3" },
+[1317] = { 2, TD, sys_pipe2, "pipe2" },
+[1318] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[1319] = { 4, TD, sys_preadv, "preadv" },
+[1320] = { 4, TD, sys_pwritev, "pwritev" },
+[1321] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[1322] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[1323] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[1324] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[1325] = { 4, 0, sys_prlimit64, "prlimit64" },
+[1326] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[1327] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[1328] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[1329] = { 1, TD, sys_syncfs, "syncfs" },
+[1330] = { 2, TD, sys_setns, "setns" },
+[1331] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[1332] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[1333] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[1334] = { 4, TN, sys_accept4, "accept4" },
+[1335] = { 3, TD, sys_finit_module, "finit_module" },
+[1336] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[1337] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[1338] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[1339] = { 3, 0, sys_getrandom, "getrandom", },
+[1340] = { 2, TD, sys_memfd_create, "memfd_create", },
+[1341] = { 3, TD, sys_bpf, "bpf", },
+[1342] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/inotify.h b/linux/inotify.h
deleted file mode 100644
index 0af0307..0000000
--- a/linux/inotify.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Inode based directory notification for Linux
- *
- * Copyright (C) 2005 John McCutchan
- */
-
-#ifndef _LINUX_INOTIFY_H
-#define _LINUX_INOTIFY_H
-
-/* the following are legal, implemented events that user-space can watch for */
-#define IN_ACCESS 0x00000001 /* File was accessed */
-#define IN_MODIFY 0x00000002 /* File was modified */
-#define IN_ATTRIB 0x00000004 /* Metadata changed */
-#define IN_CLOSE_WRITE 0x00000008 /* Writtable file was closed */
-#define IN_CLOSE_NOWRITE 0x00000010 /* Unwrittable file closed */
-#define IN_OPEN 0x00000020 /* File was opened */
-#define IN_MOVED_FROM 0x00000040 /* File was moved from X */
-#define IN_MOVED_TO 0x00000080 /* File was moved to Y */
-#define IN_CREATE 0x00000100 /* Subfile was created */
-#define IN_DELETE 0x00000200 /* Subfile was deleted */
-#define IN_DELETE_SELF 0x00000400 /* Self was deleted */
-#define IN_MOVE_SELF 0x00000800 /* Self was moved */
-
-/* the following are legal events. they are sent as needed to any watch */
-#define IN_UNMOUNT 0x00002000 /* Backing fs was unmounted */
-#define IN_Q_OVERFLOW 0x00004000 /* Event queued overflowed */
-#define IN_IGNORED 0x00008000 /* File was ignored */
-
-/* helper events */
-#define IN_CLOSE (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) /* close */
-#define IN_MOVE (IN_MOVED_FROM | IN_MOVED_TO) /* moves */
-
-/* special flags */
-#define IN_ONLYDIR 0x01000000 /* only watch the path if it is a directory */
-#define IN_DONT_FOLLOW 0x02000000 /* don't follow a sym link */
-#define IN_EXCL_UNLINK 0x04000000 /* exclude events on unlinked objects */
-#define IN_MASK_ADD 0x20000000 /* add to the mask of an already existing watch */
-#define IN_ISDIR 0x40000000 /* event occurred against dir */
-#define IN_ONESHOT 0x80000000 /* only send event once */
-
-
-#endif /* _LINUX_INOTIFY_H */
diff --git a/linux/ioctlent.h.in b/linux/ioctlent.h.in
deleted file mode 100644
index 2a70dd7..0000000
--- a/linux/ioctlent.h.in
+++ /dev/null
@@ -1,2061 +0,0 @@
- /* Generated by ioctlsort */
- {"linux/fs.h", "FIBMAP", 0x0001},
- {"linux/fs.h", "FIGETBSZ", 0x0002},
- {"linux/fd.h", "FDGETPRM", 0x0204},
- {"linux/fd.h", "FDGETMAXERRS", 0x020e},
- {"linux/fd.h", "FDGETDRVTYP", 0x020f},
- {"linux/fd.h", "FDGETDRVPRM", 0x0211},
- {"linux/fd.h", "FDGETDRVSTAT", 0x0212},
- {"linux/fd.h", "FDPOLLDRVSTAT", 0x0213},
- {"linux/fd.h", "FDGETFDCSTAT", 0x0215},
- {"linux/fd.h", "FDWERRORGET", 0x0217},
- {"linux/fd.h", "FDCLRPRM", 0x0241},
- {"linux/fd.h", "FDSETPRM", 0x0242},
- {"linux/fd.h", "FDDEFPRM", 0x0243},
- {"linux/fd.h", "FDMSGON", 0x0245},
- {"linux/fd.h", "FDMSGOFF", 0x0246},
- {"linux/fd.h", "FDFMTBEG", 0x0247},
- {"linux/fd.h", "FDFMTTRK", 0x0248},
- {"linux/fd.h", "FDFMTEND", 0x0249},
- {"linux/fd.h", "FDSETEMSGTRESH", 0x024a},
- {"linux/fd.h", "FDFLUSH", 0x024b},
- {"linux/fd.h", "FDSETMAXERRS", 0x024c},
- {"linux/fd.h", "FDRESET", 0x0254},
- {"linux/fd.h", "FDWERRORCLR", 0x0256},
- {"linux/fd.h", "FDRAWCMD", 0x0258},
- {"linux/fd.h", "FDTWADDLE", 0x0259},
- {"linux/fd.h", "FDEJECT", 0x025a},
- {"linux/fd.h", "FDSETDRVPRM", 0x0290},
- {"linux/hdreg.h", "HDIO_GETGEO", 0x0301},
- {"linux/hdreg.h", "HDIO_GET_UNMASKINTR", 0x0302},
- {"linux/hdreg.h", "HDIO_GET_MULTCOUNT", 0x0304},
- {"linux/hdreg.h", "HDIO_GET_QDMA", 0x0305},
- {"linux/hdreg.h", "HDIO_SET_XFER", 0x0306},
- {"linux/hdreg.h", "HDIO_OBSOLETE_IDENTITY", 0x0307},
- {"linux/hdreg.h", "HDIO_GET_KEEPSETTINGS", 0x0308},
- {"linux/hdreg.h", "HDIO_GET_32BIT", 0x0309},
- {"linux/hdreg.h", "HDIO_GET_NOWERR", 0x030a},
- {"linux/hdreg.h", "HDIO_GET_DMA", 0x030b},
- {"linux/hdreg.h", "HDIO_GET_NICE", 0x030c},
- {"linux/hdreg.h", "HDIO_GET_IDENTITY", 0x030d},
- {"linux/hdreg.h", "HDIO_GET_WCACHE", 0x030e},
- {"linux/hdreg.h", "HDIO_GET_ACOUSTIC", 0x030f},
- {"linux/hdreg.h", "HDIO_GET_ADDRESS", 0x0310},
- {"linux/hdreg.h", "HDIO_GET_BUSSTATE", 0x031a},
- {"linux/hdreg.h", "HDIO_TRISTATE_HWIF", 0x031b},
- {"linux/hdreg.h", "HDIO_DRIVE_RESET", 0x031c},
- {"linux/hdreg.h", "HDIO_DRIVE_TASKFILE", 0x031d},
- {"linux/hdreg.h", "HDIO_DRIVE_TASK", 0x031e},
- {"linux/hdreg.h", "HDIO_DRIVE_CMD", 0x031f},
- {"linux/hdreg.h", "HDIO_SET_MULTCOUNT", 0x0321},
- {"linux/hdreg.h", "HDIO_SET_UNMASKINTR", 0x0322},
- {"linux/hdreg.h", "HDIO_SET_KEEPSETTINGS", 0x0323},
- {"linux/hdreg.h", "HDIO_SET_32BIT", 0x0324},
- {"linux/hdreg.h", "HDIO_SET_NOWERR", 0x0325},
- {"linux/hdreg.h", "HDIO_SET_DMA", 0x0326},
- {"linux/hdreg.h", "HDIO_SET_PIO_MODE", 0x0327},
- {"linux/hdreg.h", "HDIO_SCAN_HWIF", 0x0328},
- {"linux/hdreg.h", "HDIO_SET_NICE", 0x0329},
- {"linux/hdreg.h", "HDIO_UNREGISTER_HWIF", 0x032a},
- {"linux/hdreg.h", "HDIO_SET_WCACHE", 0x032b},
- {"linux/hdreg.h", "HDIO_SET_ACOUSTIC", 0x032c},
- {"linux/hdreg.h", "HDIO_SET_BUSSTATE", 0x032d},
- {"linux/hdreg.h", "HDIO_SET_QDMA", 0x032e},
- {"linux/hdreg.h", "HDIO_SET_ADDRESS", 0x032f},
- {"linux/vm_sockets.h", "IOCTL_VM_SOCKETS_GET_LOCAL_CID", 0x07b9},
- {"linux/raid/md_u.h", "RAID_VERSION", 0x0910},
- {"linux/raid/md_u.h", "GET_ARRAY_INFO", 0x0911},
- {"linux/raid/md_u.h", "GET_DISK_INFO", 0x0912},
- {"linux/raid/md_u.h", "PRINT_RAID_DEBUG", 0x0913},
- {"linux/raid/md_u.h", "RAID_AUTORUN", 0x0914},
- {"linux/raid/md_u.h", "GET_BITMAP_FILE", 0x0915},
- {"linux/raid/md_u.h", "CLEAR_ARRAY", 0x0920},
- {"linux/raid/md_u.h", "ADD_NEW_DISK", 0x0921},
- {"linux/raid/md_u.h", "HOT_REMOVE_DISK", 0x0922},
- {"linux/raid/md_u.h", "SET_ARRAY_INFO", 0x0923},
- {"linux/raid/md_u.h", "SET_DISK_INFO", 0x0924},
- {"linux/raid/md_u.h", "WRITE_RAID_INFO", 0x0925},
- {"linux/raid/md_u.h", "UNPROTECT_ARRAY", 0x0926},
- {"linux/raid/md_u.h", "PROTECT_ARRAY", 0x0927},
- {"linux/raid/md_u.h", "HOT_ADD_DISK", 0x0928},
- {"linux/raid/md_u.h", "SET_DISK_FAULTY", 0x0929},
- {"linux/raid/md_u.h", "HOT_GENERATE_ERROR", 0x092a},
- {"linux/raid/md_u.h", "SET_BITMAP_FILE", 0x092b},
- {"linux/raid/md_u.h", "RUN_ARRAY", 0x0930},
- {"linux/raid/md_u.h", "STOP_ARRAY", 0x0932},
- {"linux/raid/md_u.h", "STOP_ARRAY_RO", 0x0933},
- {"linux/raid/md_u.h", "RESTART_ARRAY_RW", 0x0934},
- {"linux/fs.h", "BLKROSET", 0x125d},
- {"linux/fs.h", "BLKROGET", 0x125e},
- {"linux/fs.h", "BLKRRPART", 0x125f},
- {"linux/fs.h", "BLKGETSIZE", 0x1260},
- {"linux/fs.h", "BLKFLSBUF", 0x1261},
- {"linux/fs.h", "BLKRASET", 0x1262},
- {"linux/fs.h", "BLKRAGET", 0x1263},
- {"linux/fs.h", "BLKFRASET", 0x1264},
- {"linux/fs.h", "BLKFRAGET", 0x1265},
- {"linux/fs.h", "BLKSECTSET", 0x1266},
- {"linux/fs.h", "BLKSECTGET", 0x1267},
- {"linux/fs.h", "BLKSSZGET", 0x1268},
- {"linux/blkpg.h", "BLKPG", 0x1269},
- {"linux/fs.h", "BLKELVGET", 0x126a},
- {"linux/fs.h", "BLKELVSET", 0x126b},
- {"linux/fs.h", "BLKBSZGET", 0x1270},
- {"linux/fs.h", "BLKBSZSET", 0x1271},
- {"linux/fs.h", "BLKGETSIZE64", 0x1272},
- {"linux/fs.h", "BLKTRACESETUP", 0x1273},
- {"linux/fs.h", "BLKTRACESTART", 0x1274},
- {"linux/fs.h", "BLKTRACESTOP", 0x1275},
- {"linux/fs.h", "BLKTRACETEARDOWN", 0x1276},
- {"linux/fs.h", "BLKDISCARD", 0x1277},
- {"linux/fs.h", "BLKIOMIN", 0x1278},
- {"linux/fs.h", "BLKIOOPT", 0x1279},
- {"linux/fs.h", "BLKALIGNOFF", 0x127a},
- {"linux/fs.h", "BLKPBSZGET", 0x127b},
- {"linux/fs.h", "BLKDISCARDZEROES", 0x127c},
- {"linux/fs.h", "BLKSECDISCARD", 0x127d},
- {"linux/fs.h", "BLKROTATIONAL", 0x127e},
- {"linux/fs.h", "BLKZEROOUT", 0x127f},
- {"rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT", 0x1b01},
- {"rdma/ib_user_mad.h", "IB_USER_MAD_UNREGISTER_AGENT", 0x1b02},
- {"rdma/ib_user_mad.h", "IB_USER_MAD_ENABLE_PKEY", 0x1b03},
- {"rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT2", 0x1b04},
- {"scsi/sg.h", "SG_SET_TIMEOUT", 0x2201},
- {"scsi/sg.h", "SG_GET_TIMEOUT", 0x2202},
- {"scsi/sg.h", "SG_EMULATED_HOST", 0x2203},
- {"scsi/sg.h", "SG_SET_TRANSFORM", 0x2204},
- {"scsi/sg.h", "SG_GET_TRANSFORM", 0x2205},
- {"scsi/sg.h", "SG_GET_COMMAND_Q", 0x2270},
- {"scsi/sg.h", "SG_SET_COMMAND_Q", 0x2271},
- {"scsi/sg.h", "SG_GET_RESERVED_SIZE", 0x2272},
- {"scsi/sg.h", "SG_SET_RESERVED_SIZE", 0x2275},
- {"scsi/sg.h", "SG_GET_SCSI_ID", 0x2276},
- {"scsi/sg.h", "SG_SET_FORCE_LOW_DMA", 0x2279},
- {"scsi/sg.h", "SG_GET_LOW_DMA", 0x227a},
- {"scsi/sg.h", "SG_SET_FORCE_PACK_ID", 0x227b},
- {"scsi/sg.h", "SG_GET_PACK_ID", 0x227c},
- {"scsi/sg.h", "SG_GET_NUM_WAITING", 0x227d},
- {"scsi/sg.h", "SG_SET_DEBUG", 0x227e},
- {"scsi/sg.h", "SG_GET_SG_TABLESIZE", 0x227f},
- {"scsi/sg.h", "SG_GET_VERSION_NUM", 0x2282},
- {"scsi/sg.h", "SG_NEXT_CMD_LEN", 0x2283},
- {"scsi/sg.h", "SG_SCSI_RESET", 0x2284},
- {"scsi/sg.h", "SG_IO", 0x2285},
- {"scsi/sg.h", "SG_GET_REQUEST_TABLE", 0x2286},
- {"scsi/sg.h", "SG_SET_KEEP_ORPHAN", 0x2287},
- {"scsi/sg.h", "SG_GET_KEEP_ORPHAN", 0x2288},
- {"scsi/sg.h", "SG_GET_ACCESS_COUNT", 0x2289},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_GET_INFO", 0x2300},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_REQUEST", 0x2301},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE", 0x2302},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE", 0x2303},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_RESPONSE", 0x2304},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_INITIATE_BUS_RESET", 0x2305},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_ADD_DESCRIPTOR", 0x2306},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_REMOVE_DESCRIPTOR", 0x2307},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_CREATE_ISO_CONTEXT", 0x2308},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_QUEUE_ISO", 0x2309},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_START_ISO", 0x230a},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_STOP_ISO", 0x230b},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER", 0x230c},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE", 0x230d},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE", 0x230e},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE", 0x230f},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE", 0x2310},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_GET_SPEED", 0x2311},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_BROADCAST_REQUEST", 0x2312},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_STREAM_PACKET", 0x2313},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER2", 0x2314},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_PHY_PACKET", 0x2315},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_RECEIVE_PHY_PACKETS", 0x2316},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_SET_ISO_CHANNELS", 0x2317},
- {"linux/firewire-cdev.h", "FW_CDEV_IOC_FLUSH_ISO", 0x2318},
- {"linux/perf_event.h", "PERF_EVENT_IOC_ENABLE", 0x2400},
- {"linux/perf_event.h", "PERF_EVENT_IOC_DISABLE", 0x2401},
- {"linux/perf_event.h", "PERF_EVENT_IOC_REFRESH", 0x2402},
- {"linux/perf_event.h", "PERF_EVENT_IOC_RESET", 0x2403},
- {"linux/perf_event.h", "PERF_EVENT_IOC_PERIOD", 0x2404},
- {"linux/perf_event.h", "PERF_EVENT_IOC_SET_OUTPUT", 0x2405},
- {"linux/perf_event.h", "PERF_EVENT_IOC_SET_FILTER", 0x2406},
- {"linux/perf_event.h", "PERF_EVENT_IOC_ID", 0x2407},
- {"linux/suspend_ioctls.h", "SNAPSHOT_FREEZE", 0x3301},
- {"linux/suspend_ioctls.h", "SNAPSHOT_UNFREEZE", 0x3302},
- {"linux/suspend_ioctls.h", "SNAPSHOT_ATOMIC_RESTORE", 0x3304},
- {"linux/suspend_ioctls.h", "SNAPSHOT_FREE", 0x3305},
- {"linux/suspend_ioctls.h", "SNAPSHOT_FREE_SWAP_PAGES", 0x3309},
- {"linux/suspend_ioctls.h", "SNAPSHOT_S2RAM", 0x330b},
- {"linux/suspend_ioctls.h", "SNAPSHOT_SET_SWAP_AREA", 0x330d},
- {"linux/suspend_ioctls.h", "SNAPSHOT_GET_IMAGE_SIZE", 0x330e},
- {"linux/suspend_ioctls.h", "SNAPSHOT_PLATFORM_SUPPORT", 0x330f},
- {"linux/suspend_ioctls.h", "SNAPSHOT_POWER_OFF", 0x3310},
- {"linux/suspend_ioctls.h", "SNAPSHOT_CREATE_IMAGE", 0x3311},
- {"linux/suspend_ioctls.h", "SNAPSHOT_PREF_IMAGE_SIZE", 0x3312},
- {"linux/suspend_ioctls.h", "SNAPSHOT_AVAIL_SWAP_SIZE", 0x3313},
- {"linux/suspend_ioctls.h", "SNAPSHOT_ALLOC_SWAP_PAGE", 0x3314},
- {"linux/vfio.h", "VFIO_GET_API_VERSION", 0x3b64},
- {"linux/vfio.h", "VFIO_CHECK_EXTENSION", 0x3b65},
- {"linux/vfio.h", "VFIO_SET_IOMMU", 0x3b66},
- {"linux/vfio.h", "VFIO_GROUP_GET_STATUS", 0x3b67},
- {"linux/vfio.h", "VFIO_GROUP_SET_CONTAINER", 0x3b68},
- {"linux/vfio.h", "VFIO_GROUP_UNSET_CONTAINER", 0x3b69},
- {"linux/vfio.h", "VFIO_GROUP_GET_DEVICE_FD", 0x3b6a},
- {"linux/vfio.h", "VFIO_DEVICE_GET_INFO", 0x3b6b},
- {"linux/vfio.h", "VFIO_DEVICE_GET_REGION_INFO", 0x3b6c},
- {"linux/vfio.h", "VFIO_DEVICE_GET_IRQ_INFO", 0x3b6d},
- {"linux/vfio.h", "VFIO_DEVICE_SET_IRQS", 0x3b6e},
- {"linux/vfio.h", "VFIO_DEVICE_RESET", 0x3b6f},
- {"linux/vfio.h", "VFIO_DEVICE_GET_PCI_HOT_RESET_INFO", 0x3b70},
- {"linux/vfio.h", "VFIO_IOMMU_GET_INFO", 0x3b70},
- {"linux/vfio.h", "VFIO_IOMMU_SPAPR_TCE_GET_INFO", 0x3b70},
- {"linux/vfio.h", "VFIO_DEVICE_PCI_HOT_RESET", 0x3b71},
- {"linux/vfio.h", "VFIO_IOMMU_MAP_DMA", 0x3b71},
- {"linux/vfio.h", "VFIO_IOMMU_UNMAP_DMA", 0x3b72},
- {"linux/vfio.h", "VFIO_IOMMU_ENABLE", 0x3b73},
- {"linux/vfio.h", "VFIO_IOMMU_DISABLE", 0x3b74},
- {"linux/vfio.h", "VFIO_EEH_PE_OP", 0x3b79},
- {"linux/ptp_clock.h", "PTP_CLOCK_GETCAPS", 0x3d01},
- {"linux/ptp_clock.h", "PTP_EXTTS_REQUEST", 0x3d02},
- {"linux/ptp_clock.h", "PTP_PEROUT_REQUEST", 0x3d03},
- {"linux/ptp_clock.h", "PTP_ENABLE_PPS", 0x3d04},
- {"linux/ptp_clock.h", "PTP_SYS_OFFSET", 0x3d05},
- {"linux/ptp_clock.h", "PTP_PIN_GETFUNC", 0x3d06},
- {"linux/ptp_clock.h", "PTP_PIN_SETFUNC", 0x3d07},
- {"linux/radeonfb.h", "FBIO_RADEON_GET_MIRROR", 0x4003},
- {"linux/radeonfb.h", "FBIO_RADEON_SET_MIRROR", 0x4004},
- {"linux/agpgart.h", "AGPIOC_INFO", 0x4100},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_PVERSION", 0x4100},
- {"linux/agpgart.h", "AGPIOC_ACQUIRE", 0x4101},
- {"linux/apm_bios.h", "APM_IOC_STANDBY", 0x4101},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_INFO", 0x4101},
- {"linux/agpgart.h", "AGPIOC_RELEASE", 0x4102},
- {"linux/apm_bios.h", "APM_IOC_SUSPEND", 0x4102},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_TSTAMP", 0x4102},
- {"linux/agpgart.h", "AGPIOC_SETUP", 0x4103},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_TTSTAMP", 0x4103},
- {"linux/agpgart.h", "AGPIOC_RESERVE", 0x4104},
- {"linux/agpgart.h", "AGPIOC_PROTECT", 0x4105},
- {"linux/agpgart.h", "AGPIOC_ALLOCATE", 0x4106},
- {"linux/agpgart.h", "AGPIOC_DEALLOCATE", 0x4107},
- {"linux/agpgart.h", "AGPIOC_BIND", 0x4108},
- {"linux/agpgart.h", "AGPIOC_UNBIND", 0x4109},
- {"linux/agpgart.h", "AGPIOC_CHIPSET_FLUSH", 0x410a},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_HW_REFINE", 0x4110},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_HW_PARAMS", 0x4111},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_HW_FREE", 0x4112},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_SW_PARAMS", 0x4113},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_STATUS", 0x4120},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_DELAY", 0x4121},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_HWSYNC", 0x4122},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_SYNC_PTR", 0x4123},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_CHANNEL_INFO", 0x4132},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_PREPARE", 0x4140},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_RESET", 0x4141},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_START", 0x4142},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_DROP", 0x4143},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_DRAIN", 0x4144},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_PAUSE", 0x4145},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_REWIND", 0x4146},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_RESUME", 0x4147},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_XRUN", 0x4148},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_FORWARD", 0x4149},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_WRITEI_FRAMES", 0x4150},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_READI_FRAMES", 0x4151},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_WRITEN_FRAMES", 0x4152},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_READN_FRAMES", 0x4153},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_LINK", 0x4160},
- {"sound/asound.h", "SNDRV_PCM_IOCTL_UNLINK", 0x4161},
- {"linux/pmu.h", "PMU_IOC_SLEEP", 0x4200},
- {"linux/cciss_ioctl.h", "CCISS_GETPCIINFO", 0x4201},
- {"linux/pmu.h", "PMU_IOC_GET_BACKLIGHT", 0x4201},
- {"linux/cciss_ioctl.h", "CCISS_GETINTINFO", 0x4202},
- {"linux/pmu.h", "PMU_IOC_SET_BACKLIGHT", 0x4202},
- {"linux/cciss_ioctl.h", "CCISS_SETINTINFO", 0x4203},
- {"linux/pmu.h", "PMU_IOC_GET_MODEL", 0x4203},
- {"linux/cciss_ioctl.h", "CCISS_GETNODENAME", 0x4204},
- {"linux/pmu.h", "PMU_IOC_HAS_ADB", 0x4204},
- {"linux/cciss_ioctl.h", "CCISS_SETNODENAME", 0x4205},
- {"linux/pmu.h", "PMU_IOC_CAN_SLEEP", 0x4205},
- {"linux/cciss_ioctl.h", "CCISS_GETHEARTBEAT", 0x4206},
- {"linux/pmu.h", "PMU_IOC_GRAB_BACKLIGHT", 0x4206},
- {"linux/cciss_ioctl.h", "CCISS_GETBUSTYPES", 0x4207},
- {"linux/cciss_ioctl.h", "CCISS_GETFIRMVER", 0x4208},
- {"linux/cciss_ioctl.h", "CCISS_GETDRIVVER", 0x4209},
- {"linux/cciss_ioctl.h", "CCISS_REVALIDVOLS", 0x420a},
- {"linux/cciss_ioctl.h", "CCISS_PASSTHRU", 0x420b},
- {"linux/cciss_ioctl.h", "CCISS_DEREGDISK", 0x420c},
- {"linux/cciss_ioctl.h", "CCISS_REGNEWDISK", 0x420d},
- {"linux/cciss_ioctl.h", "CCISS_REGNEWD", 0x420e},
- {"linux/cciss_ioctl.h", "CCISS_RESCANDISK", 0x4210},
- {"linux/cciss_ioctl.h", "CCISS_GETLUNINFO", 0x4211},
- {"linux/cciss_ioctl.h", "CCISS_BIG_PASSTHRU", 0x4212},
- {"linux/soundcard.h", "SNDCTL_COPR_RESET", 0x4300},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_IOCTL_VERSION", 0x4300},
- {"linux/capi.h", "CAPI_REGISTER", 0x4301},
- {"linux/soundcard.h", "SNDCTL_COPR_LOAD", 0x4301},
- {"linux/soundcard.h", "SNDCTL_COPR_RDATA", 0x4302},
- {"linux/soundcard.h", "SNDCTL_COPR_RCODE", 0x4303},
- {"linux/soundcard.h", "SNDCTL_COPR_WDATA", 0x4304},
- {"linux/soundcard.h", "SNDCTL_COPR_WCODE", 0x4305},
- {"linux/capi.h", "CAPI_GET_MANUFACTURER", 0x4306},
- {"linux/soundcard.h", "SNDCTL_COPR_RUN", 0x4306},
- {"linux/capi.h", "CAPI_GET_VERSION", 0x4307},
- {"linux/soundcard.h", "SNDCTL_COPR_HALT", 0x4307},
- {"linux/capi.h", "CAPI_GET_SERIAL", 0x4308},
- {"linux/soundcard.h", "SNDCTL_COPR_SENDMSG", 0x4308},
- {"linux/capi.h", "CAPI_GET_PROFILE", 0x4309},
- {"linux/soundcard.h", "SNDCTL_COPR_RCVMSG", 0x4309},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_GET_CAPS", 0x4310},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_GET_CODEC_CAPS", 0x4311},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_SET_PARAMS", 0x4312},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_GET_PARAMS", 0x4313},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_SET_METADATA", 0x4314},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_GET_METADATA", 0x4315},
- {"linux/capi.h", "CAPI_MANUFACTURER_CMD", 0x4320},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_TSTAMP", 0x4320},
- {"linux/capi.h", "CAPI_GET_ERRCODE", 0x4321},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_AVAIL", 0x4321},
- {"linux/capi.h", "CAPI_INSTALLED", 0x4322},
- {"linux/capi.h", "CAPI_GET_FLAGS", 0x4323},
- {"linux/capi.h", "CAPI_SET_FLAGS", 0x4324},
- {"linux/capi.h", "CAPI_CLR_FLAGS", 0x4325},
- {"linux/capi.h", "CAPI_NCCI_OPENCOUNT", 0x4326},
- {"linux/capi.h", "CAPI_NCCI_GETUNIT", 0x4327},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_PAUSE", 0x4330},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_RESUME", 0x4331},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_START", 0x4332},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_STOP", 0x4333},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_DRAIN", 0x4334},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_NEXT_TRACK", 0x4335},
- {"sound/compress_offload.h", "SNDRV_COMPRESS_PARTIAL_DRAIN", 0x4336},
- {"linux/input.h", "EVIOCGVERSION", 0x4501},
- {"linux/input.h", "EVIOCGID", 0x4502},
- {"linux/input.h", "EVIOCGREP", 0x4503},
- {"linux/input.h", "EVIOCSREP", 0x4503},
- {"linux/input.h", "EVIOCGKEYCODE", 0x4504},
- {"linux/input.h", "EVIOCSKEYCODE", 0x4504},
- {"linux/input.h", "EVIOCRMFF", 0x4581},
- {"linux/input.h", "EVIOCGEFFECTS", 0x4584},
- {"linux/input.h", "EVIOCGRAB", 0x4590},
- {"linux/input.h", "EVIOCREVOKE", 0x4591},
- {"linux/input.h", "EVIOCSCLOCKID", 0x45a0},
- {"linux/fb.h", "FBIOGET_VSCREENINFO", 0x4600},
- {"video/da8xx-fb.h", "FBIOGET_CONTRAST", 0x4601},
- {"linux/fb.h", "FBIOPUT_VSCREENINFO", 0x4601},
- {"linux/fb.h", "FBIOGET_FSCREENINFO", 0x4602},
- {"video/da8xx-fb.h", "FBIOPUT_CONTRAST", 0x4602},
- {"video/da8xx-fb.h", "FBIGET_BRIGHTNESS", 0x4603},
- {"video/da8xx-fb.h", "FBIPUT_BRIGHTNESS", 0x4603},
- {"linux/fb.h", "FBIOGETCMAP", 0x4604},
- {"video/da8xx-fb.h", "FBIGET_COLOR", 0x4605},
- {"linux/fb.h", "FBIOPUTCMAP", 0x4605},
- {"linux/fb.h", "FBIOPAN_DISPLAY", 0x4606},
- {"video/da8xx-fb.h", "FBIPUT_COLOR", 0x4606},
- {"linux/fb.h", "FBIO_CURSOR", 0x4608},
- {"video/da8xx-fb.h", "FBIPUT_HSYNC", 0x4609},
- {"video/da8xx-fb.h", "FBIPUT_VSYNC", 0x460a},
- {"linux/fb.h", "FBIOGET_CON2FBMAP", 0x460f},
- {"linux/fb.h", "FBIOPUT_CON2FBMAP", 0x4610},
- {"linux/fb.h", "FBIOBLANK", 0x4611},
- {"linux/fb.h", "FBIOGET_VBLANK", 0x4612},
- {"linux/fb.h", "FBIO_ALLOC", 0x4613},
- {"linux/fb.h", "FBIO_FREE", 0x4614},
- {"linux/fb.h", "FBIOGET_GLYPH", 0x4615},
- {"linux/fb.h", "FBIOGET_HWCINFO", 0x4616},
- {"linux/fb.h", "FBIOPUT_MODEINFO", 0x4617},
- {"linux/fb.h", "FBIOGET_DISPINFO", 0x4618},
- {"linux/fb.h", "FBIO_WAITFORVSYNC", 0x4620},
- {"linux/arcfb.h", "FBIO_WAITEVENT", 0x4688},
- {"linux/arcfb.h", "FBIO_GETCONTROL2", 0x4689},
- {"video/sstfb.h", "SSTFB_GET_VGAPASS", 0x46dd},
- {"video/sstfb.h", "SSTFB_SET_VGAPASS", 0x46dd},
- {"linux/gigaset_dev.h", "GIGASET_REDIR", 0x4700},
- {"linux/gigaset_dev.h", "GIGASET_CONFIG", 0x4701},
- {"linux/gigaset_dev.h", "GIGASET_BRKCHARS", 0x4702},
- {"linux/gigaset_dev.h", "GIGASET_VERSION", 0x4703},
- {"sound/asound.h", "SNDRV_HWDEP_IOCTL_PVERSION", 0x4800},
- {"linux/hidraw.h", "HIDIOCGRDESCSIZE", 0x4801},
- {"linux/hiddev.h", "HIDIOCGVERSION", 0x4801},
- {"sound/asound.h", "SNDRV_HWDEP_IOCTL_INFO", 0x4801},
- {"linux/hiddev.h", "HIDIOCAPPLICATION", 0x4802},
- {"linux/hidraw.h", "HIDIOCGRDESC", 0x4802},
- {"sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_STATUS", 0x4802},
- {"linux/hiddev.h", "HIDIOCGDEVINFO", 0x4803},
- {"linux/hidraw.h", "HIDIOCGRAWINFO", 0x4803},
- {"sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_LOAD", 0x4803},
- {"linux/hiddev.h", "HIDIOCGSTRING", 0x4804},
- {"linux/hiddev.h", "HIDIOCINITREPORT", 0x4805},
- {"linux/hiddev.h", "HIDIOCGREPORT", 0x4807},
- {"linux/hiddev.h", "HIDIOCSREPORT", 0x4808},
- {"linux/hiddev.h", "HIDIOCGREPORTINFO", 0x4809},
- {"linux/hiddev.h", "HIDIOCGFIELDINFO", 0x480a},
- {"linux/hiddev.h", "HIDIOCGUSAGE", 0x480b},
- {"linux/hiddev.h", "HIDIOCSUSAGE", 0x480c},
- {"linux/hiddev.h", "HIDIOCGUCODE", 0x480d},
- {"linux/hiddev.h", "HIDIOCGFLAG", 0x480e},
- {"linux/hiddev.h", "HIDIOCSFLAG", 0x480f},
- {"linux/hiddev.h", "HIDIOCGCOLLECTIONINDEX", 0x4810},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_INFO", 0x4810},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_INFO", 0x4810},
- {"linux/hiddev.h", "HIDIOCGCOLLECTIONINFO", 0x4811},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_POKE", 0x4811},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_PEEK", 0x4812},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_UNLOAD_CODE", 0x4812},
- {"linux/hiddev.h", "HIDIOCGUSAGES", 0x4813},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_START", 0x4813},
- {"linux/hiddev.h", "HIDIOCSUSAGES", 0x4814},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_STOP", 0x4814},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_PAUSE", 0x4815},
- {"sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_RESTART", 0x4816},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_INFO", 0x4820},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_SETUP", 0x4820},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_RESET", 0x4821},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_POKE", 0x4821},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_PLAY_NOTE", 0x4822},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_PEEK", 0x4822},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_VOICE", 0x4823},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_PARAMS", 0x4824},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_MODE", 0x4825},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_CONNECTION", 0x4826},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_POKE", 0x4830},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_PEEK", 0x4831},
- {"sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_CLEAR_PATCHES", 0x4840},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PVERSION", 0x4840},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_PEAK_RMS", 0x4840},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_CONFIG_INFO", 0x4841},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE", 0x4842},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_VERSION", 0x4843},
- {"sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_MIXER", 0x4844},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_MIXER", 0x4844},
- {"sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_9632_AEB", 0x4845},
- {"sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_LTC", 0x4846},
- {"sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_VERSION", 0x4848},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_STOP", 0x4880},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_VERSION", 0x4880},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CONTINUE", 0x4881},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_LOAD_PATCH", 0x4881},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_ZERO_TRAM_COUNTER", 0x4882},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_RESET_SAMPLES", 0x4882},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_SINGLE_STEP", 0x4883},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_REMOVE_LAST_SAMPLES", 0x4883},
- {"sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_DBG_READ", 0x4884},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MEM_AVAIL", 0x4884},
- {"sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MISC_MODE", 0x4884},
- {"linux/usb/cdc-wdm.h", "IOCTL_WDM_MAX_COMMAND", 0x48a0},
- {"net/bluetooth/hci_sock.h", "HCIDEVUP", 0x48c9},
- {"net/bluetooth/hci_sock.h", "HCIDEVDOWN", 0x48ca},
- {"net/bluetooth/hci_sock.h", "HCIDEVRESET", 0x48cb},
- {"net/bluetooth/hci_sock.h", "HCIDEVRESTAT", 0x48cc},
- {"net/bluetooth/hci_sock.h", "HCIGETDEVLIST", 0x48d2},
- {"net/bluetooth/hci_sock.h", "HCIGETDEVINFO", 0x48d3},
- {"net/bluetooth/hci_sock.h", "HCIGETCONNLIST", 0x48d4},
- {"net/bluetooth/hci_sock.h", "HCIGETCONNINFO", 0x48d5},
- {"net/bluetooth/hci_sock.h", "HCIGETAUTHINFO", 0x48d7},
- {"net/bluetooth/hci_sock.h", "HCISETRAW", 0x48dc},
- {"net/bluetooth/hci_sock.h", "HCISETSCAN", 0x48dd},
- {"net/bluetooth/hci_sock.h", "HCISETAUTH", 0x48de},
- {"net/bluetooth/hci_sock.h", "HCISETENCRYPT", 0x48df},
- {"net/bluetooth/hci_sock.h", "HCISETPTYPE", 0x48e0},
- {"net/bluetooth/hci_sock.h", "HCISETLINKPOL", 0x48e1},
- {"net/bluetooth/hci_sock.h", "HCISETLINKMODE", 0x48e2},
- {"net/bluetooth/hci_sock.h", "HCISETACLMTU", 0x48e3},
- {"net/bluetooth/hci_sock.h", "HCISETSCOMTU", 0x48e4},
- {"net/bluetooth/hci_sock.h", "HCIBLOCKADDR", 0x48e6},
- {"net/bluetooth/hci_sock.h", "HCIUNBLOCKADDR", 0x48e7},
- {"net/bluetooth/hci_sock.h", "HCIINQUIRY", 0x48f0},
- {"sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_GET_INFO", 0x48f8},
- {"sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_LOCK", 0x48f9},
- {"sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_UNLOCK", 0x48fa},
- {"linux/isdn.h", "IIOCNETAIF", 0x4901},
- {"linux/isdn.h", "IIOCNETDIF", 0x4902},
- {"linux/isdn.h", "IIOCNETSCF", 0x4903},
- {"linux/isdn.h", "IIOCNETGCF", 0x4904},
- {"linux/isdn.h", "IIOCNETANM", 0x4905},
- {"linux/isdn.h", "IIOCNETDNM", 0x4906},
- {"linux/isdn.h", "IIOCNETGNM", 0x4907},
- {"linux/isdn.h", "IIOCGETSET", 0x4908},
- {"linux/isdn.h", "IIOCSETSET", 0x4909},
- {"linux/isdn.h", "IIOCSETVER", 0x490a},
- {"linux/isdn.h", "IIOCNETHUP", 0x490b},
- {"linux/isdn.h", "IIOCSETGST", 0x490c},
- {"linux/isdn.h", "IIOCSETBRJ", 0x490d},
- {"linux/isdn.h", "IIOCSIGPRF", 0x490e},
- {"linux/isdn.h", "IIOCGETPRF", 0x490f},
- {"linux/isdn.h", "IIOCSETPRF", 0x4910},
- {"linux/isdn.h", "IIOCGETMAP", 0x4911},
- {"linux/isdn.h", "IIOCSETMAP", 0x4912},
- {"linux/isdn.h", "IIOCNETASL", 0x4913},
- {"linux/isdn.h", "IIOCNETDIL", 0x4914},
- {"linux/isdn.h", "IIOCGETCPS", 0x4915},
- {"linux/isdn.h", "IIOCGETDVR", 0x4916},
- {"linux/isdn.h", "IIOCNETLCR", 0x4917},
- {"linux/isdn.h", "IIOCNETDWRSET", 0x4918},
- {"linux/isdn.h", "IIOCNETALN", 0x4920},
- {"linux/isdn.h", "IIOCNETDLN", 0x4921},
- {"linux/isdn.h", "IIOCNETGPN", 0x4922},
- {"linux/isdn.h", "IIOCDBGVAR", 0x497f},
- {"linux/isdn.h", "IIOCDRVCTL", 0x4980},
- {"linux/kd.h", "KIOCSOUND", 0x4b2f},
- {"linux/kd.h", "KDMKTONE", 0x4b30},
- {"linux/kd.h", "KDGETLED", 0x4b31},
- {"linux/kd.h", "KDSETLED", 0x4b32},
- {"linux/kd.h", "KDGKBTYPE", 0x4b33},
- {"linux/kd.h", "KDADDIO", 0x4b34},
- {"linux/kd.h", "KDDELIO", 0x4b35},
- {"linux/kd.h", "KDENABIO", 0x4b36},
- {"linux/kd.h", "KDDISABIO", 0x4b37},
- {"linux/kd.h", "KDSETMODE", 0x4b3a},
- {"linux/kd.h", "KDGETMODE", 0x4b3b},
- {"linux/kd.h", "KDMAPDISP", 0x4b3c},
- {"linux/kd.h", "KDUNMAPDISP", 0x4b3d},
- {"linux/kd.h", "GIO_SCRNMAP", 0x4b40},
- {"linux/kd.h", "PIO_SCRNMAP", 0x4b41},
- {"linux/kd.h", "KDGKBMODE", 0x4b44},
- {"linux/kd.h", "KDSKBMODE", 0x4b45},
- {"linux/kd.h", "KDGKBENT", 0x4b46},
- {"linux/kd.h", "KDSKBENT", 0x4b47},
- {"linux/kd.h", "KDGKBSENT", 0x4b48},
- {"linux/kd.h", "KDSKBSENT", 0x4b49},
- {"linux/kd.h", "KDGKBDIACR", 0x4b4a},
- {"linux/kd.h", "KDSKBDIACR", 0x4b4b},
- {"linux/kd.h", "KDGETKEYCODE", 0x4b4c},
- {"linux/kd.h", "KDSETKEYCODE", 0x4b4d},
- {"linux/kd.h", "KDSIGACCEPT", 0x4b4e},
- {"linux/kd.h", "KDKBDREP", 0x4b52},
- {"linux/kd.h", "GIO_FONT", 0x4b60},
- {"linux/kd.h", "PIO_FONT", 0x4b61},
- {"linux/kd.h", "KDGKBMETA", 0x4b62},
- {"linux/kd.h", "KDSKBMETA", 0x4b63},
- {"linux/kd.h", "KDGKBLED", 0x4b64},
- {"linux/kd.h", "KDSKBLED", 0x4b65},
- {"linux/kd.h", "GIO_UNIMAP", 0x4b66},
- {"linux/kd.h", "PIO_UNIMAP", 0x4b67},
- {"linux/kd.h", "PIO_UNIMAPCLR", 0x4b68},
- {"linux/kd.h", "GIO_UNISCRNMAP", 0x4b69},
- {"linux/kd.h", "PIO_UNISCRNMAP", 0x4b6a},
- {"linux/kd.h", "GIO_FONTX", 0x4b6b},
- {"linux/kd.h", "PIO_FONTX", 0x4b6c},
- {"linux/kd.h", "PIO_FONTRESET", 0x4b6d},
- {"linux/kd.h", "GIO_CMAP", 0x4b70},
- {"linux/kd.h", "PIO_CMAP", 0x4b71},
- {"linux/kd.h", "KDFONTOP", 0x4b72},
- {"linux/kd.h", "KDGKBDIACRUC", 0x4bfa},
- {"linux/kd.h", "KDSKBDIACRUC", 0x4bfb},
- {"linux/loop.h", "LOOP_SET_FD", 0x4c00},
- {"linux/loop.h", "LOOP_CLR_FD", 0x4c01},
- {"linux/loop.h", "LOOP_SET_STATUS", 0x4c02},
- {"linux/loop.h", "LOOP_GET_STATUS", 0x4c03},
- {"linux/loop.h", "LOOP_SET_STATUS64", 0x4c04},
- {"linux/loop.h", "LOOP_GET_STATUS64", 0x4c05},
- {"linux/loop.h", "LOOP_CHANGE_FD", 0x4c06},
- {"linux/loop.h", "LOOP_SET_CAPACITY", 0x4c07},
- {"linux/loop.h", "LOOP_CTL_ADD", 0x4c80},
- {"linux/loop.h", "LOOP_CTL_REMOVE", 0x4c81},
- {"linux/loop.h", "LOOP_CTL_GET_FREE", 0x4c82},
- {"mtd/mtd-abi.h", "MEMGETINFO", 0x4d01},
- {"mtd/mtd-abi.h", "MEMERASE", 0x4d02},
- {"mtd/mtd-abi.h", "MEMWRITEOOB", 0x4d03},
- {"mtd/mtd-abi.h", "MEMREADOOB", 0x4d04},
- {"mtd/mtd-abi.h", "MEMLOCK", 0x4d05},
- {"mtd/mtd-abi.h", "MEMUNLOCK", 0x4d06},
- {"mtd/mtd-abi.h", "MEMGETREGIONCOUNT", 0x4d07},
- {"mtd/mtd-abi.h", "MEMGETREGIONINFO", 0x4d08},
- {"mtd/mtd-abi.h", "MEMGETOOBSEL", 0x4d0a},
- {"mtd/mtd-abi.h", "MEMGETBADBLOCK", 0x4d0b},
- {"mtd/mtd-abi.h", "MEMSETBADBLOCK", 0x4d0c},
- {"mtd/mtd-abi.h", "OTPSELECT", 0x4d0d},
- {"mtd/mtd-abi.h", "OTPGETREGIONCOUNT", 0x4d0e},
- {"mtd/mtd-abi.h", "OTPGETREGIONINFO", 0x4d0f},
- {"mtd/mtd-abi.h", "OTPLOCK", 0x4d10},
- {"mtd/mtd-abi.h", "ECCGETLAYOUT", 0x4d11},
- {"mtd/mtd-abi.h", "ECCGETSTATS", 0x4d12},
- {"mtd/mtd-abi.h", "MTDFILEMODE", 0x4d13},
- {"mtd/mtd-abi.h", "MEMERASE64", 0x4d14},
- {"mtd/mtd-abi.h", "MEMWRITEOOB64", 0x4d15},
- {"mtd/mtd-abi.h", "MEMREADOOB64", 0x4d16},
- {"mtd/mtd-abi.h", "MEMISLOCKED", 0x4d17},
- {"mtd/mtd-abi.h", "MEMWRITE", 0x4d18},
- {"linux/soundcard.h", "SOUND_MIXER_INFO", 0x4d65},
- {"linux/soundcard.h", "SOUND_OLD_MIXER_INFO", 0x4d65},
- {"linux/soundcard.h", "SOUND_MIXER_ACCESS", 0x4d66},
- {"linux/soundcard.h", "SOUND_MIXER_AGC", 0x4d67},
- {"linux/soundcard.h", "SOUND_MIXER_3DSE", 0x4d68},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE1", 0x4d6f},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE2", 0x4d70},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE3", 0x4d71},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE4", 0x4d72},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE5", 0x4d73},
- {"linux/soundcard.h", "SOUND_MIXER_GETLEVELS", 0x4d74},
- {"linux/soundcard.h", "SOUND_MIXER_SETLEVELS", 0x4d75},
- {"linux/soundcard.h", "OSS_GETVERSION", 0x4d76},
- {"linux/nvme.h", "NVME_IOCTL_ID", 0x4e40},
- {"linux/nvme.h", "NVME_IOCTL_ADMIN_CMD", 0x4e41},
- {"linux/nvme.h", "NVME_IOCTL_SUBMIT_IO", 0x4e42},
- {"mtd/ubi-user.h", "UBI_IOCVOLUP", 0x4f00},
- {"mtd/ubi-user.h", "UBI_IOCEBER", 0x4f01},
- {"mtd/ubi-user.h", "UBI_IOCEBCH", 0x4f02},
- {"mtd/ubi-user.h", "UBI_IOCEBMAP", 0x4f03},
- {"mtd/ubi-user.h", "UBI_IOCEBUNMAP", 0x4f04},
- {"mtd/ubi-user.h", "UBI_IOCEBISMAP", 0x4f05},
- {"mtd/ubi-user.h", "UBI_IOCSETVOLPROP", 0x4f06},
- {"mtd/ubi-user.h", "UBI_IOCVOLCRBLK", 0x4f07},
- {"mtd/ubi-user.h", "UBI_IOCVOLRMBLK", 0x4f08},
- {"linux/soundcard.h", "SNDCTL_DSP_RESET", 0x5000},
- {"linux/soundcard.h", "SNDCTL_DSP_SYNC", 0x5001},
- {"linux/soundcard.h", "SNDCTL_DSP_SPEED", 0x5002},
- {"linux/soundcard.h", "SOUND_PCM_READ_RATE", 0x5002},
- {"linux/soundcard.h", "SNDCTL_DSP_STEREO", 0x5003},
- {"linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", 0x5004},
- {"linux/soundcard.h", "SNDCTL_DSP_SETFMT", 0x5005},
- {"linux/soundcard.h", "SOUND_PCM_READ_BITS", 0x5005},
- {"linux/soundcard.h", "SNDCTL_DSP_CHANNELS", 0x5006},
- {"linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", 0x5006},
- {"linux/soundcard.h", "SOUND_PCM_READ_FILTER", 0x5007},
- {"linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", 0x5007},
- {"linux/soundcard.h", "SNDCTL_DSP_POST", 0x5008},
- {"linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", 0x5009},
- {"linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", 0x500a},
- {"linux/soundcard.h", "SNDCTL_DSP_GETFMTS", 0x500b},
- {"linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", 0x500c},
- {"linux/soundcard.h", "SNDCTL_DSP_GETISPACE", 0x500d},
- {"linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", 0x500e},
- {"linux/soundcard.h", "SNDCTL_DSP_GETCAPS", 0x500f},
- {"linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", 0x5010},
- {"linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", 0x5010},
- {"linux/soundcard.h", "SNDCTL_DSP_GETIPTR", 0x5011},
- {"linux/soundcard.h", "SNDCTL_DSP_GETOPTR", 0x5012},
- {"linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", 0x5013},
- {"linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", 0x5014},
- {"linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", 0x5015},
- {"linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", 0x5016},
- {"linux/soundcard.h", "SNDCTL_DSP_GETODELAY", 0x5017},
- {"linux/soundcard.h", "SNDCTL_DSP_PROFILE", 0x5017},
- {"linux/soundcard.h", "SNDCTL_DSP_GETCHANNELMASK", 0x5040},
- {"linux/soundcard.h", "SNDCTL_DSP_BIND_CHANNEL", 0x5041},
- {"linux/soundcard.h", "SNDCTL_DSP_SETSPDIF", 0x5042},
- {"linux/soundcard.h", "SNDCTL_DSP_GETSPDIF", 0x5043},
- {"linux/soundcard.h", "SNDCTL_SEQ_RESET", 0x5100},
- {"linux/soundcard.h", "SNDCTL_SEQ_SYNC", 0x5101},
- {"linux/soundcard.h", "SNDCTL_SYNTH_INFO", 0x5102},
- {"linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", 0x5103},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", 0x5104},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", 0x5105},
- {"linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", 0x5106},
- {"linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", 0x5107},
- {"linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", 0x5108},
- {"linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", 0x5109},
- {"linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", 0x510a},
- {"linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", 0x510b},
- {"linux/soundcard.h", "SNDCTL_MIDI_INFO", 0x510c},
- {"linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", 0x510d},
- {"linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", 0x510e},
- {"linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", 0x510f},
- {"linux/soundcard.h", "SNDCTL_SEQ_PANIC", 0x5111},
- {"linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", 0x5112},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETTIME", 0x5113},
- {"linux/soundcard.h", "SNDCTL_SYNTH_ID", 0x5114},
- {"linux/soundcard.h", "SNDCTL_SYNTH_CONTROL", 0x5115},
- {"linux/soundcard.h", "SNDCTL_SYNTH_REMOVESAMPLE", 0x5116},
- {"linux/random.h", "RNDGETENTCNT", 0x5200},
- {"linux/rfkill.h", "RFKILL_IOCTL_NOINPUT", 0x5201},
- {"linux/random.h", "RNDADDTOENTCNT", 0x5201},
- {"linux/random.h", "RNDGETPOOL", 0x5202},
- {"media/saa6588.h", "SAA6588_CMD_CLOSE", 0x5202},
- {"linux/random.h", "RNDADDENTROPY", 0x5203},
- {"media/saa6588.h", "SAA6588_CMD_READ", 0x5203},
- {"linux/random.h", "RNDZAPENTCNT", 0x5204},
- {"media/saa6588.h", "SAA6588_CMD_POLL", 0x5204},
- {"linux/random.h", "RNDCLEARPOOL", 0x5206},
- {"net/bluetooth/rfcomm.h", "RFCOMMCREATEDEV", 0x52c8},
- {"net/bluetooth/rfcomm.h", "RFCOMMRELEASEDEV", 0x52c9},
- {"net/bluetooth/rfcomm.h", "RFCOMMGETDEVLIST", 0x52d2},
- {"net/bluetooth/rfcomm.h", "RFCOMMGETDEVINFO", 0x52d3},
- {"net/bluetooth/rfcomm.h", "RFCOMMSTEALDLC", 0x52dc},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_PVERSION", 0x5300},
- {"linux/cdrom.h", "CDROMPAUSE", 0x5301},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_CLIENT_ID", 0x5301},
- {"linux/cdrom.h", "CDROMRESUME", 0x5302},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SYSTEM_INFO", 0x5302},
- {"linux/cdrom.h", "CDROMPLAYMSF", 0x5303},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_RUNNING_MODE", 0x5303},
- {"linux/cdrom.h", "CDROMPLAYTRKIND", 0x5304},
- {"linux/cdrom.h", "CDROMREADTOCHDR", 0x5305},
- {"linux/cdrom.h", "CDROMREADTOCENTRY", 0x5306},
- {"linux/cdrom.h", "CDROMSTOP", 0x5307},
- {"linux/cdrom.h", "CDROMSTART", 0x5308},
- {"linux/cdrom.h", "CDROMEJECT", 0x5309},
- {"linux/cdrom.h", "CDROMVOLCTRL", 0x530a},
- {"linux/cdrom.h", "CDROMSUBCHNL", 0x530b},
- {"linux/cdrom.h", "CDROMREADMODE2", 0x530c},
- {"linux/cdrom.h", "CDROMREADMODE1", 0x530d},
- {"linux/cdrom.h", "CDROMREADAUDIO", 0x530e},
- {"linux/cdrom.h", "CDROMEJECT_SW", 0x530f},
- {"linux/cdrom.h", "CDROMMULTISESSION", 0x5310},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_INFO", 0x5310},
- {"linux/cdrom.h", "CDROM_GET_MCN", 0x5311},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_INFO", 0x5311},
- {"linux/cdrom.h", "CDROMRESET", 0x5312},
- {"linux/cdrom.h", "CDROMVOLREAD", 0x5313},
- {"linux/cdrom.h", "CDROMREADRAW", 0x5314},
- {"linux/cdrom.h", "CDROMREADCOOKED", 0x5315},
- {"linux/cdrom.h", "CDROMSEEK", 0x5316},
- {"linux/cdrom.h", "CDROMPLAYBLK", 0x5317},
- {"linux/cdrom.h", "CDROMREADALL", 0x5318},
- {"linux/cdrom.h", "CDROMCLOSETRAY", 0x5319},
- {"linux/cdrom.h", "CDROMGETSPINDOWN", 0x531d},
- {"linux/cdrom.h", "CDROMSETSPINDOWN", 0x531e},
- {"linux/cdrom.h", "CDROM_SET_OPTIONS", 0x5320},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_PORT", 0x5320},
- {"linux/cdrom.h", "CDROM_CLEAR_OPTIONS", 0x5321},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_PORT", 0x5321},
- {"linux/cdrom.h", "CDROM_SELECT_SPEED", 0x5322},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_PORT_INFO", 0x5322},
- {"linux/cdrom.h", "CDROM_SELECT_DISC", 0x5323},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_PORT_INFO", 0x5323},
- {"linux/cdrom.h", "CDROM_MEDIA_CHANGED", 0x5325},
- {"linux/cdrom.h", "CDROM_DRIVE_STATUS", 0x5326},
- {"linux/cdrom.h", "CDROM_DISC_STATUS", 0x5327},
- {"linux/cdrom.h", "CDROM_CHANGER_NSLOTS", 0x5328},
- {"linux/cdrom.h", "CDROM_LOCKDOOR", 0x5329},
- {"linux/cdrom.h", "CDROM_DEBUG", 0x5330},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SUBSCRIBE_PORT", 0x5330},
- {"linux/cdrom.h", "CDROM_GET_CAPABILITY", 0x5331},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_UNSUBSCRIBE_PORT", 0x5331},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_QUEUE", 0x5332},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_QUEUE", 0x5333},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_INFO", 0x5334},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_INFO", 0x5335},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_NAMED_QUEUE", 0x5336},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS", 0x5340},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TEMPO", 0x5341},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TEMPO", 0x5342},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_OWNER", 0x5343},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_OWNER", 0x5344},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TIMER", 0x5345},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TIMER", 0x5346},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_CLIENT", 0x5349},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_CLIENT", 0x534a},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_POOL", 0x534b},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_POOL", 0x534c},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_REMOVE_EVENTS", 0x534e},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_SUBS", 0x534f},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_SUBSCRIPTION", 0x5350},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT", 0x5351},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_PORT", 0x5352},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_SYNC", 0x5353},
- {"sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_SYNC", 0x5354},
- {"scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORLOCK", 0x5380},
- {"scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORUNLOCK", 0x5381},
- {"linux/cdrom.h", "CDROMAUDIOBUFSIZ", 0x5382},
- {"scsi/scsi.h", "SCSI_IOCTL_GET_IDLUN", 0x5382},
- {"scsi/scsi.h", "SCSI_IOCTL_PROBE_HOST", 0x5385},
- {"scsi/scsi.h", "SCSI_IOCTL_GET_BUS_NUMBER", 0x5386},
- {"scsi/scsi.h", "SCSI_IOCTL_GET_PCI", 0x5387},
- {"linux/cdrom.h", "DVD_READ_STRUCT", 0x5390},
- {"linux/cdrom.h", "DVD_WRITE_STRUCT", 0x5391},
- {"linux/cdrom.h", "DVD_AUTH", 0x5392},
- {"linux/cdrom.h", "CDROM_SEND_PACKET", 0x5393},
- {"linux/cdrom.h", "CDROM_NEXT_WRITABLE", 0x5394},
- {"linux/cdrom.h", "CDROM_LAST_WRITTEN", 0x5395},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_PVERSION", 0x5400},
- {"linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", 0x5401},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_NEXT_DEVICE", 0x5401},
- {"asm-generic/ioctls.h", "TCGETS", 0x5401},
- {"linux/soundcard.h", "SNDCTL_TMR_START", 0x5402},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_TREAD", 0x5402},
- {"asm-generic/ioctls.h", "TCSETS", 0x5402},
- {"linux/soundcard.h", "SNDCTL_TMR_STOP", 0x5403},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_GINFO", 0x5403},
- {"asm-generic/ioctls.h", "TCSETSW", 0x5403},
- {"linux/soundcard.h", "SNDCTL_TMR_CONTINUE", 0x5404},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_GPARAMS", 0x5404},
- {"asm-generic/ioctls.h", "TCSETSF", 0x5404},
- {"linux/soundcard.h", "SNDCTL_TMR_TEMPO", 0x5405},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_GSTATUS", 0x5405},
- {"asm-generic/ioctls.h", "TCGETA", 0x5405},
- {"linux/soundcard.h", "SNDCTL_TMR_SOURCE", 0x5406},
- {"asm-generic/ioctls.h", "TCSETA", 0x5406},
- {"linux/soundcard.h", "SNDCTL_TMR_METRONOME", 0x5407},
- {"asm-generic/ioctls.h", "TCSETAW", 0x5407},
- {"linux/soundcard.h", "SNDCTL_TMR_SELECT", 0x5408},
- {"asm-generic/ioctls.h", "TCSETAF", 0x5408},
- {"asm-generic/ioctls.h", "TCSBRK", 0x5409},
- {"asm-generic/ioctls.h", "TCXONC", 0x540a},
- {"asm-generic/ioctls.h", "TCFLSH", 0x540b},
- {"asm-generic/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm-generic/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm-generic/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm-generic/ioctls.h", "TIOCGPGRP", 0x540f},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_SELECT", 0x5410},
- {"asm-generic/ioctls.h", "TIOCSPGRP", 0x5410},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_INFO", 0x5411},
- {"asm-generic/ioctls.h", "TIOCOUTQ", 0x5411},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_PARAMS", 0x5412},
- {"asm-generic/ioctls.h", "TIOCSTI", 0x5412},
- {"asm-generic/ioctls.h", "TIOCGWINSZ", 0x5413},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_STATUS", 0x5414},
- {"asm-generic/ioctls.h", "TIOCSWINSZ", 0x5414},
- {"asm-generic/ioctls.h", "TIOCMGET", 0x5415},
- {"asm-generic/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm-generic/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm-generic/ioctls.h", "TIOCMSET", 0x5418},
- {"asm-generic/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm-generic/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm-generic/ioctls.h", "FIONREAD", 0x541b},
- {"asm-generic/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm-generic/ioctls.h", "TIOCCONS", 0x541d},
- {"asm-generic/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm-generic/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm-generic/ioctls.h", "TIOCPKT", 0x5420},
- {"asm-generic/ioctls.h", "FIONBIO", 0x5421},
- {"asm-generic/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm-generic/ioctls.h", "TIOCSETD", 0x5423},
- {"asm-generic/ioctls.h", "TIOCGETD", 0x5424},
- {"asm-generic/ioctls.h", "TCSBRKP", 0x5425},
- {"asm-generic/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm-generic/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm-generic/ioctls.h", "TIOCGSID", 0x5429},
- {"asm-generic/ioctls.h", "TCGETS2", 0x542a},
- {"asm-generic/ioctls.h", "TCSETS2", 0x542b},
- {"asm-generic/ioctls.h", "TCSETSW2", 0x542c},
- {"asm-generic/ioctls.h", "TCSETSF2", 0x542d},
- {"asm-generic/ioctls.h", "TIOCGRS485", 0x542e},
- {"asm-generic/ioctls.h", "TIOCSRS485", 0x542f},
- {"asm-generic/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm-generic/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm-generic/ioctls.h", "TCGETX", 0x5432},
- {"asm-generic/ioctls.h", "TIOCGDEV", 0x5432},
- {"asm-generic/ioctls.h", "TCSETX", 0x5433},
- {"asm-generic/ioctls.h", "TCSETXF", 0x5434},
- {"asm-generic/ioctls.h", "TCSETXW", 0x5435},
- {"asm-generic/ioctls.h", "TIOCSIG", 0x5436},
- {"asm-generic/ioctls.h", "TIOCVHANGUP", 0x5437},
- {"asm-generic/ioctls.h", "TIOCGPKT", 0x5438},
- {"asm-generic/ioctls.h", "TIOCGPTLCK", 0x5439},
- {"asm-generic/ioctls.h", "TIOCGEXCL", 0x5440},
- {"asm-generic/ioctls.h", "FIONCLEX", 0x5450},
- {"asm-generic/ioctls.h", "FIOCLEX", 0x5451},
- {"asm-generic/ioctls.h", "FIOASYNC", 0x5452},
- {"asm-generic/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm-generic/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm-generic/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm-generic/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm-generic/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm-generic/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm-generic/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm-generic/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm-generic/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm-generic/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm-generic/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm-generic/ioctls.h", "FIOQSIZE", 0x5460},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_START", 0x54a0},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_STOP", 0x54a1},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_CONTINUE", 0x54a2},
- {"sound/asound.h", "SNDRV_TIMER_IOCTL_PAUSE", 0x54a3},
- {"linux/if_tun.h", "TUNSETNOCSUM", 0x54c8},
- {"linux/if_tun.h", "TUNSETDEBUG", 0x54c9},
- {"linux/if_tun.h", "TUNSETIFF", 0x54ca},
- {"linux/if_tun.h", "TUNSETPERSIST", 0x54cb},
- {"linux/if_tun.h", "TUNSETOWNER", 0x54cc},
- {"linux/if_tun.h", "TUNSETLINK", 0x54cd},
- {"linux/if_tun.h", "TUNSETGROUP", 0x54ce},
- {"linux/if_tun.h", "TUNGETFEATURES", 0x54cf},
- {"linux/if_tun.h", "TUNSETOFFLOAD", 0x54d0},
- {"linux/if_tun.h", "TUNSETTXFILTER", 0x54d1},
- {"linux/if_tun.h", "TUNGETIFF", 0x54d2},
- {"linux/if_tun.h", "TUNGETSNDBUF", 0x54d3},
- {"linux/if_tun.h", "TUNSETSNDBUF", 0x54d4},
- {"linux/if_tun.h", "TUNATTACHFILTER", 0x54d5},
- {"linux/if_tun.h", "TUNDETACHFILTER", 0x54d6},
- {"linux/if_tun.h", "TUNGETVNETHDRSZ", 0x54d7},
- {"linux/if_tun.h", "TUNSETVNETHDRSZ", 0x54d8},
- {"linux/if_tun.h", "TUNSETQUEUE", 0x54d9},
- {"linux/if_tun.h", "TUNSETIFINDEX", 0x54da},
- {"linux/if_tun.h", "TUNGETFILTER", 0x54db},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_PVERSION", 0x5500},
- {"linux/usbdevice_fs.h", "USBDEVFS_CONTROL", 0x5500},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_CARD_INFO", 0x5501},
- {"linux/uinput.h", "UI_DEV_CREATE", 0x5501},
- {"linux/uinput.h", "UI_DEV_DESTROY", 0x5502},
- {"linux/usbdevice_fs.h", "USBDEVFS_BULK", 0x5502},
- {"linux/usbdevice_fs.h", "USBDEVFS_RESETEP", 0x5503},
- {"linux/usbdevice_fs.h", "USBDEVFS_SETINTERFACE", 0x5504},
- {"linux/usbdevice_fs.h", "USBDEVFS_SETCONFIGURATION", 0x5505},
- {"linux/usbdevice_fs.h", "USBDEVFS_GETDRIVER", 0x5508},
- {"linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB", 0x550a},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCARDURB", 0x550b},
- {"linux/usbdevice_fs.h", "USBDEVFS_REAPURB", 0x550c},
- {"linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY", 0x550d},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL", 0x550e},
- {"linux/usbdevice_fs.h", "USBDEVFS_CLAIMINTERFACE", 0x550f},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LIST", 0x5510},
- {"linux/usbdevice_fs.h", "USBDEVFS_RELEASEINTERFACE", 0x5510},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_INFO", 0x5511},
- {"linux/usbdevice_fs.h", "USBDEVFS_CONNECTINFO", 0x5511},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_READ", 0x5512},
- {"linux/usbdevice_fs.h", "USBDEVFS_IOCTL", 0x5512},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_WRITE", 0x5513},
- {"linux/usbdevice_fs.h", "USBDEVFS_HUB_PORTINFO", 0x5513},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LOCK", 0x5514},
- {"linux/usbdevice_fs.h", "USBDEVFS_RESET", 0x5514},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_UNLOCK", 0x5515},
- {"linux/usbdevice_fs.h", "USBDEVFS_CLEAR_HALT", 0x5515},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS", 0x5516},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT", 0x5516},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_ADD", 0x5517},
- {"linux/usbdevice_fs.h", "USBDEVFS_CONNECT", 0x5517},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REPLACE", 0x5518},
- {"linux/usbdevice_fs.h", "USBDEVFS_CLAIM_PORT", 0x5518},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REMOVE", 0x5519},
- {"linux/usbdevice_fs.h", "USBDEVFS_RELEASE_PORT", 0x5519},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_TLV_READ", 0x551a},
- {"linux/usbdevice_fs.h", "USBDEVFS_GET_CAPABILITIES", 0x551a},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_TLV_WRITE", 0x551b},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT_CLAIM", 0x551b},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_TLV_COMMAND", 0x551c},
- {"linux/usbdevice_fs.h", "USBDEVFS_ALLOC_STREAMS", 0x551c},
- {"linux/usbdevice_fs.h", "USBDEVFS_FREE_STREAMS", 0x551d},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE", 0x5520},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_INFO", 0x5521},
- {"linux/uinput.h", "UI_GET_VERSION", 0x552d},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE", 0x5530},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_PCM_INFO", 0x5531},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE", 0x5532},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE", 0x5540},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_INFO", 0x5541},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE", 0x5542},
- {"linux/uinput.h", "UI_SET_EVBIT", 0x5564},
- {"linux/uinput.h", "UI_SET_KEYBIT", 0x5565},
- {"linux/uinput.h", "UI_SET_RELBIT", 0x5566},
- {"linux/uinput.h", "UI_SET_ABSBIT", 0x5567},
- {"linux/uinput.h", "UI_SET_MSCBIT", 0x5568},
- {"linux/uinput.h", "UI_SET_LEDBIT", 0x5569},
- {"linux/uinput.h", "UI_SET_SNDBIT", 0x556a},
- {"linux/uinput.h", "UI_SET_FFBIT", 0x556b},
- {"linux/uinput.h", "UI_SET_PHYS", 0x556c},
- {"linux/uinput.h", "UI_SET_SWBIT", 0x556d},
- {"linux/uinput.h", "UI_SET_PROPBIT", 0x556e},
- {"linux/uinput.h", "UI_BEGIN_FF_UPLOAD", 0x55c8},
- {"linux/uinput.h", "UI_END_FF_UPLOAD", 0x55c9},
- {"linux/uinput.h", "UI_BEGIN_FF_ERASE", 0x55ca},
- {"linux/uinput.h", "UI_END_FF_ERASE", 0x55cb},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_POWER", 0x55d0},
- {"sound/asound.h", "SNDRV_CTL_IOCTL_POWER_STATE", 0x55d1},
- {"linux/videodev2.h", "VIDIOC_QUERYCAP", 0x5600},
- {"linux/vt.h", "VT_OPENQRY", 0x5600},
- {"linux/videodev2.h", "VIDIOC_RESERVED", 0x5601},
- {"linux/vt.h", "VT_GETMODE", 0x5601},
- {"linux/videodev2.h", "VIDIOC_ENUM_FMT", 0x5602},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_MBUS_CODE", 0x5602},
- {"linux/vt.h", "VT_SETMODE", 0x5602},
- {"linux/vt.h", "VT_GETSTATE", 0x5603},
- {"linux/videodev2.h", "VIDIOC_G_FMT", 0x5604},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FMT", 0x5604},
- {"linux/vt.h", "VT_SENDSIG", 0x5604},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FMT", 0x5605},
- {"linux/videodev2.h", "VIDIOC_S_FMT", 0x5605},
- {"linux/vt.h", "VT_RELDISP", 0x5605},
- {"linux/vt.h", "VT_ACTIVATE", 0x5606},
- {"linux/vt.h", "VT_WAITACTIVE", 0x5607},
- {"linux/videodev2.h", "VIDIOC_REQBUFS", 0x5608},
- {"linux/vt.h", "VT_DISALLOCATE", 0x5608},
- {"linux/videodev2.h", "VIDIOC_QUERYBUF", 0x5609},
- {"linux/vt.h", "VT_RESIZE", 0x5609},
- {"linux/videodev2.h", "VIDIOC_G_FBUF", 0x560a},
- {"linux/vt.h", "VT_RESIZEX", 0x560a},
- {"linux/videodev2.h", "VIDIOC_S_FBUF", 0x560b},
- {"linux/vt.h", "VT_LOCKSWITCH", 0x560b},
- {"linux/vt.h", "VT_UNLOCKSWITCH", 0x560c},
- {"linux/vt.h", "VT_GETHIFONTMASK", 0x560d},
- {"linux/videodev2.h", "VIDIOC_OVERLAY", 0x560e},
- {"linux/vt.h", "VT_WAITEVENT", 0x560e},
- {"linux/videodev2.h", "VIDIOC_QBUF", 0x560f},
- {"linux/vt.h", "VT_SETACTIVATE", 0x560f},
- {"linux/videodev2.h", "VIDIOC_EXPBUF", 0x5610},
- {"linux/videodev2.h", "VIDIOC_DQBUF", 0x5611},
- {"linux/videodev2.h", "VIDIOC_STREAMON", 0x5612},
- {"linux/videodev2.h", "VIDIOC_STREAMOFF", 0x5613},
- {"linux/videodev2.h", "VIDIOC_G_PARM", 0x5615},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FRAME_INTERVAL", 0x5615},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FRAME_INTERVAL", 0x5616},
- {"linux/videodev2.h", "VIDIOC_S_PARM", 0x5616},
- {"linux/videodev2.h", "VIDIOC_G_STD", 0x5617},
- {"linux/videodev2.h", "VIDIOC_S_STD", 0x5618},
- {"linux/videodev2.h", "VIDIOC_ENUMSTD", 0x5619},
- {"linux/videodev2.h", "VIDIOC_ENUMINPUT", 0x561a},
- {"linux/videodev2.h", "VIDIOC_G_CTRL", 0x561b},
- {"linux/videodev2.h", "VIDIOC_S_CTRL", 0x561c},
- {"linux/videodev2.h", "VIDIOC_G_TUNER", 0x561d},
- {"linux/videodev2.h", "VIDIOC_S_TUNER", 0x561e},
- {"linux/videodev2.h", "VIDIOC_G_AUDIO", 0x5621},
- {"linux/videodev2.h", "VIDIOC_S_AUDIO", 0x5622},
- {"linux/videodev2.h", "VIDIOC_QUERYCTRL", 0x5624},
- {"linux/videodev2.h", "VIDIOC_QUERYMENU", 0x5625},
- {"linux/videodev2.h", "VIDIOC_G_INPUT", 0x5626},
- {"linux/videodev2.h", "VIDIOC_S_INPUT", 0x5627},
- {"linux/videodev2.h", "VIDIOC_G_EDID", 0x5628},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_EDID", 0x5628},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_EDID", 0x5629},
- {"linux/videodev2.h", "VIDIOC_S_EDID", 0x5629},
- {"linux/videodev2.h", "VIDIOC_G_OUTPUT", 0x562e},
- {"linux/videodev2.h", "VIDIOC_S_OUTPUT", 0x562f},
- {"linux/videodev2.h", "VIDIOC_ENUMOUTPUT", 0x5630},
- {"linux/videodev2.h", "VIDIOC_G_AUDOUT", 0x5631},
- {"linux/videodev2.h", "VIDIOC_S_AUDOUT", 0x5632},
- {"linux/videodev2.h", "VIDIOC_G_MODULATOR", 0x5636},
- {"linux/videodev2.h", "VIDIOC_S_MODULATOR", 0x5637},
- {"linux/videodev2.h", "VIDIOC_G_FREQUENCY", 0x5638},
- {"linux/videodev2.h", "VIDIOC_S_FREQUENCY", 0x5639},
- {"linux/videodev2.h", "VIDIOC_CROPCAP", 0x563a},
- {"linux/videodev2.h", "VIDIOC_G_CROP", 0x563b},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_CROP", 0x563b},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_CROP", 0x563c},
- {"linux/videodev2.h", "VIDIOC_S_CROP", 0x563c},
- {"linux/videodev2.h", "VIDIOC_G_JPEGCOMP", 0x563d},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_SELECTION", 0x563d},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_SELECTION", 0x563e},
- {"linux/videodev2.h", "VIDIOC_S_JPEGCOMP", 0x563e},
- {"linux/videodev2.h", "VIDIOC_QUERYSTD", 0x563f},
- {"linux/videodev2.h", "VIDIOC_TRY_FMT", 0x5640},
- {"linux/videodev2.h", "VIDIOC_ENUMAUDIO", 0x5641},
- {"linux/videodev2.h", "VIDIOC_ENUMAUDOUT", 0x5642},
- {"linux/videodev2.h", "VIDIOC_G_PRIORITY", 0x5643},
- {"linux/videodev2.h", "VIDIOC_S_PRIORITY", 0x5644},
- {"linux/videodev2.h", "VIDIOC_G_SLICED_VBI_CAP", 0x5645},
- {"linux/videodev2.h", "VIDIOC_LOG_STATUS", 0x5646},
- {"linux/videodev2.h", "VIDIOC_G_EXT_CTRLS", 0x5647},
- {"linux/videodev2.h", "VIDIOC_S_EXT_CTRLS", 0x5648},
- {"linux/videodev2.h", "VIDIOC_TRY_EXT_CTRLS", 0x5649},
- {"linux/videodev2.h", "VIDIOC_ENUM_FRAMESIZES", 0x564a},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_SIZE", 0x564a},
- {"linux/videodev2.h", "VIDIOC_ENUM_FRAMEINTERVALS", 0x564b},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL", 0x564b},
- {"linux/videodev2.h", "VIDIOC_G_ENC_INDEX", 0x564c},
- {"linux/videodev2.h", "VIDIOC_ENCODER_CMD", 0x564d},
- {"linux/videodev2.h", "VIDIOC_TRY_ENCODER_CMD", 0x564e},
- {"linux/videodev2.h", "VIDIOC_DBG_S_REGISTER", 0x564f},
- {"linux/videodev2.h", "VIDIOC_DBG_G_REGISTER", 0x5650},
- {"linux/videodev2.h", "VIDIOC_S_HW_FREQ_SEEK", 0x5652},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_DV_TIMINGS", 0x5657},
- {"linux/videodev2.h", "VIDIOC_S_DV_TIMINGS", 0x5657},
- {"linux/videodev2.h", "VIDIOC_G_DV_TIMINGS", 0x5658},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_DV_TIMINGS", 0x5658},
- {"linux/videodev2.h", "VIDIOC_DQEVENT", 0x5659},
- {"linux/videodev2.h", "VIDIOC_SUBSCRIBE_EVENT", 0x565a},
- {"linux/videodev2.h", "VIDIOC_UNSUBSCRIBE_EVENT", 0x565b},
- {"linux/videodev2.h", "VIDIOC_CREATE_BUFS", 0x565c},
- {"linux/videodev2.h", "VIDIOC_PREPARE_BUF", 0x565d},
- {"linux/videodev2.h", "VIDIOC_G_SELECTION", 0x565e},
- {"linux/videodev2.h", "VIDIOC_S_SELECTION", 0x565f},
- {"linux/videodev2.h", "VIDIOC_DECODER_CMD", 0x5660},
- {"linux/videodev2.h", "VIDIOC_TRY_DECODER_CMD", 0x5661},
- {"linux/videodev2.h", "VIDIOC_ENUM_DV_TIMINGS", 0x5662},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_DV_TIMINGS", 0x5662},
- {"linux/videodev2.h", "VIDIOC_QUERY_DV_TIMINGS", 0x5663},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_QUERY_DV_TIMINGS", 0x5663},
- {"linux/videodev2.h", "VIDIOC_DV_TIMINGS_CAP", 0x5664},
- {"linux/v4l2-subdev.h", "VIDIOC_SUBDEV_DV_TIMINGS_CAP", 0x5664},
- {"linux/videodev2.h", "VIDIOC_ENUM_FREQ_BANDS", 0x5665},
- {"linux/videodev2.h", "VIDIOC_DBG_G_CHIP_INFO", 0x5666},
- {"linux/videodev2.h", "VIDIOC_QUERY_EXT_CTRL", 0x5667},
- {"media/adv7842.h", "ADV7842_CMD_RAM_TEST", 0x56c0},
- {"linux/ivtvfb.h", "IVTVFB_IOC_DMA_FRAME", 0x56c0},
- {"linux/ivtv.h", "IVTV_IOC_DMA_FRAME", 0x56c0},
- {"media/si4713.h", "SI4713_IOC_MEASURE_RNL", 0x56c0},
- {"linux/ivtv.h", "IVTV_IOC_PASSTHROUGH_MODE", 0x56c1},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PVERSION", 0x5700},
- {"linux/watchdog.h", "WDIOC_GETSUPPORT", 0x5700},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_INFO", 0x5701},
- {"linux/watchdog.h", "WDIOC_GETSTATUS", 0x5701},
- {"linux/watchdog.h", "WDIOC_GETBOOTSTATUS", 0x5702},
- {"linux/watchdog.h", "WDIOC_GETTEMP", 0x5703},
- {"linux/watchdog.h", "WDIOC_SETOPTIONS", 0x5704},
- {"linux/watchdog.h", "WDIOC_KEEPALIVE", 0x5705},
- {"linux/watchdog.h", "WDIOC_SETTIMEOUT", 0x5706},
- {"linux/watchdog.h", "WDIOC_GETTIMEOUT", 0x5707},
- {"linux/watchdog.h", "WDIOC_SETPRETIMEOUT", 0x5708},
- {"linux/watchdog.h", "WDIOC_GETPRETIMEOUT", 0x5709},
- {"linux/watchdog.h", "WDIOC_GETTIMELEFT", 0x570a},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PARAMS", 0x5710},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_STATUS", 0x5720},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DROP", 0x5730},
- {"sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DRAIN", 0x5731},
- {"linux/pktcdvd.h", "PACKET_CTRL_CMD", 0x5801},
- {"linux/fs.h", "FIFREEZE", 0x5877},
- {"linux/fs.h", "FITHAW", 0x5878},
- {"linux/fs.h", "FITRIM", 0x5879},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_INDICATOR_PULSE", 0x5b01},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR", 0x5b02},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_OUT", 0x5b03},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_IN", 0x5b04},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_OUT_HALT", 0x5b06},
- {"linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_IN_HALT", 0x5b07},
- {"linux/sonet.h", "SONET_GETSTAT", 0x6110},
- {"linux/sonet.h", "SONET_GETSTATZ", 0x6111},
- {"linux/sonet.h", "SONET_SETDIAG", 0x6112},
- {"linux/sonet.h", "SONET_CLRDIAG", 0x6113},
- {"linux/sonet.h", "SONET_GETDIAG", 0x6114},
- {"linux/sonet.h", "SONET_SETFRAMING", 0x6115},
- {"linux/sonet.h", "SONET_GETFRAMING", 0x6116},
- {"linux/sonet.h", "SONET_GETFRSENSE", 0x6117},
- {"linux/atm_idt77105.h", "IDT77105_GETSTAT", 0x6132},
- {"linux/atm_idt77105.h", "IDT77105_GETSTATZ", 0x6133},
- {"linux/atmdev.h", "ATM_GETSTAT", 0x6150},
- {"linux/atmdev.h", "ATM_GETSTATZ", 0x6151},
- {"linux/atmdev.h", "ATM_GETLOOP", 0x6152},
- {"linux/atmdev.h", "ATM_SETLOOP", 0x6153},
- {"linux/atmdev.h", "ATM_QUERYLOOP", 0x6154},
- {"linux/atm_eni.h", "ENI_MEMDUMP", 0x6160},
- {"linux/atm_he.h", "HE_GET_REG", 0x6160},
- {"linux/atm_nicstar.h", "NS_GETPSTAT", 0x6161},
- {"linux/atm_zatm.h", "ZATM_GETPOOL", 0x6161},
- {"linux/atm_nicstar.h", "NS_SETBUFLEV", 0x6162},
- {"linux/atm_zatm.h", "ZATM_GETPOOLZ", 0x6162},
- {"linux/atm_nicstar.h", "NS_ADJBUFLEV", 0x6163},
- {"linux/atm_zatm.h", "ZATM_SETPOOL", 0x6163},
- {"linux/atm_eni.h", "ENI_SETMULT", 0x6167},
- {"linux/atm_tcp.h", "SIOCSIFATMTCP", 0x6180},
- {"linux/atmdev.h", "ATM_GETLINKRATE", 0x6181},
- {"linux/atmdev.h", "ATM_GETNAMES", 0x6183},
- {"linux/atmdev.h", "ATM_GETTYPE", 0x6184},
- {"linux/atmdev.h", "ATM_GETESI", 0x6185},
- {"linux/atmdev.h", "ATM_GETADDR", 0x6186},
- {"linux/atmdev.h", "ATM_RSTADDR", 0x6187},
- {"linux/atmdev.h", "ATM_ADDADDR", 0x6188},
- {"linux/atmdev.h", "ATM_DELADDR", 0x6189},
- {"linux/atmdev.h", "ATM_GETCIRANGE", 0x618a},
- {"linux/atmdev.h", "ATM_SETCIRANGE", 0x618b},
- {"linux/atmdev.h", "ATM_SETESI", 0x618c},
- {"linux/atmdev.h", "ATM_SETESIF", 0x618d},
- {"linux/atm_tcp.h", "ATMTCP_CREATE", 0x618e},
- {"linux/atmdev.h", "ATM_ADDLECSADDR", 0x618e},
- {"linux/atm_tcp.h", "ATMTCP_REMOVE", 0x618f},
- {"linux/atmdev.h", "ATM_DELLECSADDR", 0x618f},
- {"linux/atmdev.h", "ATM_GETLECSADDR", 0x6190},
- {"linux/atmbr2684.h", "BR2684_SETFILT", 0x6190},
- {"linux/atmlec.h", "ATMLEC_CTRL", 0x61d0},
- {"linux/atmlec.h", "ATMLEC_DATA", 0x61d1},
- {"linux/atmlec.h", "ATMLEC_MCAST", 0x61d2},
- {"linux/atmmpc.h", "ATMMPC_CTRL", 0x61d8},
- {"linux/atmmpc.h", "ATMMPC_DATA", 0x61d9},
- {"linux/atmclip.h", "SIOCMKCLIP", 0x61e0},
- {"linux/atmarp.h", "ATMARPD_CTRL", 0x61e1},
- {"linux/atmarp.h", "ATMARP_MKIP", 0x61e2},
- {"linux/atmarp.h", "ATMARP_SETENTRY", 0x61e3},
- {"linux/atmarp.h", "ATMARP_ENCAP", 0x61e5},
- {"linux/atmsvc.h", "ATMSIGD_CTRL", 0x61f0},
- {"linux/atmdev.h", "ATM_SETSC", 0x61f1},
- {"linux/atmdev.h", "ATM_SETBACKEND", 0x61f2},
- {"linux/atmdev.h", "ATM_NEWBACKENDIF", 0x61f3},
- {"linux/atmdev.h", "ATM_ADDPARTY", 0x61f4},
- {"linux/atmdev.h", "COMPAT_ATM_ADDPARTY", 0x61f4},
- {"linux/atmdev.h", "ATM_DROPPARTY", 0x61f5},
- {"media/bt819.h", "BT819_FIFO_RESET_LOW", 0x6200},
- {"media/bt819.h", "BT819_FIFO_RESET_HIGH", 0x6201},
- {"linux/cm4000_cs.h", "CM_IOCGSTATUS", 0x6300},
- {"linux/chio.h", "CHIOMOVE", 0x6301},
- {"linux/cm4000_cs.h", "CM_IOCGATR", 0x6301},
- {"linux/chio.h", "CHIOEXCHANGE", 0x6302},
- {"linux/cm4000_cs.h", "CM_IOCSPTS", 0x6302},
- {"linux/chio.h", "CHIOPOSITION", 0x6303},
- {"linux/cm4000_cs.h", "CM_IOCSRDR", 0x6303},
- {"linux/chio.h", "CHIOGPICKER", 0x6304},
- {"linux/cm4000_cs.h", "CM_IOCARDOFF", 0x6304},
- {"linux/chio.h", "CHIOSPICKER", 0x6305},
- {"linux/chio.h", "CHIOGPARAMS", 0x6306},
- {"linux/chio.h", "CHIOGSTATUS", 0x6308},
- {"linux/coda.h", "CIOC_KERNEL_VERSION", 0x630a},
- {"linux/chio.h", "CHIOGELEM", 0x6310},
- {"linux/chio.h", "CHIOINITELEM", 0x6311},
- {"linux/chio.h", "CHIOSVOLTAG", 0x6312},
- {"linux/chio.h", "CHIOGVPARAMS", 0x6313},
- {"linux/cm4000_cs.h", "CM_IOSDBGLVL", 0x63fa},
- {"media/v4l2-common.h", "TUNER_SET_CONFIG", 0x645c},
- {"media/v4l2-common.h", "VIDIOC_INT_RESET", 0x6466},
- {"media/exynos-fimc.h", "S5P_FIMC_TX_END_NOTIFY", 0x6500},
- {"linux/fs.h", "FS_IOC32_GETFLAGS", 0x6601},
- {"linux/fs.h", "FS_IOC_GETFLAGS", 0x6601},
- {"linux/fs.h", "FS_IOC32_SETFLAGS", 0x6602},
- {"linux/fs.h", "FS_IOC_SETFLAGS", 0x6602},
- {"linux/fs.h", "FS_IOC_FIEMAP", 0x660b},
- {"linux/usb/functionfs.h", "FUNCTIONFS_FIFO_STATUS", 0x6701},
- {"linux/usb/gadgetfs.h", "GADGETFS_FIFO_STATUS", 0x6701},
- {"linux/usb/functionfs.h", "FUNCTIONFS_FIFO_FLUSH", 0x6702},
- {"linux/usb/gadgetfs.h", "GADGETFS_FIFO_FLUSH", 0x6702},
- {"linux/usb/functionfs.h", "FUNCTIONFS_CLEAR_HALT", 0x6703},
- {"linux/usb/gadgetfs.h", "GADGETFS_CLEAR_HALT", 0x6703},
- {"linux/usb/g_printer.h", "GADGET_GET_PRINTER_STATUS", 0x6721},
- {"linux/usb/g_printer.h", "GADGET_SET_PRINTER_STATUS", 0x6722},
- {"linux/usb/functionfs.h", "FUNCTIONFS_INTERFACE_REVMAP", 0x6780},
- {"linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_REVMAP", 0x6781},
- {"linux/hpet.h", "HPET_IE_ON", 0x6801},
- {"linux/hpet.h", "HPET_IE_OFF", 0x6802},
- {"linux/hpet.h", "HPET_INFO", 0x6803},
- {"linux/hpet.h", "HPET_EPI", 0x6804},
- {"linux/hpet.h", "HPET_DPI", 0x6805},
- {"linux/hpet.h", "HPET_IRQFREQ", 0x6806},
- {"linux/i2o-dev.h", "I2OGETIOPS", 0x6900},
- {"media/lirc.h", "LIRC_GET_FEATURES", 0x6900},
- {"linux/i2o-dev.h", "I2OHRTGET", 0x6901},
- {"media/lirc.h", "LIRC_GET_SEND_MODE", 0x6901},
- {"linux/i2o-dev.h", "I2OLCTGET", 0x6902},
- {"media/lirc.h", "LIRC_GET_REC_MODE", 0x6902},
- {"linux/i2o-dev.h", "I2OPARMSET", 0x6903},
- {"media/lirc.h", "LIRC_GET_SEND_CARRIER", 0x6903},
- {"linux/i2o-dev.h", "I2OPARMGET", 0x6904},
- {"media/lirc.h", "LIRC_GET_REC_CARRIER", 0x6904},
- {"linux/i2o-dev.h", "I2OSWDL", 0x6905},
- {"media/lirc.h", "LIRC_GET_SEND_DUTY_CYCLE", 0x6905},
- {"linux/i2o-dev.h", "I2OSWUL", 0x6906},
- {"media/lirc.h", "LIRC_GET_REC_DUTY_CYCLE", 0x6906},
- {"linux/i2o-dev.h", "I2OSWDEL", 0x6907},
- {"media/lirc.h", "LIRC_GET_REC_RESOLUTION", 0x6907},
- {"linux/i2o-dev.h", "I2OVALIDATE", 0x6908},
- {"media/lirc.h", "LIRC_GET_MIN_TIMEOUT", 0x6908},
- {"linux/i2o-dev.h", "I2OHTML", 0x6909},
- {"media/lirc.h", "LIRC_GET_MAX_TIMEOUT", 0x6909},
- {"linux/i2o-dev.h", "I2OEVTREG", 0x690a},
- {"media/lirc.h", "LIRC_GET_MIN_FILTER_PULSE", 0x690a},
- {"linux/i2o-dev.h", "I2OEVTGET", 0x690b},
- {"linux/ipmi.h", "IPMICTL_RECEIVE_MSG_TRUNC", 0x690b},
- {"media/lirc.h", "LIRC_GET_MAX_FILTER_PULSE", 0x690b},
- {"linux/i2o-dev.h", "I2OPASSTHRU", 0x690c},
- {"linux/ipmi.h", "IPMICTL_RECEIVE_MSG", 0x690c},
- {"media/lirc.h", "LIRC_GET_MIN_FILTER_SPACE", 0x690c},
- {"linux/ipmi.h", "IPMICTL_SEND_COMMAND", 0x690d},
- {"media/lirc.h", "LIRC_GET_MAX_FILTER_SPACE", 0x690d},
- {"linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD", 0x690e},
- {"linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD", 0x690f},
- {"media/lirc.h", "LIRC_GET_LENGTH", 0x690f},
- {"linux/ipmi.h", "IPMICTL_SET_GETS_EVENTS_CMD", 0x6910},
- {"linux/ipmi.h", "IPMICTL_SET_MY_ADDRESS_CMD", 0x6911},
- {"media/lirc.h", "LIRC_SET_SEND_MODE", 0x6911},
- {"linux/ipmi.h", "IPMICTL_GET_MY_ADDRESS_CMD", 0x6912},
- {"media/lirc.h", "LIRC_SET_REC_MODE", 0x6912},
- {"linux/ipmi.h", "IPMICTL_SET_MY_LUN_CMD", 0x6913},
- {"media/lirc.h", "LIRC_SET_SEND_CARRIER", 0x6913},
- {"linux/ipmi.h", "IPMICTL_GET_MY_LUN_CMD", 0x6914},
- {"media/lirc.h", "LIRC_SET_REC_CARRIER", 0x6914},
- {"linux/ipmi.h", "IPMICTL_SEND_COMMAND_SETTIME", 0x6915},
- {"media/lirc.h", "LIRC_SET_SEND_DUTY_CYCLE", 0x6915},
- {"linux/ipmi.h", "IPMICTL_SET_TIMING_PARMS_CMD", 0x6916},
- {"media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE", 0x6916},
- {"linux/ipmi.h", "IPMICTL_GET_TIMING_PARMS_CMD", 0x6917},
- {"media/lirc.h", "LIRC_SET_TRANSMITTER_MASK", 0x6917},
- {"media/lirc.h", "LIRC_SET_REC_TIMEOUT", 0x6918},
- {"media/lirc.h", "LIRC_SET_REC_TIMEOUT_REPORTS", 0x6919},
- {"media/lirc.h", "LIRC_SET_REC_FILTER_PULSE", 0x691a},
- {"media/lirc.h", "LIRC_SET_REC_FILTER_SPACE", 0x691b},
- {"linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD_CHANS", 0x691c},
- {"media/lirc.h", "LIRC_SET_REC_FILTER", 0x691c},
- {"linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD_CHANS", 0x691d},
- {"media/lirc.h", "LIRC_SET_MEASURE_CARRIER_MODE", 0x691d},
- {"linux/ipmi.h", "IPMICTL_GET_MAINTENANCE_MODE_CMD", 0x691e},
- {"media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE_RANGE", 0x691e},
- {"linux/ipmi.h", "IPMICTL_SET_MAINTENANCE_MODE_CMD", 0x691f},
- {"media/lirc.h", "LIRC_SET_REC_CARRIER_RANGE", 0x691f},
- {"media/lirc.h", "LIRC_NOTIFY_DECODE", 0x6920},
- {"media/lirc.h", "LIRC_SETUP_START", 0x6921},
- {"media/lirc.h", "LIRC_SETUP_END", 0x6922},
- {"media/lirc.h", "LIRC_SET_WIDEBAND_RECEIVER", 0x6923},
- {"linux/i8k.h", "I8K_BIOS_VERSION", 0x6980},
- {"linux/i8k.h", "I8K_MACHINE_ID", 0x6981},
- {"linux/i8k.h", "I8K_POWER_STATUS", 0x6982},
- {"linux/i8k.h", "I8K_FN_STATUS", 0x6983},
- {"linux/i8k.h", "I8K_GET_TEMP", 0x6984},
- {"linux/i8k.h", "I8K_GET_SPEED", 0x6985},
- {"linux/i8k.h", "I8K_GET_FAN", 0x6986},
- {"linux/i8k.h", "I8K_SET_FAN", 0x6987},
- {"linux/joystick.h", "JSIOCGVERSION", 0x6a01},
- {"linux/joystick.h", "JSIOCGAXES", 0x6a11},
- {"linux/joystick.h", "JSIOCGBUTTONS", 0x6a12},
- {"linux/joystick.h", "JSIOCSCORR", 0x6a21},
- {"linux/joystick.h", "JSIOCGCORR", 0x6a22},
- {"linux/joystick.h", "JSIOCSAXMAP", 0x6a31},
- {"linux/joystick.h", "JSIOCGAXMAP", 0x6a32},
- {"linux/joystick.h", "JSIOCSBTNMAP", 0x6a33},
- {"linux/joystick.h", "JSIOCGBTNMAP", 0x6a34},
- {"video/kyro.h", "KYRO_IOCTL_OVERLAY_CREATE", 0x6b00},
- {"video/kyro.h", "KYRO_IOCTL_OVERLAY_VIEWPORT_SET", 0x6b01},
- {"linux/spi/spidev.h", "SPI_IOC_RD_MODE", 0x6b01},
- {"linux/spi/spidev.h", "SPI_IOC_WR_MODE", 0x6b01},
- {"video/kyro.h", "KYRO_IOCTL_SET_VIDEO_MODE", 0x6b02},
- {"linux/spi/spidev.h", "SPI_IOC_RD_LSB_FIRST", 0x6b02},
- {"linux/spi/spidev.h", "SPI_IOC_WR_LSB_FIRST", 0x6b02},
- {"video/kyro.h", "KYRO_IOCTL_UVSTRIDE", 0x6b03},
- {"linux/spi/spidev.h", "SPI_IOC_RD_BITS_PER_WORD", 0x6b03},
- {"linux/spi/spidev.h", "SPI_IOC_WR_BITS_PER_WORD", 0x6b03},
- {"video/kyro.h", "KYRO_IOCTL_OVERLAY_OFFSET", 0x6b04},
- {"linux/spi/spidev.h", "SPI_IOC_RD_MAX_SPEED_HZ", 0x6b04},
- {"linux/spi/spidev.h", "SPI_IOC_WR_MAX_SPEED_HZ", 0x6b04},
- {"video/kyro.h", "KYRO_IOCTL_STRIDE", 0x6b05},
- {"linux/spi/spidev.h", "SPI_IOC_RD_MODE32", 0x6b05},
- {"linux/spi/spidev.h", "SPI_IOC_WR_MODE32", 0x6b05},
- {"linux/udf_fs_i.h", "UDF_GETEASIZE", 0x6c40},
- {"linux/udf_fs_i.h", "UDF_GETEABLOCK", 0x6c41},
- {"linux/udf_fs_i.h", "UDF_GETVOLIDENT", 0x6c42},
- {"linux/udf_fs_i.h", "UDF_RELOCATE_BLOCKS", 0x6c43},
- {"linux/synclink.h", "MGSL_IOCSPARAMS", 0x6d00},
- {"linux/mmtimer.h", "MMTIMER_GETOFFSET", 0x6d00},
- {"linux/soundcard.h", "SNDCTL_MIDI_PRETIME", 0x6d00},
- {"linux/synclink.h", "MGSL_IOCGPARAMS", 0x6d01},
- {"linux/mmtimer.h", "MMTIMER_GETRES", 0x6d01},
- {"linux/mtio.h", "MTIOCTOP", 0x6d01},
- {"linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", 0x6d01},
- {"linux/synclink.h", "MGSL_IOCSTXIDLE", 0x6d02},
- {"linux/mmtimer.h", "MMTIMER_GETFREQ", 0x6d02},
- {"linux/mtio.h", "MTIOCGET", 0x6d02},
- {"linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", 0x6d02},
- {"linux/synclink.h", "MGSL_IOCGTXIDLE", 0x6d03},
- {"linux/mtio.h", "MTIOCPOS", 0x6d03},
- {"linux/synclink.h", "MGSL_IOCTXENABLE", 0x6d04},
- {"linux/mmtimer.h", "MMTIMER_GETBITS", 0x6d04},
- {"linux/synclink.h", "MGSL_IOCRXENABLE", 0x6d05},
- {"linux/synclink.h", "MGSL_IOCTXABORT", 0x6d06},
- {"linux/mmtimer.h", "MMTIMER_MMAPAVAIL", 0x6d06},
- {"linux/synclink.h", "MGSL_IOCGSTATS", 0x6d07},
- {"linux/synclink.h", "MGSL_IOCWAITEVENT", 0x6d08},
- {"linux/synclink.h", "MGSL_IOCLOOPTXDONE", 0x6d09},
- {"linux/mmtimer.h", "MMTIMER_GETCOUNTER", 0x6d09},
- {"linux/synclink.h", "MGSL_IOCSIF", 0x6d0a},
- {"linux/synclink.h", "MGSL_IOCGIF", 0x6d0b},
- {"linux/synclink.h", "MGSL_IOCCLRMODCOUNT", 0x6d0f},
- {"linux/synclink.h", "MGSL_IOCSGPIO", 0x6d10},
- {"linux/synclink.h", "MGSL_IOCGGPIO", 0x6d11},
- {"linux/synclink.h", "MGSL_IOCWAITGPIO", 0x6d12},
- {"linux/synclink.h", "MGSL_IOCSXSYNC", 0x6d13},
- {"linux/synclink.h", "MGSL_IOCGXSYNC", 0x6d14},
- {"linux/synclink.h", "MGSL_IOCSXCTRL", 0x6d15},
- {"linux/synclink.h", "MGSL_IOCGXCTRL", 0x6d16},
- {"linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", 0x6e01},
- {"linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", 0x6e02},
- {"linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", 0x6e03},
- {"linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", 0x6e04},
- {"linux/ncp_fs.h", "NCP_IOC_SIGN_INIT", 0x6e05},
- {"linux/ncp_fs.h", "NCP_IOC_SET_SIGN_WANTED", 0x6e06},
- {"linux/ncp_fs.h", "NCP_IOC_SIGN_WANTED", 0x6e06},
- {"linux/ncp_fs.h", "NCP_IOC_LOCKUNLOCK", 0x6e07},
- {"linux/ncp_fs.h", "NCP_IOC_GETROOT", 0x6e08},
- {"linux/ncp_fs.h", "NCP_IOC_SETROOT", 0x6e08},
- {"linux/ncp_fs.h", "NCP_IOC_GETOBJECTNAME", 0x6e09},
- {"linux/ncp_fs.h", "NCP_IOC_SETOBJECTNAME", 0x6e09},
- {"linux/ncp_fs.h", "NCP_IOC_GETPRIVATEDATA", 0x6e0a},
- {"linux/ncp_fs.h", "NCP_IOC_SETPRIVATEDATA", 0x6e0a},
- {"linux/ncp_fs.h", "NCP_IOC_GETCHARSETS", 0x6e0b},
- {"linux/ncp_fs.h", "NCP_IOC_SETCHARSETS", 0x6e0b},
- {"linux/ncp_fs.h", "NCP_IOC_GETDENTRYTTL", 0x6e0c},
- {"linux/ncp_fs.h", "NCP_IOC_SETDENTRYTTL", 0x6e0c},
- {"linux/matroxfb.h", "MATROXFB_GET_OUTPUT_CONNECTION", 0x6ef8},
- {"linux/matroxfb.h", "MATROXFB_SET_OUTPUT_CONNECTION", 0x6ef8},
- {"video/sisfb.h", "SISFB_GET_INFO_OLD", 0x6ef8},
- {"linux/matroxfb.h", "MATROXFB_GET_AVAILABLE_OUTPUTS", 0x6ef9},
- {"video/sisfb.h", "SISFB_GET_VBRSTATUS_OLD", 0x6ef9},
- {"linux/matroxfb.h", "MATROXFB_GET_OUTPUT_MODE", 0x6efa},
- {"linux/matroxfb.h", "MATROXFB_SET_OUTPUT_MODE", 0x6efa},
- {"video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE_OLD", 0x6efa},
- {"video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE_OLD", 0x6efa},
- {"linux/matroxfb.h", "MATROXFB_GET_ALL_OUTPUTS", 0x6efb},
- {"mtd/ubi-user.h", "UBI_IOCMKVOL", 0x6f00},
- {"linux/dvb/audio.h", "AUDIO_STOP", 0x6f01},
- {"mtd/ubi-user.h", "UBI_IOCRMVOL", 0x6f01},
- {"linux/dvb/audio.h", "AUDIO_PLAY", 0x6f02},
- {"mtd/ubi-user.h", "UBI_IOCRSVOL", 0x6f02},
- {"linux/dvb/audio.h", "AUDIO_PAUSE", 0x6f03},
- {"mtd/ubi-user.h", "UBI_IOCRNVOL", 0x6f03},
- {"linux/dvb/audio.h", "AUDIO_CONTINUE", 0x6f04},
- {"linux/dvb/audio.h", "AUDIO_SELECT_SOURCE", 0x6f05},
- {"linux/dvb/audio.h", "AUDIO_SET_MUTE", 0x6f06},
- {"linux/dvb/audio.h", "AUDIO_SET_AV_SYNC", 0x6f07},
- {"linux/dvb/audio.h", "AUDIO_SET_BYPASS_MODE", 0x6f08},
- {"linux/dvb/audio.h", "AUDIO_CHANNEL_SELECT", 0x6f09},
- {"linux/dvb/audio.h", "AUDIO_GET_STATUS", 0x6f0a},
- {"linux/dvb/audio.h", "AUDIO_GET_CAPABILITIES", 0x6f0b},
- {"linux/dvb/audio.h", "AUDIO_CLEAR_BUFFER", 0x6f0c},
- {"linux/dvb/audio.h", "AUDIO_SET_ID", 0x6f0d},
- {"linux/dvb/audio.h", "AUDIO_SET_MIXER", 0x6f0e},
- {"linux/dvb/audio.h", "AUDIO_SET_STREAMTYPE", 0x6f0f},
- {"linux/dvb/audio.h", "AUDIO_SET_EXT_ID", 0x6f10},
- {"linux/dvb/audio.h", "AUDIO_SET_ATTRIBUTES", 0x6f11},
- {"linux/dvb/audio.h", "AUDIO_SET_KARAOKE", 0x6f12},
- {"linux/dvb/audio.h", "AUDIO_GET_PTS", 0x6f13},
- {"linux/dvb/audio.h", "AUDIO_BILINGUAL_CHANNEL_SELECT", 0x6f14},
- {"linux/dvb/video.h", "VIDEO_STOP", 0x6f15},
- {"linux/dvb/video.h", "VIDEO_PLAY", 0x6f16},
- {"linux/dvb/video.h", "VIDEO_FREEZE", 0x6f17},
- {"linux/dvb/video.h", "VIDEO_CONTINUE", 0x6f18},
- {"linux/dvb/video.h", "VIDEO_SELECT_SOURCE", 0x6f19},
- {"linux/dvb/video.h", "VIDEO_SET_BLANK", 0x6f1a},
- {"linux/dvb/video.h", "VIDEO_GET_STATUS", 0x6f1b},
- {"linux/dvb/video.h", "VIDEO_GET_EVENT", 0x6f1c},
- {"linux/dvb/video.h", "VIDEO_SET_DISPLAY_FORMAT", 0x6f1d},
- {"linux/dvb/video.h", "VIDEO_STILLPICTURE", 0x6f1e},
- {"linux/dvb/video.h", "VIDEO_FAST_FORWARD", 0x6f1f},
- {"linux/dvb/video.h", "VIDEO_SLOWMOTION", 0x6f20},
- {"linux/dvb/video.h", "VIDEO_GET_CAPABILITIES", 0x6f21},
- {"linux/dvb/video.h", "VIDEO_CLEAR_BUFFER", 0x6f22},
- {"linux/dvb/video.h", "VIDEO_SET_ID", 0x6f23},
- {"linux/dvb/video.h", "VIDEO_SET_STREAMTYPE", 0x6f24},
- {"linux/dvb/video.h", "VIDEO_SET_FORMAT", 0x6f25},
- {"linux/dvb/video.h", "VIDEO_SET_SYSTEM", 0x6f26},
- {"linux/dvb/video.h", "VIDEO_SET_HIGHLIGHT", 0x6f27},
- {"linux/dvb/dmx.h", "DMX_START", 0x6f29},
- {"linux/dvb/dmx.h", "DMX_STOP", 0x6f2a},
- {"linux/dvb/dmx.h", "DMX_SET_FILTER", 0x6f2b},
- {"linux/dvb/dmx.h", "DMX_SET_PES_FILTER", 0x6f2c},
- {"linux/dvb/dmx.h", "DMX_SET_BUFFER_SIZE", 0x6f2d},
- {"linux/dvb/dmx.h", "DMX_GET_PES_PIDS", 0x6f2f},
- {"linux/dvb/dmx.h", "DMX_GET_CAPS", 0x6f30},
- {"linux/dvb/dmx.h", "DMX_SET_SOURCE", 0x6f31},
- {"linux/dvb/dmx.h", "DMX_GET_STC", 0x6f32},
- {"linux/dvb/video.h", "VIDEO_SET_SPU", 0x6f32},
- {"linux/dvb/dmx.h", "DMX_ADD_PID", 0x6f33},
- {"linux/dvb/video.h", "VIDEO_SET_SPU_PALETTE", 0x6f33},
- {"linux/dvb/dmx.h", "DMX_REMOVE_PID", 0x6f34},
- {"linux/dvb/net.h", "NET_ADD_IF", 0x6f34},
- {"linux/dvb/video.h", "VIDEO_GET_NAVI", 0x6f34},
- {"linux/dvb/net.h", "NET_REMOVE_IF", 0x6f35},
- {"linux/dvb/video.h", "VIDEO_SET_ATTRIBUTES", 0x6f35},
- {"linux/dvb/net.h", "NET_GET_IF", 0x6f36},
- {"linux/dvb/video.h", "VIDEO_GET_SIZE", 0x6f37},
- {"linux/dvb/video.h", "VIDEO_GET_FRAME_RATE", 0x6f38},
- {"linux/dvb/video.h", "VIDEO_GET_PTS", 0x6f39},
- {"linux/dvb/video.h", "VIDEO_GET_FRAME_COUNT", 0x6f3a},
- {"linux/dvb/video.h", "VIDEO_COMMAND", 0x6f3b},
- {"linux/dvb/video.h", "VIDEO_TRY_COMMAND", 0x6f3c},
- {"linux/dvb/frontend.h", "FE_GET_INFO", 0x6f3d},
- {"linux/dvb/frontend.h", "FE_DISEQC_RESET_OVERLOAD", 0x6f3e},
- {"linux/dvb/frontend.h", "FE_DISEQC_SEND_MASTER_CMD", 0x6f3f},
- {"linux/dvb/frontend.h", "FE_DISEQC_RECV_SLAVE_REPLY", 0x6f40},
- {"mtd/ubi-user.h", "UBI_IOCATT", 0x6f40},
- {"linux/dvb/frontend.h", "FE_DISEQC_SEND_BURST", 0x6f41},
- {"mtd/ubi-user.h", "UBI_IOCDET", 0x6f41},
- {"linux/dvb/frontend.h", "FE_SET_TONE", 0x6f42},
- {"linux/dvb/frontend.h", "FE_SET_VOLTAGE", 0x6f43},
- {"linux/dvb/frontend.h", "FE_ENABLE_HIGH_LNB_VOLTAGE", 0x6f44},
- {"linux/dvb/frontend.h", "FE_READ_STATUS", 0x6f45},
- {"linux/dvb/frontend.h", "FE_READ_BER", 0x6f46},
- {"linux/dvb/frontend.h", "FE_READ_SIGNAL_STRENGTH", 0x6f47},
- {"linux/dvb/frontend.h", "FE_READ_SNR", 0x6f48},
- {"linux/dvb/frontend.h", "FE_READ_UNCORRECTED_BLOCKS", 0x6f49},
- {"linux/dvb/frontend.h", "FE_SET_FRONTEND", 0x6f4c},
- {"linux/dvb/frontend.h", "FE_GET_FRONTEND", 0x6f4d},
- {"linux/dvb/frontend.h", "FE_GET_EVENT", 0x6f4e},
- {"linux/dvb/frontend.h", "FE_DISHNETWORK_SEND_LEGACY_CMD", 0x6f50},
- {"linux/dvb/frontend.h", "FE_SET_FRONTEND_TUNE_MODE", 0x6f51},
- {"linux/dvb/frontend.h", "FE_SET_PROPERTY", 0x6f52},
- {"linux/dvb/frontend.h", "FE_GET_PROPERTY", 0x6f53},
- {"linux/dvb/ca.h", "CA_RESET", 0x6f80},
- {"linux/dvb/ca.h", "CA_GET_CAP", 0x6f81},
- {"linux/dvb/ca.h", "CA_GET_SLOT_INFO", 0x6f82},
- {"linux/dvb/ca.h", "CA_GET_DESCR_INFO", 0x6f83},
- {"linux/dvb/ca.h", "CA_GET_MSG", 0x6f84},
- {"linux/dvb/ca.h", "CA_SEND_MSG", 0x6f85},
- {"linux/dvb/ca.h", "CA_SET_DESCR", 0x6f86},
- {"linux/dvb/ca.h", "CA_SET_PID", 0x6f87},
- {"linux/dvb/osd.h", "OSD_SEND_CMD", 0x6fa0},
- {"linux/dvb/osd.h", "OSD_GET_CAPABILITY", 0x6fa1},
- {"linux/phantom.h", "PHN_GET_REG", 0x7000},
- {"linux/phantom.h", "PHN_SET_REG", 0x7001},
- {"linux/rtc.h", "RTC_AIE_ON", 0x7001},
- {"linux/phantom.h", "PHN_GET_REGS", 0x7002},
- {"linux/rtc.h", "RTC_AIE_OFF", 0x7002},
- {"linux/phantom.h", "PHN_SET_REGS", 0x7003},
- {"linux/rtc.h", "RTC_UIE_ON", 0x7003},
- {"linux/phantom.h", "PHN_NOT_OH", 0x7004},
- {"linux/rtc.h", "RTC_UIE_OFF", 0x7004},
- {"linux/phantom.h", "PHN_GETREG", 0x7005},
- {"linux/rtc.h", "RTC_PIE_ON", 0x7005},
- {"linux/phantom.h", "PHN_SETREG", 0x7006},
- {"linux/rtc.h", "RTC_PIE_OFF", 0x7006},
- {"linux/phantom.h", "PHN_GETREGS", 0x7007},
- {"linux/rtc.h", "RTC_ALM_SET", 0x7007},
- {"linux/phantom.h", "PHN_SETREGS", 0x7008},
- {"linux/rtc.h", "RTC_ALM_READ", 0x7008},
- {"linux/rtc.h", "RTC_RD_TIME", 0x7009},
- {"linux/rtc.h", "RTC_SET_TIME", 0x700a},
- {"linux/rtc.h", "RTC_IRQP_READ", 0x700b},
- {"linux/rtc.h", "RTC_IRQP_SET", 0x700c},
- {"linux/rtc.h", "RTC_EPOCH_READ", 0x700d},
- {"linux/rtc.h", "RTC_EPOCH_SET", 0x700e},
- {"linux/rtc.h", "RTC_WIE_ON", 0x700f},
- {"linux/rtc.h", "RTC_WKALM_SET", 0x700f},
- {"linux/rtc.h", "RTC_WIE_OFF", 0x7010},
- {"linux/rtc.h", "RTC_WKALM_RD", 0x7010},
- {"linux/rtc.h", "RTC_PLL_GET", 0x7011},
- {"linux/rtc.h", "RTC_PLL_SET", 0x7012},
- {"linux/rtc.h", "RTC_VL_READ", 0x7013},
- {"linux/rtc.h", "RTC_VL_CLR", 0x7014},
- {"linux/nvram.h", "NVRAM_INIT", 0x7040},
- {"linux/nvram.h", "NVRAM_SETCKS", 0x7041},
- {"linux/ppdev.h", "PPSETMODE", 0x7080},
- {"linux/ppdev.h", "PPRSTATUS", 0x7081},
- {"linux/ppdev.h", "PPRCONTROL", 0x7083},
- {"linux/ppdev.h", "PPWCONTROL", 0x7084},
- {"linux/ppdev.h", "PPRDATA", 0x7085},
- {"linux/ppdev.h", "PPWDATA", 0x7086},
- {"linux/ppdev.h", "PPCLAIM", 0x708b},
- {"linux/ppdev.h", "PPRELEASE", 0x708c},
- {"linux/ppdev.h", "PPYIELD", 0x708d},
- {"linux/ppdev.h", "PPFCONTROL", 0x708e},
- {"linux/ppdev.h", "PPEXCL", 0x708f},
- {"linux/ppdev.h", "PPDATADIR", 0x7090},
- {"linux/ppdev.h", "PPNEGOT", 0x7091},
- {"linux/ppdev.h", "PPWCTLONIRQ", 0x7092},
- {"linux/ppdev.h", "PPCLRIRQ", 0x7093},
- {"linux/ppdev.h", "PPSETPHASE", 0x7094},
- {"linux/ppdev.h", "PPGETTIME", 0x7095},
- {"linux/ppdev.h", "PPSETTIME", 0x7096},
- {"linux/ppdev.h", "PPGETMODES", 0x7097},
- {"linux/ppdev.h", "PPGETMODE", 0x7098},
- {"linux/ppdev.h", "PPGETPHASE", 0x7099},
- {"linux/ppdev.h", "PPGETFLAGS", 0x709a},
- {"linux/ppdev.h", "PPSETFLAGS", 0x709b},
- {"linux/pps.h", "PPS_GETPARAMS", 0x70a1},
- {"linux/pps.h", "PPS_SETPARAMS", 0x70a2},
- {"linux/pps.h", "PPS_GETCAP", 0x70a3},
- {"linux/pps.h", "PPS_FETCH", 0x70a4},
- {"linux/pps.h", "PPS_KC_BIND", 0x70a5},
- {"linux/serio.h", "SPIOCSTYPE", 0x7101},
- {"linux/telephony.h", "PHONE_CAPABILITIES", 0x7180},
- {"linux/telephony.h", "PHONE_CAPABILITIES_LIST", 0x7181},
- {"linux/telephony.h", "PHONE_CAPABILITIES_CHECK", 0x7182},
- {"linux/telephony.h", "PHONE_RING", 0x7183},
- {"linux/telephony.h", "PHONE_HOOKSTATE", 0x7184},
- {"linux/telephony.h", "PHONE_MAXRINGS", 0x7185},
- {"linux/telephony.h", "PHONE_RING_CADENCE", 0x7186},
- {"linux/telephony.h", "OLD_PHONE_RING_START", 0x7187},
- {"linux/telephony.h", "PHONE_RING_START", 0x7187},
- {"linux/telephony.h", "PHONE_RING_STOP", 0x7188},
- {"linux/telephony.h", "PHONE_REC_CODEC", 0x7189},
- {"linux/telephony.h", "PHONE_REC_START", 0x718a},
- {"linux/telephony.h", "PHONE_REC_STOP", 0x718b},
- {"linux/telephony.h", "PHONE_REC_DEPTH", 0x718c},
- {"linux/telephony.h", "PHONE_FRAME", 0x718d},
- {"linux/telephony.h", "PHONE_REC_VOLUME", 0x718e},
- {"linux/telephony.h", "PHONE_REC_LEVEL", 0x718f},
- {"linux/telephony.h", "PHONE_PLAY_CODEC", 0x7190},
- {"linux/telephony.h", "PHONE_PLAY_START", 0x7191},
- {"linux/telephony.h", "PHONE_PLAY_STOP", 0x7192},
- {"linux/telephony.h", "PHONE_PLAY_DEPTH", 0x7193},
- {"linux/telephony.h", "PHONE_PLAY_VOLUME", 0x7194},
- {"linux/telephony.h", "PHONE_PLAY_LEVEL", 0x7195},
- {"linux/telephony.h", "PHONE_DTMF_READY", 0x7196},
- {"linux/telephony.h", "PHONE_GET_DTMF", 0x7197},
- {"linux/telephony.h", "PHONE_GET_DTMF_ASCII", 0x7198},
- {"linux/telephony.h", "PHONE_DTMF_OOB", 0x7199},
- {"linux/telephony.h", "PHONE_EXCEPTION", 0x719a},
- {"linux/telephony.h", "PHONE_PLAY_TONE", 0x719b},
- {"linux/telephony.h", "PHONE_SET_TONE_ON_TIME", 0x719c},
- {"linux/telephony.h", "PHONE_SET_TONE_OFF_TIME", 0x719d},
- {"linux/telephony.h", "PHONE_GET_TONE_ON_TIME", 0x719e},
- {"linux/telephony.h", "PHONE_GET_TONE_OFF_TIME", 0x719f},
- {"linux/telephony.h", "PHONE_GET_TONE_STATE", 0x71a0},
- {"linux/telephony.h", "PHONE_BUSY", 0x71a1},
- {"linux/telephony.h", "PHONE_RINGBACK", 0x71a2},
- {"linux/telephony.h", "PHONE_DIALTONE", 0x71a3},
- {"linux/telephony.h", "PHONE_CPT_STOP", 0x71a4},
- {"linux/telephony.h", "PHONE_PSTN_SET_STATE", 0x71a4},
- {"linux/telephony.h", "PHONE_PSTN_GET_STATE", 0x71a5},
- {"linux/telephony.h", "PHONE_WINK_DURATION", 0x71a6},
- {"linux/telephony.h", "PHONE_QUERY_CODEC", 0x71a7},
- {"linux/telephony.h", "PHONE_PSTN_LINETEST", 0x71a8},
- {"linux/telephony.h", "PHONE_VAD", 0x71a9},
- {"linux/telephony.h", "PHONE_WINK", 0x71aa},
- {"linux/ixjuser.h", "IXJCTL_DSP_RESET", 0x71c0},
- {"linux/ixjuser.h", "IXJCTL_CARDTYPE", 0x71c1},
- {"linux/ixjuser.h", "IXJCTL_SERIAL", 0x71c2},
- {"linux/ixjuser.h", "IXJCTL_DSP_TYPE", 0x71c3},
- {"linux/ixjuser.h", "IXJCTL_DSP_VERSION", 0x71c4},
- {"linux/ixjuser.h", "IXJCTL_DSP_IDLE", 0x71c5},
- {"linux/ixjuser.h", "IXJCTL_TESTRAM", 0x71c6},
- {"linux/ixjuser.h", "IXJCTL_SET_FILTER", 0x71c7},
- {"linux/ixjuser.h", "IXJCTL_GET_FILTER_HIST", 0x71c8},
- {"linux/ixjuser.h", "IXJCTL_INIT_TONE", 0x71c9},
- {"linux/ixjuser.h", "IXJCTL_TONE_CADENCE", 0x71ca},
- {"linux/ixjuser.h", "IXJCTL_AEC_START", 0x71cb},
- {"linux/ixjuser.h", "IXJCTL_AEC_STOP", 0x71cc},
- {"linux/ixjuser.h", "IXJCTL_AEC_GET_LEVEL", 0x71cd},
- {"linux/ixjuser.h", "IXJCTL_SET_LED", 0x71ce},
- {"linux/ixjuser.h", "IXJCTL_MIXER", 0x71cf},
- {"linux/ixjuser.h", "IXJCTL_DAA_COEFF_SET", 0x71d0},
- {"linux/ixjuser.h", "IXJCTL_PORT", 0x71d1},
- {"linux/ixjuser.h", "IXJCTL_DAA_AGAIN", 0x71d2},
- {"linux/ixjuser.h", "IXJCTL_PSTN_LINETEST", 0x71d3},
- {"linux/ixjuser.h", "IXJCTL_CID", 0x71d4},
- {"linux/ixjuser.h", "IXJCTL_POTS_PSTN", 0x71d5},
- {"linux/ixjuser.h", "IXJCTL_FILTER_CADENCE", 0x71d6},
- {"linux/ixjuser.h", "IXJCTL_PLAY_CID", 0x71d7},
- {"linux/ixjuser.h", "IXJCTL_VMWI", 0x71d8},
- {"linux/ixjuser.h", "IXJCTL_CIDCW", 0x71d9},
- {"linux/ixjuser.h", "IXJCTL_VERSION", 0x71da},
- {"linux/telephony.h", "PHONE_REC_VOLUME_LINEAR", 0x71db},
- {"linux/telephony.h", "PHONE_PLAY_VOLUME_LINEAR", 0x71dc},
- {"linux/ixjuser.h", "IXJCTL_SET_FILTER_RAW", 0x71dd},
- {"linux/ixjuser.h", "IXJCTL_HZ", 0x71e0},
- {"linux/ixjuser.h", "IXJCTL_RATE", 0x71e1},
- {"linux/ixjuser.h", "IXJCTL_FRAMES_READ", 0x71e2},
- {"linux/ixjuser.h", "IXJCTL_FRAMES_WRITTEN", 0x71e3},
- {"linux/ixjuser.h", "IXJCTL_READ_WAIT", 0x71e4},
- {"linux/ixjuser.h", "IXJCTL_WRITE_WAIT", 0x71e5},
- {"linux/ixjuser.h", "IXJCTL_DRYBUFFER_READ", 0x71e6},
- {"linux/ixjuser.h", "IXJCTL_DRYBUFFER_CLEAR", 0x71e7},
- {"linux/ixjuser.h", "IXJCTL_DTMF_PRESCALE", 0x71e8},
- {"linux/ixjuser.h", "IXJCTL_SIGCTL", 0x71e9},
- {"linux/ixjuser.h", "IXJCTL_SC_RXG", 0x71ea},
- {"linux/ixjuser.h", "IXJCTL_SC_TXG", 0x71eb},
- {"linux/ixjuser.h", "IXJCTL_INTERCOM_START", 0x71fd},
- {"linux/ixjuser.h", "IXJCTL_INTERCOM_STOP", 0x71fe},
- {"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", 0x7201},
- {"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", 0x7202},
- {"linux/msdos_fs.h", "FAT_IOCTL_GET_ATTRIBUTES", 0x7210},
- {"linux/msdos_fs.h", "FAT_IOCTL_SET_ATTRIBUTES", 0x7211},
- {"linux/msdos_fs.h", "FAT_IOCTL_GET_VOLUME_ID", 0x7213},
- {"linux/mic_ioctl.h", "MIC_VIRTIO_ADD_DEVICE", 0x7301},
- {"linux/mic_ioctl.h", "MIC_VIRTIO_COPY_DESC", 0x7302},
- {"linux/mic_ioctl.h", "MIC_VIRTIO_CONFIG_CHANGE", 0x7305},
- {"linux/ppp-ioctl.h", "PPPIOCGL2TPSTATS", 0x7436},
- {"linux/ppp-ioctl.h", "PPPIOCGCHAN", 0x7437},
- {"linux/ppp-ioctl.h", "PPPIOCATTCHAN", 0x7438},
- {"linux/ppp-ioctl.h", "PPPIOCDISCONN", 0x7439},
- {"linux/ppp-ioctl.h", "PPPIOCCONNECT", 0x743a},
- {"linux/ppp-ioctl.h", "PPPIOCSMRRU", 0x743b},
- {"linux/ppp-ioctl.h", "PPPIOCDETACH", 0x743c},
- {"linux/ppp-ioctl.h", "PPPIOCATTACH", 0x743d},
- {"linux/ppp-ioctl.h", "PPPIOCNEWUNIT", 0x743e},
- {"linux/ppp-ioctl.h", "PPPIOCGIDLE", 0x743f},
- {"linux/ppp-ioctl.h", "PPPIOCSDEBUG", 0x7440},
- {"linux/ppp-ioctl.h", "PPPIOCGDEBUG", 0x7441},
- {"linux/ppp-ioctl.h", "PPPIOCSACTIVE", 0x7446},
- {"linux/ppp-ioctl.h", "PPPIOCSPASS", 0x7447},
- {"linux/ppp-ioctl.h", "PPPIOCSNPMODE", 0x744b},
- {"linux/ppp-ioctl.h", "PPPIOCGNPMODE", 0x744c},
- {"linux/ppp-ioctl.h", "PPPIOCSCOMPRESS", 0x744d},
- {"linux/ppp-ioctl.h", "PPPIOCXFERUNIT", 0x744e},
- {"linux/ppp-ioctl.h", "PPPIOCSXASYNCMAP", 0x744f},
- {"linux/ppp-ioctl.h", "PPPIOCGXASYNCMAP", 0x7450},
- {"linux/ppp-ioctl.h", "PPPIOCSMAXCID", 0x7451},
- {"linux/ppp-ioctl.h", "PPPIOCSMRU", 0x7452},
- {"linux/ppp-ioctl.h", "PPPIOCGMRU", 0x7453},
- {"linux/ppp-ioctl.h", "PPPIOCSRASYNCMAP", 0x7454},
- {"linux/ppp-ioctl.h", "PPPIOCGRASYNCMAP", 0x7455},
- {"linux/ppp-ioctl.h", "PPPIOCGUNIT", 0x7456},
- {"linux/ppp-ioctl.h", "PPPIOCSASYNCMAP", 0x7457},
- {"linux/ppp-ioctl.h", "PPPIOCGASYNCMAP", 0x7458},
- {"linux/ppp-ioctl.h", "PPPIOCSFLAGS", 0x7459},
- {"linux/ppp-ioctl.h", "PPPIOCGFLAGS", 0x745a},
- {"linux/isdn_ppp.h", "PPPIOCGCALLINFO", 0x7480},
- {"linux/isdn_ppp.h", "PPPIOCBUNDLE", 0x7481},
- {"linux/isdn_ppp.h", "PPPIOCGMPFLAGS", 0x7482},
- {"linux/isdn_ppp.h", "PPPIOCSMPFLAGS", 0x7483},
- {"linux/isdn_ppp.h", "PPPIOCSMPMTU", 0x7484},
- {"linux/isdn_ppp.h", "PPPIOCSMPMRU", 0x7485},
- {"linux/isdn_ppp.h", "PPPIOCGCOMPRESSORS", 0x7486},
- {"linux/isdn_ppp.h", "PPPIOCSCOMPRESSOR", 0x7487},
- {"linux/isdn_ppp.h", "PPPIOCGIFNAME", 0x7488},
- {"linux/toshiba.h", "TOSH_SMM", 0x7490},
- {"linux/uvcvideo.h", "UVCIOC_CTRL_MAP", 0x7520},
- {"linux/uvcvideo.h", "UVCIOC_CTRL_QUERY", 0x7521},
- {"linux/sonypi.h", "SONYPI_IOCGBRT", 0x7600},
- {"linux/sonypi.h", "SONYPI_IOCSBRT", 0x7600},
- {"media/v4l2-subdev.h", "V4L2_SUBDEV_IR_RX_NOTIFY", 0x7600},
- {"linux/fs.h", "FS_IOC32_GETVERSION", 0x7601},
- {"linux/fs.h", "FS_IOC_GETVERSION", 0x7601},
- {"media/v4l2-subdev.h", "V4L2_SUBDEV_IR_TX_NOTIFY", 0x7601},
- {"linux/fs.h", "FS_IOC32_SETVERSION", 0x7602},
- {"linux/fs.h", "FS_IOC_SETVERSION", 0x7602},
- {"linux/sonypi.h", "SONYPI_IOCGBAT1CAP", 0x7602},
- {"linux/sonypi.h", "SONYPI_IOCGBAT1REM", 0x7603},
- {"linux/sonypi.h", "SONYPI_IOCGBAT2CAP", 0x7604},
- {"linux/sonypi.h", "SONYPI_IOCGBAT2REM", 0x7605},
- {"linux/sonypi.h", "SONYPI_IOCGBATFLAGS", 0x7607},
- {"linux/sonypi.h", "SONYPI_IOCGBLUE", 0x7608},
- {"linux/sonypi.h", "SONYPI_IOCSBLUE", 0x7609},
- {"linux/sonypi.h", "SONYPI_IOCGFAN", 0x760a},
- {"linux/sonypi.h", "SONYPI_IOCSFAN", 0x760b},
- {"linux/sonypi.h", "SONYPI_IOCGTEMP", 0x760c},
- {"linux/meye.h", "MEYEIOC_G_PARAMS", 0x76c0},
- {"linux/meye.h", "MEYEIOC_S_PARAMS", 0x76c1},
- {"linux/meye.h", "MEYEIOC_QBUF_CAPT", 0x76c2},
- {"linux/meye.h", "MEYEIOC_SYNC", 0x76c3},
- {"linux/meye.h", "MEYEIOC_STILLCAPT", 0x76c4},
- {"linux/meye.h", "MEYEIOC_STILLJCAPT", 0x76c5},
- {"linux/media.h", "MEDIA_IOC_DEVICE_INFO", 0x7c00},
- {"linux/media.h", "MEDIA_IOC_ENUM_ENTITIES", 0x7c01},
- {"linux/media.h", "MEDIA_IOC_ENUM_LINKS", 0x7c02},
- {"linux/media.h", "MEDIA_IOC_SETUP_LINK", 0x7c03},
- {"asm-generic/sockios.h", "FIOSETOWN", 0x8901},
- {"asm-generic/sockios.h", "SIOCSPGRP", 0x8902},
- {"asm-generic/sockios.h", "FIOGETOWN", 0x8903},
- {"asm-generic/sockios.h", "SIOCGPGRP", 0x8904},
- {"asm-generic/sockios.h", "SIOCATMARK", 0x8905},
- {"asm-generic/sockios.h", "SIOCGSTAMP", 0x8906},
- {"asm-generic/sockios.h", "SIOCGSTAMPNS", 0x8907},
- {"linux/sockios.h", "SIOCADDRT", 0x890b},
- {"linux/sockios.h", "SIOCDELRT", 0x890c},
- {"linux/sockios.h", "SIOCRTMSG", 0x890d},
- {"linux/sockios.h", "SIOCGIFNAME", 0x8910},
- {"linux/sockios.h", "SIOCSIFLINK", 0x8911},
- {"linux/sockios.h", "SIOCGIFCONF", 0x8912},
- {"linux/sockios.h", "SIOCGIFFLAGS", 0x8913},
- {"linux/sockios.h", "SIOCSIFFLAGS", 0x8914},
- {"linux/sockios.h", "SIOCGIFADDR", 0x8915},
- {"linux/sockios.h", "SIOCSIFADDR", 0x8916},
- {"linux/sockios.h", "SIOCGIFDSTADDR", 0x8917},
- {"linux/sockios.h", "SIOCSIFDSTADDR", 0x8918},
- {"linux/sockios.h", "SIOCGIFBRDADDR", 0x8919},
- {"linux/sockios.h", "SIOCSIFBRDADDR", 0x891a},
- {"linux/sockios.h", "SIOCGIFNETMASK", 0x891b},
- {"linux/sockios.h", "SIOCSIFNETMASK", 0x891c},
- {"linux/sockios.h", "SIOCGIFMETRIC", 0x891d},
- {"linux/sockios.h", "SIOCSIFMETRIC", 0x891e},
- {"linux/sockios.h", "SIOCGIFMEM", 0x891f},
- {"linux/sockios.h", "SIOCSIFMEM", 0x8920},
- {"linux/sockios.h", "SIOCGIFMTU", 0x8921},
- {"linux/sockios.h", "SIOCSIFMTU", 0x8922},
- {"linux/sockios.h", "SIOCSIFNAME", 0x8923},
- {"linux/sockios.h", "SIOCSIFHWADDR", 0x8924},
- {"linux/sockios.h", "SIOCGIFENCAP", 0x8925},
- {"linux/sockios.h", "SIOCSIFENCAP", 0x8926},
- {"linux/sockios.h", "SIOCGIFHWADDR", 0x8927},
- {"linux/sockios.h", "SIOCGIFSLAVE", 0x8929},
- {"linux/sockios.h", "SIOCSIFSLAVE", 0x8930},
- {"linux/sockios.h", "SIOCADDMULTI", 0x8931},
- {"linux/sockios.h", "SIOCDELMULTI", 0x8932},
- {"linux/sockios.h", "SIOCGIFINDEX", 0x8933},
- {"linux/sockios.h", "SIOCSIFPFLAGS", 0x8934},
- {"linux/sockios.h", "SIOCGIFPFLAGS", 0x8935},
- {"linux/sockios.h", "SIOCDIFADDR", 0x8936},
- {"linux/sockios.h", "SIOCSIFHWBROADCAST", 0x8937},
- {"linux/sockios.h", "SIOCGIFCOUNT", 0x8938},
- {"linux/sockios.h", "SIOCGIFBR", 0x8940},
- {"linux/sockios.h", "SIOCSIFBR", 0x8941},
- {"linux/sockios.h", "SIOCGIFTXQLEN", 0x8942},
- {"linux/sockios.h", "SIOCSIFTXQLEN", 0x8943},
- {"linux/sockios.h", "SIOCETHTOOL", 0x8946},
- {"linux/sockios.h", "SIOCGMIIPHY", 0x8947},
- {"linux/sockios.h", "SIOCGMIIREG", 0x8948},
- {"linux/sockios.h", "SIOCSMIIREG", 0x8949},
- {"linux/sockios.h", "SIOCWANDEV", 0x894a},
- {"linux/sockios.h", "SIOCOUTQNSD", 0x894b},
- {"linux/sockios.h", "SIOCDARP", 0x8953},
- {"linux/sockios.h", "SIOCGARP", 0x8954},
- {"linux/sockios.h", "SIOCSARP", 0x8955},
- {"linux/sockios.h", "SIOCDRARP", 0x8960},
- {"linux/sockios.h", "SIOCGRARP", 0x8961},
- {"linux/sockios.h", "SIOCSRARP", 0x8962},
- {"linux/sockios.h", "SIOCGIFMAP", 0x8970},
- {"linux/sockios.h", "SIOCSIFMAP", 0x8971},
- {"linux/sockios.h", "SIOCADDDLCI", 0x8980},
- {"linux/sockios.h", "SIOCDELDLCI", 0x8981},
- {"linux/sockios.h", "SIOCGIFVLAN", 0x8982},
- {"linux/sockios.h", "SIOCSIFVLAN", 0x8983},
- {"linux/sockios.h", "SIOCBONDENSLAVE", 0x8990},
- {"linux/sockios.h", "SIOCBONDRELEASE", 0x8991},
- {"linux/sockios.h", "SIOCBONDSETHWADDR", 0x8992},
- {"linux/sockios.h", "SIOCBONDSLAVEINFOQUERY", 0x8993},
- {"linux/sockios.h", "SIOCBONDINFOQUERY", 0x8994},
- {"linux/sockios.h", "SIOCBONDCHANGEACTIVE", 0x8995},
- {"linux/sockios.h", "SIOCBRADDBR", 0x89a0},
- {"linux/sockios.h", "SIOCBRDELBR", 0x89a1},
- {"linux/sockios.h", "SIOCBRADDIF", 0x89a2},
- {"linux/sockios.h", "SIOCBRDELIF", 0x89a3},
- {"linux/sockios.h", "SIOCSHWTSTAMP", 0x89b0},
- {"linux/sockios.h", "SIOCGHWTSTAMP", 0x89b1},
- {"linux/dn.h", "OSIOCSNETADDR", 0x89e0},
- {"linux/sockios.h", "SIOCPROTOPRIVATE", 0x89e0},
- {"linux/dn.h", "SIOCSNETADDR", 0x89e0},
- {"linux/dn.h", "OSIOCGNETADDR", 0x89e1},
- {"linux/dn.h", "SIOCGNETADDR", 0x89e1},
- {"linux/sockios.h", "SIOCDEVPRIVATE", 0x89f0},
- {"linux/wireless.h", "SIOCIWFIRST", 0x8b00},
- {"linux/wireless.h", "SIOCSIWCOMMIT", 0x8b00},
- {"linux/wireless.h", "SIOCGIWNAME", 0x8b01},
- {"linux/wireless.h", "SIOCSIWNWID", 0x8b02},
- {"linux/wireless.h", "SIOCGIWNWID", 0x8b03},
- {"linux/wireless.h", "SIOCSIWFREQ", 0x8b04},
- {"linux/wireless.h", "SIOCGIWFREQ", 0x8b05},
- {"linux/wireless.h", "SIOCSIWMODE", 0x8b06},
- {"linux/wireless.h", "SIOCGIWMODE", 0x8b07},
- {"linux/wireless.h", "SIOCSIWSENS", 0x8b08},
- {"linux/wireless.h", "SIOCGIWSENS", 0x8b09},
- {"linux/wireless.h", "SIOCSIWRANGE", 0x8b0a},
- {"linux/wireless.h", "SIOCGIWRANGE", 0x8b0b},
- {"linux/wireless.h", "SIOCSIWPRIV", 0x8b0c},
- {"linux/wireless.h", "SIOCGIWPRIV", 0x8b0d},
- {"linux/wireless.h", "SIOCSIWSTATS", 0x8b0e},
- {"linux/wireless.h", "SIOCGIWSTATS", 0x8b0f},
- {"linux/wireless.h", "SIOCSIWSPY", 0x8b10},
- {"linux/wireless.h", "SIOCGIWSPY", 0x8b11},
- {"linux/wireless.h", "SIOCSIWTHRSPY", 0x8b12},
- {"linux/wireless.h", "SIOCGIWTHRSPY", 0x8b13},
- {"linux/wireless.h", "SIOCSIWAP", 0x8b14},
- {"linux/wireless.h", "SIOCGIWAP", 0x8b15},
- {"linux/wireless.h", "SIOCSIWMLME", 0x8b16},
- {"linux/wireless.h", "SIOCGIWAPLIST", 0x8b17},
- {"linux/wireless.h", "SIOCSIWSCAN", 0x8b18},
- {"linux/wireless.h", "SIOCGIWSCAN", 0x8b19},
- {"linux/wireless.h", "SIOCSIWESSID", 0x8b1a},
- {"linux/wireless.h", "SIOCGIWESSID", 0x8b1b},
- {"linux/wireless.h", "SIOCSIWNICKN", 0x8b1c},
- {"linux/wireless.h", "SIOCGIWNICKN", 0x8b1d},
- {"linux/wireless.h", "SIOCSIWRATE", 0x8b20},
- {"linux/wireless.h", "SIOCGIWRATE", 0x8b21},
- {"linux/wireless.h", "SIOCSIWRTS", 0x8b22},
- {"linux/wireless.h", "SIOCGIWRTS", 0x8b23},
- {"linux/wireless.h", "SIOCSIWFRAG", 0x8b24},
- {"linux/wireless.h", "SIOCGIWFRAG", 0x8b25},
- {"linux/wireless.h", "SIOCSIWTXPOW", 0x8b26},
- {"linux/wireless.h", "SIOCGIWTXPOW", 0x8b27},
- {"linux/wireless.h", "SIOCSIWRETRY", 0x8b28},
- {"linux/wireless.h", "SIOCGIWRETRY", 0x8b29},
- {"linux/wireless.h", "SIOCSIWENCODE", 0x8b2a},
- {"linux/wireless.h", "SIOCGIWENCODE", 0x8b2b},
- {"linux/wireless.h", "SIOCSIWPOWER", 0x8b2c},
- {"linux/wireless.h", "SIOCGIWPOWER", 0x8b2d},
- {"linux/wireless.h", "SIOCSIWGENIE", 0x8b30},
- {"linux/wireless.h", "SIOCGIWGENIE", 0x8b31},
- {"linux/wireless.h", "SIOCSIWAUTH", 0x8b32},
- {"linux/wireless.h", "SIOCGIWAUTH", 0x8b33},
- {"linux/wireless.h", "SIOCSIWENCODEEXT", 0x8b34},
- {"linux/wireless.h", "SIOCGIWENCODEEXT", 0x8b35},
- {"linux/wireless.h", "SIOCSIWPMKSA", 0x8b36},
- {"linux/wireless.h", "SIOCIWFIRSTPRIV", 0x8be0},
- {"linux/wireless.h", "SIOCIWLASTPRIV", 0x8bff},
- {"linux/auto_fs.h", "AUTOFS_IOC_READY", 0x9360},
- {"linux/auto_fs.h", "AUTOFS_IOC_FAIL", 0x9361},
- {"linux/auto_fs.h", "AUTOFS_IOC_CATATONIC", 0x9362},
- {"linux/auto_fs.h", "AUTOFS_IOC_PROTOVER", 0x9363},
- {"linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT", 0x9364},
- {"linux/auto_fs.h", "AUTOFS_IOC_EXPIRE", 0x9365},
- {"linux/auto_fs4.h", "AUTOFS_IOC_EXPIRE_MULTI", 0x9366},
- {"linux/auto_fs4.h", "AUTOFS_IOC_PROTOSUBVER", 0x9367},
- {"linux/auto_fs4.h", "AUTOFS_IOC_ASKUMOUNT", 0x9370},
- {"linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE", 0x9401},
- {"linux/btrfs.h", "BTRFS_IOC_DEFRAG", 0x9402},
- {"linux/btrfs.h", "BTRFS_IOC_RESIZE", 0x9403},
- {"linux/btrfs.h", "BTRFS_IOC_SCAN_DEV", 0x9404},
- {"linux/btrfs.h", "BTRFS_IOC_TRANS_START", 0x9406},
- {"linux/btrfs.h", "BTRFS_IOC_TRANS_END", 0x9407},
- {"linux/btrfs.h", "BTRFS_IOC_SYNC", 0x9408},
- {"linux/btrfs.h", "BTRFS_IOC_CLONE", 0x9409},
- {"linux/btrfs.h", "BTRFS_IOC_ADD_DEV", 0x940a},
- {"linux/btrfs.h", "BTRFS_IOC_RM_DEV", 0x940b},
- {"linux/btrfs.h", "BTRFS_IOC_BALANCE", 0x940c},
- {"linux/btrfs.h", "BTRFS_IOC_CLONE_RANGE", 0x940d},
- {"linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE", 0x940e},
- {"linux/btrfs.h", "BTRFS_IOC_SNAP_DESTROY", 0x940f},
- {"linux/btrfs.h", "BTRFS_IOC_DEFRAG_RANGE", 0x9410},
- {"linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH", 0x9411},
- {"linux/btrfs.h", "BTRFS_IOC_INO_LOOKUP", 0x9412},
- {"linux/btrfs.h", "BTRFS_IOC_DEFAULT_SUBVOL", 0x9413},
- {"linux/btrfs.h", "BTRFS_IOC_SPACE_INFO", 0x9414},
- {"linux/btrfs.h", "BTRFS_IOC_WAIT_SYNC", 0x9416},
- {"linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE_V2", 0x9417},
- {"linux/btrfs.h", "BTRFS_IOC_START_SYNC", 0x9418},
- {"linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE_V2", 0x9418},
- {"linux/btrfs.h", "BTRFS_IOC_SUBVOL_GETFLAGS", 0x9419},
- {"linux/btrfs.h", "BTRFS_IOC_SUBVOL_SETFLAGS", 0x941a},
- {"linux/btrfs.h", "BTRFS_IOC_SCRUB", 0x941b},
- {"linux/btrfs.h", "BTRFS_IOC_SCRUB_CANCEL", 0x941c},
- {"linux/btrfs.h", "BTRFS_IOC_SCRUB_PROGRESS", 0x941d},
- {"linux/btrfs.h", "BTRFS_IOC_DEV_INFO", 0x941e},
- {"linux/btrfs.h", "BTRFS_IOC_FS_INFO", 0x941f},
- {"linux/btrfs.h", "BTRFS_IOC_BALANCE_V2", 0x9420},
- {"linux/btrfs.h", "BTRFS_IOC_BALANCE_CTL", 0x9421},
- {"linux/btrfs.h", "BTRFS_IOC_BALANCE_PROGRESS", 0x9422},
- {"linux/btrfs.h", "BTRFS_IOC_INO_PATHS", 0x9423},
- {"linux/btrfs.h", "BTRFS_IOC_LOGICAL_INO", 0x9424},
- {"linux/btrfs.h", "BTRFS_IOC_SET_RECEIVED_SUBVOL", 0x9425},
- {"linux/btrfs.h", "BTRFS_IOC_SEND", 0x9426},
- {"linux/btrfs.h", "BTRFS_IOC_DEVICES_READY", 0x9427},
- {"linux/btrfs.h", "BTRFS_IOC_QUOTA_CTL", 0x9428},
- {"linux/btrfs.h", "BTRFS_IOC_QGROUP_ASSIGN", 0x9429},
- {"linux/btrfs.h", "BTRFS_IOC_QGROUP_CREATE", 0x942a},
- {"linux/btrfs.h", "BTRFS_IOC_QGROUP_LIMIT", 0x942b},
- {"linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN", 0x942c},
- {"linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_STATUS", 0x942d},
- {"linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_WAIT", 0x942e},
- {"linux/btrfs.h", "BTRFS_IOC_GET_FSLABEL", 0x9431},
- {"linux/btrfs.h", "BTRFS_IOC_SET_FSLABEL", 0x9432},
- {"linux/btrfs.h", "BTRFS_IOC_GET_DEV_STATS", 0x9434},
- {"linux/btrfs.h", "BTRFS_IOC_DEV_REPLACE", 0x9435},
- {"linux/btrfs.h", "BTRFS_IOC_FILE_EXTENT_SAME", 0x9436},
- {"linux/btrfs.h", "BTRFS_IOC_GET_FEATURES", 0x9439},
- {"linux/btrfs.h", "BTRFS_IOC_GET_SUPPORTED_FEATURES", 0x9439},
- {"linux/btrfs.h", "BTRFS_IOC_SET_FEATURES", 0x9439},
- {"linux/nbd.h", "NBD_SET_SOCK", 0xab00},
- {"linux/nbd.h", "NBD_SET_BLKSIZE", 0xab01},
- {"linux/nbd.h", "NBD_SET_SIZE", 0xab02},
- {"linux/nbd.h", "NBD_DO_IT", 0xab03},
- {"linux/nbd.h", "NBD_CLEAR_SOCK", 0xab04},
- {"linux/nbd.h", "NBD_CLEAR_QUE", 0xab05},
- {"linux/nbd.h", "NBD_PRINT_DEBUG", 0xab06},
- {"linux/nbd.h", "NBD_SET_SIZE_BLOCKS", 0xab07},
- {"linux/nbd.h", "NBD_DISCONNECT", 0xab08},
- {"linux/nbd.h", "NBD_SET_TIMEOUT", 0xab09},
- {"linux/nbd.h", "NBD_SET_FLAGS", 0xab0a},
- {"linux/raw.h", "RAW_SETBIND", 0xac00},
- {"linux/raw.h", "RAW_GETBIND", 0xac01},
- {"linux/kvm.h", "KVM_GET_API_VERSION", 0xae00},
- {"linux/kvm.h", "KVM_CREATE_VM", 0xae01},
- {"linux/kvm.h", "KVM_GET_MSR_INDEX_LIST", 0xae02},
- {"linux/kvm.h", "KVM_CHECK_EXTENSION", 0xae03},
- {"linux/kvm.h", "KVM_GET_VCPU_MMAP_SIZE", 0xae04},
- {"linux/kvm.h", "KVM_GET_SUPPORTED_CPUID", 0xae05},
- {"linux/kvm.h", "KVM_S390_ENABLE_SIE", 0xae06},
- {"linux/kvm.h", "KVM_GET_EMULATED_CPUID", 0xae09},
- {"linux/kvm.h", "KVM_SET_MEMORY_REGION", 0xae40},
- {"linux/kvm.h", "KVM_CREATE_VCPU", 0xae41},
- {"linux/kvm.h", "KVM_GET_DIRTY_LOG", 0xae42},
- {"linux/kvm.h", "KVM_SET_MEMORY_ALIAS", 0xae43},
- {"linux/kvm.h", "KVM_SET_NR_MMU_PAGES", 0xae44},
- {"linux/kvm.h", "KVM_GET_NR_MMU_PAGES", 0xae45},
- {"linux/kvm.h", "KVM_SET_USER_MEMORY_REGION", 0xae46},
- {"linux/kvm.h", "KVM_SET_TSS_ADDR", 0xae47},
- {"linux/kvm.h", "KVM_SET_IDENTITY_MAP_ADDR", 0xae48},
- {"linux/kvm.h", "KVM_S390_UCAS_MAP", 0xae50},
- {"linux/kvm.h", "KVM_S390_UCAS_UNMAP", 0xae51},
- {"linux/kvm.h", "KVM_S390_VCPU_FAULT", 0xae52},
- {"linux/kvm.h", "KVM_CREATE_IRQCHIP", 0xae60},
- {"linux/kvm.h", "KVM_IRQ_LINE", 0xae61},
- {"linux/kvm.h", "KVM_GET_IRQCHIP", 0xae62},
- {"linux/kvm.h", "KVM_SET_IRQCHIP", 0xae63},
- {"linux/kvm.h", "KVM_CREATE_PIT", 0xae64},
- {"linux/kvm.h", "KVM_GET_PIT", 0xae65},
- {"linux/kvm.h", "KVM_SET_PIT", 0xae66},
- {"linux/kvm.h", "KVM_IRQ_LINE_STATUS", 0xae67},
- {"linux/kvm.h", "KVM_ASSIGN_PCI_DEVICE", 0xae69},
- {"linux/kvm.h", "KVM_SET_GSI_ROUTING", 0xae6a},
- {"linux/kvm.h", "KVM_ASSIGN_DEV_IRQ", 0xae70},
- {"linux/kvm.h", "KVM_REINJECT_CONTROL", 0xae71},
- {"linux/kvm.h", "KVM_DEASSIGN_PCI_DEVICE", 0xae72},
- {"linux/kvm.h", "KVM_ASSIGN_SET_MSIX_NR", 0xae73},
- {"linux/kvm.h", "KVM_ASSIGN_SET_MSIX_ENTRY", 0xae74},
- {"linux/kvm.h", "KVM_DEASSIGN_DEV_IRQ", 0xae75},
- {"linux/kvm.h", "KVM_IRQFD", 0xae76},
- {"linux/kvm.h", "KVM_CREATE_PIT2", 0xae77},
- {"linux/kvm.h", "KVM_SET_BOOT_CPU_ID", 0xae78},
- {"linux/kvm.h", "KVM_IOEVENTFD", 0xae79},
- {"linux/kvm.h", "KVM_XEN_HVM_CONFIG", 0xae7a},
- {"linux/kvm.h", "KVM_SET_CLOCK", 0xae7b},
- {"linux/kvm.h", "KVM_GET_CLOCK", 0xae7c},
- {"linux/kvm.h", "KVM_RUN", 0xae80},
- {"linux/kvm.h", "KVM_GET_REGS", 0xae81},
- {"linux/kvm.h", "KVM_SET_REGS", 0xae82},
- {"linux/kvm.h", "KVM_GET_SREGS", 0xae83},
- {"linux/kvm.h", "KVM_SET_SREGS", 0xae84},
- {"linux/kvm.h", "KVM_TRANSLATE", 0xae85},
- {"linux/kvm.h", "KVM_INTERRUPT", 0xae86},
- {"linux/kvm.h", "KVM_GET_MSRS", 0xae88},
- {"linux/kvm.h", "KVM_SET_MSRS", 0xae89},
- {"linux/kvm.h", "KVM_SET_CPUID", 0xae8a},
- {"linux/kvm.h", "KVM_SET_SIGNAL_MASK", 0xae8b},
- {"linux/kvm.h", "KVM_GET_FPU", 0xae8c},
- {"linux/kvm.h", "KVM_SET_FPU", 0xae8d},
- {"linux/kvm.h", "KVM_GET_LAPIC", 0xae8e},
- {"linux/kvm.h", "KVM_SET_LAPIC", 0xae8f},
- {"linux/kvm.h", "KVM_SET_CPUID2", 0xae90},
- {"linux/kvm.h", "KVM_GET_CPUID2", 0xae91},
- {"linux/kvm.h", "KVM_TPR_ACCESS_REPORTING", 0xae92},
- {"linux/kvm.h", "KVM_SET_VAPIC_ADDR", 0xae93},
- {"linux/kvm.h", "KVM_S390_INTERRUPT", 0xae94},
- {"linux/kvm.h", "KVM_S390_STORE_STATUS", 0xae95},
- {"linux/kvm.h", "KVM_S390_SET_INITIAL_PSW", 0xae96},
- {"linux/kvm.h", "KVM_S390_INITIAL_RESET", 0xae97},
- {"linux/kvm.h", "KVM_GET_MP_STATE", 0xae98},
- {"linux/kvm.h", "KVM_SET_MP_STATE", 0xae99},
- {"linux/kvm.h", "KVM_IA64_VCPU_GET_STACK", 0xae9a},
- {"linux/kvm.h", "KVM_NMI", 0xae9a},
- {"linux/kvm.h", "KVM_IA64_VCPU_SET_STACK", 0xae9b},
- {"linux/kvm.h", "KVM_SET_GUEST_DEBUG", 0xae9b},
- {"linux/kvm.h", "KVM_X86_SETUP_MCE", 0xae9c},
- {"linux/kvm.h", "KVM_X86_GET_MCE_CAP_SUPPORTED", 0xae9d},
- {"linux/kvm.h", "KVM_X86_SET_MCE", 0xae9e},
- {"linux/kvm.h", "KVM_GET_PIT2", 0xae9f},
- {"linux/kvm.h", "KVM_GET_VCPU_EVENTS", 0xae9f},
- {"linux/kvm.h", "KVM_SET_PIT2", 0xaea0},
- {"linux/kvm.h", "KVM_SET_VCPU_EVENTS", 0xaea0},
- {"linux/kvm.h", "KVM_GET_DEBUGREGS", 0xaea1},
- {"linux/kvm.h", "KVM_PPC_GET_PVINFO", 0xaea1},
- {"linux/kvm.h", "KVM_SET_DEBUGREGS", 0xaea2},
- {"linux/kvm.h", "KVM_SET_TSC_KHZ", 0xaea2},
- {"linux/kvm.h", "KVM_ENABLE_CAP", 0xaea3},
- {"linux/kvm.h", "KVM_GET_TSC_KHZ", 0xaea3},
- {"linux/kvm.h", "KVM_ASSIGN_SET_INTX_MASK", 0xaea4},
- {"linux/kvm.h", "KVM_GET_XSAVE", 0xaea4},
- {"linux/kvm.h", "KVM_SET_XSAVE", 0xaea5},
- {"linux/kvm.h", "KVM_SIGNAL_MSI", 0xaea5},
- {"linux/kvm.h", "KVM_GET_XCRS", 0xaea6},
- {"linux/kvm.h", "KVM_PPC_GET_SMMU_INFO", 0xaea6},
- {"linux/kvm.h", "KVM_PPC_ALLOCATE_HTAB", 0xaea7},
- {"linux/kvm.h", "KVM_SET_XCRS", 0xaea7},
- {"linux/kvm.h", "KVM_CREATE_SPAPR_TCE", 0xaea8},
- {"linux/kvm.h", "KVM_ALLOCATE_RMA", 0xaea9},
- {"linux/kvm.h", "KVM_DIRTY_TLB", 0xaeaa},
- {"linux/kvm.h", "KVM_PPC_GET_HTAB_FD", 0xaeaa},
- {"linux/kvm.h", "KVM_ARM_SET_DEVICE_ADDR", 0xaeab},
- {"linux/kvm.h", "KVM_GET_ONE_REG", 0xaeab},
- {"linux/kvm.h", "KVM_PPC_RTAS_DEFINE_TOKEN", 0xaeac},
- {"linux/kvm.h", "KVM_SET_ONE_REG", 0xaeac},
- {"linux/kvm.h", "KVM_KVMCLOCK_CTRL", 0xaead},
- {"linux/kvm.h", "KVM_ARM_VCPU_INIT", 0xaeae},
- {"linux/kvm.h", "KVM_ARM_PREFERRED_TARGET", 0xaeaf},
- {"linux/kvm.h", "KVM_GET_REG_LIST", 0xaeb0},
- {"linux/kvm.h", "KVM_CREATE_DEVICE", 0xaee0},
- {"linux/kvm.h", "KVM_SET_DEVICE_ATTR", 0xaee1},
- {"linux/kvm.h", "KVM_GET_DEVICE_ATTR", 0xaee2},
- {"linux/kvm.h", "KVM_HAS_DEVICE_ATTR", 0xaee3},
- {"linux/vhost.h", "VHOST_GET_FEATURES", 0xaf00},
- {"linux/vhost.h", "VHOST_SET_FEATURES", 0xaf00},
- {"linux/vhost.h", "VHOST_SET_OWNER", 0xaf01},
- {"linux/vhost.h", "VHOST_RESET_OWNER", 0xaf02},
- {"linux/vhost.h", "VHOST_SET_MEM_TABLE", 0xaf03},
- {"linux/vhost.h", "VHOST_SET_LOG_BASE", 0xaf04},
- {"linux/vhost.h", "VHOST_SET_LOG_FD", 0xaf07},
- {"linux/vhost.h", "VHOST_SET_VRING_NUM", 0xaf10},
- {"linux/vhost.h", "VHOST_SET_VRING_ADDR", 0xaf11},
- {"linux/vhost.h", "VHOST_GET_VRING_BASE", 0xaf12},
- {"linux/vhost.h", "VHOST_SET_VRING_BASE", 0xaf12},
- {"linux/vhost.h", "VHOST_SET_VRING_KICK", 0xaf20},
- {"linux/vhost.h", "VHOST_SET_VRING_CALL", 0xaf21},
- {"linux/vhost.h", "VHOST_SET_VRING_ERR", 0xaf22},
- {"linux/vhost.h", "VHOST_NET_SET_BACKEND", 0xaf30},
- {"linux/vhost.h", "VHOST_SCSI_SET_ENDPOINT", 0xaf40},
- {"linux/vhost.h", "VHOST_SCSI_CLEAR_ENDPOINT", 0xaf41},
- {"linux/vhost.h", "VHOST_SCSI_GET_ABI_VERSION", 0xaf42},
- {"linux/vhost.h", "VHOST_SCSI_SET_EVENTS_MISSED", 0xaf43},
- {"linux/vhost.h", "VHOST_SCSI_GET_EVENTS_MISSED", 0xaf44},
- {"linux/if_pppox.h", "PPPOEIOCSFWD", 0xb100},
- {"linux/if_pppox.h", "PPPOEIOCDFWD", 0xb101},
- {"linux/mmc/ioctl.h", "MMC_IOC_CMD", 0xb300},
- {"linux/reiserfs_fs.h", "REISERFS_IOC_UNPACK", 0xcd01},
- {"video/sisfb.h", "SISFB_GET_INFO_SIZE", 0xf300},
- {"video/sisfb.h", "SISFB_GET_INFO", 0xf301},
- {"video/sisfb.h", "SISFB_GET_VBRSTATUS", 0xf302},
- {"video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE", 0xf303},
- {"video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE", 0xf303},
- {"video/sisfb.h", "SISFB_GET_TVPOSOFFSET", 0xf304},
- {"video/sisfb.h", "SISFB_SET_TVPOSOFFSET", 0xf304},
- {"video/sisfb.h", "SISFB_COMMAND", 0xf305},
- {"video/sisfb.h", "SISFB_SET_LOCK", 0xf306},
- {"video/mbxfb.h", "MBXFB_IOCX_OVERLAY", 0xf400},
- {"video/mbxfb.h", "MBXFB_IOCG_ALPHA", 0xf401},
- {"video/mbxfb.h", "MBXFB_IOCS_ALPHA", 0xf402},
- {"video/mbxfb.h", "MBXFB_IOCS_PLANEORDER", 0xf403},
- {"video/mbxfb.h", "MBXFB_IOCS_REG", 0xf404},
- {"video/mbxfb.h", "MBXFB_IOCX_REG", 0xf405},
- {"linux/dm-ioctl.h", "DM_VERSION", 0xfd00},
- {"linux/dm-ioctl.h", "DM_REMOVE_ALL", 0xfd01},
- {"linux/dm-ioctl.h", "DM_LIST_DEVICES", 0xfd02},
- {"linux/dm-ioctl.h", "DM_DEV_CREATE", 0xfd03},
- {"linux/dm-ioctl.h", "DM_DEV_REMOVE", 0xfd04},
- {"linux/dm-ioctl.h", "DM_DEV_RENAME", 0xfd05},
- {"linux/dm-ioctl.h", "DM_DEV_SUSPEND", 0xfd06},
- {"linux/dm-ioctl.h", "DM_DEV_STATUS", 0xfd07},
- {"linux/dm-ioctl.h", "DM_DEV_WAIT", 0xfd08},
- {"linux/dm-ioctl.h", "DM_TABLE_LOAD", 0xfd09},
- {"linux/dm-ioctl.h", "DM_TABLE_CLEAR", 0xfd0a},
- {"linux/dm-ioctl.h", "DM_TABLE_DEPS", 0xfd0b},
- {"linux/dm-ioctl.h", "DM_TABLE_STATUS", 0xfd0c},
- {"linux/dm-ioctl.h", "DM_LIST_VERSIONS", 0xfd0d},
- {"linux/dm-ioctl.h", "DM_TARGET_MSG", 0xfd0e},
- {"linux/dm-ioctl.h", "DM_DEV_SET_GEOMETRY", 0xfd0f},
diff --git a/linux/ioctlent.sh b/linux/ioctlent.sh
deleted file mode 100755
index 5e79510..0000000
--- a/linux/ioctlent.sh
+++ /dev/null
@@ -1,156 +0,0 @@
-#! /bin/sh
-# Copyright (c) 2001 Wichert Akkerman <wichert@cistron.nl>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. The name of the author may not be used to endorse or promote products
-# derived from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Validate arg count.
-case $# in
-1)
- dir="$1"
- asm=asm
- ;;
-2)
- dir="$1"
- asm="$2"
- ;;
-*)
- echo "usage: $0 include-directory [asm-subdirectory]" >&2
- exit 1
- ;;
-esac
-
-lookup_ioctls()
-{
- type="$1"
- shift
-
- # Build the list of all ioctls
- regexp='^[[:space:]]*#[[:space:]]*define[[:space:]]\+[A-Z][A-Z0-9_]*[[:space:]]\+0x'"$type"'..\>'
- (cd "$dir" && for f; do grep "$regexp" "$f" "uapi/$f" 2>/dev/null; done) |
- sed -ne "s,$asm/,asm/,g"'
-s/^\(.*\):[[:space:]]*#[[:space:]]*define[[:space:]]*\([A-Z0-9_]*\)[[:space:]]*\(0x'"$type"'..\).*/ { "\1", "\2", \3 },/p' \
- >> ioctls.h
-}
-
-> ioctls.h
-
-lookup_ioctls 03 linux/hdreg.h
-lookup_ioctls 22 scsi/sg.h
-lookup_ioctls 46 linux/fb.h
-lookup_ioctls 4B linux/kd.h
-lookup_ioctls 4C linux/loop.h
-lookup_ioctls 53 linux/cdrom.h scsi/scsi.h scsi/scsi_ioctl.h
-lookup_ioctls 54 $asm/ioctls.h asm-generic/ioctls.h
-lookup_ioctls 56 linux/vt.h
-lookup_ioctls '7[12]' linux/videotext.h
-lookup_ioctls 89 $asm/sockios.h asm-generic/sockios.h linux/sockios.h
-lookup_ioctls 8B linux/wireless.h
-
-if [ -e $dir/Kbuild ]; then
- # kernel has exported user space headers, so query only them
- files=$(
- cd $dir || exit
- find . -mindepth 2 -name Kbuild | \
- sed -e 's:^\./::' -e 's:/Kbuild:/*:' | \
- grep -v '^asm-'
- echo "$asm/* asm-generic/*"
- )
- # special case: some headers aren't exported directly
- files="${files} media/* net/bluetooth/* pcmcia/*"
-else
- # older kernel tree or headers_install'ed tree, just assume some headers
- files="linux/* $asm/* asm-generic/* drm/* mtd/* rdma/* scsi/* sound/* video/* xen/*"
-fi
-
-# Build the list of all ioctls
-# Example output:
-# { "asm/ioctls.h", "TIOCSWINSZ", 0x5414 },
-# { "asm/mce.h", "MCE_GETCLEAR_FLAGS", _IOC(_IOC_NONE,'M',3,0) },
-regexp='^[[:space:]]*#[[:space:]]*define[[:space:]]\+[A-Z][A-Z0-9_]*[[:space:]]\+_S\?\(IO\|IOW\|IOR\|IOWR\)\>'
-(cd $dir && grep $regexp $files 2>/dev/null) | \
- sed -n \
- -e "s,$asm/,asm/,g" \
- -e 's/^\(.*\):[[:space:]]*#[[:space:]]*define[[:space:]]*\([A-Z0-9_]*\)[[:space:]]*_S\?I.*(\([^[,]*\)[[:space:]]*,[[:space:]]*\([^,)]*\).*/ { "\1", "\2", _IOC(_IOC_NONE,\3,\4,0) },/p' \
- >> ioctls.h
-
-# Strip uapi/ prefix
-sed -i 's|"uapi/|"|' ioctls.h
-
-# Sort and drop dups
-sort -u -o ioctls.h ioctls.h
-
-> ioctldefs.h
-
-# Collect potential ioctl names. ('bases' is a bad name. Sigh)
-# Some use a special base to offset their ioctls on. Extract that as well.
-# Some use 2 defines: _IOC(_IOC_NONE,DM_IOCTL,DM_LIST_DEVICES_CMD,....)
-bases=$(sed -n \
- -e 's/.*_IOC_NONE.*,[[:space:]]*\([A-Z][A-Z0-9_]\+\)[[:space:]]*,[[:space:]]*\([A-Z][A-Z0-9_]\+\)[[:space:]+,].*/\1\n\2/p' \
- -e 's/.*_IOC_NONE.*,[[:space:]]*\([A-Z][A-Z0-9_]\+\)[[:space:]+,].*/\1/p' \
- ioctls.h | sort -u)
-
-for base in $bases; do
- echo "Looking for $base"
- regexp="^[[:space:]]*#[[:space:]]*define[[:space:]]\+$base"
- line=$( (cd $dir && grep -h $regexp 2>/dev/null $files) | grep -v '\<_IO')
- if [ x"$line" != x ]; then
- echo "$base is a #define" # "($line)"
- echo "$line" >> ioctldefs.h
- fi
-
- if ! grep "\<$base\>" ioctldefs.h >/dev/null 2>/dev/null; then
- # Not all ioctl's are defines ... some (like the DM_* stuff)
- # are enums, so we have to extract that crap ourself
- (
- cd $dir || exit
- # -P: inhibit generation of linemarkers
- ${CPP:-cpp} -P $(grep -l $base $files 2>/dev/null) | sed '/^$/d' | \
- awk -v base="$base" '{
- if ($1 == "enum") {
- val = 0
- while ($NF != "};") {
- if (!getline)
- exit
- gsub(/,/, "")
- if ($0 ~ /=/)
- val = $NF
- if ($1 == base) {
- print "#define " base " (" val ")"
- exit
- }
- val++
- }
- }
- }'
- ) >> ioctldefs.h
- if ! grep "\<$base\>" ioctldefs.h >/dev/null 2>/dev/null; then
- echo "Can't find the definition for $base"
- else
- echo "$base is an enum"
- fi
- fi
-done
-
-# Sort and drop dups?
-# sort -u <ioctldefs.h >ioctldefs1.h && mv ioctldefs1.h ioctldefs.h
diff --git a/linux/kexec.h b/linux/kexec.h
deleted file mode 100644
index 767ccb5..0000000
--- a/linux/kexec.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef LINUX_KEXEC_H
-#define LINUX_KEXEC_H
-
-/* kexec system call - It loads the new kernel to boot into.
- * kexec does not sync, or unmount filesystems so if you need
- * that to happen you need to do that yourself.
- */
-
-/* kexec flags for different usage scenarios */
-#define KEXEC_ON_CRASH 0x00000001
-#define KEXEC_PRESERVE_CONTEXT 0x00000002
-#define KEXEC_ARCH_MASK 0xffff0000
-
-/* These values match the ELF architecture values.
- * Unless there is a good reason that should continue to be the case.
- */
-#define KEXEC_ARCH_DEFAULT ( 0 << 16)
-#define KEXEC_ARCH_386 ( 3 << 16)
-#define KEXEC_ARCH_X86_64 (62 << 16)
-#define KEXEC_ARCH_PPC (20 << 16)
-#define KEXEC_ARCH_PPC64 (21 << 16)
-#define KEXEC_ARCH_IA_64 (50 << 16)
-#define KEXEC_ARCH_ARM (40 << 16)
-#define KEXEC_ARCH_S390 (22 << 16)
-#define KEXEC_ARCH_SH (42 << 16)
-#define KEXEC_ARCH_MIPS_LE (10 << 16)
-#define KEXEC_ARCH_MIPS ( 8 << 16)
-
-/* The artificial cap on the number of segments passed to kexec_load. */
-#define KEXEC_SEGMENT_MAX 16
-
-/*
- * This structure is used to hold the arguments that are used when
- * loading kernel binaries.
- */
-struct kexec_segment {
- const void *buf;
- size_t bufsz;
- const void *mem;
- size_t memsz;
-};
-
-/* Load a new kernel image as described by the kexec_segment array
- * consisting of passed number of segments at the entry-point address.
- * The flags allow different useage types.
- */
-extern int kexec_load(void *, size_t, struct kexec_segment *,
- unsigned long int);
-
-#endif /* LINUX_KEXEC_H */
diff --git a/linux/keyctl.h b/linux/keyctl.h
deleted file mode 100644
index 840cb99..0000000
--- a/linux/keyctl.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* keyctl.h: keyctl command IDs
- *
- * Copyright (C) 2004, 2008 Red Hat, Inc. All Rights Reserved.
- * Written by David Howells (dhowells@redhat.com)
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version
- * 2 of the License, or (at your option) any later version.
- */
-
-#ifndef _LINUX_KEYCTL_H
-#define _LINUX_KEYCTL_H
-
-/* special process keyring shortcut IDs */
-#define KEY_SPEC_THREAD_KEYRING -1 /* - key ID for thread-specific keyring */
-#define KEY_SPEC_PROCESS_KEYRING -2 /* - key ID for process-specific keyring */
-#define KEY_SPEC_SESSION_KEYRING -3 /* - key ID for session-specific keyring */
-#define KEY_SPEC_USER_KEYRING -4 /* - key ID for UID-specific keyring */
-#define KEY_SPEC_USER_SESSION_KEYRING -5 /* - key ID for UID-session keyring */
-#define KEY_SPEC_GROUP_KEYRING -6 /* - key ID for GID-specific keyring */
-#define KEY_SPEC_REQKEY_AUTH_KEY -7 /* - key ID for assumed request_key auth key */
-#define KEY_SPEC_REQUESTOR_KEYRING -8 /* - key ID for request_key() dest keyring */
-
-/* request-key default keyrings */
-#define KEY_REQKEY_DEFL_NO_CHANGE -1
-#define KEY_REQKEY_DEFL_DEFAULT 0
-#define KEY_REQKEY_DEFL_THREAD_KEYRING 1
-#define KEY_REQKEY_DEFL_PROCESS_KEYRING 2
-#define KEY_REQKEY_DEFL_SESSION_KEYRING 3
-#define KEY_REQKEY_DEFL_USER_KEYRING 4
-#define KEY_REQKEY_DEFL_USER_SESSION_KEYRING 5
-#define KEY_REQKEY_DEFL_GROUP_KEYRING 6
-#define KEY_REQKEY_DEFL_REQUESTOR_KEYRING 7
-
-/* keyctl commands */
-#define KEYCTL_GET_KEYRING_ID 0 /* ask for a keyring's ID */
-#define KEYCTL_JOIN_SESSION_KEYRING 1 /* join or start named session keyring */
-#define KEYCTL_UPDATE 2 /* update a key */
-#define KEYCTL_REVOKE 3 /* revoke a key */
-#define KEYCTL_CHOWN 4 /* set ownership of a key */
-#define KEYCTL_SETPERM 5 /* set perms on a key */
-#define KEYCTL_DESCRIBE 6 /* describe a key */
-#define KEYCTL_CLEAR 7 /* clear contents of a keyring */
-#define KEYCTL_LINK 8 /* link a key into a keyring */
-#define KEYCTL_UNLINK 9 /* unlink a key from a keyring */
-#define KEYCTL_SEARCH 10 /* search for a key in a keyring */
-#define KEYCTL_READ 11 /* read a key or keyring's contents */
-#define KEYCTL_INSTANTIATE 12 /* instantiate a partially constructed key */
-#define KEYCTL_NEGATE 13 /* negate a partially constructed key */
-#define KEYCTL_SET_REQKEY_KEYRING 14 /* set default request-key keyring */
-#define KEYCTL_SET_TIMEOUT 15 /* set key timeout */
-#define KEYCTL_ASSUME_AUTHORITY 16 /* assume request_key() authorisation */
-#define KEYCTL_GET_SECURITY 17 /* get key security label */
-#define KEYCTL_SESSION_TO_PARENT 18 /* apply session keyring to parent process */
-#define KEYCTL_REJECT 19 /* reject a partially constructed key */
-#define KEYCTL_INSTANTIATE_IOV 20 /* instantiate a partially constructed key */
-#define KEYCTL_INVALIDATE 21 /* invalidate a key */
-#define KEYCTL_GET_PERSISTENT 22 /* get a user's persistent keyring */
-
-#endif /* _LINUX_KEYCTL_H */
diff --git a/linux/m68k/ioctlent.h.in b/linux/m68k/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/m68k/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/m68k/ioctls_arch0.h b/linux/m68k/ioctls_arch0.h
new file mode 100644
index 0000000..c8636ab
--- /dev/null
+++ b/linux/m68k/ioctls_arch0.h
@@ -0,0 +1,24 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/m68k/include/ tree. */
+{ "asm/fbio.h", "FBIOGATTR", _IOC_READ, 0x4606, 0x58 },
+{ "asm/fbio.h", "FBIOGCURMAX", _IOC_READ, 0x461c, 0x04 },
+{ "asm/fbio.h", "FBIOGCURPOS", _IOC_WRITE, 0x461b, 0x04 },
+{ "asm/fbio.h", "FBIOGCURSOR", _IOC_READ|_IOC_WRITE, 0x4619, 0x2c },
+{ "asm/fbio.h", "FBIOGETCMAP", _IOC_WRITE, 0x4604, 0x14 },
+{ "asm/fbio.h", "FBIOGTYPE", _IOC_READ, 0x4600, 0x18 },
+{ "asm/fbio.h", "FBIOGVIDEO", _IOC_READ, 0x4608, 0x04 },
+{ "asm/fbio.h", "FBIOPUTCMAP", _IOC_WRITE, 0x4603, 0x14 },
+{ "asm/fbio.h", "FBIOSATTR", _IOC_WRITE, 0x4605, 0x58 },
+{ "asm/fbio.h", "FBIOSCURPOS", _IOC_WRITE, 0x461a, 0x04 },
+{ "asm/fbio.h", "FBIOSCURSOR", _IOC_WRITE, 0x4618, 0x2c },
+{ "asm/fbio.h", "FBIOSVIDEO", _IOC_WRITE, 0x4607, 0x04 },
+{ "asm/fbio.h", "FBIO_WID_ALLOC", _IOC_READ|_IOC_WRITE, 0x461e, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_FREE", _IOC_WRITE, 0x461f, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_GET", _IOC_READ|_IOC_WRITE, 0x4621, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_PUT", _IOC_WRITE, 0x4620, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTALLOC", _IOC_READ|_IOC_WRITE, 0x4c35, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTFREE", _IOC_WRITE, 0x4c36, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTPOST", _IOC_WRITE, 0x4c38, 0x1c },
+{ "asm/fbio.h", "LEO_CLUTREAD", _IOC_WRITE, 0x4c37, 0x1c },
+{ "asm/fbio.h", "LEO_GETGAMMA", _IOC_READ, 0x4c45, 0x04 },
+{ "asm/fbio.h", "LEO_SETGAMMA", _IOC_WRITE, 0x4c44, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x545E, 0 },
diff --git a/linux/m68k/ioctls_inc0.h b/linux/m68k/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/m68k/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/m68k/syscallent.h b/linux/m68k/syscallent.h
index 155f01c..af9c3a2 100644
--- a/linux/m68k/syscallent.h
+++ b/linux/m68k/syscallent.h
@@ -26,454 +26,362 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "chown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 1, TD|TM|SI, sys_old_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, sys_vm86old, "vm86old" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 4, 0, sys_cacheflush, "cacheflush" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, printargs, "getpagesize" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 5, TD, sys_pread, "pread64" }, /* 180 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 181 */
- { 3, TF, sys_chown16, "lchown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "chown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_geteuid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "lchown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 5, 0, NULL, NULL }, /* 218 */
- { 5, 0, NULL, NULL }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 0, 0, sys_gettid, "gettid" }, /* 221 */
- { 2, TS, sys_kill, "tkill" }, /* 222 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 223 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 224 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 225 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 226 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 227 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 228 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 229 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 230 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 231 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 232 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 233 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 234 */
- { 6, 0, sys_futex, "futex" }, /* 235 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 236 */
- { 3, TM, sys_mincore, "mincore" }, /* 237 */
- { 3, TM, sys_madvise, "madvise" }, /* 238 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 239 */
- { 4, TD, sys_readahead, "readahead" }, /* 240 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 241 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 242 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 243 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 244 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 245 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 246 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 247 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 248 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 249 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 250 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 251 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 252 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 253 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 254 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 255 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 256 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 257 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 258 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 259 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 260 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 261 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 262 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 263 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 264 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 265 */
- { 2, TF, sys_utimes, "utimes" }, /* 266 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 267 */
- { 6, TM, sys_mbind, "mbind" }, /* 268 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 269 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 270 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 271 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 272 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 273 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 274 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 275 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 276 */
- { 5, TP, sys_waitid, "waitid" }, /* 277 */
- { 5, 0, sys_vserver, "vserver" }, /* 278 */
- { 5, 0, sys_add_key, "add_key" }, /* 279 */
- { 5, 0, sys_request_key, "request_key" }, /* 280 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 281 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 282 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 283 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 284 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 285 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 286 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 287 */
- { 4, TD|TF, sys_openat, "openat" }, /* 288 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 291 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 292 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 293 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 294 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 295 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 296 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 297 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 298 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 299 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 300 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 301 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 302 */
- { 1, TP, sys_unshare, "unshare" }, /* 303 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 304 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 305 */
- { 6, TD, sys_splice, "splice" }, /* 306 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 307 */
- { 4, TD, sys_tee, "tee" }, /* 308 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 309 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 310 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 311 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 312 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 313 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 314 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 315 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 316 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 317 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 318 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 319 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 320 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 321 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 322 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 323 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 324 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 325 */
- { 3, TD, sys_dup3, "dup3" }, /* 326 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 327 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 328 */
- { 5, TD, sys_preadv, "preadv" }, /* 329 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 330 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 331 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 332 */
- { 0, 0, sys_get_thread_area, "get_thread_area"}, /* 333 */
- { 1, 0, sys_set_thread_area, "set_thread_area"}, /* 334 */
- { 6, 0, printargs, "atomic_comxchg_32"}, /* 335 */
- { 0, 0, printargs, "atomic_barrier"}, /* 336 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 337 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 338 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 339 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 340 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 341 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 342 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 343 */
- { 2, TD, sys_setns, "setns" }, /* 344 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 345 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 346 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 347 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 348 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 349 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 350 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 351 */
- { 5, 0, NULL, NULL }, /* 352 */
- { 5, 0, NULL, NULL }, /* 353 */
- { 5, 0, NULL, NULL }, /* 354 */
- { 5, 0, NULL, NULL }, /* 355 */
- { 5, 0, NULL, NULL }, /* 356 */
- { 5, 0, NULL, NULL }, /* 357 */
- { 5, 0, NULL, NULL }, /* 358 */
- { 5, 0, NULL, NULL }, /* 359 */
- { 5, 0, NULL, NULL }, /* 360 */
- { 5, 0, NULL, NULL }, /* 361 */
- { 5, 0, NULL, NULL }, /* 362 */
- { 5, 0, NULL, NULL }, /* 363 */
- { 5, 0, NULL, NULL }, /* 364 */
- { 5, 0, NULL, NULL }, /* 365 */
- { 5, 0, NULL, NULL }, /* 366 */
- { 5, 0, NULL, NULL }, /* 367 */
- { 5, 0, NULL, NULL }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "chown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 1, TD|TM|SI, sys_old_mmap, "old_mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 1, 0, sys_vm86old, "vm86old" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 4, 0, sys_cacheflush, "cacheflush" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, printargs, "getpagesize" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 5, TD, sys_pread, "pread64" },
+[181] = { 5, TD, sys_pwrite, "pwrite64" },
+[182] = { 3, TF, sys_chown16, "lchown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "chown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_geteuid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "lchown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218 ... 219] = { },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 0, 0, sys_gettid, "gettid" },
+[222] = { 2, TS, sys_kill, "tkill" },
+[223] = { 5, TF, sys_setxattr, "setxattr" },
+[224] = { 5, TF, sys_setxattr, "lsetxattr" },
+[225] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[226] = { 4, TF, sys_getxattr, "getxattr" },
+[227] = { 4, TF, sys_getxattr, "lgetxattr" },
+[228] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[229] = { 3, TF, sys_listxattr, "listxattr" },
+[230] = { 3, TF, sys_listxattr, "llistxattr" },
+[231] = { 3, TD, sys_flistxattr, "flistxattr" },
+[232] = { 2, TF, sys_removexattr, "removexattr" },
+[233] = { 2, TF, sys_removexattr, "lremovexattr" },
+[234] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[235] = { 6, 0, sys_futex, "futex" },
+[236] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[237] = { 3, TM, sys_mincore, "mincore" },
+[238] = { 3, TM, sys_madvise, "madvise" },
+[239] = { 3, TD, sys_fcntl, "fcntl64" },
+[240] = { 4, TD, sys_readahead, "readahead" },
+[241] = { 2, 0, sys_io_setup, "io_setup" },
+[242] = { 1, 0, sys_io_destroy, "io_destroy" },
+[243] = { 5, 0, sys_io_getevents, "io_getevents" },
+[244] = { 3, 0, sys_io_submit, "io_submit" },
+[245] = { 3, 0, sys_io_cancel, "io_cancel" },
+[246] = { 5, TD, sys_fadvise64, "fadvise64" },
+[247] = { 1, TP|SE, sys_exit, "exit_group" },
+[248] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[249] = { 1, TD, sys_epoll_create, "epoll_create" },
+[250] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[251] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[252] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[253] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[254] = { 3, 0, sys_timer_create, "timer_create" },
+[255] = { 4, 0, sys_timer_settime, "timer_settime" },
+[256] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[257] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[258] = { 1, 0, sys_timer_delete, "timer_delete" },
+[259] = { 2, 0, sys_clock_settime, "clock_settime" },
+[260] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[261] = { 2, 0, sys_clock_getres, "clock_getres" },
+[262] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[263] = { 3, TF, sys_statfs64, "statfs64" },
+[264] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[265] = { 3, TS, sys_tgkill, "tgkill" },
+[266] = { 2, TF, sys_utimes, "utimes" },
+[267] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[268] = { 6, TM, sys_mbind, "mbind" },
+[269] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[270] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[271] = { 4, 0, sys_mq_open, "mq_open" },
+[272] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[273] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[274] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[275] = { 2, 0, sys_mq_notify, "mq_notify" },
+[276] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[277] = { 5, TP, sys_waitid, "waitid" },
+[278] = { 5, 0, sys_vserver, "vserver" },
+[279] = { 5, 0, sys_add_key, "add_key" },
+[280] = { 5, 0, sys_request_key, "request_key" },
+[281] = { 5, 0, sys_keyctl, "keyctl" },
+[282] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[283] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[284] = { 0, TD, sys_inotify_init, "inotify_init" },
+[285] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[286] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[287] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[288] = { 4, TD|TF, sys_openat, "openat" },
+[289] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[290] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[291] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[292] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[293] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[294] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[295] = { 4, TD|TF, sys_renameat, "renameat" },
+[296] = { 5, TD|TF, sys_linkat, "linkat" },
+[297] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[298] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[299] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[300] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[301] = { 6, TD, sys_pselect6, "pselect6" },
+[302] = { 5, TD, sys_ppoll, "ppoll" },
+[303] = { 1, TP, sys_unshare, "unshare" },
+[304] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[305] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[306] = { 6, TD, sys_splice, "splice" },
+[307] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[308] = { 4, TD, sys_tee, "tee" },
+[309] = { 4, TD, sys_vmsplice, "vmsplice" },
+[310] = { 6, TM, sys_move_pages, "move_pages" },
+[311] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[312] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[313] = { 4, 0, sys_kexec_load, "kexec_load" },
+[314] = { 3, 0, sys_getcpu, "getcpu" },
+[315] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[316] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[317] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[318] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[319] = { 1, TD, sys_eventfd, "eventfd" },
+[320] = { 6, TD, sys_fallocate, "fallocate" },
+[321] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[322] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[323] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[324] = { 2, TD, sys_eventfd2, "eventfd2" },
+[325] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[326] = { 3, TD, sys_dup3, "dup3" },
+[327] = { 2, TD, sys_pipe2, "pipe2" },
+[328] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[329] = { 5, TD, sys_preadv, "preadv" },
+[330] = { 5, TD, sys_pwritev, "pwritev" },
+[331] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[332] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[333] = { 0, 0, sys_get_thread_area, "get_thread_area" },
+[334] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[335] = { 6, 0, printargs, "atomic_comxchg_32" },
+[336] = { 0, 0, printargs, "atomic_barrier" },
+[337] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[338] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[339] = { 4, 0, sys_prlimit64, "prlimit64" },
+[340] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[341] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[342] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[343] = { 1, TD, sys_syncfs, "syncfs" },
+[344] = { 2, TD, sys_setns, "setns" },
+[345] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[346] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[347] = { 5, 0, sys_kcmp, "kcmp" },
+[348] = { 3, TD, sys_finit_module, "finit_module" },
+[349] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[350] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[351] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[352] = { 3, 0, sys_getrandom, "getrandom", },
+[353] = { 2, TD, sys_memfd_create, "memfd_create", },
+[354] = { 3, TD, sys_bpf, "bpf", },
+[355] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[356 ... 399] = { },
+
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
diff --git a/linux/metag/ioctlent.h.in b/linux/metag/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/metag/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/metag/ioctls_arch0.h b/linux/metag/ioctls_arch0.h
new file mode 100644
index 0000000..191bb36
--- /dev/null
+++ b/linux/metag/ioctls_arch0.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/metag/include/ tree. */
diff --git a/linux/metag/ioctls_inc0.h b/linux/metag/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/metag/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/metag/syscallent.h b/linux/metag/syscallent.h
index ac42cd2..a8283e2 100644
--- a/linux/metag/syscallent.h
+++ b/linux/metag/syscallent.h
@@ -1,266 +1,7 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { }, /* 42 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 43 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 44 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 45 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 46 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 5, TD, sys_llseek, "_llseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 5, TD, sys_pread, "pread64" }, /* 67 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 5, TD, sys_preadv, "preadv" }, /* 69 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 79 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"}, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"}, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 2, TI, sys_msgget, "msgget" }, /* 186 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 3, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 4, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 3, TI, sys_semop, "semop" }, /* 193 */
- { 3, TI, sys_shmget, "shmget" }, /* 194 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 4, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap, "mmap2" }, /* 222 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 223 */
- { 2, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 2, TM, sys_mlock, "mlock" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
- { }, /* 244 */
- { 2, 0, printargs, "metag_setglobalbit" }, /* 245 */
- { 1, 0, printargs, "metag_set_fpu_flags" }, /* 246 */
- { 1, 0, printargs, "metag_set_tls" }, /* 247 */
- { 0, 0, printargs, "metag_get_tls" }, /* 248 */
-
- [249 ... 259] = { },
-
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
+#include "32/syscallent.h"
+[244] = { },
+[245] = { 2, 0, printargs, "metag_setglobalbit" },
+[246] = { 1, 0, printargs, "metag_set_fpu_flags" },
+[247] = { 1, 0, printargs, "metag_set_tls" },
+[248] = { 0, NF, printargs, "metag_get_tls" },
+[249 ... 259] = { },
diff --git a/linux/microblaze/ioctlent.h.in b/linux/microblaze/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/microblaze/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/microblaze/ioctls_arch0.h b/linux/microblaze/ioctls_arch0.h
new file mode 100644
index 0000000..e310f8e
--- /dev/null
+++ b/linux/microblaze/ioctls_arch0.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/microblaze/include/ tree. */
diff --git a/linux/microblaze/ioctls_inc0.h b/linux/microblaze/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/microblaze/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/microblaze/syscallent.h b/linux/microblaze/syscallent.h
index 2f50eae..4cb6b4e 100644
--- a/linux/microblaze/syscallent.h
+++ b/linux/microblaze/syscallent.h
@@ -26,387 +26,391 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "old_getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, sys_vm86old, "vm86old" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, sys_vm86, "vm86" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 5, TD, sys_pread, "pread64" }, /* 180 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_geteuid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 4, 0, NULL, NULL }, /* 222 */
- { 4, 0, NULL, NULL }, /* 223 */
- { 0, 0, sys_gettid, "gettid" }, /* 224 */
- { 4, TD, sys_readahead, "readahead" }, /* 225 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 226 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 228 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 229 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 231 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 232 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 234 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 235 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 237 */
- { 2, TS, sys_kill, "tkill" }, /* 238 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 239 */
- { 6, 0, sys_futex, "futex" }, /* 240 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 241 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 242 */
- { 1, 0, sys_set_thread_area, "set_thread_area"}, /* 243 */
- { 1, 0, sys_get_thread_area, "get_thread_area"}, /* 244 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 245 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 246 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 247 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 248 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 250 */
- { 0, 0, NULL, NULL }, /* 251 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 252 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 253 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 254 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 255 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 256 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 257 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 258 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 259 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 260 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 261 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 262 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 263 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 264 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 265 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 266 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 267 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 268 */
- { 2, TD, sys_fstatfs64, "fstatfs64" }, /* 269 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 270 */
- { 2, TF, sys_utimes, "utimes" }, /* 271 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 272 */
- { 5, 0, sys_vserver, "vserver" }, /* 273 */
- { 4, TM, sys_mbind, "mbind" }, /* 274 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 275 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 276 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 277 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 278 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 279 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive"}, /* 280 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 281 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 282 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 283 */
- { 5, TP, sys_waitid, "waitid" }, /* 284 */
- { 5, 0, NULL, NULL }, /* 285 */
- { 5, 0, sys_add_key, "add_key" }, /* 286 */
- { 4, 0, sys_request_key, "request_key" }, /* 287 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 288 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 289 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 290 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 291 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 292 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 293 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 294 */
- { 4, TD|TF, sys_openat, "openat" }, /* 295 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 296 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 297 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 298 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 299 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 300 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 301 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 302 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 303 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 304 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 305 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 306 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 307 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 308 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 309 */
- { 1, TP, sys_unshare, "unshare" }, /* 310 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 311 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 312 */
- { 6, TD, sys_splice, "splice" }, /* 313 */
- { 6, TD, sys_sync_file_range, "sync_file_range"}, /* 314 */
- { 4, TD, sys_tee, "tee" }, /* 315 */
- { 5, TD, sys_vmsplice, "vmsplice" }, /* 316 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 317 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 318 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 319 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 320 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 321 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 322 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 323 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 324 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 325 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 326 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 327 */
- { 4, TI, sys_semctl, "semctl" }, /* 328 */
- { 4, TI, sys_semget, "semget" }, /* 329 */
- { 4, TI, sys_semop, "semop" }, /* 330 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 331 */
- { 4, TI, sys_msgget, "msgget" }, /* 332 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 333 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 334 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 335 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 336 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 337 */
- { 4, TI, sys_shmget, "shmget" }, /* 338 */
- { 4, TD|TS, printargs, "signalfd4" }, /* 339 */
- { 2, TD, printargs, "eventfd2" }, /* 340 */
- { 1, TD, printargs, "epoll_create1" }, /* 341 */
- { 3, TD, printargs, "dup3" }, /* 342 */
- { 2, TD, printargs, "pipe2" }, /* 343 */
- { 1, TD, printargs, "inotify_init1" }, /* 344 */
- { 3, TN, sys_socket, "socket" }, /* 345 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 346 */
- { 3, TN, sys_bind, "bind" }, /* 347 */
- { 2, TN, sys_listen, "listen" }, /* 348 */
- { 3, TN, sys_accept, "accept" }, /* 349 */
- { 3, TN, sys_connect, "connect" }, /* 350 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 351 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 352 */
- { 6, TN, sys_sendto, "sendto" }, /* 353 */
- { 4, TN, sys_send, "send" }, /* 354 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 355 */
- { 4, TN, sys_recv, "recv" }, /* 356 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 357 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 358 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 359 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 360 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 361 */
- { 4, TN, sys_accept4, "accept4" }, /* 362 */
- { 5, TD, sys_preadv, "preadv" }, /* 363 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 364 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 365 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 366 */
- { 5, TN, printargs, "recvmmsg" }, /* 367 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 368 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 369 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 370 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 371 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 372 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 373 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 374 */
- { 2, TD, sys_setns, "setns" }, /* 375 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 376 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 377 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 378 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 379 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 380 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 381 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 382 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 383 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_mmap, "old_mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 1, 0, sys_vm86old, "vm86old" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, sys_vm86, "vm86" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 5, TD, sys_pread, "pread64" },
+[181] = { 5, TD, sys_pwrite, "pwrite64" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_geteuid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222 ... 223] = { },
+[224] = { 0, 0, sys_gettid, "gettid" },
+[225] = { 4, TD, sys_readahead, "readahead" },
+[226] = { 5, TF, sys_setxattr, "setxattr" },
+[227] = { 5, TF, sys_setxattr, "lsetxattr" },
+[228] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[229] = { 4, TF, sys_getxattr, "getxattr" },
+[230] = { 4, TF, sys_getxattr, "lgetxattr" },
+[231] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[232] = { 3, TF, sys_listxattr, "listxattr" },
+[233] = { 3, TF, sys_listxattr, "llistxattr" },
+[234] = { 3, TD, sys_flistxattr, "flistxattr" },
+[235] = { 2, TF, sys_removexattr, "removexattr" },
+[236] = { 2, TF, sys_removexattr, "lremovexattr" },
+[237] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[238] = { 2, TS, sys_kill, "tkill" },
+[239] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[240] = { 6, 0, sys_futex, "futex" },
+[241] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[242] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[243] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[244] = { 1, 0, sys_get_thread_area, "get_thread_area" },
+[245] = { 2, 0, sys_io_setup, "io_setup" },
+[246] = { 1, 0, sys_io_destroy, "io_destroy" },
+[247] = { 5, 0, sys_io_getevents, "io_getevents" },
+[248] = { 3, 0, sys_io_submit, "io_submit" },
+[249] = { 3, 0, sys_io_cancel, "io_cancel" },
+[250] = { 5, TD, sys_fadvise64, "fadvise64" },
+[251] = { },
+[252] = { 1, TP|SE, sys_exit, "exit_group" },
+[253] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[254] = { 1, TD, sys_epoll_create, "epoll_create" },
+[255] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[256] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[257] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[258] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[259] = { 3, 0, sys_timer_create, "timer_create" },
+[260] = { 4, 0, sys_timer_settime, "timer_settime" },
+[261] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[262] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[263] = { 1, 0, sys_timer_delete, "timer_delete" },
+[264] = { 2, 0, sys_clock_settime, "clock_settime" },
+[265] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[266] = { 2, 0, sys_clock_getres, "clock_getres" },
+[267] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[268] = { 3, TF, sys_statfs64, "statfs64" },
+[269] = { 2, TD, sys_fstatfs64, "fstatfs64" },
+[270] = { 3, TS, sys_tgkill, "tgkill" },
+[271] = { 2, TF, sys_utimes, "utimes" },
+[272] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[273] = { 5, 0, sys_vserver, "vserver" },
+[274] = { 6, TM, sys_mbind, "mbind" },
+[275] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[276] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[277] = { 4, 0, sys_mq_open, "mq_open" },
+[278] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[279] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[280] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[281] = { 2, 0, sys_mq_notify, "mq_notify" },
+[282] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[283] = { 4, 0, sys_kexec_load, "kexec_load" },
+[284] = { 5, TP, sys_waitid, "waitid" },
+[285] = { },
+[286] = { 5, 0, sys_add_key, "add_key" },
+[287] = { 4, 0, sys_request_key, "request_key" },
+[288] = { 5, 0, sys_keyctl, "keyctl" },
+[289] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[290] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[291] = { 0, TD, sys_inotify_init, "inotify_init" },
+[292] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[293] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[294] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[295] = { 4, TD|TF, sys_openat, "openat" },
+[296] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[297] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[298] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[299] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[300] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[301] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[302] = { 4, TD|TF, sys_renameat, "renameat" },
+[303] = { 5, TD|TF, sys_linkat, "linkat" },
+[304] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[305] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[306] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[307] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[308] = { 6, TD, sys_pselect6, "pselect6" },
+[309] = { 5, TD, sys_ppoll, "ppoll" },
+[310] = { 1, TP, sys_unshare, "unshare" },
+[311] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[312] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[313] = { 6, TD, sys_splice, "splice" },
+[314] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[315] = { 4, TD, sys_tee, "tee" },
+[316] = { 5, TD, sys_vmsplice, "vmsplice" },
+[317] = { 6, TM, sys_move_pages, "move_pages" },
+[318] = { 3, 0, sys_getcpu, "getcpu" },
+[319] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[320] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[321] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[322] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[323] = { 1, TD, sys_eventfd, "eventfd" },
+[324] = { 6, TD, sys_fallocate, "fallocate" },
+[325] = { 4, TI, sys_semtimedop, "semtimedop" },
+[326] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[327] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[328] = { 4, TI, sys_semctl, "semctl" },
+[329] = { 3, TI, sys_semget, "semget" },
+[330] = { 3, TI, sys_semop, "semop" },
+[331] = { 3, TI, sys_msgctl, "msgctl" },
+[332] = { 2, TI, sys_msgget, "msgget" },
+[333] = { 5, TI, sys_msgrcv, "msgrcv" },
+[334] = { 4, TI, sys_msgsnd, "msgsnd" },
+[335] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[336] = { 3, TI, sys_shmctl, "shmctl" },
+[337] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[338] = { 3, TI, sys_shmget, "shmget" },
+[339] = { 4, TD|TS, printargs, "signalfd4" },
+[340] = { 2, TD, printargs, "eventfd2" },
+[341] = { 1, TD, printargs, "epoll_create1" },
+[342] = { 3, TD, printargs, "dup3" },
+[343] = { 2, TD, printargs, "pipe2" },
+[344] = { 1, TD, printargs, "inotify_init1" },
+[345] = { 3, TN, sys_socket, "socket" },
+[346] = { 4, TN, sys_socketpair, "socketpair" },
+[347] = { 3, TN, sys_bind, "bind" },
+[348] = { 2, TN, sys_listen, "listen" },
+[349] = { 3, TN, sys_accept, "accept" },
+[350] = { 3, TN, sys_connect, "connect" },
+[351] = { 3, TN, sys_getsockname, "getsockname" },
+[352] = { 3, TN, sys_getpeername, "getpeername" },
+[353] = { 6, TN, sys_sendto, "sendto" },
+[354] = { 4, TN, sys_send, "send" },
+[355] = { 6, TN, sys_recvfrom, "recvfrom" },
+[356] = { 4, TN, sys_recv, "recv" },
+[357] = { 5, TN, sys_setsockopt, "setsockopt" },
+[358] = { 5, TN, sys_getsockopt, "getsockopt" },
+[359] = { 2, TN, sys_shutdown, "shutdown" },
+[360] = { 3, TN, sys_sendmsg, "sendmsg" },
+[361] = { 3, TN, sys_recvmsg, "recvmsg" },
+[362] = { 4, TN, sys_accept4, "accept4" },
+[363] = { 5, TD, sys_preadv, "preadv" },
+[364] = { 5, TD, sys_pwritev, "pwritev" },
+[365] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[366] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[367] = { 5, TN, printargs, "recvmmsg" },
+[368] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[369] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[370] = { 4, 0, sys_prlimit64, "prlimit64" },
+[371] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[372] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[373] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[374] = { 1, TD, sys_syncfs, "syncfs" },
+[375] = { 2, TD, sys_setns, "setns" },
+[376] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[377] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[378] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[379] = { 5, 0, sys_kcmp, "kcmp" },
+[380] = { 3, TD, sys_finit_module, "finit_module" },
+[381] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[382] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[383] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[384] = { 3, 0, sys_seccomp, "seccomp", },
+[385] = { 3, 0, sys_getrandom, "getrandom", },
+[386] = { 2, TD, sys_memfd_create, "memfd_create", },
+[387] = { 3, TD, sys_bpf, "bpf", },
+[388] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/mips/.gitignore b/linux/mips/.gitignore
new file mode 100644
index 0000000..51a6ade
--- /dev/null
+++ b/linux/mips/.gitignore
@@ -0,0 +1,3 @@
+syscallent-n32-stub.h
+syscallent-n64-stub.h
+syscallent-o32-stub.h
diff --git a/linux/mips/arch_regs.h b/linux/mips/arch_regs.h
new file mode 100644
index 0000000..6372bad
--- /dev/null
+++ b/linux/mips/arch_regs.h
@@ -0,0 +1,18 @@
+struct mips_regs {
+ uint64_t uregs[38];
+};
+
+extern struct mips_regs mips_regs;
+
+#define REG_V0 2
+#define REG_A0 4
+
+#define mips_REG_V0 mips_regs.uregs[REG_V0]
+#define mips_REG_A0 mips_regs.uregs[REG_A0 + 0]
+#define mips_REG_A1 mips_regs.uregs[REG_A0 + 1]
+#define mips_REG_A2 mips_regs.uregs[REG_A0 + 2]
+#define mips_REG_A3 mips_regs.uregs[REG_A0 + 3]
+#define mips_REG_A4 mips_regs.uregs[REG_A0 + 4]
+#define mips_REG_A5 mips_regs.uregs[REG_A0 + 5]
+#define mips_REG_SP mips_regs.uregs[29]
+#define mips_REG_EPC mips_regs.uregs[34]
diff --git a/linux/mips/errnoent.h b/linux/mips/errnoent.h
index b22ee87..a82f9c6 100644
--- a/linux/mips/errnoent.h
+++ b/linux/mips/errnoent.h
@@ -1,1135 +1,150 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "ENOMSG", /* 35 */
- "EIDRM", /* 36 */
- "ECHRNG", /* 37 */
- "EL2NSYNC", /* 38 */
- "EL3HLT", /* 39 */
- "EL3RST", /* 40 */
- "ELNRNG", /* 41 */
- "EUNATCH", /* 42 */
- "ENOCSI", /* 43 */
- "EL2HLT", /* 44 */
- "EDEADLK", /* 45 */
- "ENOLCK", /* 46 */
- "ERRNO_47", /* 47 */
- "ERRNO_48", /* 48 */
- "ERRNO_49", /* 49 */
- "EBADE", /* 50 */
- "EBADR", /* 51 */
- "EXFULL", /* 52 */
- "ENOANO", /* 53 */
- "EBADRQC", /* 54 */
- "EBADSLT", /* 55 */
- "EDEADLOCK", /* 56 */
- "ERRNO_57", /* 57 */
- "ERRNO_58", /* 58 */
- "EBFONT", /* 59 */
- "ENOSTR", /* 60 */
- "ENODATA", /* 61 */
- "ETIME", /* 62 */
- "ENOSR", /* 63 */
- "ENONET", /* 64 */
- "ENOPKG", /* 65 */
- "EREMOTE", /* 66 */
- "ENOLINK", /* 67 */
- "EADV", /* 68 */
- "ESRMNT", /* 69 */
- "ECOMM", /* 70 */
- "EPROTO", /* 71 */
- "ERRNO_72", /* 72 */
- "EDOTDOT", /* 73 */
- "EMULTIHOP", /* 74 */
- "ERRNO_75", /* 75 */
- "ERRNO_76", /* 76 */
- "EBADMSG", /* 77 */
- "ENAMETOOLONG", /* 78 */
- "EOVERFLOW", /* 79 */
- "ENOTUNIQ", /* 80 */
- "EBADFD", /* 81 */
- "EREMCHG", /* 82 */
- "ELIBACC", /* 83 */
- "ELIBBAD", /* 84 */
- "ELIBSCN", /* 85 */
- "ELIBMAX", /* 86 */
- "ELIBEXEC", /* 87 */
- "EILSEQ", /* 88 */
- "ENOSYS", /* 89 */
- "ELOOP", /* 90 */
- "ERESTART", /* 91 */
- "ESTRPIPE", /* 92 */
- "ENOTEMPTY", /* 93 */
- "EUSERS", /* 94 */
- "ENOTSOCK", /* 95 */
- "EDESTADDRREQ", /* 96 */
- "EMSGSIZE", /* 97 */
- "EPROTOTYPE", /* 98 */
- "ENOPROTOOPT", /* 99 */
- "ERRNO_100", /* 100 */
- "ERRNO_101", /* 101 */
- "ERRNO_102", /* 102 */
- "ERRNO_103", /* 103 */
- "ERRNO_104", /* 104 */
- "ERRNO_105", /* 105 */
- "ERRNO_106", /* 106 */
- "ERRNO_107", /* 107 */
- "ERRNO_108", /* 108 */
- "ERRNO_109", /* 109 */
- "ERRNO_110", /* 110 */
- "ERRNO_111", /* 111 */
- "ERRNO_112", /* 112 */
- "ERRNO_113", /* 113 */
- "ERRNO_114", /* 114 */
- "ERRNO_115", /* 115 */
- "ERRNO_116", /* 116 */
- "ERRNO_117", /* 117 */
- "ERRNO_118", /* 118 */
- "ERRNO_119", /* 119 */
- "EPROTONOSUPPORT", /* 120 */
- "ESOCKTNOSUPPORT", /* 121 */
- "EOPNOTSUPP", /* 122 */
- "EPFNOSUPPORT", /* 123 */
- "EAFNOSUPPORT", /* 124 */
- "EADDRINUSE", /* 125 */
- "EADDRNOTAVAIL", /* 126 */
- "ENETDOWN", /* 127 */
- "ENETUNREACH", /* 128 */
- "ENETRESET", /* 129 */
- "ECONNABORTED", /* 130 */
- "ECONNRESET", /* 131 */
- "ENOBUFS", /* 132 */
- "EISCONN", /* 133 */
- "ENOTCONN", /* 134 */
- "EUCLEAN", /* 135 */
- "ERRNO_136", /* 136 */
- "ENOTNAM", /* 137 */
- "ENAVAIL", /* 138 */
- "EISNAM", /* 139 */
- "EREMOTEIO", /* 140 */
- "EINIT", /* 141 */
- "EREMDEV", /* 142 */
- "ESHUTDOWN", /* 143 */
- "ETOOMANYREFS", /* 144 */
- "ETIMEDOUT", /* 145 */
- "ECONNREFUSED", /* 146 */
- "EHOSTDOWN", /* 147 */
- "EHOSTUNREACH", /* 148 */
- "EALREADY", /* 149 */
- "EINPROGRESS", /* 150 */
- "ESTALE", /* 151 */
- "ERRNO_152", /* 152 */
- "ERRNO_153", /* 153 */
- "ERRNO_154", /* 154 */
- "ERRNO_155", /* 155 */
- "ERRNO_156", /* 156 */
- "ERRNO_157", /* 157 */
- "ECANCELED", /* 158 */
- "ENOMEDIUM", /* 159 */
- "EMEDIUMTYPE", /* 160 */
- "ERRNO_161", /* 161 */
- "ERRNO_162", /* 162 */
- "ERRNO_163", /* 163 */
- "ERRNO_164", /* 164 */
- "ERRNO_165", /* 165 */
- "ERRNO_166", /* 166 */
- "ERRNO_167", /* 167 */
- "ERRNO_168", /* 168 */
- "ERRNO_169", /* 169 */
- "ERRNO_170", /* 170 */
- "ERRNO_171", /* 171 */
- "ERRNO_172", /* 172 */
- "ERRNO_173", /* 173 */
- "ERRNO_174", /* 174 */
- "ERRNO_175", /* 175 */
- "ERRNO_176", /* 176 */
- "ERRNO_177", /* 177 */
- "ERRNO_178", /* 178 */
- "ERRNO_179", /* 179 */
- "ERRNO_180", /* 180 */
- "ERRNO_181", /* 181 */
- "ERRNO_182", /* 182 */
- "ERRNO_183", /* 183 */
- "ERRNO_184", /* 184 */
- "ERRNO_185", /* 185 */
- "ERRNO_186", /* 186 */
- "ERRNO_187", /* 187 */
- "ERRNO_188", /* 188 */
- "ERRNO_189", /* 189 */
- "ERRNO_190", /* 190 */
- "ERRNO_191", /* 191 */
- "ERRNO_192", /* 192 */
- "ERRNO_193", /* 193 */
- "ERRNO_194", /* 194 */
- "ERRNO_195", /* 195 */
- "ERRNO_196", /* 196 */
- "ERRNO_197", /* 197 */
- "ERRNO_198", /* 198 */
- "ERRNO_199", /* 199 */
- "ERRNO_200", /* 200 */
- "ERRNO_201", /* 201 */
- "ERRNO_202", /* 202 */
- "ERRNO_203", /* 203 */
- "ERRNO_204", /* 204 */
- "ERRNO_205", /* 205 */
- "ERRNO_206", /* 206 */
- "ERRNO_207", /* 207 */
- "ERRNO_208", /* 208 */
- "ERRNO_209", /* 209 */
- "ERRNO_210", /* 210 */
- "ERRNO_211", /* 211 */
- "ERRNO_212", /* 212 */
- "ERRNO_213", /* 213 */
- "ERRNO_214", /* 214 */
- "ERRNO_215", /* 215 */
- "ERRNO_216", /* 216 */
- "ERRNO_217", /* 217 */
- "ERRNO_218", /* 218 */
- "ERRNO_219", /* 219 */
- "ERRNO_220", /* 220 */
- "ERRNO_221", /* 221 */
- "ERRNO_222", /* 222 */
- "ERRNO_223", /* 223 */
- "ERRNO_224", /* 224 */
- "ERRNO_225", /* 225 */
- "ERRNO_226", /* 226 */
- "ERRNO_227", /* 227 */
- "ERRNO_228", /* 228 */
- "ERRNO_229", /* 229 */
- "ERRNO_230", /* 230 */
- "ERRNO_231", /* 231 */
- "ERRNO_232", /* 232 */
- "ERRNO_233", /* 233 */
- "ERRNO_234", /* 234 */
- "ERRNO_235", /* 235 */
- "ERRNO_236", /* 236 */
- "ERRNO_237", /* 237 */
- "ERRNO_238", /* 238 */
- "ERRNO_239", /* 239 */
- "ERRNO_240", /* 240 */
- "ERRNO_241", /* 241 */
- "ERRNO_242", /* 242 */
- "ERRNO_243", /* 243 */
- "ERRNO_244", /* 244 */
- "ERRNO_245", /* 245 */
- "ERRNO_246", /* 246 */
- "ERRNO_247", /* 247 */
- "ERRNO_248", /* 248 */
- "ERRNO_249", /* 249 */
- "ERRNO_250", /* 250 */
- "ERRNO_251", /* 251 */
- "ERRNO_252", /* 252 */
- "ERRNO_253", /* 253 */
- "ERRNO_254", /* 254 */
- "ERRNO_255", /* 255 */
- "ERRNO_256", /* 256 */
- "ERRNO_257", /* 257 */
- "ERRNO_258", /* 258 */
- "ERRNO_259", /* 259 */
- "ERRNO_260", /* 260 */
- "ERRNO_261", /* 261 */
- "ERRNO_262", /* 262 */
- "ERRNO_263", /* 263 */
- "ERRNO_264", /* 264 */
- "ERRNO_265", /* 265 */
- "ERRNO_266", /* 266 */
- "ERRNO_267", /* 267 */
- "ERRNO_268", /* 268 */
- "ERRNO_269", /* 269 */
- "ERRNO_270", /* 270 */
- "ERRNO_271", /* 271 */
- "ERRNO_272", /* 272 */
- "ERRNO_273", /* 273 */
- "ERRNO_274", /* 274 */
- "ERRNO_275", /* 275 */
- "ERRNO_276", /* 276 */
- "ERRNO_277", /* 277 */
- "ERRNO_278", /* 278 */
- "ERRNO_279", /* 279 */
- "ERRNO_280", /* 280 */
- "ERRNO_281", /* 281 */
- "ERRNO_282", /* 282 */
- "ERRNO_283", /* 283 */
- "ERRNO_284", /* 284 */
- "ERRNO_285", /* 285 */
- "ERRNO_286", /* 286 */
- "ERRNO_287", /* 287 */
- "ERRNO_288", /* 288 */
- "ERRNO_289", /* 289 */
- "ERRNO_290", /* 290 */
- "ERRNO_291", /* 291 */
- "ERRNO_292", /* 292 */
- "ERRNO_293", /* 293 */
- "ERRNO_294", /* 294 */
- "ERRNO_295", /* 295 */
- "ERRNO_296", /* 296 */
- "ERRNO_297", /* 297 */
- "ERRNO_298", /* 298 */
- "ERRNO_299", /* 299 */
- "ERRNO_300", /* 300 */
- "ERRNO_301", /* 301 */
- "ERRNO_302", /* 302 */
- "ERRNO_303", /* 303 */
- "ERRNO_304", /* 304 */
- "ERRNO_305", /* 305 */
- "ERRNO_306", /* 306 */
- "ERRNO_307", /* 307 */
- "ERRNO_308", /* 308 */
- "ERRNO_309", /* 309 */
- "ERRNO_310", /* 310 */
- "ERRNO_311", /* 311 */
- "ERRNO_312", /* 312 */
- "ERRNO_313", /* 313 */
- "ERRNO_314", /* 314 */
- "ERRNO_315", /* 315 */
- "ERRNO_316", /* 316 */
- "ERRNO_317", /* 317 */
- "ERRNO_318", /* 318 */
- "ERRNO_319", /* 319 */
- "ERRNO_320", /* 320 */
- "ERRNO_321", /* 321 */
- "ERRNO_322", /* 322 */
- "ERRNO_323", /* 323 */
- "ERRNO_324", /* 324 */
- "ERRNO_325", /* 325 */
- "ERRNO_326", /* 326 */
- "ERRNO_327", /* 327 */
- "ERRNO_328", /* 328 */
- "ERRNO_329", /* 329 */
- "ERRNO_330", /* 330 */
- "ERRNO_331", /* 331 */
- "ERRNO_332", /* 332 */
- "ERRNO_333", /* 333 */
- "ERRNO_334", /* 334 */
- "ERRNO_335", /* 335 */
- "ERRNO_336", /* 336 */
- "ERRNO_337", /* 337 */
- "ERRNO_338", /* 338 */
- "ERRNO_339", /* 339 */
- "ERRNO_340", /* 340 */
- "ERRNO_341", /* 341 */
- "ERRNO_342", /* 342 */
- "ERRNO_343", /* 343 */
- "ERRNO_344", /* 344 */
- "ERRNO_345", /* 345 */
- "ERRNO_346", /* 346 */
- "ERRNO_347", /* 347 */
- "ERRNO_348", /* 348 */
- "ERRNO_349", /* 349 */
- "ERRNO_350", /* 350 */
- "ERRNO_351", /* 351 */
- "ERRNO_352", /* 352 */
- "ERRNO_353", /* 353 */
- "ERRNO_354", /* 354 */
- "ERRNO_355", /* 355 */
- "ERRNO_356", /* 356 */
- "ERRNO_357", /* 357 */
- "ERRNO_358", /* 358 */
- "ERRNO_359", /* 359 */
- "ERRNO_360", /* 360 */
- "ERRNO_361", /* 361 */
- "ERRNO_362", /* 362 */
- "ERRNO_363", /* 363 */
- "ERRNO_364", /* 364 */
- "ERRNO_365", /* 365 */
- "ERRNO_366", /* 366 */
- "ERRNO_367", /* 367 */
- "ERRNO_368", /* 368 */
- "ERRNO_369", /* 369 */
- "ERRNO_370", /* 370 */
- "ERRNO_371", /* 371 */
- "ERRNO_372", /* 372 */
- "ERRNO_373", /* 373 */
- "ERRNO_374", /* 374 */
- "ERRNO_375", /* 375 */
- "ERRNO_376", /* 376 */
- "ERRNO_377", /* 377 */
- "ERRNO_378", /* 378 */
- "ERRNO_379", /* 379 */
- "ERRNO_380", /* 380 */
- "ERRNO_381", /* 381 */
- "ERRNO_382", /* 382 */
- "ERRNO_383", /* 383 */
- "ERRNO_384", /* 384 */
- "ERRNO_385", /* 385 */
- "ERRNO_386", /* 386 */
- "ERRNO_387", /* 387 */
- "ERRNO_388", /* 388 */
- "ERRNO_389", /* 389 */
- "ERRNO_390", /* 390 */
- "ERRNO_391", /* 391 */
- "ERRNO_392", /* 392 */
- "ERRNO_393", /* 393 */
- "ERRNO_394", /* 394 */
- "ERRNO_395", /* 395 */
- "ERRNO_396", /* 396 */
- "ERRNO_397", /* 397 */
- "ERRNO_398", /* 398 */
- "ERRNO_399", /* 399 */
- "ERRNO_400", /* 400 */
- "ERRNO_401", /* 401 */
- "ERRNO_402", /* 402 */
- "ERRNO_403", /* 403 */
- "ERRNO_404", /* 404 */
- "ERRNO_405", /* 405 */
- "ERRNO_406", /* 406 */
- "ERRNO_407", /* 407 */
- "ERRNO_408", /* 408 */
- "ERRNO_409", /* 409 */
- "ERRNO_410", /* 410 */
- "ERRNO_411", /* 411 */
- "ERRNO_412", /* 412 */
- "ERRNO_413", /* 413 */
- "ERRNO_414", /* 414 */
- "ERRNO_415", /* 415 */
- "ERRNO_416", /* 416 */
- "ERRNO_417", /* 417 */
- "ERRNO_418", /* 418 */
- "ERRNO_419", /* 419 */
- "ERRNO_420", /* 420 */
- "ERRNO_421", /* 421 */
- "ERRNO_422", /* 422 */
- "ERRNO_423", /* 423 */
- "ERRNO_424", /* 424 */
- "ERRNO_425", /* 425 */
- "ERRNO_426", /* 426 */
- "ERRNO_427", /* 427 */
- "ERRNO_428", /* 428 */
- "ERRNO_429", /* 429 */
- "ERRNO_430", /* 430 */
- "ERRNO_431", /* 431 */
- "ERRNO_432", /* 432 */
- "ERRNO_433", /* 433 */
- "ERRNO_434", /* 434 */
- "ERRNO_435", /* 435 */
- "ERRNO_436", /* 436 */
- "ERRNO_437", /* 437 */
- "ERRNO_438", /* 438 */
- "ERRNO_439", /* 439 */
- "ERRNO_440", /* 440 */
- "ERRNO_441", /* 441 */
- "ERRNO_442", /* 442 */
- "ERRNO_443", /* 443 */
- "ERRNO_444", /* 444 */
- "ERRNO_445", /* 445 */
- "ERRNO_446", /* 446 */
- "ERRNO_447", /* 447 */
- "ERRNO_448", /* 448 */
- "ERRNO_449", /* 449 */
- "ERRNO_450", /* 450 */
- "ERRNO_451", /* 451 */
- "ERRNO_452", /* 452 */
- "ERRNO_453", /* 453 */
- "ERRNO_454", /* 454 */
- "ERRNO_455", /* 455 */
- "ERRNO_456", /* 456 */
- "ERRNO_457", /* 457 */
- "ERRNO_458", /* 458 */
- "ERRNO_459", /* 459 */
- "ERRNO_460", /* 460 */
- "ERRNO_461", /* 461 */
- "ERRNO_462", /* 462 */
- "ERRNO_463", /* 463 */
- "ERRNO_464", /* 464 */
- "ERRNO_465", /* 465 */
- "ERRNO_466", /* 466 */
- "ERRNO_467", /* 467 */
- "ERRNO_468", /* 468 */
- "ERRNO_469", /* 469 */
- "ERRNO_470", /* 470 */
- "ERRNO_471", /* 471 */
- "ERRNO_472", /* 472 */
- "ERRNO_473", /* 473 */
- "ERRNO_474", /* 474 */
- "ERRNO_475", /* 475 */
- "ERRNO_476", /* 476 */
- "ERRNO_477", /* 477 */
- "ERRNO_478", /* 478 */
- "ERRNO_479", /* 479 */
- "ERRNO_480", /* 480 */
- "ERRNO_481", /* 481 */
- "ERRNO_482", /* 482 */
- "ERRNO_483", /* 483 */
- "ERRNO_484", /* 484 */
- "ERRNO_485", /* 485 */
- "ERRNO_486", /* 486 */
- "ERRNO_487", /* 487 */
- "ERRNO_488", /* 488 */
- "ERRNO_489", /* 489 */
- "ERRNO_490", /* 490 */
- "ERRNO_491", /* 491 */
- "ERRNO_492", /* 492 */
- "ERRNO_493", /* 493 */
- "ERRNO_494", /* 494 */
- "ERRNO_495", /* 495 */
- "ERRNO_496", /* 496 */
- "ERRNO_497", /* 497 */
- "ERRNO_498", /* 498 */
- "ERRNO_499", /* 499 */
- "ERRNO_500", /* 500 */
- "ERRNO_501", /* 501 */
- "ERRNO_502", /* 502 */
- "ERRNO_503", /* 503 */
- "ERRNO_504", /* 504 */
- "ERRNO_505", /* 505 */
- "ERRNO_506", /* 506 */
- "ERRNO_507", /* 507 */
- "ERRNO_508", /* 508 */
- "ERRNO_509", /* 509 */
- "ERRNO_510", /* 510 */
- "ERRNO_511", /* 511 */
- "ERRNO_512", /* 512 */
- "ERRNO_513", /* 513 */
- "ERRNO_514", /* 514 */
- "ERRNO_515", /* 515 */
- "ERRNO_516", /* 516 */
- "ERRNO_517", /* 517 */
- "ERRNO_518", /* 518 */
- "ERRNO_519", /* 519 */
- "ERRNO_520", /* 520 */
- "ERRNO_521", /* 521 */
- "ERRNO_522", /* 522 */
- "ERRNO_523", /* 523 */
- "ERRNO_524", /* 524 */
- "ERRNO_525", /* 525 */
- "ERRNO_526", /* 526 */
- "ERRNO_527", /* 527 */
- "ERRNO_528", /* 528 */
- "ERRNO_529", /* 529 */
- "ERRNO_530", /* 530 */
- "ERRNO_531", /* 531 */
- "ERRNO_532", /* 532 */
- "ERRNO_533", /* 533 */
- "ERRNO_534", /* 534 */
- "ERRNO_535", /* 535 */
- "ERRNO_536", /* 536 */
- "ERRNO_537", /* 537 */
- "ERRNO_538", /* 538 */
- "ERRNO_539", /* 539 */
- "ERRNO_540", /* 540 */
- "ERRNO_541", /* 541 */
- "ERRNO_542", /* 542 */
- "ERRNO_543", /* 543 */
- "ERRNO_544", /* 544 */
- "ERRNO_545", /* 545 */
- "ERRNO_546", /* 546 */
- "ERRNO_547", /* 547 */
- "ERRNO_548", /* 548 */
- "ERRNO_549", /* 549 */
- "ERRNO_550", /* 550 */
- "ERRNO_551", /* 551 */
- "ERRNO_552", /* 552 */
- "ERRNO_553", /* 553 */
- "ERRNO_554", /* 554 */
- "ERRNO_555", /* 555 */
- "ERRNO_556", /* 556 */
- "ERRNO_557", /* 557 */
- "ERRNO_558", /* 558 */
- "ERRNO_559", /* 559 */
- "ERRNO_560", /* 560 */
- "ERRNO_561", /* 561 */
- "ERRNO_562", /* 562 */
- "ERRNO_563", /* 563 */
- "ERRNO_564", /* 564 */
- "ERRNO_565", /* 565 */
- "ERRNO_566", /* 566 */
- "ERRNO_567", /* 567 */
- "ERRNO_568", /* 568 */
- "ERRNO_569", /* 569 */
- "ERRNO_570", /* 570 */
- "ERRNO_571", /* 571 */
- "ERRNO_572", /* 572 */
- "ERRNO_573", /* 573 */
- "ERRNO_574", /* 574 */
- "ERRNO_575", /* 575 */
- "ERRNO_576", /* 576 */
- "ERRNO_577", /* 577 */
- "ERRNO_578", /* 578 */
- "ERRNO_579", /* 579 */
- "ERRNO_580", /* 580 */
- "ERRNO_581", /* 581 */
- "ERRNO_582", /* 582 */
- "ERRNO_583", /* 583 */
- "ERRNO_584", /* 584 */
- "ERRNO_585", /* 585 */
- "ERRNO_586", /* 586 */
- "ERRNO_587", /* 587 */
- "ERRNO_588", /* 588 */
- "ERRNO_589", /* 589 */
- "ERRNO_590", /* 590 */
- "ERRNO_591", /* 591 */
- "ERRNO_592", /* 592 */
- "ERRNO_593", /* 593 */
- "ERRNO_594", /* 594 */
- "ERRNO_595", /* 595 */
- "ERRNO_596", /* 596 */
- "ERRNO_597", /* 597 */
- "ERRNO_598", /* 598 */
- "ERRNO_599", /* 599 */
- "ERRNO_600", /* 600 */
- "ERRNO_601", /* 601 */
- "ERRNO_602", /* 602 */
- "ERRNO_603", /* 603 */
- "ERRNO_604", /* 604 */
- "ERRNO_605", /* 605 */
- "ERRNO_606", /* 606 */
- "ERRNO_607", /* 607 */
- "ERRNO_608", /* 608 */
- "ERRNO_609", /* 609 */
- "ERRNO_610", /* 610 */
- "ERRNO_611", /* 611 */
- "ERRNO_612", /* 612 */
- "ERRNO_613", /* 613 */
- "ERRNO_614", /* 614 */
- "ERRNO_615", /* 615 */
- "ERRNO_616", /* 616 */
- "ERRNO_617", /* 617 */
- "ERRNO_618", /* 618 */
- "ERRNO_619", /* 619 */
- "ERRNO_620", /* 620 */
- "ERRNO_621", /* 621 */
- "ERRNO_622", /* 622 */
- "ERRNO_623", /* 623 */
- "ERRNO_624", /* 624 */
- "ERRNO_625", /* 625 */
- "ERRNO_626", /* 626 */
- "ERRNO_627", /* 627 */
- "ERRNO_628", /* 628 */
- "ERRNO_629", /* 629 */
- "ERRNO_630", /* 630 */
- "ERRNO_631", /* 631 */
- "ERRNO_632", /* 632 */
- "ERRNO_633", /* 633 */
- "ERRNO_634", /* 634 */
- "ERRNO_635", /* 635 */
- "ERRNO_636", /* 636 */
- "ERRNO_637", /* 637 */
- "ERRNO_638", /* 638 */
- "ERRNO_639", /* 639 */
- "ERRNO_640", /* 640 */
- "ERRNO_641", /* 641 */
- "ERRNO_642", /* 642 */
- "ERRNO_643", /* 643 */
- "ERRNO_644", /* 644 */
- "ERRNO_645", /* 645 */
- "ERRNO_646", /* 646 */
- "ERRNO_647", /* 647 */
- "ERRNO_648", /* 648 */
- "ERRNO_649", /* 649 */
- "ERRNO_650", /* 650 */
- "ERRNO_651", /* 651 */
- "ERRNO_652", /* 652 */
- "ERRNO_653", /* 653 */
- "ERRNO_654", /* 654 */
- "ERRNO_655", /* 655 */
- "ERRNO_656", /* 656 */
- "ERRNO_657", /* 657 */
- "ERRNO_658", /* 658 */
- "ERRNO_659", /* 659 */
- "ERRNO_660", /* 660 */
- "ERRNO_661", /* 661 */
- "ERRNO_662", /* 662 */
- "ERRNO_663", /* 663 */
- "ERRNO_664", /* 664 */
- "ERRNO_665", /* 665 */
- "ERRNO_666", /* 666 */
- "ERRNO_667", /* 667 */
- "ERRNO_668", /* 668 */
- "ERRNO_669", /* 669 */
- "ERRNO_670", /* 670 */
- "ERRNO_671", /* 671 */
- "ERRNO_672", /* 672 */
- "ERRNO_673", /* 673 */
- "ERRNO_674", /* 674 */
- "ERRNO_675", /* 675 */
- "ERRNO_676", /* 676 */
- "ERRNO_677", /* 677 */
- "ERRNO_678", /* 678 */
- "ERRNO_679", /* 679 */
- "ERRNO_680", /* 680 */
- "ERRNO_681", /* 681 */
- "ERRNO_682", /* 682 */
- "ERRNO_683", /* 683 */
- "ERRNO_684", /* 684 */
- "ERRNO_685", /* 685 */
- "ERRNO_686", /* 686 */
- "ERRNO_687", /* 687 */
- "ERRNO_688", /* 688 */
- "ERRNO_689", /* 689 */
- "ERRNO_690", /* 690 */
- "ERRNO_691", /* 691 */
- "ERRNO_692", /* 692 */
- "ERRNO_693", /* 693 */
- "ERRNO_694", /* 694 */
- "ERRNO_695", /* 695 */
- "ERRNO_696", /* 696 */
- "ERRNO_697", /* 697 */
- "ERRNO_698", /* 698 */
- "ERRNO_699", /* 699 */
- "ERRNO_700", /* 700 */
- "ERRNO_701", /* 701 */
- "ERRNO_702", /* 702 */
- "ERRNO_703", /* 703 */
- "ERRNO_704", /* 704 */
- "ERRNO_705", /* 705 */
- "ERRNO_706", /* 706 */
- "ERRNO_707", /* 707 */
- "ERRNO_708", /* 708 */
- "ERRNO_709", /* 709 */
- "ERRNO_710", /* 710 */
- "ERRNO_711", /* 711 */
- "ERRNO_712", /* 712 */
- "ERRNO_713", /* 713 */
- "ERRNO_714", /* 714 */
- "ERRNO_715", /* 715 */
- "ERRNO_716", /* 716 */
- "ERRNO_717", /* 717 */
- "ERRNO_718", /* 718 */
- "ERRNO_719", /* 719 */
- "ERRNO_720", /* 720 */
- "ERRNO_721", /* 721 */
- "ERRNO_722", /* 722 */
- "ERRNO_723", /* 723 */
- "ERRNO_724", /* 724 */
- "ERRNO_725", /* 725 */
- "ERRNO_726", /* 726 */
- "ERRNO_727", /* 727 */
- "ERRNO_728", /* 728 */
- "ERRNO_729", /* 729 */
- "ERRNO_730", /* 730 */
- "ERRNO_731", /* 731 */
- "ERRNO_732", /* 732 */
- "ERRNO_733", /* 733 */
- "ERRNO_734", /* 734 */
- "ERRNO_735", /* 735 */
- "ERRNO_736", /* 736 */
- "ERRNO_737", /* 737 */
- "ERRNO_738", /* 738 */
- "ERRNO_739", /* 739 */
- "ERRNO_740", /* 740 */
- "ERRNO_741", /* 741 */
- "ERRNO_742", /* 742 */
- "ERRNO_743", /* 743 */
- "ERRNO_744", /* 744 */
- "ERRNO_745", /* 745 */
- "ERRNO_746", /* 746 */
- "ERRNO_747", /* 747 */
- "ERRNO_748", /* 748 */
- "ERRNO_749", /* 749 */
- "ERRNO_750", /* 750 */
- "ERRNO_751", /* 751 */
- "ERRNO_752", /* 752 */
- "ERRNO_753", /* 753 */
- "ERRNO_754", /* 754 */
- "ERRNO_755", /* 755 */
- "ERRNO_756", /* 756 */
- "ERRNO_757", /* 757 */
- "ERRNO_758", /* 758 */
- "ERRNO_759", /* 759 */
- "ERRNO_760", /* 760 */
- "ERRNO_761", /* 761 */
- "ERRNO_762", /* 762 */
- "ERRNO_763", /* 763 */
- "ERRNO_764", /* 764 */
- "ERRNO_765", /* 765 */
- "ERRNO_766", /* 766 */
- "ERRNO_767", /* 767 */
- "ERRNO_768", /* 768 */
- "ERRNO_769", /* 769 */
- "ERRNO_770", /* 770 */
- "ERRNO_771", /* 771 */
- "ERRNO_772", /* 772 */
- "ERRNO_773", /* 773 */
- "ERRNO_774", /* 774 */
- "ERRNO_775", /* 775 */
- "ERRNO_776", /* 776 */
- "ERRNO_777", /* 777 */
- "ERRNO_778", /* 778 */
- "ERRNO_779", /* 779 */
- "ERRNO_780", /* 780 */
- "ERRNO_781", /* 781 */
- "ERRNO_782", /* 782 */
- "ERRNO_783", /* 783 */
- "ERRNO_784", /* 784 */
- "ERRNO_785", /* 785 */
- "ERRNO_786", /* 786 */
- "ERRNO_787", /* 787 */
- "ERRNO_788", /* 788 */
- "ERRNO_789", /* 789 */
- "ERRNO_790", /* 790 */
- "ERRNO_791", /* 791 */
- "ERRNO_792", /* 792 */
- "ERRNO_793", /* 793 */
- "ERRNO_794", /* 794 */
- "ERRNO_795", /* 795 */
- "ERRNO_796", /* 796 */
- "ERRNO_797", /* 797 */
- "ERRNO_798", /* 798 */
- "ERRNO_799", /* 799 */
- "ERRNO_800", /* 800 */
- "ERRNO_801", /* 801 */
- "ERRNO_802", /* 802 */
- "ERRNO_803", /* 803 */
- "ERRNO_804", /* 804 */
- "ERRNO_805", /* 805 */
- "ERRNO_806", /* 806 */
- "ERRNO_807", /* 807 */
- "ERRNO_808", /* 808 */
- "ERRNO_809", /* 809 */
- "ERRNO_810", /* 810 */
- "ERRNO_811", /* 811 */
- "ERRNO_812", /* 812 */
- "ERRNO_813", /* 813 */
- "ERRNO_814", /* 814 */
- "ERRNO_815", /* 815 */
- "ERRNO_816", /* 816 */
- "ERRNO_817", /* 817 */
- "ERRNO_818", /* 818 */
- "ERRNO_819", /* 819 */
- "ERRNO_820", /* 820 */
- "ERRNO_821", /* 821 */
- "ERRNO_822", /* 822 */
- "ERRNO_823", /* 823 */
- "ERRNO_824", /* 824 */
- "ERRNO_825", /* 825 */
- "ERRNO_826", /* 826 */
- "ERRNO_827", /* 827 */
- "ERRNO_828", /* 828 */
- "ERRNO_829", /* 829 */
- "ERRNO_830", /* 830 */
- "ERRNO_831", /* 831 */
- "ERRNO_832", /* 832 */
- "ERRNO_833", /* 833 */
- "ERRNO_834", /* 834 */
- "ERRNO_835", /* 835 */
- "ERRNO_836", /* 836 */
- "ERRNO_837", /* 837 */
- "ERRNO_838", /* 838 */
- "ERRNO_839", /* 839 */
- "ERRNO_840", /* 840 */
- "ERRNO_841", /* 841 */
- "ERRNO_842", /* 842 */
- "ERRNO_843", /* 843 */
- "ERRNO_844", /* 844 */
- "ERRNO_845", /* 845 */
- "ERRNO_846", /* 846 */
- "ERRNO_847", /* 847 */
- "ERRNO_848", /* 848 */
- "ERRNO_849", /* 849 */
- "ERRNO_850", /* 850 */
- "ERRNO_851", /* 851 */
- "ERRNO_852", /* 852 */
- "ERRNO_853", /* 853 */
- "ERRNO_854", /* 854 */
- "ERRNO_855", /* 855 */
- "ERRNO_856", /* 856 */
- "ERRNO_857", /* 857 */
- "ERRNO_858", /* 858 */
- "ERRNO_859", /* 859 */
- "ERRNO_860", /* 860 */
- "ERRNO_861", /* 861 */
- "ERRNO_862", /* 862 */
- "ERRNO_863", /* 863 */
- "ERRNO_864", /* 864 */
- "ERRNO_865", /* 865 */
- "ERRNO_866", /* 866 */
- "ERRNO_867", /* 867 */
- "ERRNO_868", /* 868 */
- "ERRNO_869", /* 869 */
- "ERRNO_870", /* 870 */
- "ERRNO_871", /* 871 */
- "ERRNO_872", /* 872 */
- "ERRNO_873", /* 873 */
- "ERRNO_874", /* 874 */
- "ERRNO_875", /* 875 */
- "ERRNO_876", /* 876 */
- "ERRNO_877", /* 877 */
- "ERRNO_878", /* 878 */
- "ERRNO_879", /* 879 */
- "ERRNO_880", /* 880 */
- "ERRNO_881", /* 881 */
- "ERRNO_882", /* 882 */
- "ERRNO_883", /* 883 */
- "ERRNO_884", /* 884 */
- "ERRNO_885", /* 885 */
- "ERRNO_886", /* 886 */
- "ERRNO_887", /* 887 */
- "ERRNO_888", /* 888 */
- "ERRNO_889", /* 889 */
- "ERRNO_890", /* 890 */
- "ERRNO_891", /* 891 */
- "ERRNO_892", /* 892 */
- "ERRNO_893", /* 893 */
- "ERRNO_894", /* 894 */
- "ERRNO_895", /* 895 */
- "ERRNO_896", /* 896 */
- "ERRNO_897", /* 897 */
- "ERRNO_898", /* 898 */
- "ERRNO_899", /* 899 */
- "ERRNO_900", /* 900 */
- "ERRNO_901", /* 901 */
- "ERRNO_902", /* 902 */
- "ERRNO_903", /* 903 */
- "ERRNO_904", /* 904 */
- "ERRNO_905", /* 905 */
- "ERRNO_906", /* 906 */
- "ERRNO_907", /* 907 */
- "ERRNO_908", /* 908 */
- "ERRNO_909", /* 909 */
- "ERRNO_910", /* 910 */
- "ERRNO_911", /* 911 */
- "ERRNO_912", /* 912 */
- "ERRNO_913", /* 913 */
- "ERRNO_914", /* 914 */
- "ERRNO_915", /* 915 */
- "ERRNO_916", /* 916 */
- "ERRNO_917", /* 917 */
- "ERRNO_918", /* 918 */
- "ERRNO_919", /* 919 */
- "ERRNO_920", /* 920 */
- "ERRNO_921", /* 921 */
- "ERRNO_922", /* 922 */
- "ERRNO_923", /* 923 */
- "ERRNO_924", /* 924 */
- "ERRNO_925", /* 925 */
- "ERRNO_926", /* 926 */
- "ERRNO_927", /* 927 */
- "ERRNO_928", /* 928 */
- "ERRNO_929", /* 929 */
- "ERRNO_930", /* 930 */
- "ERRNO_931", /* 931 */
- "ERRNO_932", /* 932 */
- "ERRNO_933", /* 933 */
- "ERRNO_934", /* 934 */
- "ERRNO_935", /* 935 */
- "ERRNO_936", /* 936 */
- "ERRNO_937", /* 937 */
- "ERRNO_938", /* 938 */
- "ERRNO_939", /* 939 */
- "ERRNO_940", /* 940 */
- "ERRNO_941", /* 941 */
- "ERRNO_942", /* 942 */
- "ERRNO_943", /* 943 */
- "ERRNO_944", /* 944 */
- "ERRNO_945", /* 945 */
- "ERRNO_946", /* 946 */
- "ERRNO_947", /* 947 */
- "ERRNO_948", /* 948 */
- "ERRNO_949", /* 949 */
- "ERRNO_950", /* 950 */
- "ERRNO_951", /* 951 */
- "ERRNO_952", /* 952 */
- "ERRNO_953", /* 953 */
- "ERRNO_954", /* 954 */
- "ERRNO_955", /* 955 */
- "ERRNO_956", /* 956 */
- "ERRNO_957", /* 957 */
- "ERRNO_958", /* 958 */
- "ERRNO_959", /* 959 */
- "ERRNO_960", /* 960 */
- "ERRNO_961", /* 961 */
- "ERRNO_962", /* 962 */
- "ERRNO_963", /* 963 */
- "ERRNO_964", /* 964 */
- "ERRNO_965", /* 965 */
- "ERRNO_966", /* 966 */
- "ERRNO_967", /* 967 */
- "ERRNO_968", /* 968 */
- "ERRNO_969", /* 969 */
- "ERRNO_970", /* 970 */
- "ERRNO_971", /* 971 */
- "ERRNO_972", /* 972 */
- "ERRNO_973", /* 973 */
- "ERRNO_974", /* 974 */
- "ERRNO_975", /* 975 */
- "ERRNO_976", /* 976 */
- "ERRNO_977", /* 977 */
- "ERRNO_978", /* 978 */
- "ERRNO_979", /* 979 */
- "ERRNO_980", /* 980 */
- "ERRNO_981", /* 981 */
- "ERRNO_982", /* 982 */
- "ERRNO_983", /* 983 */
- "ERRNO_984", /* 984 */
- "ERRNO_985", /* 985 */
- "ERRNO_986", /* 986 */
- "ERRNO_987", /* 987 */
- "ERRNO_988", /* 988 */
- "ERRNO_989", /* 989 */
- "ERRNO_990", /* 990 */
- "ERRNO_991", /* 991 */
- "ERRNO_992", /* 992 */
- "ERRNO_993", /* 993 */
- "ERRNO_994", /* 994 */
- "ERRNO_995", /* 995 */
- "ERRNO_996", /* 996 */
- "ERRNO_997", /* 997 */
- "ERRNO_998", /* 998 */
- "ERRNO_999", /* 999 */
- "ECANCELED", /* 1000 */
- "ERRNO_1001", /* 1001 */
- "ERRNO_1002", /* 1002 */
- "ERRNO_1003", /* 1003 */
- "ERRNO_1004", /* 1004 */
- "ERRNO_1005", /* 1005 */
- "ERRNO_1006", /* 1006 */
- "ERRNO_1007", /* 1007 */
- "ERRNO_1008", /* 1008 */
- "ERRNO_1009", /* 1009 */
- "ERRNO_1010", /* 1010 */
- "ERRNO_1011", /* 1011 */
- "ERRNO_1012", /* 1012 */
- "ERRNO_1013", /* 1013 */
- "ERRNO_1014", /* 1014 */
- "ERRNO_1015", /* 1015 */
- "ERRNO_1016", /* 1016 */
- "ERRNO_1017", /* 1017 */
- "ERRNO_1018", /* 1018 */
- "ERRNO_1019", /* 1019 */
- "ERRNO_1020", /* 1020 */
- "ERRNO_1021", /* 1021 */
- "ERRNO_1022", /* 1022 */
- "ERRNO_1023", /* 1023 */
- "ERRNO_1024", /* 1024 */
- "ERRNO_1025", /* 1025 */
- "ERRNO_1026", /* 1026 */
- "ERRNO_1027", /* 1027 */
- "ERRNO_1028", /* 1028 */
- "ERRNO_1029", /* 1029 */
- "ERRNO_1030", /* 1030 */
- "ERRNO_1031", /* 1031 */
- "ERRNO_1032", /* 1032 */
- "ERRNO_1033", /* 1033 */
- "ERRNO_1034", /* 1034 */
- "ERRNO_1035", /* 1035 */
- "ERRNO_1036", /* 1036 */
- "ERRNO_1037", /* 1037 */
- "ERRNO_1038", /* 1038 */
- "ERRNO_1039", /* 1039 */
- "ERRNO_1040", /* 1040 */
- "ERRNO_1041", /* 1041 */
- "ERRNO_1042", /* 1042 */
- "ERRNO_1043", /* 1043 */
- "ERRNO_1044", /* 1044 */
- "ERRNO_1045", /* 1045 */
- "ERRNO_1046", /* 1046 */
- "ERRNO_1047", /* 1047 */
- "ERRNO_1048", /* 1048 */
- "ERRNO_1049", /* 1049 */
- "ERRNO_1050", /* 1050 */
- "ERRNO_1051", /* 1051 */
- "ERRNO_1052", /* 1052 */
- "ERRNO_1053", /* 1053 */
- "ERRNO_1054", /* 1054 */
- "ERRNO_1055", /* 1055 */
- "ERRNO_1056", /* 1056 */
- "ERRNO_1057", /* 1057 */
- "ERRNO_1058", /* 1058 */
- "ERRNO_1059", /* 1059 */
- "ERRNO_1060", /* 1060 */
- "ERRNO_1061", /* 1061 */
- "ERRNO_1062", /* 1062 */
- "ERRNO_1063", /* 1063 */
- "ERRNO_1064", /* 1064 */
- "ERRNO_1065", /* 1065 */
- "ERRNO_1066", /* 1066 */
- "ERRNO_1067", /* 1067 */
- "ERRNO_1068", /* 1068 */
- "ERRNO_1069", /* 1069 */
- "ERRNO_1070", /* 1070 */
- "ERRNO_1071", /* 1071 */
- "ERRNO_1072", /* 1072 */
- "ERRNO_1073", /* 1073 */
- "ERRNO_1074", /* 1074 */
- "ERRNO_1075", /* 1075 */
- "ERRNO_1076", /* 1076 */
- "ERRNO_1077", /* 1077 */
- "ERRNO_1078", /* 1078 */
- "ERRNO_1079", /* 1079 */
- "ERRNO_1080", /* 1080 */
- "ERRNO_1081", /* 1081 */
- "ERRNO_1082", /* 1082 */
- "ERRNO_1083", /* 1083 */
- "ERRNO_1084", /* 1084 */
- "ERRNO_1085", /* 1085 */
- "ERRNO_1086", /* 1086 */
- "ERRNO_1087", /* 1087 */
- "ERRNO_1088", /* 1088 */
- "ERRNO_1089", /* 1089 */
- "ERRNO_1090", /* 1090 */
- "ERRNO_1091", /* 1091 */
- "ERRNO_1092", /* 1092 */
- "ERRNO_1093", /* 1093 */
- "ERRNO_1094", /* 1094 */
- "ERRNO_1095", /* 1095 */
- "ERRNO_1096", /* 1096 */
- "ERRNO_1097", /* 1097 */
- "ERRNO_1098", /* 1098 */
- "ERRNO_1099", /* 1099 */
- "ERRNO_1100", /* 1100 */
- "ERRNO_1101", /* 1101 */
- "ERRNO_1102", /* 1102 */
- "ERRNO_1103", /* 1103 */
- "ERRNO_1104", /* 1104 */
- "ERRNO_1105", /* 1105 */
- "ERRNO_1106", /* 1106 */
- "ERRNO_1107", /* 1107 */
- "ERRNO_1108", /* 1108 */
- "ERRNO_1109", /* 1109 */
- "ERRNO_1110", /* 1110 */
- "ERRNO_1111", /* 1111 */
- "ERRNO_1112", /* 1112 */
- "ERRNO_1113", /* 1113 */
- "ERRNO_1114", /* 1114 */
- "ERRNO_1115", /* 1115 */
- "ERRNO_1116", /* 1116 */
- "ERRNO_1117", /* 1117 */
- "ERRNO_1118", /* 1118 */
- "ERRNO_1119", /* 1119 */
- "ERRNO_1120", /* 1120 */
- "ERRNO_1121", /* 1121 */
- "ERRNO_1122", /* 1122 */
- "ERRNO_1123", /* 1123 */
- "ERRNO_1124", /* 1124 */
- "ERRNO_1125", /* 1125 */
- "ERRNO_1126", /* 1126 */
- "ERRNO_1127", /* 1127 */
- "ERRNO_1128", /* 1128 */
- "ERRNO_1129", /* 1129 */
- "ERRNO_1130", /* 1130 */
- "ERRNO_1131", /* 1131 */
- "ERRNO_1132", /* 1132 */
- "EDQUOT", /* 1133 */
- "EMAXERRNO", /* 1134 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EAGAIN",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "ENOMSG",
+[ 36] = "EIDRM",
+[ 37] = "ECHRNG",
+[ 38] = "EL2NSYNC",
+[ 39] = "EL3HLT",
+[ 40] = "EL3RST",
+[ 41] = "ELNRNG",
+[ 42] = "EUNATCH",
+[ 43] = "ENOCSI",
+[ 44] = "EL2HLT",
+[ 45] = "EDEADLK",
+[ 46] = "ENOLCK",
+[ 50] = "EBADE",
+[ 51] = "EBADR",
+[ 52] = "EXFULL",
+[ 53] = "ENOANO",
+[ 54] = "EBADRQC",
+[ 55] = "EBADSLT",
+[ 56] = "EDEADLOCK",
+[ 59] = "EBFONT",
+[ 60] = "ENOSTR",
+[ 61] = "ENODATA",
+[ 62] = "ETIME",
+[ 63] = "ENOSR",
+[ 64] = "ENONET",
+[ 65] = "ENOPKG",
+[ 66] = "EREMOTE",
+[ 67] = "ENOLINK",
+[ 68] = "EADV",
+[ 69] = "ESRMNT",
+[ 70] = "ECOMM",
+[ 71] = "EPROTO",
+[ 73] = "EDOTDOT",
+[ 74] = "EMULTIHOP",
+[ 77] = "EBADMSG",
+[ 78] = "ENAMETOOLONG",
+[ 79] = "EOVERFLOW",
+[ 80] = "ENOTUNIQ",
+[ 81] = "EBADFD",
+[ 82] = "EREMCHG",
+[ 83] = "ELIBACC",
+[ 84] = "ELIBBAD",
+[ 85] = "ELIBSCN",
+[ 86] = "ELIBMAX",
+[ 87] = "ELIBEXEC",
+[ 88] = "EILSEQ",
+[ 89] = "ENOSYS",
+[ 90] = "ELOOP",
+[ 91] = "ERESTART",
+[ 92] = "ESTRPIPE",
+[ 93] = "ENOTEMPTY",
+[ 94] = "EUSERS",
+[ 95] = "ENOTSOCK",
+[ 96] = "EDESTADDRREQ",
+[ 97] = "EMSGSIZE",
+[ 98] = "EPROTOTYPE",
+[ 99] = "ENOPROTOOPT",
+[120] = "EPROTONOSUPPORT",
+[121] = "ESOCKTNOSUPPORT",
+[122] = "EOPNOTSUPP",
+[123] = "EPFNOSUPPORT",
+[124] = "EAFNOSUPPORT",
+[125] = "EADDRINUSE",
+[126] = "EADDRNOTAVAIL",
+[127] = "ENETDOWN",
+[128] = "ENETUNREACH",
+[129] = "ENETRESET",
+[130] = "ECONNABORTED",
+[131] = "ECONNRESET",
+[132] = "ENOBUFS",
+[133] = "EISCONN",
+[134] = "ENOTCONN",
+[135] = "EUCLEAN",
+[137] = "ENOTNAM",
+[138] = "ENAVAIL",
+[139] = "EISNAM",
+[140] = "EREMOTEIO",
+[141] = "EINIT",
+[142] = "EREMDEV",
+[143] = "ESHUTDOWN",
+[144] = "ETOOMANYREFS",
+[145] = "ETIMEDOUT",
+[146] = "ECONNREFUSED",
+[147] = "EHOSTDOWN",
+[148] = "EHOSTUNREACH",
+[149] = "EALREADY",
+[150] = "EINPROGRESS",
+[151] = "ESTALE",
+[158] = "ECANCELED",
+[159] = "ENOMEDIUM",
+[160] = "EMEDIUMTYPE",
+[161] = "ENOKEY",
+[162] = "EKEYEXPIRED",
+[163] = "EKEYREVOKED",
+[164] = "EKEYREJECTED",
+[165] = "EOWNERDEAD",
+[166] = "ENOTRECOVERABLE",
+[167] = "ERFKILL",
+[168] = "EHWPOISON",
+[512] = "ERESTARTSYS",
+[513] = "ERESTARTNOINTR",
+[514] = "ERESTARTNOHAND",
+[515] = "ENOIOCTLCMD",
+[516] = "ERESTART_RESTARTBLOCK",
+[517] = "EPROBE_DEFER",
+[518] = "EOPENSTALE",
+[521] = "EBADHANDLE",
+[522] = "ENOTSYNC",
+[523] = "EBADCOOKIE",
+[524] = "ENOTSUPP",
+[525] = "ETOOSMALL",
+[526] = "ESERVERFAULT",
+[527] = "EBADTYPE",
+[528] = "EJUKEBOX",
+[529] = "EIOCBQUEUED",
+[1133] = "EDQUOT",
diff --git a/linux/mips/genstub.sh b/linux/mips/genstub.sh
new file mode 100755
index 0000000..ffcbfdf
--- /dev/null
+++ b/linux/mips/genstub.sh
@@ -0,0 +1,10 @@
+#!/bin/sh -e
+
+srcdir="${0%/*}"
+dstdir="$1"; shift
+
+for n in n32 n64 o32; do
+ in="$srcdir/syscallent-$n.h"
+ out="$dstdir/syscallent-$n-stub.h"
+ sed -n '/^#if/,/^#else/ {s/^\([^{]*{[^,]*,[^,]*,[[:space:]]*\)[^,[:space:]]\+,[[:space:]]*"\([^"]\+".*\)/\1printargs, "'$n'_\2/; s/^\[.*/&/p}' < "$in" > "$out"
+done
diff --git a/linux/mips/ioctlent.h.in b/linux/mips/ioctlent.h.in
deleted file mode 100644
index 15808a6..0000000
--- a/linux/mips/ioctlent.h.in
+++ /dev/null
@@ -1,59 +0,0 @@
- {"asm/ioctls.h", "TCGETS", 0x5401},
- {"asm/ioctls.h", "TCSETS", 0x5402},
- {"asm/ioctls.h", "TCSETSW", 0x5403},
- {"asm/ioctls.h", "TCSETSF", 0x5404},
- {"asm/ioctls.h", "TCGETA", 0x5405},
- {"asm/ioctls.h", "TCSETA", 0x5406},
- {"asm/ioctls.h", "TCSETAW", 0x5407},
- {"asm/ioctls.h", "TCSETAF", 0x5408},
- {"asm/ioctls.h", "TCSBRK", 0x5409},
- {"asm/ioctls.h", "TCXONC", 0x540a},
- {"asm/ioctls.h", "TCFLSH", 0x540b},
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCGPGRP", 0x540f},
- {"asm/ioctls.h", "TIOCSPGRP", 0x5410},
- {"asm/ioctls.h", "TIOCOUTQ", 0x5411},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x5413},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x5414},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "FIONREAD", 0x541b},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "FIONBIO", 0x5421},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "FIONCLEX", 0x5450},
- {"asm/ioctls.h", "FIOCLEX", 0x5451},
- {"asm/ioctls.h", "FIOASYNC", 0x5452},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "TIOCGHAYESESP", 0x545e},
- {"asm/ioctls.h", "TIOCSHAYESESP", 0x545f},
diff --git a/linux/mips/ioctlent.sh b/linux/mips/ioctlent.sh
deleted file mode 100755
index 52d8df5..0000000
--- a/linux/mips/ioctlent.sh
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-# Copyright (c) 1993, 1994, 1995 Rick Sladkey <jrs@world.std.com>
-# All rights reserved.
-#
-# Copyright (c) 1995, 1996 Michael Elizabeth Chastain <mec@duracef.shout.net>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# 3. The name of the author may not be used to endorse or promote products
-# derived from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Files to find.
-file_find='asm/*.h linux/*.h scsi/*.h'
-
-# Files to stop.
-file_stop='asm/byteorder.h linux/config.h linux/pci.h linux/xd.h'
-
-# Defs to find.
-# Work on the kernel source to convert all to df_iowr.
-# Don't know how to find low-numbered ioctls in linux/mc146818rtc.h.
-df_name='^[ ]*#[ ]*define[ ]+[A-Z_][A-Z0-9_]*[ ]+'
-df_iowr='_IO|_IOR|_IOW|_IOWR'
-df_NNNN='0[Xx](03|06|22|46|4B|4C|53|54|56|89|90)[0-9A-Fa-f][0-9A-Fa-f]'
-df_4359='0[Xx]4359[0-9A-Fa-f][0-9A-Fa-f]' # linux/cyclades.h
-df_470N='470[0-9]' # linux/fs.h (only in 1.2.13)
-df_smix='MIXER_READ|MIXER_WRITE' # linux/soundcard.h
-df_12NN='12[3-4][0-9]' # linux/umsdos_fs.h (only in 1.2.13)
-df_tail='([() ]|$)'
-def_find="$df_name($df_iowr|$df_NNNN|$df_4359|$df_470N|$df_smix|$df_12NN)$df_tail"
-
-# Defs to stop.
-ds_tail='_MAGIC|_PATCH'
-ds_fdmp='FD(DEF|GET|SET)MEDIAPRM' # linux/fd.h aliases (only in 1.2.13)
-ds_mtio='MTIOC(GET|SET)CONFIG' # linux/mtio.h needs config (only in 1.2.13)
-def_stop="$ds_tail|$ds_fdmp|$ds_mtio"
-
-# Validate arg count.
-if [ $# -ne 1 ]
-then
- echo "usage: $0 include-directory" >&2
- exit 1
-fi
-
-# Grep through the files.
-(
- # Construct list: find files minus stop files.
- cd $1 || exit
- file_list=`(ls $file_find $file_stop $file_stop 2>/dev/null) | sort | uniq -u`
-
- # Grep matching #define lines.
- # Transform to C structure form.
- # Filter out stop list.
- egrep "$def_find" $file_list |
- sed -n -e 's/^\(.*\):#[ ]*define[ ]*\([A-Z_][A-Z0-9_]*\).*$/ { "\1", "\2", \2 },/p' |
- egrep -v "$def_stop"
-) > ioctlent.tmp
-
-# Generate the output file.
-echo '/* This file is automatically generated by ioctlent.sh */'
-echo
-echo '#include <sys/types.h>'
-echo
-echo '/* Needed for <linux/baycom.h> */'
-echo '#define BAYCOM_DEBUG'
-echo
-echo '/* Needed for <linux/cyclades.h> */'
-echo '#include <linux/termios.h>'
-echo '#include <linux/tqueue.h>'
-echo
-awk '{ print "#include <" substr($2, 2, length($2) - 3) ">" }' ioctlent.tmp | sort -u
-echo
-echo 'struct ioctlent ioctlent [] ='
-echo '{'
-cat ioctlent.tmp
-echo '};'
-
-# Clean up.
-rm -f ioctlent.tmp
diff --git a/linux/mips/ioctls_arch0.h b/linux/mips/ioctls_arch0.h
new file mode 100644
index 0000000..966e9ae
--- /dev/null
+++ b/linux/mips/ioctls_arch0.h
@@ -0,0 +1,82 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/mips/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", 0, 0x667d, 0 },
+{ "asm/ioctls.h", "FIOCLEX", 0, 0x6601, 0 },
+{ "asm/ioctls.h", "FIONBIO", 0, 0x667e, 0 },
+{ "asm/ioctls.h", "FIONCLEX", 0, 0x6602, 0 },
+{ "asm/ioctls.h", "FIONREAD", 0, 0x467f, 0 },
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x667f, 0 },
+{ "asm/ioctls.h", "TCFLSH", 0, 0x5407, 0 },
+{ "asm/ioctls.h", "TCGETA", 0, 0x5401, 0 },
+{ "asm/ioctls.h", "TCGETS", 0, 0x540d, 0 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x30 },
+{ "asm/ioctls.h", "TCSBRK", 0, 0x5405, 0 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5486, 0 },
+{ "asm/ioctls.h", "TCSETA", 0, 0x5402, 0 },
+{ "asm/ioctls.h", "TCSETAF", 0, 0x5404, 0 },
+{ "asm/ioctls.h", "TCSETAW", 0, 0x5403, 0 },
+{ "asm/ioctls.h", "TCSETS", 0, 0x540e, 0 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x30 },
+{ "asm/ioctls.h", "TCSETSF", 0, 0x5410, 0 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x30 },
+{ "asm/ioctls.h", "TCSETSW", 0, 0x540f, 0 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x30 },
+{ "asm/ioctls.h", "TCXONC", 0, 0x5406, 0 },
+{ "asm/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_WRITE, 0x7478, 0x04 },
+{ "asm/ioctls.h", "TIOCEXCL", 0, 0x740d, 0 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", 0, 0x7400, 0 },
+{ "asm/ioctls.h", "TIOCGETP", 0, 0x7408, 0 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x5492, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x548b, 0 },
+{ "asm/ioctls.h", "TIOCGLTC", 0, 0x7474, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x5484, 0 },
+{ "asm/ioctls.h", "TIOCGSID", 0, 0x7416, 0 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", 0, 0x5481, 0 },
+{ "asm/ioctls.h", "TIOCGWINSZ", _IOC_READ, 0x7468, 0x08 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x5483, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", 0, 0x741c, 0 },
+{ "asm/ioctls.h", "TIOCMBIS", 0, 0x741b, 0 },
+{ "asm/ioctls.h", "TIOCMGET", 0, 0x741d, 0 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x5491, 0 },
+{ "asm/ioctls.h", "TIOCMSET", 0, 0x741a, 0 },
+{ "asm/ioctls.h", "TIOCNOTTY", 0, 0x5471, 0 },
+{ "asm/ioctls.h", "TIOCNXCL", 0, 0x740e, 0 },
+{ "asm/ioctls.h", "TIOCOUTQ", 0, 0x7472, 0 },
+{ "asm/ioctls.h", "TIOCPKT", 0, 0x5470, 0 },
+{ "asm/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm/ioctls.h", "TIOCSCTTY", 0, 0x5480, 0 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5488, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x548e, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x548f, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x548d, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5489, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x5490, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x548a, 0 },
+{ "asm/ioctls.h", "TIOCSETD", 0, 0x7401, 0 },
+{ "asm/ioctls.h", "TIOCSETN", 0, 0x740a, 0 },
+{ "asm/ioctls.h", "TIOCSETP", 0, 0x7409, 0 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x548c, 0 },
+{ "asm/ioctls.h", "TIOCSLTC", 0, 0x7475, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x5485, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", 0, 0x5482, 0 },
+{ "asm/ioctls.h", "TIOCSTI", 0, 0x5472, 0 },
+{ "asm/ioctls.h", "TIOCSWINSZ", _IOC_WRITE, 0x7467, 0x08 },
+{ "asm/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm/sockios.h", "FIOGETOWN", _IOC_READ, 0x667b, 0x04 },
+{ "asm/sockios.h", "FIOSETOWN", _IOC_WRITE, 0x667c, 0x04 },
+{ "asm/sockios.h", "SIOCATMARK", _IOC_READ, 0x7307, 0x04 },
+{ "asm/sockios.h", "SIOCGPGRP", _IOC_READ, 0x7309, 0x04 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", _IOC_WRITE, 0x7308, 0x04 },
diff --git a/linux/mips/ioctls_inc0.h b/linux/mips/ioctls_inc0.h
new file mode 100644
index 0000000..c00687f
--- /dev/null
+++ b/linux/mips/ioctls_inc0.h
@@ -0,0 +1,5 @@
+#ifdef LINUX_MIPSN64
+# include "64/ioctls_inc.h"
+#else
+# include "32/ioctls_inc.h"
+#endif
diff --git a/linux/mips/signalent.h b/linux/mips/signalent.h
index 2cf746a..d18e510 100644
--- a/linux/mips/signalent.h
+++ b/linux/mips/signalent.h
@@ -30,3 +30,4 @@
"SIGPROF", /* 29 */
"SIGXCPU", /* 30 */
"SIGXFSZ", /* 31 */
+ "SIGRTMIN", /* 32 */
diff --git a/linux/mips/syscallent-n32.h b/linux/mips/syscallent-n32.h
index ba7c84f..d820cc0 100644
--- a/linux/mips/syscallent-n32.h
+++ b/linux/mips/syscallent-n32.h
@@ -1,636 +1,333 @@
#if defined LINUX_MIPSN32
- /* For an N32 strace decode the N32 64-bit syscalls. */
- { 3, TD, sys_read, "read" }, /* 6000 */ /* start of Linux N32 */
- { 3, TD, sys_write, "write" }, /* 6001 */
- { 3, TD|TF, sys_open, "open" }, /* 6002 */
- { 1, TD, sys_close, "close" }, /* 6003 */
- { 2, TF, sys_stat64, "stat" }, /* 6004 */
- { 2, TD, sys_fstat64, "fstat" }, /* 6005 */
- { 2, TF, sys_lstat64, "lstat" }, /* 6006 */
- { 3, TD, sys_poll, "poll" }, /* 6007 */
- { 3, TD, sys_lseek, "lseek" }, /* 6008 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 6009 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 6010 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 6011 */
- { 1, TM|SI, sys_brk, "brk" }, /* 6012 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 6013 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 6014 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 6015 */
- { 4, TD, sys_pread, "pread64" }, /* 6016 */
- { 4, TD, sys_pwrite, "pwrite64" }, /* 6017 */
- { 3, TD, sys_readv, "readv" }, /* 6018 */
- { 3, TD, sys_writev, "writev" }, /* 6019 */
- { 2, TF, sys_access, "access" }, /* 6020 */
- { 1, TD, sys_pipe, "pipe" }, /* 6021 */
- { 5, TD, sys_select, "_newselect" }, /* 6022 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 6023 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 6024 */
- { 3, TM, sys_msync, "msync" }, /* 6025 */
- { 3, TM, sys_mincore, "mincore" }, /* 6026 */
- { 3, TM, sys_madvise, "madvise" }, /* 6027 */
- { 3, TI, sys_shmget, "shmget" }, /* 6028 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 6029 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 6030 */
- { 1, TD, sys_dup, "dup" }, /* 6031 */
- { 2, TD, sys_dup2, "dup2" }, /* 6032 */
- { 0, TS, sys_pause, "pause" }, /* 6033 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 6034 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 6035 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 6036 */
- { 1, 0, sys_alarm, "alarm" }, /* 6037 */
- { 0, 0, sys_getpid, "getpid" }, /* 6038 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 6039 */
- { 3, TN, sys_socket, "socket" }, /* 6040 */
- { 3, TN, sys_connect, "connect" }, /* 6041 */
- { 3, TN, sys_accept, "accept" }, /* 6042 */
- { 6, TN, sys_sendto, "sendto" }, /* 6043 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 6044 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 6045 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 6046 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 6047 */
- { 3, TN, sys_bind, "bind" }, /* 6048 */
- { 2, TN, sys_listen, "listen" }, /* 6049 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 6050 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 6051 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 6052 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 6053 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 6054 */
- { 5, TP, sys_clone, "clone" }, /* 6055 */
- { 0, TP, sys_fork, "fork" }, /* 6056 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 6057 */
- { 1, TP|SE, sys_exit, "exit" }, /* 6058 */
- { 4, TP, sys_wait4, "wait4" }, /* 6059 */
- { 2, TS, sys_kill, "kill" }, /* 6060 */
- { 1, 0, sys_uname, "uname" }, /* 6061 */
- { 3, TI, sys_semget, "semget" }, /* 6062 */
- { 3, TI, printargs, "semop" }, /* 6063 */
- { 4, TI, sys_semctl, "semctl" }, /* 6064 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 6065 */
- { 2, TI, sys_msgget, "msgget" }, /* 6066 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 6067 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 6068 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 6069 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 6070 */
- { 2, TD, sys_flock, "flock" }, /* 6071 */
- { 1, TD, sys_fsync, "fsync" }, /* 6072 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 6073 */
- { 2, TF, sys_truncate64, "truncate" }, /* 6074 */
- { 2, TD, sys_ftruncate64, "ftruncate" }, /* 6075 */
- { 3, TD, sys_getdents, "getdents" }, /* 6076 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 6077 */
- { 1, TF, sys_chdir, "chdir" }, /* 6078 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 6079 */
- { 2, TF, sys_rename, "rename" }, /* 6080 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 6081 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 6082 */
- { 2, TD|TF, sys_creat, "creat" }, /* 6083 */
- { 2, TF, sys_link, "link" }, /* 6084 */
- { 1, TF, sys_unlink, "unlink" }, /* 6085 */
- { 2, TF, sys_symlink, "symlink" }, /* 6086 */
- { 3, TF, sys_readlink, "readlink" }, /* 6087 */
- { 2, TF, sys_chmod, "chmod" }, /* 6088 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 6089 */
- { 3, TF, sys_chown, "chown" }, /* 6090 */
- { 3, TD, sys_fchown, "fchown" }, /* 6091 */
- { 3, TF, sys_chown, "lchown" }, /* 6092 */
- { 1, 0, sys_umask, "umask" }, /* 6093 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 6094 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 6095 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 6096 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 6097 */
- { 1, 0, sys_times, "times" }, /* 6098 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 6099 */
- { 0, NF, sys_getuid, "getuid" }, /* 6100 */
- { 3, 0, sys_syslog, "syslog" }, /* 6101 */
- { 0, NF, sys_getgid, "getgid" }, /* 6102 */
- { 1, 0, sys_setuid, "setuid" }, /* 6103 */
- { 1, 0, sys_setgid, "setgid" }, /* 6104 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 6105 */
- { 0, NF, sys_getegid, "getegid" }, /* 6106 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 6107 */
- { 0, 0, sys_getppid, "getppid" }, /* 6108 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 6109 */
- { 0, 0, sys_setsid, "setsid" }, /* 6110 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 6111 */
- { 2, 0, sys_setregid, "setregid" }, /* 6112 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 6113 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 6114 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 6115 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 6116 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 6117 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 6118 */
- { 0, 0, sys_getpgid, "getpgid" }, /* 6119 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 6120 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 6121 */
- { 1, 0, sys_getsid, "getsid" }, /* 6122 */
- { 2, 0, sys_capget, "capget" }, /* 6123 */
- { 2, 0, sys_capset, "capset" }, /* 6124 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 6125 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"},/* 6126 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"},/* 6127 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 6128 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 6129 */
- { 2, TF, sys_utime, "utime" }, /* 6130 */
- { 3, TF, sys_mknod, "mknod" }, /* 6131 */
- { 1, 0, sys_personality, "personality" }, /* 6132 */
- { 2, 0, sys_ustat, "ustat" }, /* 6133 */
- { 3, TF, sys_statfs, "statfs" }, /* 6134 */
- { 3, TD, sys_fstatfs, "fstatfs" }, /* 6135 */
- { 5, 0, sys_sysfs, "sysfs" }, /* 6136 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 6137 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 6138 */
- { 2, 0, sys_sched_setparam, "sched_setparam"}, /* 6139 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 6140 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 6141 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 6142 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 6143 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 6144 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 6145 */
- { 2, TM, sys_mlock, "mlock" }, /* 6146 */
- { 2, TM, sys_munlock, "munlock" }, /* 6147 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 6148 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 6149 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 6150 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 6151 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 6152 */
- { 5, 0, sys_prctl, "prctl" }, /* 6153 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 6154 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 6155 */
- { 1, TF, sys_chroot, "chroot" }, /* 6156 */
- { 0, 0, sys_sync, "sync" }, /* 6157 */
- { 1, TF, sys_acct, "acct" }, /* 6158 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 6159 */
- { 5, TF, sys_mount, "mount" }, /* 6160 */
- { 2, TF, sys_umount2, "umount2" }, /* 6161 */
- { 2, TF, sys_swapon, "swapon" }, /* 6162 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 6163 */
- { 4, 0, sys_reboot, "reboot" }, /* 6164 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 6165 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 6166 */
- { 2, 0, sys_create_module, "create_module" }, /* 6167 */
- { 4, 0, sys_init_module, "init_module" }, /* 6168 */
- { 1, 0, sys_delete_module, "delete_module" }, /* 6169 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 6170 */
- { 5, 0, sys_query_module, "query_module" }, /* 6171 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 6172 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 6173 */
- { 5, TN, printargs, "getpmsg" }, /* 6174 */
- { 5, TN, printargs, "putpmsg" }, /* 6175 */
- { 0, 0, sys_afs_syscall, "afs_syscall" }, /* 6176 */
- { 0, 0, printargs, "reserved177" }, /* 6177 */
- { 0, 0, sys_gettid, "gettid" }, /* 6178 */
- { 3, TD, sys_readahead, "readahead" }, /* 6179 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 6180 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6181 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 6182 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 6183 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 6184 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 6185 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 6186 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 6187 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 6188 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 6189 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 6190 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 6191 */
- { 2, TS, sys_kill, "tkill" }, /* 6192 */
- { 1, 0, sys_time, "time" }, /* 6193 */
- { 6, 0, sys_futex, "futex" }, /* 6194 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 6195 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 6196 */
- { 3, 0, printargs, "cacheflush" }, /* 6197 */
- { 3, 0, printargs, "cachectl" }, /* 6198 */
- { 4, 0, sys_sysmips, "sysmips" }, /* 6199 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 6200 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 6201 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 6202 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 6203 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 6204 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 6205 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 6206 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 6207 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 6208 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 6209 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 6210 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 6211 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 6212 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 6213 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 6214 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 6215 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 6216 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 6217 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 6218 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 6219 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 6220 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 6221 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 6222 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 6223 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 6224 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 6225 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 6226 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 6227 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 6228 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 6229 */
- { 2, TF, sys_utimes, "utimes" }, /* 6230 */
- { 6, TM, sys_mbind, "mbind" }, /* 6231 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 6232 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 6233 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 6234 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 6235 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 6236 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 6237 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 6238 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 6239 */
- { 5, 0, sys_vserver, "vserver" }, /* 6240 */
- { 5, TP, sys_waitid, "waitid" }, /* 6241 */
- [6242] = { },
- { 5, 0, sys_add_key, "add_key" }, /* 6243 */
- { 4, 0, sys_request_key, "request_key" }, /* 6244 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 6245 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 6246 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 6247 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 6248 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 6249 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 6250 */
- { 4, TD|TF, sys_openat, "openat" }, /* 6251 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 6252 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 6253 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 6254 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 6255 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 6256 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 6257 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 6258 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 6259 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 6260 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 6261 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 6262 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 6263 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 6264 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 6265 */
- { 1, TP, sys_unshare, "unshare" }, /* 6266 */
- { 6, TD, sys_splice, "splice" }, /* 6267 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 6268 */
- { 4, TD, sys_tee, "tee" }, /* 6269 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 6270 */
- { 6, TM, printargs, "move_pages" }, /* 6271 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 6272 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 6273 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 6274 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 6275 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 6276 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 6277 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 6278 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 6279 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 6280 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 6281 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 6282 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 6283 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 6284 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 6285 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 6286 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 6287 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 6288 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 6289 */
- { 3, TD, sys_dup3, "dup3" }, /* 6290 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 6291 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 6292 */
- { 4, TD, sys_preadv, "preadv" }, /* 6293 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 6294 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 6295 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 6296 */
- { 4, TN, sys_accept4, "accept4" }, /* 6297 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 6298 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 6299 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 6300 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 6301 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 6302 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 6303 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 6304 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 6305 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 6306 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 6307 */
- { 2, TD, sys_setns, "setns" }, /* 6308 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 6309 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 6310 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 6311 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 6312 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 6313 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 6314 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 6315 */
+/* For an N32 strace decode the N32 64-bit syscalls. */
+[6000] = { 3, TD, sys_read, "read" }, /* start of Linux N32 */
+[6001] = { 3, TD, sys_write, "write" },
+[6002] = { 3, TD|TF, sys_open, "open" },
+[6003] = { 1, TD, sys_close, "close" },
+[6004] = { 2, TF, sys_stat64, "stat" },
+[6005] = { 2, TD, sys_fstat64, "fstat" },
+[6006] = { 2, TF, sys_lstat64, "lstat" },
+[6007] = { 3, TD, sys_poll, "poll" },
+[6008] = { 3, TD, sys_lseek, "lseek" },
+[6009] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[6010] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[6011] = { 2, TM|SI, sys_munmap, "munmap" },
+[6012] = { 1, TM|SI, sys_brk, "brk" },
+[6013] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[6014] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[6015] = { 3, TD, sys_ioctl, "ioctl" },
+[6016] = { 4, TD, sys_pread, "pread64" },
+[6017] = { 4, TD, sys_pwrite, "pwrite64" },
+[6018] = { 3, TD, sys_readv, "readv" },
+[6019] = { 3, TD, sys_writev, "writev" },
+[6020] = { 2, TF, sys_access, "access" },
+[6021] = { 1, TD, sys_pipe, "pipe" },
+[6022] = { 5, TD, sys_select, "select" },
+[6023] = { 0, 0, sys_sched_yield, "sched_yield" },
+[6024] = { 5, TM|SI, sys_mremap, "mremap" },
+[6025] = { 3, TM, sys_msync, "msync" },
+[6026] = { 3, TM, sys_mincore, "mincore" },
+[6027] = { 3, TM, sys_madvise, "madvise" },
+[6028] = { 3, TI, sys_shmget, "shmget" },
+[6029] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[6030] = { 3, TI, sys_shmctl, "shmctl" },
+[6031] = { 1, TD, sys_dup, "dup" },
+[6032] = { 2, TD, sys_dup2, "dup2" },
+[6033] = { 0, TS, sys_pause, "pause" },
+[6034] = { 2, 0, sys_nanosleep, "nanosleep" },
+[6035] = { 2, 0, sys_getitimer, "getitimer" },
+[6036] = { 3, 0, sys_setitimer, "setitimer" },
+[6037] = { 1, 0, sys_alarm, "alarm" },
+[6038] = { 0, 0, sys_getpid, "getpid" },
+[6039] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[6040] = { 3, TN, sys_socket, "socket" },
+[6041] = { 3, TN, sys_connect, "connect" },
+[6042] = { 3, TN, sys_accept, "accept" },
+[6043] = { 6, TN, sys_sendto, "sendto" },
+[6044] = { 6, TN, sys_recvfrom, "recvfrom" },
+[6045] = { 3, TN, sys_sendmsg, "sendmsg" },
+[6046] = { 3, TN, sys_recvmsg, "recvmsg" },
+[6047] = { 2, TN, sys_shutdown, "shutdown" },
+[6048] = { 3, TN, sys_bind, "bind" },
+[6049] = { 2, TN, sys_listen, "listen" },
+[6050] = { 3, TN, sys_getsockname, "getsockname" },
+[6051] = { 3, TN, sys_getpeername, "getpeername" },
+[6052] = { 4, TN, sys_socketpair, "socketpair" },
+[6053] = { 5, TN, sys_setsockopt, "setsockopt" },
+[6054] = { 5, TN, sys_getsockopt, "getsockopt" },
+[6055] = { 5, TP, sys_clone, "clone" },
+[6056] = { 0, TP, sys_fork, "fork" },
+[6057] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[6058] = { 1, TP|SE, sys_exit, "exit" },
+[6059] = { 4, TP, sys_wait4, "wait4" },
+[6060] = { 2, TS, sys_kill, "kill" },
+[6061] = { 1, 0, sys_uname, "uname" },
+[6062] = { 3, TI, sys_semget, "semget" },
+[6063] = { 3, TI, printargs, "semop" },
+[6064] = { 4, TI, sys_semctl, "semctl" },
+[6065] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[6066] = { 2, TI, sys_msgget, "msgget" },
+[6067] = { 4, TI, sys_msgsnd, "msgsnd" },
+[6068] = { 5, TI, sys_msgrcv, "msgrcv" },
+[6069] = { 3, TI, sys_msgctl, "msgctl" },
+[6070] = { 3, TD, sys_fcntl, "fcntl" },
+[6071] = { 2, TD, sys_flock, "flock" },
+[6072] = { 1, TD, sys_fsync, "fsync" },
+[6073] = { 1, TD, sys_fdatasync, "fdatasync" },
+[6074] = { 2, TF, sys_truncate64, "truncate" },
+[6075] = { 2, TD, sys_ftruncate64, "ftruncate" },
+[6076] = { 3, TD, sys_getdents, "getdents" },
+[6077] = { 2, TF, sys_getcwd, "getcwd" },
+[6078] = { 1, TF, sys_chdir, "chdir" },
+[6079] = { 1, TD, sys_fchdir, "fchdir" },
+[6080] = { 2, TF, sys_rename, "rename" },
+[6081] = { 2, TF, sys_mkdir, "mkdir" },
+[6082] = { 1, TF, sys_rmdir, "rmdir" },
+[6083] = { 2, TD|TF, sys_creat, "creat" },
+[6084] = { 2, TF, sys_link, "link" },
+[6085] = { 1, TF, sys_unlink, "unlink" },
+[6086] = { 2, TF, sys_symlink, "symlink" },
+[6087] = { 3, TF, sys_readlink, "readlink" },
+[6088] = { 2, TF, sys_chmod, "chmod" },
+[6089] = { 2, TD, sys_fchmod, "fchmod" },
+[6090] = { 3, TF, sys_chown, "chown" },
+[6091] = { 3, TD, sys_fchown, "fchown" },
+[6092] = { 3, TF, sys_chown, "lchown" },
+[6093] = { 1, 0, sys_umask, "umask" },
+[6094] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[6095] = { 2, 0, sys_getrlimit, "getrlimit" },
+[6096] = { 2, 0, sys_getrusage, "getrusage" },
+[6097] = { 1, 0, sys_sysinfo, "sysinfo" },
+[6098] = { 1, 0, sys_times, "times" },
+[6099] = { 4, 0, sys_ptrace, "ptrace" },
+[6100] = { 0, NF, sys_getuid, "getuid" },
+[6101] = { 3, 0, sys_syslog, "syslog" },
+[6102] = { 0, NF, sys_getgid, "getgid" },
+[6103] = { 1, 0, sys_setuid, "setuid" },
+[6104] = { 1, 0, sys_setgid, "setgid" },
+[6105] = { 0, NF, sys_geteuid, "geteuid" },
+[6106] = { 0, NF, sys_getegid, "getegid" },
+[6107] = { 2, 0, sys_setpgid, "setpgid" },
+[6108] = { 0, 0, sys_getppid, "getppid" },
+[6109] = { 0, 0, sys_getpgrp, "getpgrp" },
+[6110] = { 0, 0, sys_setsid, "setsid" },
+[6111] = { 2, 0, sys_setreuid, "setreuid" },
+[6112] = { 2, 0, sys_setregid, "setregid" },
+[6113] = { 2, 0, sys_getgroups, "getgroups" },
+[6114] = { 2, 0, sys_setgroups, "setgroups" },
+[6115] = { 3, 0, sys_setresuid, "setresuid" },
+[6116] = { 3, 0, sys_getresuid, "getresuid" },
+[6117] = { 3, 0, sys_setresgid, "setresgid" },
+[6118] = { 3, 0, sys_getresgid, "getresgid" },
+[6119] = { 0, 0, sys_getpgid, "getpgid" },
+[6120] = { 1, NF, sys_setfsuid, "setfsuid" },
+[6121] = { 1, NF, sys_setfsgid, "setfsgid" },
+[6122] = { 1, 0, sys_getsid, "getsid" },
+[6123] = { 2, 0, sys_capget, "capget" },
+[6124] = { 2, 0, sys_capset, "capset" },
+[6125] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[6126] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[6127] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[6128] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[6129] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[6130] = { 2, TF, sys_utime, "utime" },
+[6131] = { 3, TF, sys_mknod, "mknod" },
+[6132] = { 1, 0, sys_personality, "personality" },
+[6133] = { 2, 0, sys_ustat, "ustat" },
+[6134] = { 3, TF, sys_statfs, "statfs" },
+[6135] = { 3, TD, sys_fstatfs, "fstatfs" },
+[6136] = { 5, 0, sys_sysfs, "sysfs" },
+[6137] = { 2, 0, sys_getpriority, "getpriority" },
+[6138] = { 3, 0, sys_setpriority, "setpriority" },
+[6139] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[6140] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[6141] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[6142] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[6143] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[6144] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[6145] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[6146] = { 2, TM, sys_mlock, "mlock" },
+[6147] = { 2, TM, sys_munlock, "munlock" },
+[6148] = { 1, TM, sys_mlockall, "mlockall" },
+[6149] = { 0, TM, sys_munlockall, "munlockall" },
+[6150] = { 0, 0, sys_vhangup, "vhangup" },
+[6151] = { 2, TF, sys_pivotroot, "pivot_root" },
+[6152] = { 1, 0, sys_sysctl, "_sysctl" },
+[6153] = { 5, 0, sys_prctl, "prctl" },
+[6154] = { 1, 0, sys_adjtimex, "adjtimex" },
+[6155] = { 2, 0, sys_setrlimit, "setrlimit" },
+[6156] = { 1, TF, sys_chroot, "chroot" },
+[6157] = { 0, 0, sys_sync, "sync" },
+[6158] = { 1, TF, sys_acct, "acct" },
+[6159] = { 2, 0, sys_settimeofday, "settimeofday" },
+[6160] = { 5, TF, sys_mount, "mount" },
+[6161] = { 2, TF, sys_umount2, "umount2" },
+[6162] = { 2, TF, sys_swapon, "swapon" },
+[6163] = { 1, TF, sys_swapoff, "swapoff" },
+[6164] = { 4, 0, sys_reboot, "reboot" },
+[6165] = { 2, 0, sys_sethostname, "sethostname" },
+[6166] = { 2, 0, sys_setdomainname, "setdomainname" },
+[6167] = { 2, 0, sys_create_module, "create_module" },
+[6168] = { 4, 0, sys_init_module, "init_module" },
+[6169] = { 1, 0, sys_delete_module, "delete_module" },
+[6170] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[6171] = { 5, 0, sys_query_module, "query_module" },
+[6172] = { 4, TF, sys_quotactl, "quotactl" },
+[6173] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[6174] = { 5, TN, printargs, "getpmsg" },
+[6175] = { 5, TN, printargs, "putpmsg" },
+[6176] = { 0, 0, sys_afs_syscall, "afs_syscall" },
+[6177] = { 0, 0, printargs, "reserved177" },
+[6178] = { 0, 0, sys_gettid, "gettid" },
+[6179] = { 3, TD, sys_readahead, "readahead" },
+[6180] = { 5, TF, sys_setxattr, "setxattr" },
+[6181] = { 5, TF, sys_setxattr, "lsetxattr" },
+[6182] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[6183] = { 4, TF, sys_getxattr, "getxattr" },
+[6184] = { 4, TF, sys_getxattr, "lgetxattr" },
+[6185] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[6186] = { 3, TF, sys_listxattr, "listxattr" },
+[6187] = { 3, TF, sys_listxattr, "llistxattr" },
+[6188] = { 3, TD, sys_flistxattr, "flistxattr" },
+[6189] = { 2, TF, sys_removexattr, "removexattr" },
+[6190] = { 2, TF, sys_removexattr, "lremovexattr" },
+[6191] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[6192] = { 2, TS, sys_kill, "tkill" },
+[6193] = { 1, 0, sys_time, "time" },
+[6194] = { 6, 0, sys_futex, "futex" },
+[6195] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[6196] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[6197] = { 3, 0, printargs, "cacheflush" },
+[6198] = { 3, 0, printargs, "cachectl" },
+[6199] = { 4, 0, sys_sysmips, "sysmips" },
+[6200] = { 2, 0, sys_io_setup, "io_setup" },
+[6201] = { 1, 0, sys_io_destroy, "io_destroy" },
+[6202] = { 5, 0, sys_io_getevents, "io_getevents" },
+[6203] = { 3, 0, sys_io_submit, "io_submit" },
+[6204] = { 3, 0, sys_io_cancel, "io_cancel" },
+[6205] = { 1, TP|SE, sys_exit, "exit_group" },
+[6206] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[6207] = { 1, TD, sys_epoll_create, "epoll_create" },
+[6208] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[6209] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[6210] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[6211] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[6212] = { 3, TD, sys_fcntl, "fcntl64" },
+[6213] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[6214] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[6215] = { 4, TI, sys_semtimedop, "semtimedop" },
+[6216] = { 4, TD, sys_fadvise64, "fadvise64" },
+[6217] = { 3, TF, sys_statfs64, "statfs64" },
+[6218] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[6219] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[6220] = { 3, 0, sys_timer_create, "timer_create" },
+[6221] = { 4, 0, sys_timer_settime, "timer_settime" },
+[6222] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[6223] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[6224] = { 1, 0, sys_timer_delete, "timer_delete" },
+[6225] = { 2, 0, sys_clock_settime, "clock_settime" },
+[6226] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[6227] = { 2, 0, sys_clock_getres, "clock_getres" },
+[6228] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[6229] = { 3, TS, sys_tgkill, "tgkill" },
+[6230] = { 2, TF, sys_utimes, "utimes" },
+[6231] = { 6, TM, sys_mbind, "mbind" },
+[6232] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[6233] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[6234] = { 4, 0, sys_mq_open, "mq_open" },
+[6235] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[6236] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[6237] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[6238] = { 2, 0, sys_mq_notify, "mq_notify" },
+[6239] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[6240] = { 5, 0, sys_vserver, "vserver" },
+[6241] = { 5, TP, sys_waitid, "waitid" },
+[6242] = { },
+[6243] = { 5, 0, sys_add_key, "add_key" },
+[6244] = { 4, 0, sys_request_key, "request_key" },
+[6245] = { 5, 0, sys_keyctl, "keyctl" },
+[6246] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[6247] = { 0, TD, sys_inotify_init, "inotify_init" },
+[6248] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[6249] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[6250] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[6251] = { 4, TD|TF, sys_openat, "openat" },
+[6252] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[6253] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[6254] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[6255] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[6256] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[6257] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[6258] = { 4, TD|TF, sys_renameat, "renameat" },
+[6259] = { 5, TD|TF, sys_linkat, "linkat" },
+[6260] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[6261] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[6262] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[6263] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[6264] = { 6, TD, sys_pselect6, "pselect6" },
+[6265] = { 5, TD, sys_ppoll, "ppoll" },
+[6266] = { 1, TP, sys_unshare, "unshare" },
+[6267] = { 6, TD, sys_splice, "splice" },
+[6268] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[6269] = { 4, TD, sys_tee, "tee" },
+[6270] = { 4, TD, sys_vmsplice, "vmsplice" },
+[6271] = { 6, TM, sys_move_pages, "move_pages" },
+[6272] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[6273] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[6274] = { 4, 0, sys_kexec_load, "kexec_load" },
+[6275] = { 3, 0, sys_getcpu, "getcpu" },
+[6276] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[6277] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[6278] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[6279] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[6280] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[6281] = { 4, TD, sys_timerfd, "timerfd" },
+[6282] = { 1, TD, sys_eventfd, "eventfd" },
+[6283] = { 4, TD, sys_fallocate, "fallocate" },
+[6284] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[6285] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[6286] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[6287] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[6288] = { 2, TD, sys_eventfd2, "eventfd2" },
+[6289] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[6290] = { 3, TD, sys_dup3, "dup3" },
+[6291] = { 2, TD, sys_pipe2, "pipe2" },
+[6292] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[6293] = { 4, TD, sys_preadv, "preadv" },
+[6294] = { 4, TD, sys_pwritev, "pwritev" },
+[6295] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[6296] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[6297] = { 4, TN, sys_accept4, "accept4" },
+[6298] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[6299] = { 3, TD, sys_getdents64, "getdents64" },
+[6300] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[6301] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[6302] = { 4, 0, sys_prlimit64, "prlimit64" },
+[6303] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[6304] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[6305] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[6306] = { 1, TD, sys_syncfs, "syncfs" },
+[6307] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[6308] = { 2, TD, sys_setns, "setns" },
+[6309] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[6310] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[6311] = { 5, 0, sys_kcmp, "kcmp" },
+[6312] = { 3, TD, sys_finit_module, "finit_module" },
+[6313] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[6314] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[6315] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[6316] = { 3, 0, sys_seccomp, "seccomp", },
+[6317] = { 3, 0, sys_getrandom, "getrandom", },
+[6318] = { 2, TD, sys_memfd_create, "memfd_create", },
+[6319] = { 3, TD, sys_bpf, "bpf", },
+[6320] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[6321 ... 6399] = { },
+
+# define SYS_socket_subcall 6400
+# include "subcall.h"
+
#else
- { 0, 0, printargs, "n32_read" }, /* 6000 */
- { 0, 0, printargs, "n32_write" }, /* 6001 */
- { 0, 0, printargs, "n32_open" }, /* 6002 */
- { 0, 0, printargs, "n32_close" }, /* 6003 */
- { 0, 0, printargs, "n32_stat" }, /* 6004 */
- { 0, 0, printargs, "n32_fstat" }, /* 6005 */
- { 0, 0, printargs, "n32_lstat" }, /* 6006 */
- { 0, 0, printargs, "n32_poll" }, /* 6007 */
- { 0, 0, printargs, "n32_lseek" }, /* 6008 */
- { 0, TD|TM|SI, printargs, "n32_mmap" }, /* 6009 */
- { 0, TM|SI, printargs, "n32_mprotect" }, /* 6010 */
- { 0, TM|SI, printargs, "n32_munmap" }, /* 6011 */
- { 0, TM|SI, printargs, "n32_brk" }, /* 6012 */
- { 0, 0, printargs, "n32_rt_sigaction" }, /* 6013 */
- { 0, 0, printargs, "n32_rt_sigprocmask" }, /* 6014 */
- { 0, 0, printargs, "n32_ioctl" }, /* 6015 */
- { 0, 0, printargs, "n32_pread64" }, /* 6016 */
- { 0, 0, printargs, "n32_pwrite64" }, /* 6017 */
- { 0, 0, printargs, "n32_readv" }, /* 6018 */
- { 0, 0, printargs, "n32_writev" }, /* 6019 */
- { 0, 0, printargs, "n32_access" }, /* 6020 */
- { 0, 0, printargs, "n32_pipe" }, /* 6021 */
- { 0, 0, printargs, "n32__newselect" }, /* 6022 */
- { 0, 0, printargs, "n32_sched_yield" }, /* 6023 */
- { 0, TM|SI, printargs, "n32_mremap" }, /* 6024 */
- { 0, TM, printargs, "n32_msync" }, /* 6025 */
- { 0, TM, printargs, "n32_mincore" }, /* 6026 */
- { 0, TM, printargs, "n32_madvise" }, /* 6027 */
- { 0, 0, printargs, "n32_shmget" }, /* 6028 */
- { 0, TI|TM|SI, printargs, "n32_shmat" }, /* 6029 */
- { 0, 0, printargs, "n32_shmctl" }, /* 6030 */
- { 0, 0, printargs, "n32_dup" }, /* 6031 */
- { 0, 0, printargs, "n32_dup2" }, /* 6032 */
- { 0, 0, printargs, "n32_pause" }, /* 6033 */
- { 0, 0, printargs, "n32_nanosleep" }, /* 6034 */
- { 0, 0, printargs, "n32_getitimer" }, /* 6035 */
- { 0, 0, printargs, "n32_setitimer" }, /* 6036 */
- { 0, 0, printargs, "n32_alarm" }, /* 6037 */
- { 0, 0, printargs, "n32_getpid" }, /* 6038 */
- { 0, 0, printargs, "n32_sendfile" }, /* 6039 */
- { 0, 0, printargs, "n32_socket" }, /* 6040 */
- { 0, 0, printargs, "n32_connect" }, /* 6041 */
- { 0, 0, printargs, "n32_accept" }, /* 6042 */
- { 0, 0, printargs, "n32_sendto" }, /* 6043 */
- { 0, 0, printargs, "n32_recvfrom" }, /* 6044 */
- { 0, 0, printargs, "n32_sendmsg" }, /* 6045 */
- { 0, 0, printargs, "n32_recvmsg" }, /* 6046 */
- { 0, 0, printargs, "n32_shutdown" }, /* 6047 */
- { 0, 0, printargs, "n32_bind" }, /* 6048 */
- { 0, 0, printargs, "n32_listen" }, /* 6049 */
- { 0, 0, printargs, "n32_getsockname" }, /* 6050 */
- { 0, 0, printargs, "n32_getpeername" }, /* 6051 */
- { 0, 0, printargs, "n32_socketpair" }, /* 6052 */
- { 0, 0, printargs, "n32_setsockopt" }, /* 6053 */
- { 0, 0, printargs, "n32_getsockopt" }, /* 6054 */
- { 5, TP, printargs, "n32_clone" }, /* 6055 */
- { 0, TP, printargs, "n32_fork" }, /* 6056 */
- { 3, TF|TP|SE|SI, printargs, "n32_execve" }, /* 6057 */
- { 1, TP|SE, printargs, "n32_exit" }, /* 6058 */
- { 4, TP, printargs, "n32_wait4" }, /* 6059 */
- { 0, 0, printargs, "n32_kill" }, /* 6060 */
- { 0, 0, printargs, "n32_uname" }, /* 6061 */
- { 0, 0, printargs, "n32_semget" }, /* 6062 */
- { 0, 0, printargs, "n32_semop" }, /* 6063 */
- { 0, 0, printargs, "n32_semctl" }, /* 6064 */
- { 0, TI|TM|SI, printargs, "n32_shmdt" }, /* 6065 */
- { 0, 0, printargs, "n32_msgget" }, /* 6066 */
- { 0, 0, printargs, "n32_msgsnd" }, /* 6067 */
- { 0, 0, printargs, "n32_msgrcv" }, /* 6068 */
- { 0, 0, printargs, "n32_msgctl" }, /* 6069 */
- { 0, 0, printargs, "n32_fcntl" }, /* 6070 */
- { 0, 0, printargs, "n32_flock" }, /* 6071 */
- { 0, 0, printargs, "n32_fsync" }, /* 6072 */
- { 0, 0, printargs, "n32_fdatasync" }, /* 6073 */
- { 0, 0, printargs, "n32_truncate" }, /* 6074 */
- { 0, 0, printargs, "n32_ftruncate" }, /* 6075 */
- { 0, 0, printargs, "n32_getdents" }, /* 6076 */
- { 0, 0, printargs, "n32_getcwd" }, /* 6077 */
- { 0, 0, printargs, "n32_chdir" }, /* 6078 */
- { 0, 0, printargs, "n32_fchdir" }, /* 6079 */
- { 0, 0, printargs, "n32_rename" }, /* 6080 */
- { 0, 0, printargs, "n32_mkdir" }, /* 6081 */
- { 0, 0, printargs, "n32_rmdir" }, /* 6082 */
- { 0, 0, printargs, "n32_creat" }, /* 6083 */
- { 0, 0, printargs, "n32_link" }, /* 6084 */
- { 0, 0, printargs, "n32_unlink" }, /* 6085 */
- { 0, 0, printargs, "n32_symlink" }, /* 6086 */
- { 0, 0, printargs, "n32_readlink" }, /* 6087 */
- { 0, 0, printargs, "n32_chmod" }, /* 6088 */
- { 0, 0, printargs, "n32_fchmod" }, /* 6089 */
- { 0, 0, printargs, "n32_chown" }, /* 6090 */
- { 0, 0, printargs, "n32_fchown" }, /* 6091 */
- { 0, 0, printargs, "n32_lchown" }, /* 6092 */
- { 0, 0, printargs, "n32_umask" }, /* 6093 */
- { 0, 0, printargs, "n32_gettimeofday" }, /* 6094 */
- { 0, 0, printargs, "n32_getrlimit" }, /* 6095 */
- { 0, 0, printargs, "n32_getrusage" }, /* 6096 */
- { 0, 0, printargs, "n32_sysinfo" }, /* 6097 */
- { 0, 0, printargs, "n32_times" }, /* 6098 */
- { 0, 0, printargs, "n32_ptrace" }, /* 6099 */
- { 0, 0, printargs, "n32_getuid" }, /* 6100 */
- { 0, 0, printargs, "n32_syslog" }, /* 6101 */
- { 0, 0, printargs, "n32_getgid" }, /* 6102 */
- { 0, 0, printargs, "n32_setuid" }, /* 6103 */
- { 0, 0, printargs, "n32_setgid" }, /* 6104 */
- { 0, 0, printargs, "n32_geteuid" }, /* 6105 */
- { 0, 0, printargs, "n32_getegid" }, /* 6106 */
- { 0, 0, printargs, "n32_setpgid" }, /* 6107 */
- { 0, 0, printargs, "n32_getppid" }, /* 6108 */
- { 0, 0, printargs, "n32_getpgrp" }, /* 6109 */
- { 0, 0, printargs, "n32_setsid" }, /* 6110 */
- { 0, 0, printargs, "n32_setreuid" }, /* 6111 */
- { 0, 0, printargs, "n32_setregid" }, /* 6112 */
- { 0, 0, printargs, "n32_getgroups" }, /* 6113 */
- { 0, 0, printargs, "n32_setgroups" }, /* 6114 */
- { 0, 0, printargs, "n32_setresuid" }, /* 6115 */
- { 0, 0, printargs, "n32_getresuid" }, /* 6116 */
- { 0, 0, printargs, "n32_setresgid" }, /* 6117 */
- { 0, 0, printargs, "n32_getresgid" }, /* 6118 */
- { 0, 0, printargs, "n32_getpgid" }, /* 6119 */
- { 0, 0, printargs, "n32_setfsuid" }, /* 6120 */
- { 0, 0, printargs, "n32_setfsgid" }, /* 6121 */
- { 0, 0, printargs, "n32_getsid" }, /* 6122 */
- { 0, 0, printargs, "n32_capget" }, /* 6123 */
- { 0, 0, printargs, "n32_capset" }, /* 6124 */
- { 0, 0, printargs, "n32_rt_sigpending" }, /* 6125 */
- { 0, 0, printargs, "n32_rt_sigtimedwait" }, /* 6126 */
- { 0, 0, printargs, "n32_rt_sigqueueinfo" }, /* 6127 */
- { 0, 0, printargs, "n32_rt_sigsuspend" }, /* 6128 */
- { 0, 0, printargs, "n32_sigaltstack" }, /* 6129 */
- { 0, 0, printargs, "n32_utime" }, /* 6130 */
- { 0, 0, printargs, "n32_mknod" }, /* 6131 */
- { 0, 0, printargs, "n32_personality" }, /* 6132 */
- { 0, 0, printargs, "n32_ustat" }, /* 6133 */
- { 0, 0, printargs, "n32_statfs" }, /* 6134 */
- { 0, 0, printargs, "n32_fstatfs" }, /* 6135 */
- { 0, 0, printargs, "n32_sysfs" }, /* 6136 */
- { 0, 0, printargs, "n32_getpriority" }, /* 6137 */
- { 0, 0, printargs, "n32_setpriority" }, /* 6138 */
- { 0, 0, printargs, "n32_sched_setparam" }, /* 6139 */
- { 0, 0, printargs, "n32_sched_getparam" }, /* 6140 */
- { 0, 0, printargs, "n32_sched_setscheduler"}, /* 6141 */
- { 0, 0, printargs, "n32_sched_getscheduler"}, /* 6142 */
- { 0, 0, printargs, "n32_sched_get_priority_max"}, /* 6143 */
- { 0, 0, printargs, "n32_sched_get_priority_min"}, /* 6144 */
- { 0, 0, printargs, "n32_sched_rr_get_interval"}, /* 6145 */
- { 0, TM, printargs, "n32_mlock" }, /* 6146 */
- { 0, TM, printargs, "n32_munlock" }, /* 6147 */
- { 0, TM, printargs, "n32_mlockall" }, /* 6148 */
- { 0, TM, printargs, "n32_munlockall" }, /* 6149 */
- { 0, 0, printargs, "n32_vhangup" }, /* 6150 */
- { 0, 0, printargs, "n32_pivot_root" }, /* 6151 */
- { 0, 0, printargs, "n32__sysctl" }, /* 6152 */
- { 0, 0, printargs, "n32_prctl" }, /* 6153 */
- { 0, 0, printargs, "n32_adjtimex" }, /* 6154 */
- { 0, 0, printargs, "n32_setrlimit" }, /* 6155 */
- { 0, 0, printargs, "n32_chroot" }, /* 6156 */
- { 0, 0, printargs, "n32_sync" }, /* 6157 */
- { 0, 0, printargs, "n32_acct" }, /* 6158 */
- { 0, 0, printargs, "n32_settimeofday" }, /* 6159 */
- { 0, 0, printargs, "n32_mount" }, /* 6160 */
- { 0, 0, printargs, "n32_umount2" }, /* 6161 */
- { 0, 0, printargs, "n32_swapon" }, /* 6162 */
- { 0, 0, printargs, "n32_swapoff" }, /* 6163 */
- { 0, 0, printargs, "n32_reboot" }, /* 6164 */
- { 0, 0, printargs, "n32_sethostname" }, /* 6165 */
- { 0, 0, printargs, "n32_setdomainname" }, /* 6166 */
- { 0, 0, printargs, "n32_create_module" }, /* 6167 */
- { 0, 0, printargs, "n32_init_module" }, /* 6168 */
- { 0, 0, printargs, "n32_delete_module" }, /* 6169 */
- { 0, 0, printargs, "n32_get_kernel_syms" }, /* 6170 */
- { 0, 0, printargs, "n32_query_module" }, /* 6171 */
- { 0, TF, printargs, "n32_quotactl" }, /* 6172 */
- { 0, 0, printargs, "n32_nfsservctl" }, /* 6173 */
- { 0, 0, printargs, "n32_getpmsg" }, /* 6174 */
- { 0, 0, printargs, "n32_putpmsg" }, /* 6175 */
- { 0, 0, printargs, "n32_afs_syscall" }, /* 6176 */
- { 0, 0, printargs, "n32_reserved177" }, /* 6177 */
- { 0, 0, printargs, "n32_gettid" }, /* 6178 */
- { 0, 0, printargs, "n32_readahead" }, /* 6179 */
- { 0, 0, printargs, "n32_setxattr" }, /* 6180 */
- { 0, 0, printargs, "n32_lsetxattr" }, /* 6181 */
- { 0, 0, printargs, "n32_fsetxattr" }, /* 6182 */
- { 0, 0, printargs, "n32_getxattr" }, /* 6183 */
- { 0, 0, printargs, "n32_lgetxattr" }, /* 6184 */
- { 0, 0, printargs, "n32_fgetxattr" }, /* 6185 */
- { 0, 0, printargs, "n32_listxattr" }, /* 6186 */
- { 0, 0, printargs, "n32_llistxattr" }, /* 6187 */
- { 0, 0, printargs, "n32_flistxattr" }, /* 6188 */
- { 0, 0, printargs, "n32_removexattr" }, /* 6189 */
- { 0, 0, printargs, "n32_lremovexattr" }, /* 6190 */
- { 0, 0, printargs, "n32_fremovexattr" }, /* 6191 */
- { 0, 0, printargs, "n32_tkill" }, /* 6192 */
- { 0, 0, printargs, "n32_time" }, /* 6193 */
- { 0, 0, printargs, "n32_futex" }, /* 6194 */
- { 0, 0, printargs, "n32_sched_setaffinity" }, /* 6195 */
- { 0, 0, printargs, "n32_sched_getaffinity" }, /* 6196 */
- { 0, 0, printargs, "n32_cacheflush" }, /* 6197 */
- { 0, 0, printargs, "n32_cachectl" }, /* 6198 */
- { 0, 0, printargs, "n32_sysmips" }, /* 6199 */
- { 0, 0, printargs, "n32_io_setup" }, /* 6200 */
- { 0, 0, printargs, "n32_io_destroy" }, /* 6201 */
- { 0, 0, printargs, "n32_io_getevents" }, /* 6202 */
- { 0, 0, printargs, "n32_io_submit" }, /* 6203 */
- { 0, 0, printargs, "n32_io_cancel" }, /* 6204 */
- { 1, TP|SE, printargs, "n32_exit_group" }, /* 6205 */
- { 0, 0, printargs, "n32_lookup_dcookie" }, /* 6206 */
- { 0, 0, printargs, "n32_epoll_create" }, /* 6207 */
- { 0, 0, printargs, "n32_epoll_ctl" }, /* 6208 */
- { 0, 0, printargs, "n32_epoll_wait" }, /* 6209 */
- { 0, TM|SI, printargs, "n32_remap_file_pages" }, /* 6210 */
- { 0, 0, printargs, "n32_rt_sigreturn" }, /* 6211 */
- { 0, 0, printargs, "n32_fcntl64" }, /* 6212 */
- { 0, 0, printargs, "n32_set_tid_address" }, /* 6213 */
- { 0, 0, printargs, "n32_restart_syscall" }, /* 6214 */
- { 0, 0, printargs, "n32_semtimedop" }, /* 6215 */
- { 0, 0, printargs, "n32_fadvise64" }, /* 6216 */
- { 0, 0, printargs, "n32_statfs64" }, /* 6217 */
- { 0, 0, printargs, "n32_fstatfs64" }, /* 6218 */
- { 0, 0, printargs, "n32_sendfile64" }, /* 6219 */
- { 3, 0, printargs, "n32_timer_create" }, /* 6220 */
- { 4, 0, printargs, "n32_timer_settime" }, /* 6221 */
- { 2, 0, printargs, "n32_timer_gettime" }, /* 6222 */
- { 1, 0, printargs, "n32_timer_getoverrun" }, /* 6223 */
- { 1, 0, printargs, "n32_timer_delete" }, /* 6224 */
- { 2, 0, printargs, "n32_clock_settime" }, /* 6225 */
- { 2, 0, printargs, "n32_clock_gettime" }, /* 6226 */
- { 2, 0, printargs, "n32_clock_getres" }, /* 6227 */
- { 4, 0, printargs, "n32_clock_nanosleep" }, /* 6228 */
- { 3, 0, printargs, "n32_tgkill" }, /* 6229 */
- { 2, 0, printargs, "n32_utimes" }, /* 6230 */
- { 6, TM, printargs, "n32_mbind" }, /* 6231 */
- { 5, TM, printargs, "n32_get_mempolicy" }, /* 6232 */
- { 3, TM, printargs, "n32_set_mempolicy" }, /* 6233 */
- { 4, 0, printargs, "n32_mq_open" }, /* 6234 */
- { 1, 0, printargs, "n32_mq_unlink" }, /* 6235 */
- { 5, 0, printargs, "n32_mq_timedsend" }, /* 6236 */
- { 5, 0, printargs, "n32_mq_timedreceive" }, /* 6237 */
- { 2, 0, printargs, "n32_mq_notify" }, /* 6238 */
- { 3, 0, printargs, "n32_mq_getsetattr" }, /* 6239 */
- { 5, 0, printargs, "n32_vserver" }, /* 6240 */
- { 5, TP, printargs, "n32_waitid" }, /* 6241 */
- { 0, 0, printargs, "n32_SYS_6242" }, /* 6242 */
- { 5, 0, printargs, "n32_add_key" }, /* 6243 */
- { 4, 0, printargs, "n32_request_key" }, /* 6244 */
- { 5, 0, printargs, "n32_keyctl" }, /* 6245 */
- { 1, 0, printargs, "n32_set_thread_area" }, /* 6246 */
- { 0, TD, printargs, "n32_inotify_init" }, /* 6247 */
- { 3, TD, printargs, "n32_inotify_add_watch" }, /* 6248 */
- { 2, TD, printargs, "n32_inotify_rm_watch" }, /* 6249 */
- { 4, TM, printargs, "n32_migrate_pages" }, /* 6250 */
- { 4, TD|TF, printargs, "n32_openat" }, /* 6251 */
- { 3, TD|TF, printargs, "n32_mkdirat" }, /* 6252 */
- { 4, TD|TF, printargs, "n32_mknodat" }, /* 6253 */
- { 5, TD|TF, printargs, "n32_fchownat" }, /* 6254 */
- { 3, TD|TF, printargs, "n32_futimesat" }, /* 6255 */
- { 4, TD|TF, printargs, "n32_newfstatat" }, /* 6256 */
- { 3, TD|TF, printargs, "n32_unlinkat" }, /* 6257 */
- { 4, TD|TF, printargs, "n32_renameat" }, /* 6258 */
- { 5, TD|TF, printargs, "n32_linkat" }, /* 6259 */
- { 3, TD|TF, printargs, "n32_symlinkat" }, /* 6260 */
- { 4, TD|TF, printargs, "n32_readlinkat" }, /* 6261 */
- { 3, TD|TF, printargs, "n32_fchmodat" }, /* 6262 */
- { 3, TD|TF, printargs, "n32_faccessat" }, /* 6263 */
- { 6, TD, printargs, "n32_pselect6" }, /* 6264 */
- { 5, TD, printargs, "n32_ppoll" }, /* 6265 */
- { 1, TP, printargs, "n32_unshare" }, /* 6266 */
- { 6, TD, printargs, "n32_splice" }, /* 6267 */
- { 4, TD, printargs, "n32_sync_file_range" }, /* 6268 */
- { 4, TD, printargs, "n32_tee" }, /* 6269 */
- { 4, TD, printargs, "n32_vmsplice" }, /* 6270 */
- { 6, TM, printargs, "n32_move_pages" }, /* 6271 */
- { 2, 0, printargs, "n32_set_robust_list" }, /* 6272 */
- { 3, 0, printargs, "n32_get_robust_list" }, /* 6273 */
- { 5, 0, printargs, "n32_kexec_load" }, /* 6274 */
- { 3, 0, printargs, "n32_getcpu" }, /* 6275 */
- { 5, TD, printargs, "n32_epoll_pwait" }, /* 6276 */
- { 3, 0, printargs, "n32_ioprio_set" }, /* 6277 */
- { 2, 0, printargs, "n32_ioprio_get" }, /* 6278 */
- { 4, TD|TF, printargs, "n32_utimensat" }, /* 6279 */
- { 3, TD|TS, printargs, "n32_signalfd" }, /* 6280 */
- { 4, TD, printargs, "n32_timerfd" }, /* 6281 */
- { 1, TD, printargs, "n32_eventfd" }, /* 6282 */
- { 6, TD, printargs, "n32_fallocate" }, /* 6283 */
- { 2, TD, printargs, "n32_timerfd_create" }, /* 6284 */
- { 2, TD, printargs, "n32_timerfd_gettime" }, /* 6285 */
- { 4, TD, printargs, "n32_timerfd_settime" }, /* 6286 */
- { 4, TD|TS, printargs, "n32_signalfd4" }, /* 6287 */
- { 2, TD, printargs, "n32_eventfd2" }, /* 6288 */
- { 1, TD, printargs, "n32_epoll_create1" }, /* 6289 */
- { 3, TD, printargs, "n32_dup3" }, /* 6290 */
- { 2, TD, printargs, "n32_pipe2" }, /* 6291 */
- { 1, TD, printargs, "n32_inotify_init1" }, /* 6292 */
- { 5, TD, printargs, "n32_preadv" }, /* 6293 */
- { 5, TD, printargs, "n32_pwritev" }, /* 6294 */
- { 4, TP|TS, printargs, "n32_rt_tgsigqueueinfo" }, /* 6295 */
- { 5, TD, printargs, "n32_perf_event_open" }, /* 6296 */
- { 4, TN, printargs, "n32_accept4" }, /* 6297 */
- { 5, TN, printargs, "n32_recvmmsg" }, /* 6298 */
- { 3, TD, printargs, "n32_getdents64" }, /* 6299 */
- { 2, 0, printargs, "n32_fanotify_init" }, /* 6300 */
- { 5, 0, printargs, "n32_fanotify_mark" }, /* 6301 */
- { 4, 0, printargs, "n32_prlimit64" }, /* 6302 */
- { 5, TD|TF, printargs, "n32_name_to_handle_at" }, /* 6303 */
- { 3, TD, printargs, "n32_open_by_handle_at" }, /* 6304 */
- { 2, 0, printargs, "n32_clock_adjtime" }, /* 6305 */
- { 1, TD, printargs, "n32_syncfs" }, /* 6306 */
- { 4, TN, printargs, "n32_sendmmsg" }, /* 6307 */
- { 2, TD, printargs, "n32_setns" }, /* 6308 */
- { 6, 0, printargs, "n32_process_vm_readv" }, /* 6309 */
- { 6, 0, printargs, "n32_process_vm_writev" }, /* 6310 */
- { 5, 0, printargs, "n32_kcmp" }, /* 6311 */
- { 3, TD, printargs, "n32_finit_module" }, /* 6312 */
- { 3, 0, printargs, "n32_sched_setattr" }, /* 6313 */
- { 4, 0, printargs, "n32_sched_getattr" }, /* 6314 */
- { 5, TD|TF, printargs, "n32_renameat2" }, /* 6315 */
+
+# include "syscallent-n32-stub.h"
+
#endif
diff --git a/linux/mips/syscallent-n64.h b/linux/mips/syscallent-n64.h
index 9a4143e..cdfb6ff 100644
--- a/linux/mips/syscallent-n64.h
+++ b/linux/mips/syscallent-n64.h
@@ -1,629 +1,332 @@
#if defined LINUX_MIPSN64
- /* For an N64 strace decode the N64 64-bit syscalls. */
- { 3, TD, sys_read, "read" }, /* 5000 */ /* start of Linux N64 */
- { 3, TD, sys_write, "write" }, /* 5001 */
- { 3, TD|TF, sys_open, "open" }, /* 5002 */
- { 1, TD, sys_close, "close" }, /* 5003 */
- { 2, TF, sys_stat, "stat" }, /* 5004 */
- { 2, TD, sys_fstat, "fstat" }, /* 5005 */
- { 2, TF, sys_lstat, "lstat" }, /* 5006 */
- { 3, TD, sys_poll, "poll" }, /* 5007 */
- { 3, TD, sys_lseek, "lseek" }, /* 5008 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 5009 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 5010 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 5011 */
- { 1, TM|SI, sys_brk, "brk" }, /* 5012 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 5013 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 5014 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 5015 */
- { 4, TD, sys_pread, "pread64" }, /* 5016 */
- { 4, TD, sys_pwrite, "pwrite64" }, /* 5017 */
- { 3, TD, sys_readv, "readv" }, /* 5018 */
- { 3, TD, sys_writev, "writev" }, /* 5019 */
- { 2, TF, sys_access, "access" }, /* 5020 */
- { 1, TD, sys_pipe, "pipe" }, /* 5021 */
- { 5, TD, sys_select, "_newselect" }, /* 5022 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 5023 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 5024 */
- { 3, TM, sys_msync, "msync" }, /* 5025 */
- { 3, TM, sys_mincore, "mincore" }, /* 5026 */
- { 3, TM, sys_madvise, "madvise" }, /* 5027 */
- { 3, TI, sys_shmget, "shmget" }, /* 5028 */
- { 3, TI|TM|SI, sys_shmat, "shmat" }, /* 5029 */
- { 3, TI, sys_shmctl, "shmctl" }, /* 5030 */
- { 1, TD, sys_dup, "dup" }, /* 5031 */
- { 2, TD, sys_dup2, "dup2" }, /* 5032 */
- { 0, TS, sys_pause, "pause" }, /* 5033 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 5034 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 5035 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 5036 */
- { 1, 0, sys_alarm, "alarm" }, /* 5037 */
- { 0, 0, sys_getpid, "getpid" }, /* 5038 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 5039 */
- { 3, TN, sys_socket, "socket" }, /* 5040 */
- { 3, TN, sys_connect, "connect" }, /* 5041 */
- { 3, TN, sys_accept, "accept" }, /* 5042 */
- { 6, TN, sys_sendto, "sendto" }, /* 5043 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 5044 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 5045 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 5046 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 5047 */
- { 3, TN, sys_bind, "bind" }, /* 5048 */
- { 2, TN, sys_listen, "listen" }, /* 5049 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 5050 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 5051 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 5052 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 5053 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 5054 */
- { 5, TP, sys_clone, "clone" }, /* 5055 */
- { 0, TP, sys_fork, "fork" }, /* 5056 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 5057 */
- { 1, TP|SE, sys_exit, "exit" }, /* 5058 */
- { 4, TP, sys_wait4, "wait4" }, /* 5059 */
- { 2, TS, sys_kill, "kill" }, /* 5060 */
- { 1, 0, sys_uname, "uname" }, /* 5061 */
- { 3, TI, sys_semget, "semget" }, /* 5062 */
- { 3, TI, printargs, "semop" }, /* 5063 */
- { 4, TI, sys_semctl, "semctl" }, /* 5064 */
- { 1, TI|TM|SI, sys_shmdt, "shmdt" }, /* 5065 */
- { 2, TI, sys_msgget, "msgget" }, /* 5066 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 5067 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 5068 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 5069 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 5070 */
- { 2, TD, sys_flock, "flock" }, /* 5071 */
- { 1, TD, sys_fsync, "fsync" }, /* 5072 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 5073 */
- { 2, TF, sys_truncate, "truncate" }, /* 5074 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 5075 */
- { 3, TD, sys_getdents, "getdents" }, /* 5076 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 5077 */
- { 1, TF, sys_chdir, "chdir" }, /* 5078 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 5079 */
- { 2, TF, sys_rename, "rename" }, /* 5080 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 5081 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 5082 */
- { 2, TD|TF, sys_creat, "creat" }, /* 5083 */
- { 2, TF, sys_link, "link" }, /* 5084 */
- { 1, TF, sys_unlink, "unlink" }, /* 5085 */
- { 2, TF, sys_symlink, "symlink" }, /* 5086 */
- { 3, TF, sys_readlink, "readlink" }, /* 5087 */
- { 2, TF, sys_chmod, "chmod" }, /* 5088 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 5089 */
- { 3, TF, sys_chown, "chown" }, /* 5090 */
- { 3, TD, sys_fchown, "fchown" }, /* 5091 */
- { 3, TF, sys_chown, "lchown" }, /* 5092 */
- { 1, 0, sys_umask, "umask" }, /* 5093 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 5094 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 5095 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 5096 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 5097 */
- { 1, 0, sys_times, "times" }, /* 5098 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 5099 */
- { 0, NF, sys_getuid, "getuid" }, /* 5100 */
- { 3, 0, sys_syslog, "syslog" }, /* 5101 */
- { 0, NF, sys_getgid, "getgid" }, /* 5102 */
- { 1, 0, sys_setuid, "setuid" }, /* 5103 */
- { 1, 0, sys_setgid, "setgid" }, /* 5104 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 5105 */
- { 0, NF, sys_getegid, "getegid" }, /* 5106 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 5107 */
- { 0, 0, sys_getppid, "getppid" }, /* 5108 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 5109 */
- { 0, 0, sys_setsid, "setsid" }, /* 5110 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 5111 */
- { 2, 0, sys_setregid, "setregid" }, /* 5112 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 5113 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 5114 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 5115 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 5116 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 5117 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 5118 */
- { 0, 0, sys_getpgid, "getpgid" }, /* 5119 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 5120 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 5121 */
- { 1, 0, sys_getsid, "getsid" }, /* 5122 */
- { 2, 0, sys_capget, "capget" }, /* 5123 */
- { 2, 0, sys_capset, "capset" }, /* 5124 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 5125 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"},/* 5126 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"},/* 5127 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 5128 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 5129 */
- { 2, TF, sys_utime, "utime" }, /* 5130 */
- { 3, TF, sys_mknod, "mknod" }, /* 5131 */
- { 1, 0, sys_personality, "personality" }, /* 5132 */
- { 2, 0, sys_ustat, "ustat" }, /* 5133 */
- { 3, TF, sys_statfs, "statfs" }, /* 5134 */
- { 3, TD, sys_fstatfs, "fstatfs" }, /* 5135 */
- { 5, 0, sys_sysfs, "sysfs" }, /* 5136 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 5137 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 5138 */
- { 2, 0, sys_sched_setparam, "sched_setparam"}, /* 5139 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 5140 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 5141 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 5142 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 5143 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 5144 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 5145 */
- { 2, TM, sys_mlock, "mlock" }, /* 5146 */
- { 2, TM, sys_munlock, "munlock" }, /* 5147 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 5148 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 5149 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 5150 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 5151 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 5152 */
- { 5, 0, sys_prctl, "prctl" }, /* 5153 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 5154 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 5155 */
- { 1, TF, sys_chroot, "chroot" }, /* 5156 */
- { 0, 0, sys_sync, "sync" }, /* 5157 */
- { 1, TF, sys_acct, "acct" }, /* 5158 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 5159 */
- { 5, TF, sys_mount, "mount" }, /* 5160 */
- { 2, TF, sys_umount2, "umount2" }, /* 5161 */
- { 2, TF, sys_swapon, "swapon" }, /* 5162 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 5163 */
- { 4, 0, sys_reboot, "reboot" }, /* 5164 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 5165 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 5166 */
- { 2, 0, sys_create_module, "create_module" }, /* 5167 */
- { 4, 0, sys_init_module, "init_module" }, /* 5168 */
- { 1, 0, sys_delete_module, "delete_module" }, /* 5169 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 5170 */
- { 5, 0, sys_query_module, "query_module" }, /* 5171 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 5172 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 5173 */
- { 5, TN, printargs, "getpmsg" }, /* 5174 */
- { 5, TN, printargs, "putpmsg" }, /* 5175 */
- { 0, 0, sys_afs_syscall, "afs_syscall" }, /* 5176 */
- { 0, 0, printargs, "reserved177" }, /* 5177 */
- { 0, 0, sys_gettid, "gettid" }, /* 5178 */
- { 3, TD, sys_readahead, "readahead" }, /* 5179 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5180 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 5181 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 5182 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 5183 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 5184 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 5185 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 5186 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 5187 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 5188 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 5189 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 5190 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 5191 */
- { 2, TS, sys_kill, "tkill" }, /* 5192 */
- { 1, 0, sys_time, "time" }, /* 5193 */
- { 6, 0, sys_futex, "futex" }, /* 5194 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 5195 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 5196 */
- { 3, 0, printargs, "cacheflush" }, /* 5197 */
- { 3, 0, printargs, "cachectl" }, /* 5198 */
- { 4, 0, sys_sysmips, "sysmips" }, /* 5199 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 5200 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 5201 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 5202 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 5203 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 5204 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 5205 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 5206 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 5207 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 5208 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 5209 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 5210 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 5211 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 5212 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 5213 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 5214 */
- { 4, TD, sys_fadvise64_64, "fadvise64_64" }, /* 5215 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 5216 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 5217 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 5218 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 5219 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 5220 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 5221 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 5222 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 5223 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 5224 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 5225 */
- { 2, TF, sys_utimes, "utimes" }, /* 5226 */
- { 6, TM, sys_mbind, "mbind" }, /* 5227 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 5228 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 5229 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 5230 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 5231 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 5232 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 5233 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 5234 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 5235 */
- { 5, 0, sys_vserver, "vserver" }, /* 5236 */
- { 5, TP, sys_waitid, "waitid" }, /* 5237 */
- [5238] = { },
- { 5, 0, sys_add_key, "add_key" }, /* 5239 */
- { 4, 0, sys_request_key, "request_key" }, /* 5230 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 5241 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 5242 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 5243 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 5244 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 5245 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 5246 */
- { 4, TD|TF, sys_openat, "openat" }, /* 5247 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 5248 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 5249 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 5250 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 5251 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 5252 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 5253 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 5254 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 5255 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 5256 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 5257 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 5258 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 5259 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 5260 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 5261 */
- { 1, TP, sys_unshare, "unshare" }, /* 5262 */
- { 6, TD, sys_splice, "splice" }, /* 5263 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 5264 */
- { 4, TD, sys_tee, "tee" }, /* 5265 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 5266 */
- { 6, TM, printargs, "move_pages" }, /* 5267 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 5268 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 5269 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 5270 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 5271 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 5272 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 5273 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 5274 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 5275 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 5276 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 5277 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 5278 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 5279 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 5280 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 5281 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 5282 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 5283 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 5284 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 5285 */
- { 3, TD, sys_dup3, "dup3" }, /* 5286 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 5287 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 5288 */
- { 4, TD, sys_preadv, "preadv" }, /* 5289 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 5290 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 5291 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 5292 */
- { 4, TN, sys_accept4, "accept4" }, /* 5293 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 5294 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 5295 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 5296 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 5297 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 5298 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 5299 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 5300 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 5301 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 5302 */
- { 2, TD, sys_setns, "setns" }, /* 5303 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 5304 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 5305 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 5306 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 5307 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 5308 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 5309 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 5310 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 5311 */
+/* For an N64 strace decode the N64 64-bit syscalls. */
+[5000] = { 3, TD, sys_read, "read" }, /* start of Linux N64 */
+[5001] = { 3, TD, sys_write, "write" },
+[5002] = { 3, TD|TF, sys_open, "open" },
+[5003] = { 1, TD, sys_close, "close" },
+[5004] = { 2, TF, sys_stat, "stat" },
+[5005] = { 2, TD, sys_fstat, "fstat" },
+[5006] = { 2, TF, sys_lstat, "lstat" },
+[5007] = { 3, TD, sys_poll, "poll" },
+[5008] = { 3, TD, sys_lseek, "lseek" },
+[5009] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[5010] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[5011] = { 2, TM|SI, sys_munmap, "munmap" },
+[5012] = { 1, TM|SI, sys_brk, "brk" },
+[5013] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[5014] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[5015] = { 3, TD, sys_ioctl, "ioctl" },
+[5016] = { 4, TD, sys_pread, "pread64" },
+[5017] = { 4, TD, sys_pwrite, "pwrite64" },
+[5018] = { 3, TD, sys_readv, "readv" },
+[5019] = { 3, TD, sys_writev, "writev" },
+[5020] = { 2, TF, sys_access, "access" },
+[5021] = { 1, TD, sys_pipe, "pipe" },
+[5022] = { 5, TD, sys_select, "select" },
+[5023] = { 0, 0, sys_sched_yield, "sched_yield" },
+[5024] = { 5, TM|SI, sys_mremap, "mremap" },
+[5025] = { 3, TM, sys_msync, "msync" },
+[5026] = { 3, TM, sys_mincore, "mincore" },
+[5027] = { 3, TM, sys_madvise, "madvise" },
+[5028] = { 3, TI, sys_shmget, "shmget" },
+[5029] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[5030] = { 3, TI, sys_shmctl, "shmctl" },
+[5031] = { 1, TD, sys_dup, "dup" },
+[5032] = { 2, TD, sys_dup2, "dup2" },
+[5033] = { 0, TS, sys_pause, "pause" },
+[5034] = { 2, 0, sys_nanosleep, "nanosleep" },
+[5035] = { 2, 0, sys_getitimer, "getitimer" },
+[5036] = { 3, 0, sys_setitimer, "setitimer" },
+[5037] = { 1, 0, sys_alarm, "alarm" },
+[5038] = { 0, 0, sys_getpid, "getpid" },
+[5039] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[5040] = { 3, TN, sys_socket, "socket" },
+[5041] = { 3, TN, sys_connect, "connect" },
+[5042] = { 3, TN, sys_accept, "accept" },
+[5043] = { 6, TN, sys_sendto, "sendto" },
+[5044] = { 6, TN, sys_recvfrom, "recvfrom" },
+[5045] = { 3, TN, sys_sendmsg, "sendmsg" },
+[5046] = { 3, TN, sys_recvmsg, "recvmsg" },
+[5047] = { 2, TN, sys_shutdown, "shutdown" },
+[5048] = { 3, TN, sys_bind, "bind" },
+[5049] = { 2, TN, sys_listen, "listen" },
+[5050] = { 3, TN, sys_getsockname, "getsockname" },
+[5051] = { 3, TN, sys_getpeername, "getpeername" },
+[5052] = { 4, TN, sys_socketpair, "socketpair" },
+[5053] = { 5, TN, sys_setsockopt, "setsockopt" },
+[5054] = { 5, TN, sys_getsockopt, "getsockopt" },
+[5055] = { 5, TP, sys_clone, "clone" },
+[5056] = { 0, TP, sys_fork, "fork" },
+[5057] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[5058] = { 1, TP|SE, sys_exit, "exit" },
+[5059] = { 4, TP, sys_wait4, "wait4" },
+[5060] = { 2, TS, sys_kill, "kill" },
+[5061] = { 1, 0, sys_uname, "uname" },
+[5062] = { 3, TI, sys_semget, "semget" },
+[5063] = { 3, TI, printargs, "semop" },
+[5064] = { 4, TI, sys_semctl, "semctl" },
+[5065] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[5066] = { 2, TI, sys_msgget, "msgget" },
+[5067] = { 4, TI, sys_msgsnd, "msgsnd" },
+[5068] = { 5, TI, sys_msgrcv, "msgrcv" },
+[5069] = { 3, TI, sys_msgctl, "msgctl" },
+[5070] = { 3, TD, sys_fcntl, "fcntl" },
+[5071] = { 2, TD, sys_flock, "flock" },
+[5072] = { 1, TD, sys_fsync, "fsync" },
+[5073] = { 1, TD, sys_fdatasync, "fdatasync" },
+[5074] = { 2, TF, sys_truncate, "truncate" },
+[5075] = { 2, TD, sys_ftruncate, "ftruncate" },
+[5076] = { 3, TD, sys_getdents, "getdents" },
+[5077] = { 2, TF, sys_getcwd, "getcwd" },
+[5078] = { 1, TF, sys_chdir, "chdir" },
+[5079] = { 1, TD, sys_fchdir, "fchdir" },
+[5080] = { 2, TF, sys_rename, "rename" },
+[5081] = { 2, TF, sys_mkdir, "mkdir" },
+[5082] = { 1, TF, sys_rmdir, "rmdir" },
+[5083] = { 2, TD|TF, sys_creat, "creat" },
+[5084] = { 2, TF, sys_link, "link" },
+[5085] = { 1, TF, sys_unlink, "unlink" },
+[5086] = { 2, TF, sys_symlink, "symlink" },
+[5087] = { 3, TF, sys_readlink, "readlink" },
+[5088] = { 2, TF, sys_chmod, "chmod" },
+[5089] = { 2, TD, sys_fchmod, "fchmod" },
+[5090] = { 3, TF, sys_chown, "chown" },
+[5091] = { 3, TD, sys_fchown, "fchown" },
+[5092] = { 3, TF, sys_chown, "lchown" },
+[5093] = { 1, 0, sys_umask, "umask" },
+[5094] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[5095] = { 2, 0, sys_getrlimit, "getrlimit" },
+[5096] = { 2, 0, sys_getrusage, "getrusage" },
+[5097] = { 1, 0, sys_sysinfo, "sysinfo" },
+[5098] = { 1, 0, sys_times, "times" },
+[5099] = { 4, 0, sys_ptrace, "ptrace" },
+[5100] = { 0, NF, sys_getuid, "getuid" },
+[5101] = { 3, 0, sys_syslog, "syslog" },
+[5102] = { 0, NF, sys_getgid, "getgid" },
+[5103] = { 1, 0, sys_setuid, "setuid" },
+[5104] = { 1, 0, sys_setgid, "setgid" },
+[5105] = { 0, NF, sys_geteuid, "geteuid" },
+[5106] = { 0, NF, sys_getegid, "getegid" },
+[5107] = { 2, 0, sys_setpgid, "setpgid" },
+[5108] = { 0, 0, sys_getppid, "getppid" },
+[5109] = { 0, 0, sys_getpgrp, "getpgrp" },
+[5110] = { 0, 0, sys_setsid, "setsid" },
+[5111] = { 2, 0, sys_setreuid, "setreuid" },
+[5112] = { 2, 0, sys_setregid, "setregid" },
+[5113] = { 2, 0, sys_getgroups, "getgroups" },
+[5114] = { 2, 0, sys_setgroups, "setgroups" },
+[5115] = { 3, 0, sys_setresuid, "setresuid" },
+[5116] = { 3, 0, sys_getresuid, "getresuid" },
+[5117] = { 3, 0, sys_setresgid, "setresgid" },
+[5118] = { 3, 0, sys_getresgid, "getresgid" },
+[5119] = { 0, 0, sys_getpgid, "getpgid" },
+[5120] = { 1, NF, sys_setfsuid, "setfsuid" },
+[5121] = { 1, NF, sys_setfsgid, "setfsgid" },
+[5122] = { 1, 0, sys_getsid, "getsid" },
+[5123] = { 2, 0, sys_capget, "capget" },
+[5124] = { 2, 0, sys_capset, "capset" },
+[5125] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[5126] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[5127] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[5128] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[5129] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[5130] = { 2, TF, sys_utime, "utime" },
+[5131] = { 3, TF, sys_mknod, "mknod" },
+[5132] = { 1, 0, sys_personality, "personality" },
+[5133] = { 2, 0, sys_ustat, "ustat" },
+[5134] = { 3, TF, sys_statfs, "statfs" },
+[5135] = { 3, TD, sys_fstatfs, "fstatfs" },
+[5136] = { 5, 0, sys_sysfs, "sysfs" },
+[5137] = { 2, 0, sys_getpriority, "getpriority" },
+[5138] = { 3, 0, sys_setpriority, "setpriority" },
+[5139] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[5140] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[5141] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[5142] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[5143] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[5144] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[5145] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[5146] = { 2, TM, sys_mlock, "mlock" },
+[5147] = { 2, TM, sys_munlock, "munlock" },
+[5148] = { 1, TM, sys_mlockall, "mlockall" },
+[5149] = { 0, TM, sys_munlockall, "munlockall" },
+[5150] = { 0, 0, sys_vhangup, "vhangup" },
+[5151] = { 2, TF, sys_pivotroot, "pivot_root" },
+[5152] = { 1, 0, sys_sysctl, "_sysctl" },
+[5153] = { 5, 0, sys_prctl, "prctl" },
+[5154] = { 1, 0, sys_adjtimex, "adjtimex" },
+[5155] = { 2, 0, sys_setrlimit, "setrlimit" },
+[5156] = { 1, TF, sys_chroot, "chroot" },
+[5157] = { 0, 0, sys_sync, "sync" },
+[5158] = { 1, TF, sys_acct, "acct" },
+[5159] = { 2, 0, sys_settimeofday, "settimeofday" },
+[5160] = { 5, TF, sys_mount, "mount" },
+[5161] = { 2, TF, sys_umount2, "umount2" },
+[5162] = { 2, TF, sys_swapon, "swapon" },
+[5163] = { 1, TF, sys_swapoff, "swapoff" },
+[5164] = { 4, 0, sys_reboot, "reboot" },
+[5165] = { 2, 0, sys_sethostname, "sethostname" },
+[5166] = { 2, 0, sys_setdomainname, "setdomainname" },
+[5167] = { 2, 0, sys_create_module, "create_module" },
+[5168] = { 4, 0, sys_init_module, "init_module" },
+[5169] = { 1, 0, sys_delete_module, "delete_module" },
+[5170] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[5171] = { 5, 0, sys_query_module, "query_module" },
+[5172] = { 4, TF, sys_quotactl, "quotactl" },
+[5173] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[5174] = { 5, TN, printargs, "getpmsg" },
+[5175] = { 5, TN, printargs, "putpmsg" },
+[5176] = { 0, 0, sys_afs_syscall, "afs_syscall" },
+[5177] = { 0, 0, printargs, "reserved177" },
+[5178] = { 0, 0, sys_gettid, "gettid" },
+[5179] = { 3, TD, sys_readahead, "readahead" },
+[5180] = { 5, TF, sys_setxattr, "setxattr" },
+[5181] = { 5, TF, sys_setxattr, "lsetxattr" },
+[5182] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[5183] = { 4, TF, sys_getxattr, "getxattr" },
+[5184] = { 4, TF, sys_getxattr, "lgetxattr" },
+[5185] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[5186] = { 3, TF, sys_listxattr, "listxattr" },
+[5187] = { 3, TF, sys_listxattr, "llistxattr" },
+[5188] = { 3, TD, sys_flistxattr, "flistxattr" },
+[5189] = { 2, TF, sys_removexattr, "removexattr" },
+[5190] = { 2, TF, sys_removexattr, "lremovexattr" },
+[5191] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[5192] = { 2, TS, sys_kill, "tkill" },
+[5193] = { 1, 0, sys_time, "time" },
+[5194] = { 6, 0, sys_futex, "futex" },
+[5195] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[5196] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[5197] = { 3, 0, printargs, "cacheflush" },
+[5198] = { 3, 0, printargs, "cachectl" },
+[5199] = { 4, 0, sys_sysmips, "sysmips" },
+[5200] = { 2, 0, sys_io_setup, "io_setup" },
+[5201] = { 1, 0, sys_io_destroy, "io_destroy" },
+[5202] = { 5, 0, sys_io_getevents, "io_getevents" },
+[5203] = { 3, 0, sys_io_submit, "io_submit" },
+[5204] = { 3, 0, sys_io_cancel, "io_cancel" },
+[5205] = { 1, TP|SE, sys_exit, "exit_group" },
+[5206] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[5207] = { 1, TD, sys_epoll_create, "epoll_create" },
+[5208] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[5209] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[5210] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[5211] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[5212] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[5213] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[5214] = { 4, TI, sys_semtimedop, "semtimedop" },
+[5215] = { 4, TD, sys_fadvise64_64, "fadvise64_64" },
+[5216] = { 3, 0, sys_timer_create, "timer_create" },
+[5217] = { 4, 0, sys_timer_settime, "timer_settime" },
+[5218] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[5219] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[5220] = { 1, 0, sys_timer_delete, "timer_delete" },
+[5221] = { 2, 0, sys_clock_settime, "clock_settime" },
+[5222] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[5223] = { 2, 0, sys_clock_getres, "clock_getres" },
+[5224] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[5225] = { 3, TS, sys_tgkill, "tgkill" },
+[5226] = { 2, TF, sys_utimes, "utimes" },
+[5227] = { 6, TM, sys_mbind, "mbind" },
+[5228] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[5229] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[5230] = { 4, 0, sys_mq_open, "mq_open" },
+[5231] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[5232] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[5233] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[5234] = { 2, 0, sys_mq_notify, "mq_notify" },
+[5235] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[5236] = { 5, 0, sys_vserver, "vserver" },
+[5237] = { 5, TP, sys_waitid, "waitid" },
+[5238] = { },
+[5239] = { 5, 0, sys_add_key, "add_key" },
+[5240] = { 4, 0, sys_request_key, "request_key" },
+[5241] = { 5, 0, sys_keyctl, "keyctl" },
+[5242] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[5243] = { 0, TD, sys_inotify_init, "inotify_init" },
+[5244] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[5245] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[5246] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[5247] = { 4, TD|TF, sys_openat, "openat" },
+[5248] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[5249] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[5250] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[5251] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[5252] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[5253] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[5254] = { 4, TD|TF, sys_renameat, "renameat" },
+[5255] = { 5, TD|TF, sys_linkat, "linkat" },
+[5256] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[5257] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[5258] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[5259] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[5260] = { 6, TD, sys_pselect6, "pselect6" },
+[5261] = { 5, TD, sys_ppoll, "ppoll" },
+[5262] = { 1, TP, sys_unshare, "unshare" },
+[5263] = { 6, TD, sys_splice, "splice" },
+[5264] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[5265] = { 4, TD, sys_tee, "tee" },
+[5266] = { 4, TD, sys_vmsplice, "vmsplice" },
+[5267] = { 6, TM, sys_move_pages, "move_pages" },
+[5268] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[5269] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[5270] = { 4, 0, sys_kexec_load, "kexec_load" },
+[5271] = { 3, 0, sys_getcpu, "getcpu" },
+[5272] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[5273] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[5274] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[5275] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[5276] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[5277] = { 4, TD, sys_timerfd, "timerfd" },
+[5278] = { 1, TD, sys_eventfd, "eventfd" },
+[5279] = { 4, TD, sys_fallocate, "fallocate" },
+[5280] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[5281] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[5282] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[5283] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[5284] = { 2, TD, sys_eventfd2, "eventfd2" },
+[5285] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[5286] = { 3, TD, sys_dup3, "dup3" },
+[5287] = { 2, TD, sys_pipe2, "pipe2" },
+[5288] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[5289] = { 4, TD, sys_preadv, "preadv" },
+[5290] = { 4, TD, sys_pwritev, "pwritev" },
+[5291] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[5292] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[5293] = { 4, TN, sys_accept4, "accept4" },
+[5294] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[5295] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[5296] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[5297] = { 4, 0, sys_prlimit64, "prlimit64" },
+[5298] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[5299] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[5300] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[5301] = { 1, TD, sys_syncfs, "syncfs" },
+[5302] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[5303] = { 2, TD, sys_setns, "setns" },
+[5304] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[5305] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[5306] = { 5, 0, sys_kcmp, "kcmp" },
+[5307] = { 3, TD, sys_finit_module, "finit_module" },
+[5308] = { 3, TD, sys_getdents64, "getdents64" },
+[5309] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[5310] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[5311] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[5312] = { 3, 0, sys_seccomp, "seccomp", },
+[5313] = { 3, 0, sys_getrandom, "getrandom", },
+[5314] = { 2, TD, sys_memfd_create, "memfd_create", },
+[5315] = { 3, TD, sys_bpf, "bpf", },
+[5316] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[5317 ... 5399] = { },
+
+# define SYS_socket_subcall 5400
+# include "subcall.h"
+
+/* end of Linux N64 */ [SYS_socket_subcall + SYS_socket_nsubcalls + SYS_ipc_nsubcalls ... 5999] = { },
+
#else
- { 0, 0, printargs, "n64_read" }, /* 5000 */
- { 0, 0, printargs, "n64_write" }, /* 5001 */
- { 0, 0, printargs, "n64_open" }, /* 5002 */
- { 0, 0, printargs, "n64_close" }, /* 5003 */
- { 0, 0, printargs, "n64_stat" }, /* 5004 */
- { 0, 0, printargs, "n64_fstat" }, /* 5005 */
- { 0, 0, printargs, "n64_lstat" }, /* 5006 */
- { 0, 0, printargs, "n64_poll" }, /* 5007 */
- { 0, 0, printargs, "n64_lseek" }, /* 5008 */
- { 0, TD|TM|SI, printargs, "n64_mmap" }, /* 5009 */
- { 0, TM|SI, printargs, "n64_mprotect" }, /* 5010 */
- { 0, TM|SI, printargs, "n64_munmap" }, /* 5011 */
- { 0, TM|SI, printargs, "n64_brk" }, /* 5012 */
- { 0, 0, printargs, "n64_rt_sigaction" }, /* 5013 */
- { 0, 0, printargs, "n64_rt_sigprocmask" }, /* 5014 */
- { 0, 0, printargs, "n64_ioctl" }, /* 5015 */
- { 0, 0, printargs, "n64_pread" }, /* 5016 */
- { 0, 0, printargs, "n64_pwrite" }, /* 5017 */
- { 0, 0, printargs, "n64_readv" }, /* 5018 */
- { 0, 0, printargs, "n64_writev" }, /* 5019 */
- { 0, 0, printargs, "n64_access" }, /* 5020 */
- { 0, 0, printargs, "n64_pipe" }, /* 5021 */
- { 0, 0, printargs, "n64__newselect" }, /* 5022 */
- { 0, 0, printargs, "n64_sched_yield" }, /* 5023 */
- { 0, TM|SI, printargs, "n64_mremap" }, /* 5024 */
- { 0, TM, printargs, "n64_msync" }, /* 5025 */
- { 0, TM, printargs, "n64_mincore" }, /* 5026 */
- { 0, TM, printargs, "n64_madvise" }, /* 5027 */
- { 0, 0, printargs, "n64_shmget" }, /* 5028 */
- { 0, TI|TM|SI, printargs, "n64_shmat" }, /* 5029 */
- { 0, 0, printargs, "n64_shmctl" }, /* 5030 */
- { 0, 0, printargs, "n64_dup" }, /* 5031 */
- { 0, 0, printargs, "n64_dup2" }, /* 5032 */
- { 0, 0, printargs, "n64_pause" }, /* 5033 */
- { 0, 0, printargs, "n64_nanosleep" }, /* 5034 */
- { 0, 0, printargs, "n64_getitimer" }, /* 5035 */
- { 0, 0, printargs, "n64_setitimer" }, /* 5036 */
- { 0, 0, printargs, "n64_alarm" }, /* 5037 */
- { 0, 0, printargs, "n64_getpid" }, /* 5038 */
- { 0, 0, printargs, "n64_sendfile" }, /* 5039 */
- { 0, 0, printargs, "n64_socketcall" }, /* 5040 */
- { 0, 0, printargs, "n64_connect" }, /* 5041 */
- { 0, 0, printargs, "n64_accept" }, /* 5042 */
- { 0, 0, printargs, "n64_sendto" }, /* 5043 */
- { 0, 0, printargs, "n64_recvfrom" }, /* 5044 */
- { 0, 0, printargs, "n64_sendmsg" }, /* 5045 */
- { 0, 0, printargs, "n64_recvmsg" }, /* 5046 */
- { 0, 0, printargs, "n64_shutdown" }, /* 5047 */
- { 0, 0, printargs, "n64_bind" }, /* 5048 */
- { 0, 0, printargs, "n64_listen" }, /* 5049 */
- { 0, 0, printargs, "n64_getsockname" }, /* 5050 */
- { 0, 0, printargs, "n64_getpeername" }, /* 5051 */
- { 0, 0, printargs, "n64_socketpair" }, /* 5052 */
- { 0, 0, printargs, "n64_setsockopt" }, /* 5053 */
- { 0, 0, printargs, "n64_getsockopt" }, /* 5054 */
- { 5, TP, printargs, "n64_clone" }, /* 5055 */
- { 0, TP, printargs, "n64_fork" }, /* 5056 */
- { 3, TF|TP|SE|SI, printargs, "n64_execve" }, /* 5057 */
- { 1, TP|SE, printargs, "n64_exit" }, /* 5058 */
- { 4, TP, printargs, "n64_wait4" }, /* 5059 */
- { 0, 0, printargs, "n64_kill" }, /* 5060 */
- { 0, 0, printargs, "n64_uname" }, /* 5061 */
- { 0, 0, printargs, "n64_semget" }, /* 5062 */
- { 0, 0, printargs, "n64_semop" }, /* 5063 */
- { 0, 0, printargs, "n64_semctl" }, /* 5064 */
- { 0, TI|TM|SI, printargs, "n64_shmdt" }, /* 5065 */
- { 0, 0, printargs, "n64_msgget" }, /* 5066 */
- { 0, 0, printargs, "n64_msgsnd" }, /* 5067 */
- { 0, 0, printargs, "n64_msgrcv" }, /* 5068 */
- { 0, 0, printargs, "n64_msgctl" }, /* 5069 */
- { 0, 0, printargs, "n64_fcntl" }, /* 5070 */
- { 0, 0, printargs, "n64_flock" }, /* 5071 */
- { 0, 0, printargs, "n64_fsync" }, /* 5072 */
- { 0, 0, printargs, "n64_fdatasync" }, /* 5073 */
- { 0, 0, printargs, "n64_truncate" }, /* 5074 */
- { 0, 0, printargs, "n64_ftruncate" }, /* 5075 */
- { 0, 0, printargs, "n64_getdents" }, /* 5076 */
- { 0, 0, printargs, "n64_getcwd" }, /* 5077 */
- { 0, 0, printargs, "n64_chdir" }, /* 5078 */
- { 0, 0, printargs, "n64_fchdir" }, /* 5079 */
- { 0, 0, printargs, "n64_rename" }, /* 5080 */
- { 0, 0, printargs, "n64_mkdir" }, /* 5081 */
- { 0, 0, printargs, "n64_rmdir" }, /* 5082 */
- { 0, 0, printargs, "n64_creat" }, /* 5083 */
- { 0, 0, printargs, "n64_link" }, /* 5084 */
- { 0, 0, printargs, "n64_unlink" }, /* 5085 */
- { 0, 0, printargs, "n64_symlink" }, /* 5086 */
- { 0, 0, printargs, "n64_readlink" }, /* 5087 */
- { 0, 0, printargs, "n64_chmod" }, /* 5088 */
- { 0, 0, printargs, "n64_fchmod" }, /* 5089 */
- { 0, 0, printargs, "n64_chown" }, /* 5090 */
- { 0, 0, printargs, "n64_fchown" }, /* 5091 */
- { 0, 0, printargs, "n64_lchown" }, /* 5092 */
- { 0, 0, printargs, "n64_umask" }, /* 5093 */
- { 0, 0, printargs, "n64_gettimeofday" }, /* 5094 */
- { 0, 0, printargs, "n64_getrlimit" }, /* 5095 */
- { 0, 0, printargs, "n64_getrusage" }, /* 5096 */
- { 0, 0, printargs, "n64_sysinfo" }, /* 5097 */
- { 0, 0, printargs, "n64_times" }, /* 5098 */
- { 0, 0, printargs, "n64_ptrace" }, /* 5099 */
- { 0, 0, printargs, "n64_getuid" }, /* 5100 */
- { 0, 0, printargs, "n64_syslog" }, /* 5101 */
- { 0, 0, printargs, "n64_getgid" }, /* 5102 */
- { 0, 0, printargs, "n64_setuid" }, /* 5103 */
- { 0, 0, printargs, "n64_setgid" }, /* 5104 */
- { 0, 0, printargs, "n64_geteuid" }, /* 5105 */
- { 0, 0, printargs, "n64_getegid" }, /* 5106 */
- { 0, 0, printargs, "n64_setpgid" }, /* 5107 */
- { 0, 0, printargs, "n64_getppid" }, /* 5108 */
- { 0, 0, printargs, "n64_getpgrp" }, /* 5109 */
- { 0, 0, printargs, "n64_setsid" }, /* 5110 */
- { 0, 0, printargs, "n64_setreuid" }, /* 5111 */
- { 0, 0, printargs, "n64_setregid" }, /* 5112 */
- { 0, 0, printargs, "n64_getgroups" }, /* 5113 */
- { 0, 0, printargs, "n64_setgroups" }, /* 5114 */
- { 0, 0, printargs, "n64_setresuid" }, /* 5115 */
- { 0, 0, printargs, "n64_getresuid" }, /* 5116 */
- { 0, 0, printargs, "n64_setresgid" }, /* 5117 */
- { 0, 0, printargs, "n64_getresgid" }, /* 5118 */
- { 0, 0, printargs, "n64_getpgid" }, /* 5119 */
- { 0, 0, printargs, "n64_setfsuid" }, /* 5120 */
- { 0, 0, printargs, "n64_setfsgid" }, /* 5121 */
- { 0, 0, printargs, "n64_getsid" }, /* 5122 */
- { 0, 0, printargs, "n64_capget" }, /* 5123 */
- { 0, 0, printargs, "n64_capset" }, /* 5124 */
- { 0, 0, printargs, "n64_rt_sigpending" }, /* 5125 */
- { 0, 0, printargs, "n64_rt_sigtimedwait" }, /* 5126 */
- { 0, 0, printargs, "n64_rt_sigqueueinfo" }, /* 5127 */
- { 0, 0, printargs, "n64_rt_sigsuspend" }, /* 5128 */
- { 0, 0, printargs, "n64_sigaltstack" }, /* 5129 */
- { 0, 0, printargs, "n64_utime" }, /* 5130 */
- { 0, 0, printargs, "n64_mknod" }, /* 5131 */
- { 0, 0, printargs, "n64_personality" }, /* 5132 */
- { 0, 0, printargs, "n64_ustat" }, /* 5133 */
- { 0, 0, printargs, "n64_statfs" }, /* 5134 */
- { 0, 0, printargs, "n64_fstatfs" }, /* 5135 */
- { 0, 0, printargs, "n64_sysfs" }, /* 5136 */
- { 0, 0, printargs, "n64_getpriority" }, /* 5137 */
- { 0, 0, printargs, "n64_setpriority" }, /* 5138 */
- { 0, 0, printargs, "n64_sched_setparam" }, /* 5139 */
- { 0, 0, printargs, "n64_sched_getparam" }, /* 5140 */
- { 0, 0, printargs, "n64_sched_setscheduler"}, /* 5141 */
- { 0, 0, printargs, "n64_sched_getscheduler"}, /* 5142 */
- { 0, 0, printargs, "n64_sched_get_priority_max"}, /* 5143 */
- { 0, 0, printargs, "n64_sched_get_priority_min"}, /* 5144 */
- { 0, 0, printargs, "n64_sched_rr_get_interval"}, /* 5145 */
- { 0, TM, printargs, "n64_mlock" }, /* 5146 */
- { 0, TM, printargs, "n64_munlock" }, /* 5147 */
- { 0, TM, printargs, "n64_mlockall" }, /* 5148 */
- { 0, TM, printargs, "n64_munlockall" }, /* 5149 */
- { 0, 0, printargs, "n64_vhangup" }, /* 5150 */
- { 0, 0, printargs, "n64_pivot_root" }, /* 5151 */
- { 0, 0, printargs, "n64__sysctl" }, /* 5152 */
- { 0, 0, printargs, "n64_prctl" }, /* 5153 */
- { 0, 0, printargs, "n64_adjtimex" }, /* 5154 */
- { 0, 0, printargs, "n64_setrlimit" }, /* 5155 */
- { 0, 0, printargs, "n64_chroot" }, /* 5156 */
- { 0, 0, printargs, "n64_sync" }, /* 5157 */
- { 0, 0, printargs, "n64_acct" }, /* 5158 */
- { 0, 0, printargs, "n64_settimeofday" }, /* 5159 */
- { 0, 0, printargs, "n64_mount" }, /* 5160 */
- { 0, 0, printargs, "n64_umount" }, /* 5161 */
- { 0, 0, printargs, "n64_swapon" }, /* 5162 */
- { 0, 0, printargs, "n64_swapoff" }, /* 5163 */
- { 0, 0, printargs, "n64_reboot" }, /* 5164 */
- { 0, 0, printargs, "n64_sethostname" }, /* 5165 */
- { 0, 0, printargs, "n64_setdomainname" }, /* 5166 */
- { 0, 0, printargs, "n64_create_module" }, /* 5167 */
- { 0, 0, printargs, "n64_init_module" }, /* 5168 */
- { 0, 0, printargs, "n64_delete_module" }, /* 5169 */
- { 0, 0, printargs, "n64_get_kernel_syms" }, /* 5170 */
- { 0, 0, printargs, "n64_query_module" }, /* 5171 */
- { 0, TF, printargs, "n64_quotactl" }, /* 5172 */
- { 0, 0, printargs, "n64_nfsservctl" }, /* 5173 */
- { 0, 0, printargs, "n64_getpmsg" }, /* 5174 */
- { 0, 0, printargs, "n64_putpmsg" }, /* 5175 */
- { 0, 0, printargs, "n64_afs_syscall" }, /* 5176 */
- { 0, 0, printargs, "n64_reserved177" }, /* 5177 */
- { 0, 0, printargs, "n64_gettid" }, /* 5178 */
- { 0, 0, printargs, "n64_readahead" }, /* 5179 */
- { 0, 0, printargs, "n64_setxattr" }, /* 5180 */
- { 0, 0, printargs, "n64_lsetxattr" }, /* 5181 */
- { 0, 0, printargs, "n64_fsetxattr" }, /* 5182 */
- { 0, 0, printargs, "n64_getxattr" }, /* 5183 */
- { 0, 0, printargs, "n64_lgetxattr" }, /* 5184 */
- { 0, 0, printargs, "n64_fgetxattr" }, /* 5185 */
- { 0, 0, printargs, "n64_listxattr" }, /* 5186 */
- { 0, 0, printargs, "n64_llistxattr" }, /* 5187 */
- { 0, 0, printargs, "n64_flistxattr" }, /* 5188 */
- { 0, 0, printargs, "n64_removexattr" }, /* 5189 */
- { 0, 0, printargs, "n64_lremovexattr" }, /* 5190 */
- { 0, 0, printargs, "n64_fremovexattr" }, /* 5191 */
- { 0, 0, printargs, "n64_tkill" }, /* 5192 */
- { 0, 0, printargs, "n64_time" }, /* 5193 */
- { 0, 0, printargs, "n64_futex" }, /* 5194 */
- { 0, 0, printargs, "n64_sched_setaffinity" }, /* 5195 */
- { 0, 0, printargs, "n64_sched_getaffinity" }, /* 5196 */
- { 0, 0, printargs, "n64_cacheflush" }, /* 5197 */
- { 0, 0, printargs, "n64_cachectl" }, /* 5198 */
- { 0, 0, printargs, "n64_sysmips" }, /* 5199 */
- { 0, 0, printargs, "n64_io_setup" }, /* 5200 */
- { 0, 0, printargs, "n64_io_destroy" }, /* 5201 */
- { 0, 0, printargs, "n64_io_getevents" }, /* 5202 */
- { 0, 0, printargs, "n64_io_submit" }, /* 5203 */
- { 0, 0, printargs, "n64_io_cancel" }, /* 5204 */
- { 1, TP|SE, printargs, "n64_exit_group" }, /* 5205 */
- { 0, 0, printargs, "n64_lookup_dcookie" }, /* 5206 */
- { 0, 0, printargs, "n64_epoll_create" }, /* 5207 */
- { 0, 0, printargs, "n64_epoll_ctl" }, /* 5208 */
- { 0, 0, printargs, "n64_epoll_wait" }, /* 5209 */
- { 0, TM|SI, printargs, "n64_remap_file_pages" }, /* 5210 */
- { 0, 0, printargs, "n64_rt_sigreturn" }, /* 5211 */
- { 1, 0, printargs, "n64_set_tid_address" }, /* 5212 */
- { 0, 0, printargs, "n64_restart_syscall" }, /* 5213 */
- { 5, TI, printargs, "n64_semtimedop" }, /* 5214 */
- { 0, 0, printargs, "n64_fadvise64_64" }, /* 5215 */
- { 0, 0, printargs, "n64_timer_create" }, /* 5216 */
- { 0, 0, printargs, "n64_timer_settime" }, /* 5217 */
- { 0, 0, printargs, "n64_timer_gettime" }, /* 5218 */
- { 0, 0, printargs, "n64_timer_getoverrun" }, /* 5219 */
- { 0, 0, printargs, "n64_timer_delete" }, /* 5220 */
- { 0, 0, printargs, "n64_clock_settime" }, /* 5221 */
- { 0, 0, printargs, "n64_clock_gettime" }, /* 5222 */
- { 0, 0, printargs, "n64_clock_getres" }, /* 5223 */
- { 0, 0, printargs, "n64_clock_nanosleep" }, /* 5224 */
- { 0, 0, printargs, "n64_tgkill" }, /* 5225 */
- { 0, 0, printargs, "n64_utimes" }, /* 5226 */
- { 6, TM, printargs, "n64_mbind" }, /* 5227 */
- { 5, TM, printargs, "n64_get_mempolicy" }, /* 5228 */
- { 3, TM, printargs, "n64_set_mempolicy" }, /* 5229 */
- { 0, 0, printargs, "n64_mq_open" }, /* 5230 */
- { 0, 0, printargs, "n64_mq_unlink" }, /* 5231 */
- { 0, 0, printargs, "n64_mq_timedsend" }, /* 5232 */
- { 0, 0, printargs, "n64_mq_timedreceive" }, /* 5233 */
- { 0, 0, printargs, "n64_mq_notify" }, /* 5234 */
- { 0, 0, printargs, "n64_mq_getsetattr" }, /* 5235 */
- { 5, 0, printargs, "n64_vserver" }, /* 5236 */
- { 5, TP, printargs, "n64_waitid" }, /* 5237 */
- { 0, 0, printargs, "n64_SYS_5238" }, /* 5238 */
- { 0, 0, printargs, "n64_add_key" }, /* 5239 */
- { 0, 0, printargs, "n64_request_key" }, /* 5230 */
- { 0, 0, printargs, "n64_keyctl" }, /* 5241 */
- { 0, 0, printargs, "n64_set_thread_area" }, /* 5242 */
- { 0, 0, printargs, "n64_inotify_init" }, /* 5243 */
- { 0, 0, printargs, "n64_inotify_add_watch" }, /* 5244 */
- { 0, 0, printargs, "n64_inotify_rm_watch" }, /* 5245 */
- { 0, TM, printargs, "n64_migrate_pages" }, /* 5246 */
- { 0, 0, printargs, "n64_openat" }, /* 5247 */
- { 0, 0, printargs, "n64_mkdirat" }, /* 5248 */
- { 0, 0, printargs, "n64_mknodat" }, /* 5249 */
- { 0, 0, printargs, "n64_fchownat" }, /* 5250 */
- { 0, 0, printargs, "n64_futimesat" }, /* 5251 */
- { 0, 0, printargs, "n64_newfstatat" }, /* 5252 */
- { 0, 0, printargs, "n64_unlinkat" }, /* 5253 */
- { 0, 0, printargs, "n64_renameat" }, /* 5254 */
- { 0, 0, printargs, "n64_linkat" }, /* 5255 */
- { 0, 0, printargs, "n64_symlinkat" }, /* 5256 */
- { 0, 0, printargs, "n64_readlinkat" }, /* 5257 */
- { 0, 0, printargs, "n64_fchmodat" }, /* 5258 */
- { 0, 0, printargs, "n64_faccessat" }, /* 5259 */
- { 0, 0, printargs, "n64_pselect6" }, /* 5260 */
- { 0, 0, printargs, "n64_ppoll" }, /* 5261 */
- { 1, TP, printargs, "n64_unshare" }, /* 5262 */
- { 0, 0, printargs, "n64_splice" }, /* 5263 */
- { 0, 0, printargs, "n64_sync_file_range" }, /* 5264 */
- { 0, 0, printargs, "n64_tee" }, /* 5265 */
- { 0, 0, printargs, "n64_vmsplice" }, /* 5266 */
- { 0, TM, printargs, "n64_move_pages" }, /* 5267 */
- { 0, 0, printargs, "n64_set_robust_list" }, /* 5268 */
- { 0, 0, printargs, "n64_get_robust_list" }, /* 5269 */
- { 0, 0, printargs, "n64_kexec_load" }, /* 5270 */
- { 0, 0, printargs, "n64_getcpu" }, /* 5271 */
- { 0, 0, printargs, "n64_epoll_pwait" }, /* 5272 */
- { 0, 0, printargs, "n64_ioprio_set" }, /* 5273 */
- { 0, 0, printargs, "n64_ioprio_get" }, /* 5274 */
- { 0, 0, printargs, "n64_utimensat" }, /* 5275 */
- { 0, 0, printargs, "n64_signalfd" }, /* 5276 */
- { 4, TD, printargs, "n64_timerfd" }, /* 5277 */
- { 0, 0, printargs, "n64_eventfd" }, /* 5278 */
- { 0, 0, printargs, "n64_fallocate" }, /* 5279 */
- { 0, 0, printargs, "n64_timerfd_create" }, /* 5280 */
- { 0, 0, printargs, "n64_timerfd_gettime" }, /* 5281 */
- { 0, 0, printargs, "n64_timerfd_settime" }, /* 5282 */
- { 0, 0, printargs, "n64_signalfd4" }, /* 5283 */
- { 0, 0, printargs, "n64_eventfd2" }, /* 5284 */
- { 0, 0, printargs, "n64_epoll_create1" }, /* 5285 */
- { 0, 0, printargs, "n64_dup3" }, /* 5286 */
- { 0, 0, printargs, "n64_pipe2" }, /* 5287 */
- { 0, 0, printargs, "n64_inotify_init1" }, /* 5288 */
- { 0, 0, printargs, "n64_preadv" }, /* 5289 */
- { 0, 0, printargs, "n64_pwritev" }, /* 5290 */
- { 4, TP|TS, printargs, "n64_rt_tgsigqueueinfo" }, /* 5291 */
- { 0, 0, printargs, "n64_perf_event_open" }, /* 5292 */
- { 0, 0, printargs, "n64_accept4" }, /* 5293 */
- { 0, 0, printargs, "n64_recvmmsg" }, /* 5294 */
- { 2, 0, printargs, "n64_fanotify_init" }, /* 5295 */
- { 5, 0, printargs, "n64_fanotify_mark" }, /* 5296 */
- { 4, 0, printargs, "n64_prlimit64" }, /* 5297 */
- { 5, TD|TF, printargs, "n64_name_to_handle_at" }, /* 5298 */
- { 3, TD, printargs, "n64_open_by_handle_at" }, /* 5299 */
- { 2, 0, printargs, "n64_clock_adjtime" }, /* 5300 */
- { 1, TD, printargs, "n64_syncfs" }, /* 5301 */
- { 4, TN, printargs, "n64_sendmmsg" }, /* 5302 */
- { 2, TD, printargs, "n64_setns" }, /* 5303 */
- { 6, 0, printargs, "n64_process_vm_readv" }, /* 5304 */
- { 6, 0, printargs, "n64_process_vm_writev" }, /* 5305 */
- { 5, 0, printargs, "n64_kcmp" }, /* 5306 */
- { 3, TD, printargs, "n64_finit_module" }, /* 5307 */
- { 3, TD, printargs, "n64_getdents64" }, /* 5308 */
- { 3, 0, printargs, "n64_sched_setattr" }, /* 5309 */
- { 4, 0, printargs, "n64_sched_getattr" }, /* 5310 */
- { 5, TD|TF, printargs, "n64_renameat2" }, /* 5311 */
+
+# include "syscallent-n64-stub.h"
+/* end of Linux N64 */ [5400 ... 5999] = { },
+
#endif
- [5308 ... 5999] = { }, /* 5999 */ /* end of Linux N64 */
diff --git a/linux/mips/syscallent-o32.h b/linux/mips/syscallent-o32.h
index 41dae46..cb4c288 100644
--- a/linux/mips/syscallent-o32.h
+++ b/linux/mips/syscallent-o32.h
@@ -1,709 +1,372 @@
#if defined LINUX_MIPSO32
- /* For an O32 strace, decode the o32 syscalls. */
- { MA, 0, printargs, "syscall" }, /* 4000 */ /* start of Linux o32 */
- { 1, TP|SE, sys_exit, "exit" }, /* 4001 */
- { 0, TP, sys_fork, "fork" }, /* 4002 */
- { 3, TD, sys_read, "read" }, /* 4003 */
- { 3, TD, sys_write, "write" }, /* 4004 */
- { 3, TD|TF, sys_open, "open" }, /* 4005 */
- { 1, TD, sys_close, "close" }, /* 4006 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 4007 */
- { 2, TD|TF, sys_creat, "creat" }, /* 4008 */
- { 2, TF, sys_link, "link" }, /* 4009 */
- { 1, TF, sys_unlink, "unlink" }, /* 4010 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 4011 */
- { 1, TF, sys_chdir, "chdir" }, /* 4012 */
- { 1, 0, sys_time, "time" }, /* 4013 */
- { 3, TF, sys_mknod, "mknod" }, /* 4014 */
- { 2, TF, sys_chmod, "chmod" }, /* 4015 */
- { 3, TF, sys_chown, "lchown" }, /* 4016 */
- { 0, TM, sys_break, "break" }, /* 4017 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 4018 */
- { 3, TD, sys_lseek, "lseek" }, /* 4019 */
- { 0, 0, sys_getpid, "getpid" }, /* 4020 */
- { 5, TF, sys_mount, "mount" }, /* 4021 */
- { 1, TF, sys_umount, "umount" }, /* 4022 */
- { 1, 0, sys_setuid, "setuid" }, /* 4023 */
- { 0, NF, sys_getuid, "getuid" }, /* 4024 */
- { 1, 0, sys_stime, "stime" }, /* 4025 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 4026 */
- { 1, 0, sys_alarm, "alarm" }, /* 4027 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 4028 */
- { 0, TS, sys_pause, "pause" }, /* 4029 */
- { 2, TF, sys_utime, "utime" }, /* 4030 */
- { 0, 0, sys_stty, "stty" }, /* 4031 */
- { 0, 0, sys_gtty, "gtty" }, /* 4032 */
- { 2, TF, sys_access, "access" }, /* 4033 */
- { 1, 0, sys_nice, "nice" }, /* 4034 */
- { 1, 0, sys_ftime, "ftime" }, /* 4035 */
- { 0, 0, sys_sync, "sync" }, /* 4036 */
- { 2, TS, sys_kill, "kill" }, /* 4037 */
- { 2, TF, sys_rename, "rename" }, /* 4038 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 4039 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 4040 */
- { 1, TD, sys_dup, "dup" }, /* 4041 */
- { 1, TD, sys_pipe, "pipe" }, /* 4042 */
- { 1, 0, sys_times, "times" }, /* 4043 */
- { 0, 0, sys_prof, "prof" }, /* 4044 */
- { 1, TM|SI, sys_brk, "brk" }, /* 4045 */
- { 1, 0, sys_setgid, "setgid" }, /* 4046 */
- { 0, NF, sys_getgid, "getgid" }, /* 4047 */
- { 1, TS, sys_signal, "signal" }, /* 4048 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 4049 */
- { 0, NF, sys_getegid, "getegid" }, /* 4050 */
- { 1, TF, sys_acct, "acct" }, /* 4051 */
- { 2, TF, sys_umount2, "umount2" }, /* 4052 */
- { 0, 0, sys_lock, "lock" }, /* 4053 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 4054 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 4055 */
- { 0, 0, sys_mpx, "mpx" }, /* 4056 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 4057 */
- { 0, 0, sys_ulimit, "ulimit" }, /* 4058 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 4059 */
- { 1, 0, sys_umask, "umask" }, /* 4060 */
- { 1, TF, sys_chroot, "chroot" }, /* 4061 */
- { 2, 0, sys_ustat, "ustat" }, /* 4062 */
- { 2, TD, sys_dup2, "dup2" }, /* 4063 */
- { 0, 0, sys_getppid, "getppid" }, /* 4064 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 4065 */
- { 0, 0, sys_setsid, "setsid" }, /* 4066 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 4067 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 4068 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 4069 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 4070 */
- { 2, 0, sys_setregid, "setregid" }, /* 4071 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 4072 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 4073 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 4074 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 4075 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 4076 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 4077 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 4078 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 4079 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 4080 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 4081 */
- { 0, 0, printargs, "reserved82" }, /* 4082 */
- { 2, TF, sys_symlink, "symlink" }, /* 4083 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 4084 */
- { 3, TF, sys_readlink, "readlink" }, /* 4085 */
- { 1, TF, sys_uselib, "uselib" }, /* 4086 */
- { 2, TF, sys_swapon, "swapon" }, /* 4087 */
- { 4, 0, sys_reboot, "reboot" }, /* 4088 */
- { 3, TD, sys_readdir, "readdir" }, /* 4089 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 4090 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 4091 */
- { 2, TF, sys_truncate, "truncate" }, /* 4092 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 4093 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 4094 */
- { 3, TD, sys_fchown, "fchown" }, /* 4095 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 4096 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 4097 */
- { 0, 0, sys_profil, "profil" }, /* 4098 */
- { 3, TF, sys_statfs, "statfs" }, /* 4099 */
- { 3, TD, sys_fstatfs, "fstatfs" }, /* 4100 */
- { 0, 0, sys_ioperm, "ioperm" }, /* 4101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 4102 */
- { 3, 0, sys_syslog, "syslog" }, /* 4103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 4104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 4105 */
- { 2, TF, sys_stat, "stat" }, /* 4106 */
- { 2, TF, sys_lstat, "lstat" }, /* 4107 */
- { 2, TD, sys_fstat, "fstat" }, /* 4108 */
- { 1, 0, sys_olduname, "olduname" }, /* 4109 */
- { 0, 0, sys_iopl, "iopl" }, /* 4110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 4111 */
- { 0, 0, sys_idle, "idle" }, /* 4112 */
- { 5, 0, sys_vm86old, "vm86" }, /* 4113 */
- { 4, TP, sys_wait4, "wait4" }, /* 4114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 4115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 4116 */
- { 6, TI, sys_ipc, "ipc" }, /* 4117 */
- { 1, TD, sys_fsync, "fsync" }, /* 4118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 4119 */
- { 5, TP, sys_clone, "clone" }, /* 4120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 4121 */
- { 1, 0, sys_uname, "uname" }, /* 4122 */
- { 0, 0, sys_modify_ldt, "modify_ldt" }, /* 4123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 4124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 4125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 4126 */
- { 2, 0, sys_create_module, "create_module" }, /* 4127 */
- { 3, 0, sys_init_module, "init_module" }, /* 4128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 4129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 4130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 4131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 4132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 4133 */
- { 2, 0, sys_bdflush, "bdflush" }, /* 4134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 4135 */
- { 1, 0, sys_personality, "personality" }, /* 4136 */
- { 0, 0, sys_afs_syscall, "afs_syscall" }, /* 4137 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 4138 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 4139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 4140 */
- { 3, TD, sys_getdents, "getdents" }, /* 4141 */
- { 5, TD, sys_select, "_newselect" }, /* 4142 */
- { 2, TD, sys_flock, "flock" }, /* 4143 */
- { 3, TM, sys_msync, "msync" }, /* 4144 */
- { 3, TD, sys_readv, "readv" }, /* 4145 */
- { 3, TD, sys_writev, "writev" }, /* 4146 */
- { 3, 0, printargs, "cacheflush" }, /* 4147 */
- { 3, 0, printargs, "cachectl" }, /* 4148 */
- { 4, 0, sys_sysmips, "sysmips" }, /* 4149 */
- { 0, 0, sys_setup, "setup" }, /* 4150 */
- { 1, 0, sys_getsid, "getsid" }, /* 4151 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 4152 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 4153 */
- { 2, TM, sys_mlock, "mlock" }, /* 4154 */
- { 2, TM, sys_munlock, "munlock" }, /* 4155 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 4156 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 4157 */
- { 2, 0, sys_sched_setparam, "sched_setparam"}, /* 4158 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 4159 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 4160 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 4161 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 4162 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 4163 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 4164 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 4165 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 4166 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 4167 */
- { 3, TN, sys_accept, "accept" }, /* 4168 */
- { 3, TN, sys_bind, "bind" }, /* 4169 */
- { 3, TN, sys_connect, "connect" }, /* 4170 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 4171 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 4172 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 4173 */
- { 2, TN, sys_listen, "listen" }, /* 4174 */
- { 4, TN, sys_recv, "recv" }, /* 4175 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 4176 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 4177 */
- { 4, TN, sys_send, "send" }, /* 4178 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 4179 */
- { 6, TN, sys_sendto, "sendto" }, /* 4180 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 4181 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 4182 */
- { 3, TN, sys_socket, "socket" }, /* 4183 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 4184 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 4185 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 4186 */
- { 5, 0, sys_query_module, "query_module" }, /* 4187 */
- { 3, TD, sys_poll, "poll" }, /* 4188 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 4189 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 4190 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 4191 */
- { 5, 0, sys_prctl, "prctl" }, /* 4192 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 4193 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 4194 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 4195 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 4196 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"},/* 4197 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"},/* 4198 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 4199 */
- { 6, TD, sys_pread, "pread64" }, /* 4200 */
- { 6, TD, sys_pwrite, "pwrite64" }, /* 4201 */
- { 3, TF, sys_chown, "chown" }, /* 4202 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 4203 */
- { 2, 0, sys_capget, "capget" }, /* 4204 */
- { 2, 0, sys_capset, "capset" }, /* 4205 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 4206 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 4207 */
- { 5, TN, printargs, "getpmsg" }, /* 4208 */
- { 5, TN, printargs, "putpmsg" }, /* 4209 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 4210 */
- { 4, TF, sys_truncate64, "truncate64" }, /* 4211 */
- { 4, TD, sys_ftruncate64, "ftruncate64" }, /* 4212 */
- { 2, TF, sys_stat64, "stat64" }, /* 4213 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 4214 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 4215 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 4216 */
- { 3, TM, sys_mincore, "mincore" }, /* 4217 */
- { 3, TM, sys_madvise, "madvise" }, /* 4218 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 4219 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 4220 */
- { 0, 0, NULL, NULL }, /* 4221 */
- { 0, 0, sys_gettid, "gettid" }, /* 4222 */
- { 5, TD, sys_readahead, "readahead" }, /* 4223 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 4224 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 4225 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 4226 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 4227 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 4228 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 4229 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 4230 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 4231 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 4232 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 4233 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 4234 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 4235 */
- { 2, TS, sys_kill, "tkill" }, /* 4236 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 4237 */
- { 6, 0, sys_futex, "futex" }, /* 4238 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 4239 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 4240 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 4241 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 4242 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4243 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 4244 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 4245 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 4246 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 4247 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 4248 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 4249 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 4250 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 4251 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 4252 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 4253 */
- { 7, TD, sys_fadvise64_64, "fadvise64_64" }, /* 4254 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 4255 */
- { 2, TD, sys_fstatfs64, "fstatfs64" }, /* 4256 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 4257 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 4258 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 4259 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 4260 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 4261 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 4262 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 4263 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 4264 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 4265 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 4266 */
- { 2, TF, sys_utimes, "utimes" }, /* 4267 */
- { 4, TM, sys_mbind, "mbind" }, /* 4268 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 4269 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 4270 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 4271 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 4272 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 4273 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive"}, /* 4274 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 4275 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 4276 */
- { 5, 0, sys_vserver, "vserver" }, /* 4277 */
- { 5, TP, sys_waitid, "waitid" }, /* 4278 */
- { 0, 0, NULL, NULL }, /* 4279 */
- { 5, 0, sys_add_key, "add_key" }, /* 4280 */
- { 4, 0, sys_request_key, "request_key" }, /* 4281 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 4282 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 4283 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 4284 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 4285 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 4286 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 4287 */
- { 4, TD|TF, sys_openat, "openat" }, /* 4288 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 4289 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 4290 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 4291 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 4292 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 4293 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 4294 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 4295 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 4296 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 4297 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 4298 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 4299 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 4300 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 4301 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 4302 */
- { 1, TP, sys_unshare, "unshare" }, /* 4303 */
- { 6, TD, sys_splice, "splice" }, /* 4304 */
- { 7, TD, sys_sync_file_range, "sync_file_range" }, /* 4305 */
- { 4, TD, sys_tee, "tee" }, /* 4306 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 4307 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 4308 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 4309 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 4310 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 4311 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 4312 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 4313 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 4314 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 4315 */
- { 4, 0, printargs, "utimensat" }, /* 4316 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 4317 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 4318 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 4319 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 4320 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 4321 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 4322 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 4323 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 4324 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 4325 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 4326 */
- { 3, TD, sys_dup3, "dup3" }, /* 4327 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 4328 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 4329 */
- { 5, TD, sys_preadv, "preadv" }, /* 4330 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 4331 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 4332 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 4333 */
- { 4, TN, sys_accept4, "accept4" }, /* 4334 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 4335 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 4336 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 4337 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 4338 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 4339 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 4340 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 4341 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 4342 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 4343 */
- { 2, TD, sys_setns, "setns" }, /* 4344 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 4345 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 4346 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 4347 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 4348 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 4349 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 4350 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 4351 */
+/* For an O32 strace, decode the o32 syscalls. */
+[4000] = { MA, 0, printargs, "syscall" }, /* start of Linux o32 */
+[4001] = { 1, TP|SE, sys_exit, "exit" },
+[4002] = { 0, TP, sys_fork, "fork" },
+[4003] = { 3, TD, sys_read, "read" },
+[4004] = { 3, TD, sys_write, "write" },
+[4005] = { 3, TD|TF, sys_open, "open" },
+[4006] = { 1, TD, sys_close, "close" },
+[4007] = { 3, TP, sys_waitpid, "waitpid" },
+[4008] = { 2, TD|TF, sys_creat, "creat" },
+[4009] = { 2, TF, sys_link, "link" },
+[4010] = { 1, TF, sys_unlink, "unlink" },
+[4011] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[4012] = { 1, TF, sys_chdir, "chdir" },
+[4013] = { 1, 0, sys_time, "time" },
+[4014] = { 3, TF, sys_mknod, "mknod" },
+[4015] = { 2, TF, sys_chmod, "chmod" },
+[4016] = { 3, TF, sys_chown, "lchown" },
+[4017] = { 0, TM, sys_break, "break" },
+[4018] = { 2, TF, sys_oldstat, "oldstat" },
+[4019] = { 3, TD, sys_lseek, "lseek" },
+[4020] = { 0, 0, sys_getpid, "getpid" },
+[4021] = { 5, TF, sys_mount, "mount" },
+[4022] = { 1, TF, sys_umount, "umount" },
+[4023] = { 1, 0, sys_setuid, "setuid" },
+[4024] = { 0, NF, sys_getuid, "getuid" },
+[4025] = { 1, 0, sys_stime, "stime" },
+[4026] = { 4, 0, sys_ptrace, "ptrace" },
+[4027] = { 1, 0, sys_alarm, "alarm" },
+[4028] = { 2, TD, sys_oldfstat, "oldfstat" },
+[4029] = { 0, TS, sys_pause, "pause" },
+[4030] = { 2, TF, sys_utime, "utime" },
+[4031] = { 0, 0, sys_stty, "stty" },
+[4032] = { 0, 0, sys_gtty, "gtty" },
+[4033] = { 2, TF, sys_access, "access" },
+[4034] = { 1, 0, sys_nice, "nice" },
+[4035] = { 1, 0, sys_ftime, "ftime" },
+[4036] = { 0, 0, sys_sync, "sync" },
+[4037] = { 2, TS, sys_kill, "kill" },
+[4038] = { 2, TF, sys_rename, "rename" },
+[4039] = { 2, TF, sys_mkdir, "mkdir" },
+[4040] = { 1, TF, sys_rmdir, "rmdir" },
+[4041] = { 1, TD, sys_dup, "dup" },
+[4042] = { 1, TD, sys_pipe, "pipe" },
+[4043] = { 1, 0, sys_times, "times" },
+[4044] = { 0, 0, sys_prof, "prof" },
+[4045] = { 1, TM|SI, sys_brk, "brk" },
+[4046] = { 1, 0, sys_setgid, "setgid" },
+[4047] = { 0, NF, sys_getgid, "getgid" },
+[4048] = { 1, TS, sys_signal, "signal" },
+[4049] = { 0, NF, sys_geteuid, "geteuid" },
+[4050] = { 0, NF, sys_getegid, "getegid" },
+[4051] = { 1, TF, sys_acct, "acct" },
+[4052] = { 2, TF, sys_umount2, "umount2" },
+[4053] = { 0, 0, sys_lock, "lock" },
+[4054] = { 3, TD, sys_ioctl, "ioctl" },
+[4055] = { 3, TD, sys_fcntl, "fcntl" },
+[4056] = { 0, 0, sys_mpx, "mpx" },
+[4057] = { 2, 0, sys_setpgid, "setpgid" },
+[4058] = { 0, 0, sys_ulimit, "ulimit" },
+[4059] = { 1, 0, sys_oldolduname, "oldolduname" },
+[4060] = { 1, 0, sys_umask, "umask" },
+[4061] = { 1, TF, sys_chroot, "chroot" },
+[4062] = { 2, 0, sys_ustat, "ustat" },
+[4063] = { 2, TD, sys_dup2, "dup2" },
+[4064] = { 0, 0, sys_getppid, "getppid" },
+[4065] = { 0, 0, sys_getpgrp, "getpgrp" },
+[4066] = { 0, 0, sys_setsid, "setsid" },
+[4067] = { 3, TS, sys_sigaction, "sigaction" },
+[4068] = { 0, TS, sys_siggetmask, "sgetmask" },
+[4069] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[4070] = { 2, 0, sys_setreuid, "setreuid" },
+[4071] = { 2, 0, sys_setregid, "setregid" },
+[4072] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[4073] = { 1, TS, sys_sigpending, "sigpending" },
+[4074] = { 2, 0, sys_sethostname, "sethostname" },
+[4075] = { 2, 0, sys_setrlimit, "setrlimit" },
+[4076] = { 2, 0, sys_getrlimit, "getrlimit" },
+[4077] = { 2, 0, sys_getrusage, "getrusage" },
+[4078] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[4079] = { 2, 0, sys_settimeofday, "settimeofday" },
+[4080] = { 2, 0, sys_getgroups, "getgroups" },
+[4081] = { 2, 0, sys_setgroups, "setgroups" },
+[4082] = { 0, 0, printargs, "reserved82" },
+[4083] = { 2, TF, sys_symlink, "symlink" },
+[4084] = { 2, TF, sys_oldlstat, "oldlstat" },
+[4085] = { 3, TF, sys_readlink, "readlink" },
+[4086] = { 1, TF, sys_uselib, "uselib" },
+[4087] = { 2, TF, sys_swapon, "swapon" },
+[4088] = { 4, 0, sys_reboot, "reboot" },
+[4089] = { 3, TD, sys_readdir, "readdir" },
+[4090] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[4091] = { 2, TM|SI, sys_munmap, "munmap" },
+[4092] = { 2, TF, sys_truncate, "truncate" },
+[4093] = { 2, TD, sys_ftruncate, "ftruncate" },
+[4094] = { 2, TD, sys_fchmod, "fchmod" },
+[4095] = { 3, TD, sys_fchown, "fchown" },
+[4096] = { 2, 0, sys_getpriority, "getpriority" },
+[4097] = { 3, 0, sys_setpriority, "setpriority" },
+[4098] = { 0, 0, sys_profil, "profil" },
+[4099] = { 3, TF, sys_statfs, "statfs" },
+[4100] = { 3, TD, sys_fstatfs, "fstatfs" },
+[4101] = { 0, 0, sys_ioperm, "ioperm" },
+[4102] = { 2, TD, sys_socketcall, "socketcall" },
+[4103] = { 3, 0, sys_syslog, "syslog" },
+[4104] = { 3, 0, sys_setitimer, "setitimer" },
+[4105] = { 2, 0, sys_getitimer, "getitimer" },
+[4106] = { 2, TF, sys_stat, "stat" },
+[4107] = { 2, TF, sys_lstat, "lstat" },
+[4108] = { 2, TD, sys_fstat, "fstat" },
+[4109] = { 1, 0, sys_olduname, "olduname" },
+[4110] = { 0, 0, sys_iopl, "iopl" },
+[4111] = { 0, 0, sys_vhangup, "vhangup" },
+[4112] = { 0, 0, sys_idle, "idle" },
+[4113] = { 5, 0, sys_vm86old, "vm86" },
+[4114] = { 4, TP, sys_wait4, "wait4" },
+[4115] = { 1, TF, sys_swapoff, "swapoff" },
+[4116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[4117] = { 6, TI, sys_ipc, "ipc" },
+[4118] = { 1, TD, sys_fsync, "fsync" },
+[4119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[4120] = { 5, TP, sys_clone, "clone" },
+[4121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[4122] = { 1, 0, sys_uname, "uname" },
+[4123] = { 0, 0, sys_modify_ldt, "modify_ldt" },
+[4124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[4125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[4126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[4127] = { 2, 0, sys_create_module, "create_module" },
+[4128] = { 3, 0, sys_init_module, "init_module" },
+[4129] = { 2, 0, sys_delete_module, "delete_module" },
+[4130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[4131] = { 4, TF, sys_quotactl, "quotactl" },
+[4132] = { 1, 0, sys_getpgid, "getpgid" },
+[4133] = { 1, TD, sys_fchdir, "fchdir" },
+[4134] = { 2, 0, sys_bdflush, "bdflush" },
+[4135] = { 3, 0, sys_sysfs, "sysfs" },
+[4136] = { 1, 0, sys_personality, "personality" },
+[4137] = { 0, 0, sys_afs_syscall, "afs_syscall" },
+[4138] = { 1, NF, sys_setfsuid, "setfsuid" },
+[4139] = { 1, NF, sys_setfsgid, "setfsgid" },
+[4140] = { 5, TD, sys_llseek, "_llseek" },
+[4141] = { 3, TD, sys_getdents, "getdents" },
+[4142] = { 5, TD, sys_select, "select" },
+[4143] = { 2, TD, sys_flock, "flock" },
+[4144] = { 3, TM, sys_msync, "msync" },
+[4145] = { 3, TD, sys_readv, "readv" },
+[4146] = { 3, TD, sys_writev, "writev" },
+[4147] = { 3, 0, printargs, "cacheflush" },
+[4148] = { 3, 0, printargs, "cachectl" },
+[4149] = { 4, 0, sys_sysmips, "sysmips" },
+[4150] = { 0, 0, sys_setup, "setup" },
+[4151] = { 1, 0, sys_getsid, "getsid" },
+[4152] = { 1, TD, sys_fdatasync, "fdatasync" },
+[4153] = { 1, 0, sys_sysctl, "_sysctl" },
+[4154] = { 2, TM, sys_mlock, "mlock" },
+[4155] = { 2, TM, sys_munlock, "munlock" },
+[4156] = { 1, TM, sys_mlockall, "mlockall" },
+[4157] = { 0, TM, sys_munlockall, "munlockall" },
+[4158] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[4159] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[4160] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[4161] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[4162] = { 0, 0, sys_sched_yield, "sched_yield" },
+[4163] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[4164] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[4165] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[4166] = { 2, 0, sys_nanosleep, "nanosleep" },
+[4167] = { 5, TM|SI, sys_mremap, "mremap" },
+[4168] = { 3, TN, sys_accept, "accept" },
+[4169] = { 3, TN, sys_bind, "bind" },
+[4170] = { 3, TN, sys_connect, "connect" },
+[4171] = { 3, TN, sys_getpeername, "getpeername" },
+[4172] = { 3, TN, sys_getsockname, "getsockname" },
+[4173] = { 5, TN, sys_getsockopt, "getsockopt" },
+[4174] = { 2, TN, sys_listen, "listen" },
+[4175] = { 4, TN, sys_recv, "recv" },
+[4176] = { 6, TN, sys_recvfrom, "recvfrom" },
+[4177] = { 3, TN, sys_recvmsg, "recvmsg" },
+[4178] = { 4, TN, sys_send, "send" },
+[4179] = { 3, TN, sys_sendmsg, "sendmsg" },
+[4180] = { 6, TN, sys_sendto, "sendto" },
+[4181] = { 5, TN, sys_setsockopt, "setsockopt" },
+[4182] = { 2, TN, sys_shutdown, "shutdown" },
+[4183] = { 3, TN, sys_socket, "socket" },
+[4184] = { 4, TN, sys_socketpair, "socketpair" },
+[4185] = { 3, 0, sys_setresuid, "setresuid" },
+[4186] = { 3, 0, sys_getresuid, "getresuid" },
+[4187] = { 5, 0, sys_query_module, "query_module" },
+[4188] = { 3, TD, sys_poll, "poll" },
+[4189] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[4190] = { 3, 0, sys_setresgid, "setresgid" },
+[4191] = { 3, 0, sys_getresgid, "getresgid" },
+[4192] = { 5, 0, sys_prctl, "prctl" },
+[4193] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[4194] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[4195] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[4196] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[4197] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[4198] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[4199] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[4200] = { 6, TD, sys_pread, "pread64" },
+[4201] = { 6, TD, sys_pwrite, "pwrite64" },
+[4202] = { 3, TF, sys_chown, "chown" },
+[4203] = { 2, TF, sys_getcwd, "getcwd" },
+[4204] = { 2, 0, sys_capget, "capget" },
+[4205] = { 2, 0, sys_capset, "capset" },
+[4206] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[4207] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[4208] = { 5, TN, printargs, "getpmsg" },
+[4209] = { 5, TN, printargs, "putpmsg" },
+[4210] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[4211] = { 4, TF, sys_truncate64, "truncate64" },
+[4212] = { 4, TD, sys_ftruncate64, "ftruncate64" },
+[4213] = { 2, TF, sys_stat64, "stat64" },
+[4214] = { 2, TF, sys_lstat64, "lstat64" },
+[4215] = { 2, TD, sys_fstat64, "fstat64" },
+[4216] = { 2, TF, sys_pivotroot, "pivot_root" },
+[4217] = { 3, TM, sys_mincore, "mincore" },
+[4218] = { 3, TM, sys_madvise, "madvise" },
+[4219] = { 3, TD, sys_getdents64, "getdents64" },
+[4220] = { 3, TD, sys_fcntl, "fcntl64" },
+[4221] = { },
+[4222] = { 0, 0, sys_gettid, "gettid" },
+[4223] = { 5, TD, sys_readahead, "readahead" },
+[4224] = { 5, TF, sys_setxattr, "setxattr" },
+[4225] = { 5, TF, sys_setxattr, "lsetxattr" },
+[4226] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[4227] = { 4, TF, sys_getxattr, "getxattr" },
+[4228] = { 4, TF, sys_getxattr, "lgetxattr" },
+[4229] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[4230] = { 3, TF, sys_listxattr, "listxattr" },
+[4231] = { 3, TF, sys_listxattr, "llistxattr" },
+[4232] = { 3, TD, sys_flistxattr, "flistxattr" },
+[4233] = { 2, TF, sys_removexattr, "removexattr" },
+[4234] = { 2, TF, sys_removexattr, "lremovexattr" },
+[4235] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[4236] = { 2, TS, sys_kill, "tkill" },
+[4237] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[4238] = { 6, 0, sys_futex, "futex" },
+[4239] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[4240] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[4241] = { 2, 0, sys_io_setup, "io_setup" },
+[4242] = { 1, 0, sys_io_destroy, "io_destroy" },
+[4243] = { 5, 0, sys_io_getevents, "io_getevents" },
+[4244] = { 3, 0, sys_io_submit, "io_submit" },
+[4245] = { 3, 0, sys_io_cancel, "io_cancel" },
+[4246] = { 1, TP|SE, sys_exit, "exit_group" },
+[4247] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[4248] = { 1, TD, sys_epoll_create, "epoll_create" },
+[4249] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[4250] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[4251] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[4252] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[4253] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[4254] = { 7, TD, sys_fadvise64_64, "fadvise64_64" },
+[4255] = { 3, TF, sys_statfs64, "statfs64" },
+[4256] = { 2, TD, sys_fstatfs64, "fstatfs64" },
+[4257] = { 3, 0, sys_timer_create, "timer_create" },
+[4258] = { 4, 0, sys_timer_settime, "timer_settime" },
+[4259] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[4260] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[4261] = { 1, 0, sys_timer_delete, "timer_delete" },
+[4262] = { 2, 0, sys_clock_settime, "clock_settime" },
+[4263] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[4264] = { 2, 0, sys_clock_getres, "clock_getres" },
+[4265] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[4266] = { 3, TS, sys_tgkill, "tgkill" },
+[4267] = { 2, TF, sys_utimes, "utimes" },
+[4268] = { 6, TM, sys_mbind, "mbind" },
+[4269] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[4270] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[4271] = { 4, 0, sys_mq_open, "mq_open" },
+[4272] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[4273] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[4274] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[4275] = { 2, 0, sys_mq_notify, "mq_notify" },
+[4276] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[4277] = { 5, 0, sys_vserver, "vserver" },
+[4278] = { 5, TP, sys_waitid, "waitid" },
+[4279] = { },
+[4280] = { 5, 0, sys_add_key, "add_key" },
+[4281] = { 4, 0, sys_request_key, "request_key" },
+[4282] = { 5, 0, sys_keyctl, "keyctl" },
+[4283] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[4284] = { 0, TD, sys_inotify_init, "inotify_init" },
+[4285] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[4286] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[4287] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[4288] = { 4, TD|TF, sys_openat, "openat" },
+[4289] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[4290] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[4291] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[4292] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[4293] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[4294] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[4295] = { 4, TD|TF, sys_renameat, "renameat" },
+[4296] = { 5, TD|TF, sys_linkat, "linkat" },
+[4297] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[4298] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[4299] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[4300] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[4301] = { 6, TD, sys_pselect6, "pselect6" },
+[4302] = { 5, TD, sys_ppoll, "ppoll" },
+[4303] = { 1, TP, sys_unshare, "unshare" },
+[4304] = { 6, TD, sys_splice, "splice" },
+[4305] = { 7, TD, sys_sync_file_range, "sync_file_range" },
+[4306] = { 4, TD, sys_tee, "tee" },
+[4307] = { 4, TD, sys_vmsplice, "vmsplice" },
+[4308] = { 6, TM, sys_move_pages, "move_pages" },
+[4309] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[4310] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[4311] = { 4, 0, sys_kexec_load, "kexec_load" },
+[4312] = { 3, 0, sys_getcpu, "getcpu" },
+[4313] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[4314] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[4315] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[4316] = { 4, 0, printargs, "utimensat" },
+[4317] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[4318] = { 4, TD, sys_timerfd, "timerfd" },
+[4319] = { 1, TD, sys_eventfd, "eventfd" },
+[4320] = { 6, TD, sys_fallocate, "fallocate" },
+[4321] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[4322] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[4323] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[4324] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[4325] = { 2, TD, sys_eventfd2, "eventfd2" },
+[4326] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[4327] = { 3, TD, sys_dup3, "dup3" },
+[4328] = { 2, TD, sys_pipe2, "pipe2" },
+[4329] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[4330] = { 5, TD, sys_preadv, "preadv" },
+[4331] = { 5, TD, sys_pwritev, "pwritev" },
+[4332] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[4333] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[4334] = { 4, TN, sys_accept4, "accept4" },
+[4335] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[4336] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[4337] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[4338] = { 4, 0, sys_prlimit64, "prlimit64" },
+[4339] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[4340] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[4341] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[4342] = { 1, TD, sys_syncfs, "syncfs" },
+[4343] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[4344] = { 2, TD, sys_setns, "setns" },
+[4345] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[4346] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[4347] = { 5, 0, sys_kcmp, "kcmp" },
+[4348] = { 3, TD, sys_finit_module, "finit_module" },
+[4349] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[4350] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[4351] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[4352] = { 3, 0, sys_seccomp, "seccomp", },
+[4353] = { 3, 0, sys_getrandom, "getrandom", },
+[4354] = { 2, TD, sys_memfd_create, "memfd_create", },
+[4355] = { 3, TD, sys_bpf, "bpf", },
+[4356] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[4357 ... 4399] = { },
+
+# define SYS_socket_subcall 4400
+# include "subcall.h"
+
+/* end of Linux o32 */ [SYS_socket_subcall + SYS_socket_nsubcalls + SYS_ipc_nsubcalls ... 4999] = { },
+
#else
- { 0, 0, printargs, "o32_syscall" }, /* 4000 */
- { 1, TP|SE, printargs, "o32_exit" }, /* 4001 */
- { 0, TP, printargs, "o32_fork" }, /* 4002 */
- { 0, 0, printargs, "o32_read" }, /* 4003 */
- { 0, 0, printargs, "o32_write" }, /* 4004 */
- { 0, 0, printargs, "o32_open" }, /* 4005 */
- { 0, 0, printargs, "o32_close" }, /* 4006 */
- { 3, TP, printargs, "o32_waitpid" }, /* 4007 */
- { 0, 0, printargs, "o32_creat" }, /* 4008 */
- { 0, 0, printargs, "o32_link" }, /* 4009 */
- { 0, 0, printargs, "o32_unlink" }, /* 4010 */
- { 3, TF|TP|SE|SI, printargs, "o32_execve" }, /* 4011 */
- { 0, 0, printargs, "o32_chdir" }, /* 4012 */
- { 0, 0, printargs, "o32_time" }, /* 4013 */
- { 0, 0, printargs, "o32_mknod" }, /* 4014 */
- { 0, 0, printargs, "o32_chmod" }, /* 4015 */
- { 0, 0, printargs, "o32_lchown" }, /* 4016 */
- { 0, TM, printargs, "o32_break" }, /* 4017 */
- { 0, 0, printargs, "o32_oldstat" }, /* 4018 */
- { 0, 0, printargs, "o32_lseek" }, /* 4019 */
- { 0, 0, printargs, "o32_getpid" }, /* 4020 */
- { 0, 0, printargs, "o32_mount" }, /* 4021 */
- { 0, 0, printargs, "o32_umount" }, /* 4022 */
- { 0, 0, printargs, "o32_setuid" }, /* 4023 */
- { 0, 0, printargs, "o32_getuid" }, /* 4024 */
- { 0, 0, printargs, "o32_stime" }, /* 4025 */
- { 0, 0, printargs, "o32_ptrace" }, /* 4026 */
- { 0, 0, printargs, "o32_alarm" }, /* 4027 */
- { 0, 0, printargs, "o32_oldfstat" }, /* 4028 */
- { 0, 0, printargs, "o32_pause" }, /* 4029 */
- { 0, 0, printargs, "o32_utime" }, /* 4030 */
- { 0, 0, printargs, "o32_stty" }, /* 4031 */
- { 0, 0, printargs, "o32_gtty" }, /* 4032 */
- { 0, 0, printargs, "o32_access" }, /* 4033 */
- { 0, 0, printargs, "o32_nice" }, /* 4034 */
- { 0, 0, printargs, "o32_ftime" }, /* 4035 */
- { 0, 0, printargs, "o32_sync" }, /* 4036 */
- { 0, 0, printargs, "o32_kill" }, /* 4037 */
- { 0, 0, printargs, "o32_rename" }, /* 4038 */
- { 0, 0, printargs, "o32_mkdir" }, /* 4039 */
- { 0, 0, printargs, "o32_rmdir" }, /* 4040 */
- { 0, 0, printargs, "o32_dup" }, /* 4041 */
- { 0, 0, printargs, "o32_pipe" }, /* 4042 */
- { 0, 0, printargs, "o32_times" }, /* 4043 */
- { 0, 0, printargs, "o32_prof" }, /* 4044 */
- { 0, TM|SI, printargs, "o32_brk" }, /* 4045 */
- { 0, 0, printargs, "o32_setgid" }, /* 4046 */
- { 0, 0, printargs, "o32_getgid" }, /* 4047 */
- { 0, 0, printargs, "o32_signal" }, /* 4048 */
- { 0, 0, printargs, "o32_geteuid" }, /* 4049 */
- { 0, 0, printargs, "o32_getegid" }, /* 4050 */
- { 0, 0, printargs, "o32_acct" }, /* 4051 */
- { 0, 0, printargs, "o32_umount2" }, /* 4052 */
- { 0, 0, printargs, "o32_lock" }, /* 4053 */
- { 0, 0, printargs, "o32_ioctl" }, /* 4054 */
- { 0, 0, printargs, "o32_fcntl" }, /* 4055 */
- { 0, 0, printargs, "o32_mpx" }, /* 4056 */
- { 0, 0, printargs, "o32_setpgid" }, /* 4057 */
- { 0, 0, printargs, "o32_ulimit" }, /* 4058 */
- { 0, 0, printargs, "o32_oldolduname" }, /* 4059 */
- { 0, 0, printargs, "o32_umask" }, /* 4060 */
- { 0, 0, printargs, "o32_chroot" }, /* 4061 */
- { 0, 0, printargs, "o32_ustat" }, /* 4062 */
- { 0, 0, printargs, "o32_dup2" }, /* 4063 */
- { 0, 0, printargs, "o32_getppid" }, /* 4064 */
- { 0, 0, printargs, "o32_getpgrp" }, /* 4065 */
- { 0, 0, printargs, "o32_setsid" }, /* 4066 */
- { 0, 0, printargs, "o32_sigaction" }, /* 4067 */
- { 0, 0, printargs, "o32_siggetmask" }, /* 4068 */
- { 0, 0, printargs, "o32_sigsetmask" }, /* 4069 */
- { 0, 0, printargs, "o32_setreuid" }, /* 4070 */
- { 0, 0, printargs, "o32_setregid" }, /* 4071 */
- { 0, 0, printargs, "o32_sigsuspend" }, /* 4072 */
- { 0, 0, printargs, "o32_sigpending" }, /* 4073 */
- { 0, 0, printargs, "o32_sethostname" }, /* 4074 */
- { 0, 0, printargs, "o32_setrlimit" }, /* 4075 */
- { 0, 0, printargs, "o32_getrlimit" }, /* 4076 */
- { 0, 0, printargs, "o32_getrusage" }, /* 4077 */
- { 0, 0, printargs, "o32_gettimeofday" }, /* 4078 */
- { 0, 0, printargs, "o32_settimeofday" }, /* 4079 */
- { 0, 0, printargs, "o32_getgroups" }, /* 4080 */
- { 0, 0, printargs, "o32_setgroups" }, /* 4081 */
- { 0, 0, printargs, "o32_reserved82" }, /* 4082 */
- { 0, 0, printargs, "o32_symlink" }, /* 4083 */
- { 0, 0, printargs, "o32_oldlstat" }, /* 4084 */
- { 0, 0, printargs, "o32_readlink" }, /* 4085 */
- { 0, 0, printargs, "o32_uselib" }, /* 4086 */
- { 0, 0, printargs, "o32_swapon" }, /* 4087 */
- { 0, 0, printargs, "o32_reboot" }, /* 4088 */
- { 0, 0, printargs, "o32_readdir" }, /* 4089 */
- { 0, TD|TM|SI, printargs, "o32_mmap" }, /* 4090 */
- { 0, TM|SI, printargs, "o32_munmap" }, /* 4091 */
- { 0, 0, printargs, "o32_truncate" }, /* 4092 */
- { 0, 0, printargs, "o32_ftruncate" }, /* 4093 */
- { 0, 0, printargs, "o32_fchmod" }, /* 4094 */
- { 0, 0, printargs, "o32_fchown" }, /* 4095 */
- { 0, 0, printargs, "o32_getpriority" }, /* 4096 */
- { 0, 0, printargs, "o32_setpriority" }, /* 4097 */
- { 0, 0, printargs, "o32_profil" }, /* 4098 */
- { 0, 0, printargs, "o32_statfs" }, /* 4099 */
- { 0, 0, printargs, "o32_fstatfs" }, /* 4100 */
- { 0, 0, printargs, "o32_ioperm" }, /* 4101 */
- { 0, 0, printargs, "o32_socketcall" }, /* 4102 */
- { 0, 0, printargs, "o32_syslog" }, /* 4103 */
- { 0, 0, printargs, "o32_setitimer" }, /* 4104 */
- { 0, 0, printargs, "o32_getitimer" }, /* 4105 */
- { 0, 0, printargs, "o32_stat" }, /* 4106 */
- { 0, 0, printargs, "o32_lstat" }, /* 4107 */
- { 0, 0, printargs, "o32_fstat" }, /* 4108 */
- { 0, 0, printargs, "o32_olduname" }, /* 4109 */
- { 0, 0, printargs, "o32_iopl" }, /* 4110 */
- { 0, 0, printargs, "o32_vhangup" }, /* 4111 */
- { 0, 0, printargs, "o32_idle" }, /* 4112 */
- { 0, 0, printargs, "o32_vm86" }, /* 4113 */
- { 4, TP, printargs, "o32_wait4" }, /* 4114 */
- { 0, 0, printargs, "o32_swapoff" }, /* 4115 */
- { 0, 0, printargs, "o32_sysinfo" }, /* 4116 */
- { 0, 0, printargs, "o32_ipc" }, /* 4117 */
- { 0, 0, printargs, "o32_fsync" }, /* 4118 */
- { 0, 0, printargs, "o32_sigreturn" }, /* 4119 */
- { 5, TP, printargs, "o32_clone" }, /* 4120 */
- { 0, 0, printargs, "o32_setdomainname" }, /* 4121 */
- { 0, 0, printargs, "o32_uname" }, /* 4122 */
- { 0, 0, printargs, "o32_modify_ldt" }, /* 4123 */
- { 0, 0, printargs, "o32_adjtimex" }, /* 4124 */
- { 0, TM|SI, printargs, "o32_mprotect" }, /* 4125 */
- { 0, 0, printargs, "o32_sigprocmask" }, /* 4126 */
- { 0, 0, printargs, "o32_create_module" }, /* 4127 */
- { 0, 0, printargs, "o32_init_module" }, /* 4128 */
- { 0, 0, printargs, "o32_delete_module" }, /* 4129 */
- { 0, 0, printargs, "o32_get_kernel_syms"}, /* 4130 */
- { 0, TF, printargs, "o32_quotactl" }, /* 4131 */
- { 0, 0, printargs, "o32_getpgid" }, /* 4132 */
- { 0, 0, printargs, "o32_fchdir" }, /* 4133 */
- { 0, 0, printargs, "o32_bdflush" }, /* 4134 */
- { 0, 0, printargs, "o32_sysfs" }, /* 4135 */
- { 0, 0, printargs, "o32_personality" }, /* 4136 */
- { 0, 0, printargs, "o32_afs_syscall" }, /* 4137 */
- { 0, 0, printargs, "o32_setfsuid" }, /* 4138 */
- { 0, 0, printargs, "o32_setfsgid" }, /* 4139 */
- { 0, 0, printargs, "o32__llseek" }, /* 4140 */
- { 0, 0, printargs, "o32_getdents" }, /* 4141 */
- { 0, 0, printargs, "o32__newselect" }, /* 4142 */
- { 0, 0, printargs, "o32_flock" }, /* 4143 */
- { 0, TM, printargs, "o32_msync" }, /* 4144 */
- { 0, 0, printargs, "o32_readv" }, /* 4145 */
- { 0, 0, printargs, "o32_writev" }, /* 4146 */
- { 0, 0, printargs, "o32_cacheflush" }, /* 4147 */
- { 0, 0, printargs, "o32_cachectl" }, /* 4148 */
- { 0, 0, printargs, "o32_sysmips" }, /* 4149 */
- { 0, 0, printargs, "o32_setup" }, /* 4150 */
- { 0, 0, printargs, "o32_getsid" }, /* 4151 */
- { 0, 0, printargs, "o32_fdatasync" }, /* 4152 */
- { 0, 0, printargs, "o32__sysctl" }, /* 4153 */
- { 0, TM, printargs, "o32_mlock" }, /* 4154 */
- { 0, TM, printargs, "o32_munlock" }, /* 4155 */
- { 0, TM, printargs, "o32_mlockall" }, /* 4156 */
- { 0, TM, printargs, "o32_munlockall" }, /* 4157 */
- { 0, 0, printargs, "o32_sched_setparam"}, /* 4158 */
- { 0, 0, printargs, "o32_sched_getparam"}, /* 4159 */
- { 0, 0, printargs, "o32_sched_setscheduler"}, /* 4160 */
- { 0, 0, printargs, "o32_sched_getscheduler"}, /* 4161 */
- { 0, 0, printargs, "o32_sched_yield" }, /* 4162 */
- { 0, 0, printargs, "o32_sched_get_priority_max"}, /* 4163 */
- { 0, 0, printargs, "o32_sched_get_priority_min"},/* 4164 */
- { 0, 0, printargs, "o32_sched_rr_get_interval"}, /* 4165 */
- { 0, 0, printargs, "o32_nanosleep" }, /* 4166 */
- { 0, TM|SI, printargs, "o32_mremap" }, /* 4167 */
- { 0, 0, printargs, "o32_accept" }, /* 4168 */
- { 0, 0, printargs, "o32_bind" }, /* 4169 */
- { 0, 0, printargs, "o32_connect" }, /* 4170 */
- { 0, 0, printargs, "o32_getpeername" }, /* 4171 */
- { 0, 0, printargs, "o32_getsockname" }, /* 4172 */
- { 0, 0, printargs, "o32_getsockopt" }, /* 4173 */
- { 0, 0, printargs, "o32_listen" }, /* 4174 */
- { 0, 0, printargs, "o32_recv" }, /* 4175 */
- { 0, 0, printargs, "o32_recvfrom" }, /* 4176 */
- { 0, 0, printargs, "o32_recvmsg" }, /* 4177 */
- { 0, 0, printargs, "o32_send" }, /* 4178 */
- { 0, 0, printargs, "o32_sendmsg" }, /* 4179 */
- { 0, 0, printargs, "o32_sendto" }, /* 4180 */
- { 0, 0, printargs, "o32_setsockopt" }, /* 4181 */
- { 0, 0, printargs, "o32_shutdown" }, /* 4182 */
- { 0, 0, printargs, "o32_socket" }, /* 4183 */
- { 0, 0, printargs, "o32_socketpair" }, /* 4184 */
- { 0, 0, printargs, "o32_setresuid" }, /* 4185 */
- { 0, 0, printargs, "o32_getresuid" }, /* 4186 */
- { 0, 0, printargs, "o32_query_module" }, /* 4187 */
- { 0, 0, printargs, "o32_poll" }, /* 4188 */
- { 0, 0, printargs, "o32_nfsservctl" }, /* 4189 */
- { 0, 0, printargs, "o32_setresgid" }, /* 4190 */
- { 0, 0, printargs, "o32_getresgid" }, /* 4191 */
- { 0, 0, printargs, "o32_prctl" }, /* 4192 */
- { 0, 0, printargs, "o32_rt_sigreturn" }, /* 4193 */
- { 0, 0, printargs, "o32_rt_sigaction" }, /* 4194 */
- { 0, 0, printargs, "o32_rt_sigprocmask"}, /* 4195 */
- { 0, 0, printargs, "o32_rt_sigpending" }, /* 4196 */
- { 0, 0, printargs, "o32_rt_sigtimedwait"},/* 4197 */
- { 0, 0, printargs, "o32_rt_sigqueueinfo"},/* 4198 */
- { 0, 0, printargs, "o32_rt_siguspend" }, /* 4199 */
- { 0, 0, printargs, "o32_pread64" }, /* 4200 */
- { 0, 0, printargs, "o32_pwrite64" }, /* 4201 */
- { 0, 0, printargs, "o32_chown" }, /* 4202 */
- { 0, 0, printargs, "o32_getcwd" }, /* 4203 */
- { 0, 0, printargs, "o32_capget" }, /* 4204 */
- { 0, 0, printargs, "o32_capset" }, /* 4205 */
- { 0, 0, printargs, "o32_sigaltstack" }, /* 4206 */
- { 0, 0, printargs, "o32_sendfile" }, /* 4207 */
- { 5, TN, printargs, "o32_getpmsg" }, /* 4208 */
- { 5, TN, printargs, "o32_putpmsg" }, /* 4209 */
- { 6, TD|TM|SI, printargs, "o32_mmap2" }, /* 4210 */
- { 0, 0, printargs, "o32_truncate64" }, /* 4211 */
- { 0, 0, printargs, "o32_ftruncate64" }, /* 4212 */
- { 0, 0, printargs, "o32_stat64" }, /* 4213 */
- { 0, 0, printargs, "o32_lstat64" }, /* 4214 */
- { 0, 0, printargs, "o32_fstat64" }, /* 4215 */
- { 0, 0, printargs, "o32_pivot_root" }, /* 4216 */
- { 0, TM, printargs, "o32_mincore" }, /* 4217 */
- { 0, TM, printargs, "o32_madvise" }, /* 4218 */
- { 0, 0, printargs, "o32_getdents64" }, /* 4219 */
- { 0, 0, printargs, "o32_fcntl64" }, /* 4220 */
- { 0, 0, NULL, NULL }, /* 4221 */
- { 0, 0, printargs, "o32_gettid" }, /* 4222 */
- { 5, TD, printargs, "o32_readahead" }, /* 4223 */
- { 5, TF, printargs, "o32_setxattr" }, /* 4224 */
- { 5, TF, printargs, "o32_lsetxattr" }, /* 4225 */
- { 5, TD, printargs, "o32_fsetxattr" }, /* 4226 */
- { 4, TF, printargs, "o32_getxattr" }, /* 4227 */
- { 4, TF, printargs, "o32_lgetxattr" }, /* 4228 */
- { 4, TD, printargs, "o32_fgetxattr" }, /* 4229 */
- { 3, TF, printargs, "o32_listxattr" }, /* 4230 */
- { 3, TF, printargs, "o32_llistxattr" }, /* 4231 */
- { 3, TD, printargs, "o32_flistxattr" }, /* 4232 */
- { 2, TF, printargs, "o32_removexattr" }, /* 4233 */
- { 2, TF, printargs, "o32_lremovexattr" }, /* 4234 */
- { 2, TD, printargs, "o32_fremovexattr" }, /* 4235 */
- { 2, TS, printargs, "o32_tkill" }, /* 4236 */
- { 5, TD|TN, printargs, "o32_sendfile64" }, /* 4237 */
- { 6, 0, printargs, "o32_futex" }, /* 4238 */
- { 3, 0, printargs, "o32_sched_setaffinity"}, /* 4239 */
- { 3, 0, printargs, "o32_sched_getaffinity"}, /* 4240 */
- { 2, 0, printargs, "o32_io_setup" }, /* 4241 */
- { 1, 0, printargs, "o32_io_destroy" }, /* 4242 */
- { 5, 0, printargs, "o32_io_getevents" }, /* 4243 */
- { 3, 0, printargs, "o32_io_submit" }, /* 4244 */
- { 3, 0, printargs, "o32_io_cancel" }, /* 4245 */
- { 1, TP|SE, printargs, "o32_exit_group" }, /* 4246 */
- { 3, 0, printargs, "o32_lookup_dcookie"}, /* 4247 */
- { 1, TD, printargs, "o32_epoll_create" }, /* 4248 */
- { 4, TD, printargs, "o32_epoll_ctl" }, /* 4249 */
- { 4, TD, printargs, "o32_epoll_wait" }, /* 4250 */
- { 5, TM|SI, printargs, "o32_remap_file_pages"}, /* 4251 */
- { 1, 0, printargs, "o32_set_tid_address"}, /* 4252 */
- { 0, 0, printargs, "o32_restart_syscall"}, /* 4253 */
- { MA, 0, printargs, "o32_fadvise64_64" }, /* 4254 */
- { 3, TF, printargs, "o32_statfs64" }, /* 4255 */
- { 2, TD, printargs, "o32_fstatfs64" }, /* 4256 */
- { 3, 0, printargs, "o32_timer_create" }, /* 4257 */
- { 4, 0, printargs, "o32_timer_settime" }, /* 4258 */
- { 2, 0, printargs, "o32_timer_gettime" }, /* 4259 */
- { 1, 0, printargs, "o32_timer_getoverrun"}, /* 4260 */
- { 1, 0, printargs, "o32_timer_delete" }, /* 4261 */
- { 2, 0, printargs, "o32_clock_settime" }, /* 4262 */
- { 2, 0, printargs, "o32_clock_gettime" }, /* 4263 */
- { 2, 0, printargs, "o32_clock_getres" }, /* 4264 */
- { 4, 0, printargs, "o32_clock_nanosleep"}, /* 4265 */
- { 3, TS, printargs, "o32_tgkill" }, /* 4266 */
- { 2, TF, printargs, "o32_utimes" }, /* 4267 */
- { 4, TM, printargs, "o32_mbind" }, /* 4268 */
- { 5, TM, printargs, "o32_get_mempolicy" }, /* 4269 */
- { 3, TM, printargs, "o32_set_mempolicy" }, /* 4270 */
- { 4, 0, printargs, "o32_mq_open" }, /* 4271 */
- { 1, 0, printargs, "o32_mq_unlink" }, /* 4272 */
- { 5, 0, printargs, "o32_mq_timedsend" }, /* 4273 */
- { 5, 0, printargs, "o32_mq_timedreceive"}, /* 4274 */
- { 2, 0, printargs, "o32_mq_notify" }, /* 4275 */
- { 3, 0, printargs, "o32_mq_getsetattr" }, /* 4276 */
- { 5, 0, printargs, "o32_vserver" }, /* 4277 */
- { 5, TP, printargs, "o32_waitid" }, /* 4278 */
- { 0, 0, printargs, "o32_SYS_4279" }, /* 4279 */
- { 5, 0, printargs, "o32_add_key" }, /* 4280 */
- { 4, 0, printargs, "o32_request_key" }, /* 4281 */
- { 5, 0, printargs, "o32_keyctl" }, /* 4282 */
- { 1, 0, printargs, "o32_set_thread_area" }, /* 4283 */
- { 0, TD, printargs, "o32_inotify_init" }, /* 4284 */
- { 3, TD, printargs, "o32_inotify_add_watch" }, /* 4285 */
- { 2, TD, printargs, "o32_inotify_rm_watch" }, /* 4286 */
- { 4, TM, printargs, "o32_migrate_pages" }, /* 4287 */
- { 4, TD|TF, printargs, "o32_openat" }, /* 4288 */
- { 3, TD|TF, printargs, "o32_mkdirat" }, /* 4289 */
- { 4, TD|TF, printargs, "o32_mknodat" }, /* 4290 */
- { 5, TD|TF, printargs, "o32_fchownat" }, /* 4291 */
- { 3, TD|TF, printargs, "o32_futimesat" }, /* 4292 */
- { 4, TD|TF, printargs, "o32_fstatat64" }, /* 4293 */
- { 3, TD|TF, printargs, "o32_unlinkat" }, /* 4294 */
- { 4, TD|TF, printargs, "o32_renameat" }, /* 4295 */
- { 5, TD|TF, printargs, "o32_linkat" }, /* 4296 */
- { 3, TD|TF, printargs, "o32_symlinkat" }, /* 4297 */
- { 4, TD|TF, printargs, "o32_readlinkat" }, /* 4298 */
- { 3, TD|TF, printargs, "o32_fchmodat" }, /* 4299 */
- { 3, TD|TF, printargs, "o32_faccessat" }, /* 4300 */
- { 6, TD, printargs, "o32_pselect6" }, /* 4301 */
- { 5, TD, printargs, "o32_ppoll" }, /* 4302 */
- { 1, TP, printargs, "o32_unshare" }, /* 4303 */
- { 6, TD, printargs, "o32_splice" }, /* 4304 */
- { 4, TD, printargs, "o32_sync_file_range" }, /* 4305 */
- { 4, TD, printargs, "o32_tee" }, /* 4306 */
- { 4, TD, printargs, "o32_vmsplice" }, /* 4307 */
- { 6, TM, printargs, "o32_move_pages" }, /* 4308 */
- { 2, 0, printargs, "o32_set_robust_list" }, /* 4309 */
- { 3, 0, printargs, "o32_get_robust_list" }, /* 4310 */
- { 4, 0, printargs, "o32_kexec_load" }, /* 4311 */
- { 3, 0, printargs, "o32_getcpu" }, /* 4312 */
- { 5, TD, printargs, "o32_epoll_pwait" }, /* 4313 */
- { 3, 0, printargs, "o32_ioprio_set" }, /* 4314 */
- { 2, 0, printargs, "o32_ioprio_get" }, /* 4315 */
- { 4, 0, printargs, "o32_utimensat" }, /* 4316 */
- { 3, TD|TS, printargs, "o32_signalfd" }, /* 4317 */
- { 4, TD, printargs, "o32_timerfd" }, /* 4318 */
- { 1, TD, printargs, "o32_eventfd" }, /* 4319 */
- { 6, TD, printargs, "o32_fallocate" }, /* 4320 */
- { 2, TD, printargs, "o32_timerfd_create" }, /* 4321 */
- { 2, TD, printargs, "o32_timerfd_gettime" }, /* 4322 */
- { 4, TD, printargs, "o32_timerfd_settime" }, /* 4323 */
- { 4, TD|TS, printargs, "o32_signalfd4" }, /* 4324 */
- { 2, TD, printargs, "o32_eventfd2" }, /* 4325 */
- { 1, TD, printargs, "o32_epoll_create1" }, /* 4326 */
- { 3, TD, printargs, "o32_dup3" }, /* 4327 */
- { 2, TD, printargs, "o32_pipe2" }, /* 4328 */
- { 1, TD, printargs, "o32_inotify_init1" }, /* 4329 */
- { 5, TD, printargs, "o32_preadv" }, /* 4330 */
- { 5, TD, printargs, "o32_pwritev" }, /* 4331 */
- { 4, TP|TS, printargs, "o32_rt_tgsigqueueinfo" }, /* 4332 */
- { 5, TD, printargs, "o32_perf_event_open" }, /* 4333 */
- { 4, TN, printargs, "o32_accept4" }, /* 4334 */
- { 5, TN, printargs, "o32_recvmmsg" }, /* 4335 */
- { 2, TD, printargs, "o32_fanotify_init" }, /* 4336 */
- { 6, TD|TF, printargs, "o32_fanotify_mark" }, /* 4337 */
- { 4, 0, printargs, "o32_prlimit64" }, /* 4338 */
- { 5, TD|TF, printargs, "o32_name_to_handle_at"}, /* 4339 */
- { 3, TD, printargs, "o32_open_by_handle_at"}, /* 4340 */
- { 2, 0, printargs, "o32_clock_adjtime" }, /* 4341 */
- { 1, TD, printargs, "o32_syncfs" }, /* 4342 */
- { 4, TN, printargs, "o32_sendmmsg" }, /* 4343 */
- { 2, TD, printargs, "o32_setns" }, /* 4344 */
- { 6, 0, printargs, "o32_process_vm_readv" }, /* 4345 */
- { 6, 0, printargs, "o32_process_vm_writev" }, /* 4346 */
- { 5, 0, printargs, "o32_kcmp" }, /* 4347 */
- { 3, TD, printargs, "o32_finit_module" }, /* 4348 */
- { 3, 0, printargs, "o32_sched_setattr" }, /* 4349 */
- { 4, 0, printargs, "o32_sched_getattr" }, /* 4350 */
- { 5, TD|TF, printargs, "o32_renameat2" }, /* 4351 */
+
+# include "syscallent-o32-stub.h"
+/* end of Linux o32 */ [4400 ... 4999] = { },
+
#endif
- [4349 ... 4999] = { }, /* 4999 */ /* end of Linux o32 */
diff --git a/linux/or1k/ioctlent.h.in b/linux/or1k/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/or1k/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/or1k/ioctls_arch0.h b/linux/or1k/ioctls_arch0.h
new file mode 100644
index 0000000..5950cbe
--- /dev/null
+++ b/linux/or1k/ioctls_arch0.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/openrisc/include/ tree. */
diff --git a/linux/or1k/ioctls_inc0.h b/linux/or1k/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/or1k/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/or1k/syscallent.h b/linux/or1k/syscallent.h
index c67bb5c..451c4a4 100644
--- a/linux/or1k/syscallent.h
+++ b/linux/or1k/syscallent.h
@@ -1,262 +1,4 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 42 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 43 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 44 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 45 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 46 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 5, TD, sys_llseek, "_llseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 5, TD, sys_pread, "pread64" }, /* 67 */
- { 5, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 5, TD, sys_preadv, "preadv" }, /* 69 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 79 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"}, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"}, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "oldgetrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 4, TI, sys_msgget, "msgget" }, /* 186 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 4, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 4, TI, sys_semop, "semop" }, /* 193 */
- { 4, TI, sys_shmget, "shmget" }, /* 194 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 4, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 222 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 223 */
- { 2, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 2, TM, sys_mlock, "mlock" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 5, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
- { 6, NF, sys_or1k_atomic, "or1k_atomic" }, /* 244 */
-
- [245 ... 259] = { },
-
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
+#define ARCH_sys_mmap sys_mmap_pgoff
+#include "32/syscallent.h"
+[244] = { 3, NF, sys_or1k_atomic, "or1k_atomic" },
+[245 ... 259] = { },
diff --git a/linux/powerpc/arch_regs.h b/linux/powerpc/arch_regs.h
new file mode 100644
index 0000000..1296e83
--- /dev/null
+++ b/linux/powerpc/arch_regs.h
@@ -0,0 +1 @@
+extern struct pt_regs ppc_regs;
diff --git a/linux/powerpc/errnoent.h b/linux/powerpc/errnoent.h
new file mode 100644
index 0000000..b118c8e
--- /dev/null
+++ b/linux/powerpc/errnoent.h
@@ -0,0 +1,2 @@
+#include "../errnoent.h"
+[ 58] = "EDEADLOCK",
diff --git a/linux/powerpc/errnoent1.h b/linux/powerpc/errnoent1.h
deleted file mode 100644
index 441c66b..0000000
--- a/linux/powerpc/errnoent1.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../errnoent.h"
diff --git a/linux/powerpc/ioctlent.h.in b/linux/powerpc/ioctlent.h.in
deleted file mode 100644
index 510f5aa..0000000
--- a/linux/powerpc/ioctlent.h.in
+++ /dev/null
@@ -1,84 +0,0 @@
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGRS485", 0x542e},
- {"asm/ioctls.h", "TIOCSRS485", 0x542f},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "TIOCSIG", 0x5436},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "FIOCLEX", 0x6601},
- {"asm/ioctls.h", "FIONCLEX", 0x6602},
- {"asm/ioctls.h", "FIOASYNC", 0x667d},
- {"asm/ioctls.h", "FIONBIO", 0x667e},
- {"asm/ioctls.h", "FIONREAD", 0x667f},
- {"asm/ioctls.h", "FIOQSIZE", 0x6680},
- {"asm/nvram.h", "IOC_NVRAM_GET_OFFSET", 0x7042},
- {"asm/nvram.h", "IOC_NVRAM_SYNC", 0x7043},
- {"asm/ps3fb.h", "PS3FB_IOCTL_SETMODE", 0x7201},
- {"asm/ps3fb.h", "PS3FB_IOCTL_GETMODE", 0x7202},
- {"asm/ps3fb.h", "PS3FB_IOCTL_SCREENINFO", 0x7203},
- {"asm/ps3fb.h", "PS3FB_IOCTL_ON", 0x7204},
- {"asm/ps3fb.h", "PS3FB_IOCTL_OFF", 0x7205},
- {"asm/ps3fb.h", "PS3FB_IOCTL_FSEL", 0x7206},
- {"asm/ioctls.h", "TIOCGETP", 0x7408},
- {"asm/ioctls.h", "TIOCSETP", 0x7409},
- {"asm/ioctls.h", "TIOCSETN", 0x740a},
- {"asm/ioctls.h", "TIOCSETC", 0x7411},
- {"asm/ioctls.h", "TIOCGETC", 0x7412},
- {"asm/ioctls.h", "TCGETS", 0x7413},
- {"asm/ioctls.h", "TCSETS", 0x7414},
- {"asm/ioctls.h", "TCSETSW", 0x7415},
- {"asm/ioctls.h", "TCSETSF", 0x7416},
- {"asm/ioctls.h", "TCGETA", 0x7417},
- {"asm/ioctls.h", "TCSETA", 0x7418},
- {"asm/ioctls.h", "TCSETAW", 0x7419},
- {"asm/ioctls.h", "TCSETAF", 0x741c},
- {"asm/ioctls.h", "TCSBRK", 0x741d},
- {"asm/ioctls.h", "TCXONC", 0x741e},
- {"asm/ioctls.h", "TCFLSH", 0x741f},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x7467},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x7468},
- {"asm/ioctls.h", "TIOCSTART", 0x746e},
- {"asm/ioctls.h", "TIOCSTOP", 0x746f},
- {"asm/ioctls.h", "TIOCOUTQ", 0x7473},
- {"asm/ioctls.h", "TIOCGLTC", 0x7474},
- {"asm/ioctls.h", "TIOCSLTC", 0x7475},
- {"asm/ioctls.h", "TIOCSPGRP", 0x7476},
- {"asm/ioctls.h", "TIOCGPGRP", 0x7477},
- {"asm/sockios.h", "FIOSETOWN", 0x8901},
- {"asm/sockios.h", "SIOCSPGRP", 0x8902},
- {"asm/sockios.h", "FIOGETOWN", 0x8903},
- {"asm/sockios.h", "SIOCGPGRP", 0x8904},
- {"asm/sockios.h", "SIOCATMARK", 0x8905},
- {"asm/sockios.h", "SIOCGSTAMP", 0x8906},
- {"asm/sockios.h", "SIOCGSTAMPNS", 0x8907},
diff --git a/linux/powerpc/ioctlent1.h b/linux/powerpc/ioctlent1.h
deleted file mode 100644
index 72eeaf1..0000000
--- a/linux/powerpc/ioctlent1.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "ioctlent.h"
diff --git a/linux/powerpc/ioctls_arch0.h b/linux/powerpc/ioctls_arch0.h
new file mode 100644
index 0000000..9b00dc3
--- /dev/null
+++ b/linux/powerpc/ioctls_arch0.h
@@ -0,0 +1,92 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/powerpc/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x741f, 0x00 },
+{ "asm/ioctls.h", "TCGETA", _IOC_READ, 0x7417, 0x14 },
+{ "asm/ioctls.h", "TCGETS", _IOC_READ, 0x7413, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x741d, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm/ioctls.h", "TCSETA", _IOC_WRITE, 0x7418, 0x14 },
+{ "asm/ioctls.h", "TCSETAF", _IOC_WRITE, 0x741c, 0x14 },
+{ "asm/ioctls.h", "TCSETAW", _IOC_WRITE, 0x7419, 0x14 },
+{ "asm/ioctls.h", "TCSETS", _IOC_WRITE, 0x7414, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", _IOC_WRITE, 0x7416, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", _IOC_WRITE, 0x7415, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x741e, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETC", _IOC_READ, 0x7412, 0x06 },
+{ "asm/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm/ioctls.h", "TIOCGETP", _IOC_READ, 0x7408, 0x06 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGLTC", _IOC_READ, 0x7474, 0x06 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", 0, 0x542e, 0 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm/ioctls.h", "TIOCGSID", 0, 0x5429, 0 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm/ioctls.h", "TIOCGWINSZ", _IOC_READ, 0x7468, 0x08 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm/ioctls.h", "TIOCSETC", _IOC_WRITE, 0x7411, 0x06 },
+{ "asm/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm/ioctls.h", "TIOCSETN", _IOC_WRITE, 0x740a, 0x06 },
+{ "asm/ioctls.h", "TIOCSETP", _IOC_WRITE, 0x7409, 0x06 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSLTC", _IOC_WRITE, 0x7475, 0x06 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", 0, 0x542f, 0 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCSWINSZ", _IOC_WRITE, 0x7467, 0x08 },
+{ "asm/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm/nvram.h", "IOC_NVRAM_GET_OFFSET", _IOC_READ|_IOC_WRITE, 0x7042, 0x04 },
+{ "asm/nvram.h", "IOC_NVRAM_SYNC", _IOC_NONE, 0x7043, 0x00 },
+{ "asm/nvram.h", "OBSOLETE_PMAC_NVRAM_GET_OFFSET", _IOC_READ|_IOC_WRITE, 0x7040, 0x04 },
+{ "asm/ps3fb.h", "FBIO_WAITFORVSYNC", _IOC_WRITE, 0x4620, 0x04 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_FSEL", _IOC_WRITE, 0x7206, 0x04 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_GETMODE", _IOC_READ, 0x7202, 0x04 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_OFF", _IOC_NONE, 0x7205, 0x00 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_ON", _IOC_NONE, 0x7204, 0x00 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_SCREENINFO", _IOC_READ, 0x7203, 0x04 },
+{ "asm/ps3fb.h", "PS3FB_IOCTL_SETMODE", _IOC_WRITE, 0x7201, 0x04 },
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
diff --git a/linux/powerpc/ioctls_inc0.h b/linux/powerpc/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/powerpc/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/powerpc/signalent1.h b/linux/powerpc/signalent1.h
deleted file mode 100644
index d31e6a4..0000000
--- a/linux/powerpc/signalent1.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../signalent.h"
diff --git a/linux/powerpc/syscallent.h b/linux/powerpc/syscallent.h
index 5eb5a3c..3e1208d 100644
--- a/linux/powerpc/syscallent.h
+++ b/linux/powerpc/syscallent.h
@@ -26,459 +26,370 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
- { 1, TP|SE, sys_exit, "exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid, "setuid" }, /* 23 */
- { 0, NF, sys_getuid, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid, "setgid" }, /* 46 */
- { 0, NF, sys_getgid, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "oldgetrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 5, 0, printargs, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 5, 0, sys_vm86, "vm86" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 6, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 5, 0, printargs, "modify_ldt" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms" }, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 2, 0, sys_sched_setparam, "sched_setparam" }, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 165 */
- { 5, 0, sys_query_module, "query_module" }, /* 166 */
- { 3, TD, sys_poll, "poll" }, /* 167 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 168 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 169 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 170 */
- { 5, 0, sys_prctl, "prctl" }, /* 171 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 172 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 173 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 174 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 175 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 176 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 177 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 178 */
- { 6, TD, sys_pread, "pread64" }, /* 179 */
- { 6, TD, sys_pwrite, "pwrite64" }, /* 180 */
- { 3, TF, sys_chown, "chown" }, /* 181 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 182 */
- { 2, 0, sys_capget, "capget" }, /* 183 */
- { 2, 0, sys_capset, "capset" }, /* 184 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 185 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 186 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 187 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 188 */
- { 0, TP, sys_vfork, "vfork" }, /* 189 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 190 */
- { 5, TD, sys_readahead, "readahead" }, /* 190 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 192 */
- { 4, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 4, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 5, 0, printargs, "pciconfig_read" }, /* 198 */
- { 5, 0, printargs, "pciconfig_write" }, /* 199 */
- { 3, 0, printargs, "pciconfig_iobase" }, /* 200 */
- { 6, 0, printargs, "MOL" }, /* 201 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 202 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 203 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 204 */
- { 3, TM, sys_madvise, "madvise" }, /* 205 */
- { 3, TM, sys_mincore, "mincore" }, /* 206 */
- { 0, 0, sys_gettid, "gettid" }, /* 207 */
- { 2, TS, sys_kill, "tkill" }, /* 208 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 209 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 210 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 211 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 212 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 213 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 214 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 215 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 216 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 217 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 218 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 219 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 220 */
- { 6, 0, sys_futex, "futex" }, /* 221 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 222 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 223 */
- { 5, 0, NULL, NULL }, /* 224 */
- { 5, 0, printargs, "tux" }, /* 225 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 226 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 227 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 228 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 229 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 230 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 231 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 232 */
- { 6, TD, sys_fadvise64, "fadvise64" }, /* 233 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 234 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 235 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 236 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 237 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 238 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 239 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 240 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 241 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 242 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 243 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 244 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 245 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 246 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 247 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 248 */
- { 2, 0, printargs, "swapcontext" }, /* 249 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 250 */
- { 2, TF, sys_utimes, "utimes" }, /* 251 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 252 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 253 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 254 */
- { 1, 0, printargs, "rtas" }, /* 255 */
- { 5, 0, printargs, "debug_setcontext" }, /* 256 */
- { 5, 0, sys_vserver, "vserver" }, /* 257 */
- { 5, TM, sys_migrate_pages, "migrate_pages" }, /* 258 */
- { 6, TM, sys_mbind, "mbind" }, /* 259 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 260 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 261 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 262 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 263 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 264 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 265 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 266 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 267 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 268 */
- { 5, 0, sys_add_key, "add_key" }, /* 269 */
- { 4, 0, sys_request_key, "request_key" }, /* 270 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 271 */
- { 5, TP, sys_waitid, "waitid" }, /* 272 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 273 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 274 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 275 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 276 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 277 */
- { 5, 0, printargs, "spu_run" }, /* 278 */
- { 5, 0, printargs, "spu_create" }, /* 279 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 280 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 281 */
- { 1, TP, sys_unshare, "unshare" }, /* 282 */
- { 6, TD, sys_splice, "splice" }, /* 283 */
- { 4, TD, sys_tee, "tee" }, /* 284 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 285 */
- { 4, TD|TF, sys_openat, "openat" }, /* 286 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 287 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 288 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 289 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 290 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 291 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 292 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 293 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 294 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 295 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 296 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 297 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 298 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 299 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 300 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 301 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 302 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 303 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 304 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 305 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 306 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 307 */
- { 6, TD, sys_sync_file_range2, "sync_file_range2" }, /* 308 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 309 */
- { 3, 0, sys_subpage_prot, "subpage_prot" }, /* 310 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 311 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 312 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 313 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 314 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 315 */
- { 3, TD, sys_dup3, "dup3" }, /* 316 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 317 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 318 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 319 */
- { 5, TD, sys_preadv, "preadv" }, /* 320 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 321 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 322 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 323 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 324 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 325 */
- { 3, TN, sys_socket, "socket" }, /* 326 */
- { 3, TN, sys_bind, "bind" }, /* 327 */
- { 3, TN, sys_connect, "connect" }, /* 328 */
- { 2, TN, sys_listen, "listen" }, /* 329 */
- { 3, TN, sys_accept, "accept" }, /* 330 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 331 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 332 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 333 */
- { 4, TN, sys_send, "send" }, /* 334 */
- { 6, TN, sys_sendto, "sendto" }, /* 335 */
- { 4, TN, sys_recv, "recv" }, /* 336 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 337 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 338 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 339 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 340 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 341 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 342 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 343 */
- { 4, TN, sys_accept4, "accept4" }, /* 344 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 345 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 346 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 347 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 348 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 349 */
- { 2, TD, sys_setns, "setns" }, /* 350 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 351 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 352 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 353 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 354 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 355 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 356 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 357 */
- { 5, 0, NULL, NULL }, /* 358 */
- { 5, 0, NULL, NULL }, /* 359 */
- { 5, 0, NULL, NULL }, /* 360 */
- { 5, 0, NULL, NULL }, /* 361 */
- { 5, 0, NULL, NULL }, /* 362 */
- { 5, 0, NULL, NULL }, /* 363 */
- { 5, 0, NULL, NULL }, /* 364 */
- { 5, 0, NULL, NULL }, /* 365 */
- { 5, 0, NULL, NULL }, /* 366 */
- { 5, 0, NULL, NULL }, /* 367 */
- { 5, 0, NULL, NULL }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid, "setuid" },
+[ 24] = { 0, NF, sys_getuid, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid, "setgid" },
+[ 47] = { 0, NF, sys_getgid, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid, "geteuid" },
+[ 50] = { 0, NF, sys_getegid, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid, "setreuid" },
+[ 71] = { 2, 0, sys_setregid, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 5, 0, printargs, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 5, 0, sys_vm86, "vm86" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 6, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 5, 0, printargs, "modify_ldt" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid, "setresuid" },
+[165] = { 3, 0, sys_getresuid, "getresuid" },
+[166] = { 5, 0, sys_query_module, "query_module" },
+[167] = { 3, TD, sys_poll, "poll" },
+[168] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[169] = { 3, 0, sys_setresgid, "setresgid" },
+[170] = { 3, 0, sys_getresgid, "getresgid" },
+[171] = { 5, 0, sys_prctl, "prctl" },
+[172] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[173] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[174] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[175] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[176] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[177] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[178] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[179] = { 6, TD, sys_pread, "pread64" },
+[180] = { 6, TD, sys_pwrite, "pwrite64" },
+[181] = { 3, TF, sys_chown, "chown" },
+[182] = { 2, TF, sys_getcwd, "getcwd" },
+[183] = { 2, 0, sys_capget, "capget" },
+[184] = { 2, 0, sys_capset, "capset" },
+[185] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[186] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[187] = { 5, 0, sys_getpmsg, "getpmsg" },
+[188] = { 5, 0, sys_putpmsg, "putpmsg" },
+[189] = { 0, TP, sys_vfork, "vfork" },
+[190] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[191] = { 5, TD, sys_readahead, "readahead" },
+[192] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[193] = { 4, TF, sys_truncate64, "truncate64" },
+[194] = { 4, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 5, 0, printargs, "pciconfig_read" },
+[199] = { 5, 0, printargs, "pciconfig_write" },
+[200] = { 3, 0, printargs, "pciconfig_iobase" },
+[201] = { 6, 0, printargs, "MOL" },
+[202] = { 3, TD, sys_getdents64, "getdents64" },
+[203] = { 2, TF, sys_pivotroot, "pivot_root" },
+[204] = { 3, TD, sys_fcntl, "fcntl64" },
+[205] = { 3, TM, sys_madvise, "madvise" },
+[206] = { 3, TM, sys_mincore, "mincore" },
+[207] = { 0, 0, sys_gettid, "gettid" },
+[208] = { 2, TS, sys_kill, "tkill" },
+[209] = { 5, TF, sys_setxattr, "setxattr" },
+[210] = { 5, TF, sys_setxattr, "lsetxattr" },
+[211] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[212] = { 4, TF, sys_getxattr, "getxattr" },
+[213] = { 4, TF, sys_getxattr, "lgetxattr" },
+[214] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[215] = { 3, TF, sys_listxattr, "listxattr" },
+[216] = { 3, TF, sys_listxattr, "llistxattr" },
+[217] = { 3, TD, sys_flistxattr, "flistxattr" },
+[218] = { 2, TF, sys_removexattr, "removexattr" },
+[219] = { 2, TF, sys_removexattr, "lremovexattr" },
+[220] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[221] = { 6, 0, sys_futex, "futex" },
+[222] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[223] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[224] = { },
+[225] = { 5, 0, printargs, "tux" },
+[226] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[227] = { 2, 0, sys_io_setup, "io_setup" },
+[228] = { 1, 0, sys_io_destroy, "io_destroy" },
+[229] = { 5, 0, sys_io_getevents, "io_getevents" },
+[230] = { 3, 0, sys_io_submit, "io_submit" },
+[231] = { 3, 0, sys_io_cancel, "io_cancel" },
+[232] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[233] = { 6, TD, sys_fadvise64, "fadvise64" },
+[234] = { 1, TP|SE, sys_exit, "exit_group" },
+[235] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[236] = { 1, TD, sys_epoll_create, "epoll_create" },
+[237] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[238] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[239] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[240] = { 3, 0, sys_timer_create, "timer_create" },
+[241] = { 4, 0, sys_timer_settime, "timer_settime" },
+[242] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[243] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[244] = { 1, 0, sys_timer_delete, "timer_delete" },
+[245] = { 2, 0, sys_clock_settime, "clock_settime" },
+[246] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[247] = { 2, 0, sys_clock_getres, "clock_getres" },
+[248] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[249] = { 2, 0, printargs, "swapcontext" },
+[250] = { 3, TS, sys_tgkill, "tgkill" },
+[251] = { 2, TF, sys_utimes, "utimes" },
+[252] = { 3, TF, sys_statfs64, "statfs64" },
+[253] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[254] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[255] = { 1, 0, printargs, "rtas" },
+[256] = { 5, 0, printargs, "debug_setcontext" },
+[257] = { 5, 0, sys_vserver, "vserver" },
+[258] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[259] = { 6, TM, sys_mbind, "mbind" },
+[260] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[261] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[262] = { 4, 0, sys_mq_open, "mq_open" },
+[263] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[264] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[265] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[266] = { 2, 0, sys_mq_notify, "mq_notify" },
+[267] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[268] = { 4, 0, sys_kexec_load, "kexec_load" },
+[269] = { 5, 0, sys_add_key, "add_key" },
+[270] = { 4, 0, sys_request_key, "request_key" },
+[271] = { 5, 0, sys_keyctl, "keyctl" },
+[272] = { 5, TP, sys_waitid, "waitid" },
+[273] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[274] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[275] = { 0, TD, sys_inotify_init, "inotify_init" },
+[276] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[277] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[278] = { 5, 0, printargs, "spu_run" },
+[279] = { 5, 0, printargs, "spu_create" },
+[280] = { 6, TD, sys_pselect6, "pselect6" },
+[281] = { 5, TD, sys_ppoll, "ppoll" },
+[282] = { 1, TP, sys_unshare, "unshare" },
+[283] = { 6, TD, sys_splice, "splice" },
+[284] = { 4, TD, sys_tee, "tee" },
+[285] = { 4, TD, sys_vmsplice, "vmsplice" },
+[286] = { 4, TD|TF, sys_openat, "openat" },
+[287] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[288] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[289] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[290] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[291] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[292] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[293] = { 4, TD|TF, sys_renameat, "renameat" },
+[294] = { 5, TD|TF, sys_linkat, "linkat" },
+[295] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[296] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[297] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[298] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[299] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[300] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[301] = { 6, TM, sys_move_pages, "move_pages" },
+[302] = { 3, 0, sys_getcpu, "getcpu" },
+[303] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[304] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[305] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[306] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[307] = { 1, TD, sys_eventfd, "eventfd" },
+[308] = { 6, TD, sys_sync_file_range2, "sync_file_range2" },
+[309] = { 6, TD, sys_fallocate, "fallocate" },
+[310] = { 3, 0, sys_subpage_prot, "subpage_prot" },
+[311] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[312] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[313] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[314] = { 2, TD, sys_eventfd2, "eventfd2" },
+[315] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[316] = { 3, TD, sys_dup3, "dup3" },
+[317] = { 2, TD, sys_pipe2, "pipe2" },
+[318] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[319] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[320] = { 5, TD, sys_preadv, "preadv" },
+[321] = { 5, TD, sys_pwritev, "pwritev" },
+[322] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[323] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[324] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[325] = { 4, 0, sys_prlimit64, "prlimit64" },
+[326] = { 3, TN, sys_socket, "socket" },
+[327] = { 3, TN, sys_bind, "bind" },
+[328] = { 3, TN, sys_connect, "connect" },
+[329] = { 2, TN, sys_listen, "listen" },
+[330] = { 3, TN, sys_accept, "accept" },
+[331] = { 3, TN, sys_getsockname, "getsockname" },
+[332] = { 3, TN, sys_getpeername, "getpeername" },
+[333] = { 4, TN, sys_socketpair, "socketpair" },
+[334] = { 4, TN, sys_send, "send" },
+[335] = { 6, TN, sys_sendto, "sendto" },
+[336] = { 4, TN, sys_recv, "recv" },
+[337] = { 6, TN, sys_recvfrom, "recvfrom" },
+[338] = { 2, TN, sys_shutdown, "shutdown" },
+[339] = { 5, TN, sys_setsockopt, "setsockopt" },
+[340] = { 5, TN, sys_getsockopt, "getsockopt" },
+[341] = { 3, TN, sys_sendmsg, "sendmsg" },
+[342] = { 3, TN, sys_recvmsg, "recvmsg" },
+[343] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[344] = { 4, TN, sys_accept4, "accept4" },
+[345] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[346] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[347] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[348] = { 1, TD, sys_syncfs, "syncfs" },
+[349] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[350] = { 2, TD, sys_setns, "setns" },
+[351] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[352] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[353] = { 3, TD, sys_finit_module, "finit_module" },
+[354] = { 5, 0, sys_kcmp, "kcmp" },
+[355] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[356] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[357] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[358] = { 3, 0, sys_seccomp, "seccomp", },
+[359] = { 3, 0, sys_getrandom, "getrandom", },
+[360] = { 2, TD, sys_memfd_create, "memfd_create", },
+[361] = { 3, TD, sys_bpf, "bpf", },
+[362] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[363 ... 399] = { },
+
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
- { 5, 0, NULL, NULL }, /* 445 */
- { 5, 0, NULL, NULL }, /* 446 */
- { 5, 0, NULL, NULL }, /* 447 */
- { 5, 0, NULL, NULL }, /* 448 */
- { 5, 0, NULL, NULL }, /* 449 */
diff --git a/linux/powerpc/syscallent1.h b/linux/powerpc/syscallent1.h
deleted file mode 100644
index 49ccb8a..0000000
--- a/linux/powerpc/syscallent1.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "syscallent.h"
diff --git a/linux/powerpc64/arch_regs.h b/linux/powerpc64/arch_regs.h
new file mode 100644
index 0000000..05e4fe1
--- /dev/null
+++ b/linux/powerpc64/arch_regs.h
@@ -0,0 +1 @@
+#include "powerpc/arch_regs.h"
diff --git a/linux/powerpc64/errnoent.h b/linux/powerpc64/errnoent.h
new file mode 100644
index 0000000..30f6425
--- /dev/null
+++ b/linux/powerpc64/errnoent.h
@@ -0,0 +1 @@
+#include "powerpc/errnoent.h"
diff --git a/linux/powerpc64/errnoent1.h b/linux/powerpc64/errnoent1.h
new file mode 100644
index 0000000..c0f7787
--- /dev/null
+++ b/linux/powerpc64/errnoent1.h
@@ -0,0 +1 @@
+#include "errnoent.h"
diff --git a/linux/powerpc64/ioctls_arch0.h b/linux/powerpc64/ioctls_arch0.h
new file mode 100644
index 0000000..bf6962c
--- /dev/null
+++ b/linux/powerpc64/ioctls_arch0.h
@@ -0,0 +1 @@
+#include "powerpc/ioctls_arch0.h"
diff --git a/linux/powerpc64/ioctls_arch1.h b/linux/powerpc64/ioctls_arch1.h
new file mode 100644
index 0000000..bf6962c
--- /dev/null
+++ b/linux/powerpc64/ioctls_arch1.h
@@ -0,0 +1 @@
+#include "powerpc/ioctls_arch0.h"
diff --git a/linux/powerpc64/ioctls_inc0.h b/linux/powerpc64/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/powerpc64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/powerpc64/ioctls_inc1.h b/linux/powerpc64/ioctls_inc1.h
new file mode 100644
index 0000000..2e5b2de
--- /dev/null
+++ b/linux/powerpc64/ioctls_inc1.h
@@ -0,0 +1 @@
+#include "powerpc/ioctls_inc0.h"
diff --git a/linux/powerpc64/signalent1.h b/linux/powerpc64/signalent1.h
new file mode 100644
index 0000000..093cba7
--- /dev/null
+++ b/linux/powerpc64/signalent1.h
@@ -0,0 +1 @@
+#include "signalent.h"
diff --git a/linux/powerpc64/syscallent.h b/linux/powerpc64/syscallent.h
new file mode 100644
index 0000000..64a9f01
--- /dev/null
+++ b/linux/powerpc64/syscallent.h
@@ -0,0 +1 @@
+#include "powerpc/syscallent.h"
diff --git a/linux/powerpc64/syscallent1.h b/linux/powerpc64/syscallent1.h
new file mode 100644
index 0000000..64a9f01
--- /dev/null
+++ b/linux/powerpc64/syscallent1.h
@@ -0,0 +1 @@
+#include "powerpc/syscallent.h"
diff --git a/linux/powerpc64/userent.h b/linux/powerpc64/userent.h
new file mode 100644
index 0000000..27c240b
--- /dev/null
+++ b/linux/powerpc64/userent.h
@@ -0,0 +1 @@
+#include "powerpc/userent.h"
diff --git a/linux/reboot.h b/linux/reboot.h
deleted file mode 100644
index aa33674..0000000
--- a/linux/reboot.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef _LINUX_REBOOT_H
-#define _LINUX_REBOOT_H
-
-/*
- * Magic values required to use _reboot() system call.
- */
-
-#define LINUX_REBOOT_MAGIC1 0xfee1dead
-#define LINUX_REBOOT_MAGIC2 672274793
-#define LINUX_REBOOT_MAGIC2A 85072278
-#define LINUX_REBOOT_MAGIC2B 369367448
-#define LINUX_REBOOT_MAGIC2C 537993216
-
-
-/*
- * Commands accepted by the _reboot() system call.
- *
- * RESTART Restart system using default command and mode.
- * HALT Stop OS and give system control to ROM monitor, if any.
- * CAD_ON Ctrl-Alt-Del sequence causes RESTART command.
- * CAD_OFF Ctrl-Alt-Del sequence sends SIGINT to init task.
- * POWER_OFF Stop OS and remove all power from system, if possible.
- * RESTART2 Restart system using given command string.
- * SW_SUSPEND Suspend system using software suspend if compiled in.
- * KEXEC Restart system using a previously loaded Linux kernel
- */
-
-#define LINUX_REBOOT_CMD_RESTART 0x01234567
-#define LINUX_REBOOT_CMD_HALT 0xCDEF0123
-#define LINUX_REBOOT_CMD_CAD_ON 0x89ABCDEF
-#define LINUX_REBOOT_CMD_CAD_OFF 0x00000000
-#define LINUX_REBOOT_CMD_POWER_OFF 0x4321FEDC
-#define LINUX_REBOOT_CMD_RESTART2 0xA1B2C3D4
-#define LINUX_REBOOT_CMD_SW_SUSPEND 0xD000FCE2
-#define LINUX_REBOOT_CMD_KEXEC 0x45584543
-
-
-
-#endif /* _LINUX_REBOOT_H */
diff --git a/linux/s390/arch_regs.h b/linux/s390/arch_regs.h
new file mode 100644
index 0000000..586326f
--- /dev/null
+++ b/linux/s390/arch_regs.h
@@ -0,0 +1 @@
+extern unsigned long *const s390_frame_ptr;
diff --git a/linux/s390/ioctlent.h.in b/linux/s390/ioctlent.h.in
deleted file mode 100644
index 1e93a0b..0000000
--- a/linux/s390/ioctlent.h.in
+++ /dev/null
@@ -1,49 +0,0 @@
- {"asm/dasd.h", "BIODASDDISABLE", 0x4400},
- {"asm/dasd.h", "DASDAPIVER", 0x4400},
- {"asm/dasd.h", "BIODASDENABLE", 0x4401},
- {"asm/dasd.h", "BIODASDFMT", 0x4401},
- {"asm/dasd.h", "BIODASDINFO", 0x4401},
- {"asm/dasd.h", "BIODASDSNID", 0x4401},
- {"asm/dasd.h", "BIODASDPRRD", 0x4402},
- {"asm/dasd.h", "BIODASDRSRV", 0x4402},
- {"asm/dasd.h", "BIODASDSATTR", 0x4402},
- {"asm/dasd.h", "BIODASDINFO2", 0x4403},
- {"asm/dasd.h", "BIODASDRLSE", 0x4403},
- {"asm/dasd.h", "BIODASDPSRD", 0x4404},
- {"asm/dasd.h", "BIODASDSLCK", 0x4404},
- {"asm/dasd.h", "BIODASDGATTR", 0x4405},
- {"asm/dasd.h", "BIODASDPRRST", 0x4405},
- {"asm/dasd.h", "BIODASDQUIESCE", 0x4406},
- {"asm/dasd.h", "BIODASDRESUME", 0x4407},
- {"asm/cmb.h", "BIODASDCMFENABLE", 0x4420},
- {"asm/cmb.h", "BIODASDCMFDISABLE", 0x4421},
- {"asm/cmb.h", "BIODASDREADALLCMB", 0x4421},
- {"asm/dasd.h", "BIODASDSYMMIO", 0x44f0},
- {"asm/ioctls.h", "FIOQSIZE", 0x545e},
- {"asm/chsc.h", "CHSC_START", 0x6381},
- {"asm/chsc.h", "CHSC_INFO_CHANNEL_PATH", 0x6382},
- {"asm/chsc.h", "CHSC_INFO_CU", 0x6383},
- {"asm/chsc.h", "CHSC_INFO_SCH_CU", 0x6384},
- {"asm/chsc.h", "CHSC_INFO_CI", 0x6385},
- {"asm/chsc.h", "CHSC_INFO_CCL", 0x6386},
- {"asm/chsc.h", "CHSC_INFO_CPD", 0x6387},
- {"asm/chsc.h", "CHSC_INFO_DCAL", 0x6388},
- {"asm/tape390.h", "TAPE390_DISPLAY", 0x6401},
- {"asm/tape390.h", "TAPE390_CRYPT_SET", 0x6402},
- {"asm/tape390.h", "TAPE390_CRYPT_QUERY", 0x6403},
- {"asm/tape390.h", "TAPE390_KEKL_SET", 0x6404},
- {"asm/tape390.h", "TAPE390_KEKL_QUERY", 0x6405},
- {"asm/zcrypt.h", "Z90STAT_TOTALCOUNT", 0x7a40},
- {"asm/zcrypt.h", "Z90STAT_PCICACOUNT", 0x7a41},
- {"asm/zcrypt.h", "Z90STAT_PCICCCOUNT", 0x7a42},
- {"asm/zcrypt.h", "Z90STAT_REQUESTQ_COUNT", 0x7a44},
- {"asm/zcrypt.h", "Z90STAT_PENDINGQ_COUNT", 0x7a45},
- {"asm/zcrypt.h", "Z90STAT_TOTALOPEN_COUNT", 0x7a46},
- {"asm/zcrypt.h", "Z90STAT_DOMAIN_INDEX", 0x7a47},
- {"asm/zcrypt.h", "Z90STAT_STATUS_MASK", 0x7a48},
- {"asm/zcrypt.h", "Z90STAT_QDEPTH_MASK", 0x7a49},
- {"asm/zcrypt.h", "Z90STAT_PERDEV_REQCNT", 0x7a4a},
- {"asm/zcrypt.h", "Z90STAT_PCIXCCMCL2COUNT", 0x7a4b},
- {"asm/zcrypt.h", "Z90STAT_PCIXCCMCL3COUNT", 0x7a4c},
- {"asm/zcrypt.h", "Z90STAT_CEX2CCOUNT", 0x7a4d},
- {"asm/zcrypt.h", "Z90STAT_CEX2ACOUNT", 0x7a4e},
diff --git a/linux/s390/ioctls_arch0.h b/linux/s390/ioctls_arch0.h
new file mode 100644
index 0000000..4228f96
--- /dev/null
+++ b/linux/s390/ioctls_arch0.h
@@ -0,0 +1,59 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/s390/include/ tree. */
+{ "asm/chsc.h", "CHSC_INFO_CCL", _IOC_READ|_IOC_WRITE, 0x6386, 0x1014 },
+{ "asm/chsc.h", "CHSC_INFO_CHANNEL_PATH", _IOC_READ|_IOC_WRITE, 0x6382, 0x100c },
+{ "asm/chsc.h", "CHSC_INFO_CI", _IOC_READ|_IOC_WRITE, 0x6385, 0x100c },
+{ "asm/chsc.h", "CHSC_INFO_CPD", _IOC_READ|_IOC_WRITE, 0x6387, 0x1014 },
+{ "asm/chsc.h", "CHSC_INFO_CU", _IOC_READ|_IOC_WRITE, 0x6383, 0x100c },
+{ "asm/chsc.h", "CHSC_INFO_DCAL", _IOC_READ|_IOC_WRITE, 0x6388, 0x1010 },
+{ "asm/chsc.h", "CHSC_INFO_SCH_CU", _IOC_READ|_IOC_WRITE, 0x6384, 0x1008 },
+{ "asm/chsc.h", "CHSC_ON_CLOSE_REMOVE", _IOC_NONE, 0x638b, 0x00 },
+{ "asm/chsc.h", "CHSC_ON_CLOSE_SET", _IOC_READ|_IOC_WRITE, 0x638a, 0x1000 },
+{ "asm/chsc.h", "CHSC_START", _IOC_READ|_IOC_WRITE, 0x6381, 0x1000 },
+{ "asm/chsc.h", "CHSC_START_SYNC", _IOC_READ|_IOC_WRITE, 0x6389, 0x1000 },
+{ "asm/cmb.h", "BIODASDCMFDISABLE", _IOC_NONE, 0x4421, 0x00 },
+{ "asm/cmb.h", "BIODASDCMFENABLE", _IOC_NONE, 0x4420, 0x00 },
+{ "asm/cmb.h", "BIODASDREADALLCMB", _IOC_READ|_IOC_WRITE, 0x4421, 0x58 },
+{ "asm/dasd.h", "BIODASDABORTIO", _IOC_NONE, 0x44f0, 0x00 },
+{ "asm/dasd.h", "BIODASDALLOWIO", _IOC_NONE, 0x44f1, 0x00 },
+{ "asm/dasd.h", "BIODASDDISABLE", _IOC_NONE, 0x4400, 0x00 },
+{ "asm/dasd.h", "BIODASDENABLE", _IOC_NONE, 0x4401, 0x00 },
+{ "asm/dasd.h", "BIODASDFMT", _IOC_WRITE, 0x4401, 0x10 },
+{ "asm/dasd.h", "BIODASDGATTR", _IOC_READ, 0x4405, 0x20 },
+{ "asm/dasd.h", "BIODASDINFO", _IOC_READ, 0x4401, 0x178 },
+{ "asm/dasd.h", "BIODASDINFO2", _IOC_READ, 0x4403, 0x1a0 },
+{ "asm/dasd.h", "BIODASDPRRD", _IOC_READ, 0x4402, 0x408 },
+{ "asm/dasd.h", "BIODASDPRRST", _IOC_NONE, 0x4405, 0x00 },
+{ "asm/dasd.h", "BIODASDPSRD", _IOC_READ, 0x4404, 0xc0 },
+{ "asm/dasd.h", "BIODASDQUIESCE", _IOC_NONE, 0x4406, 0x00 },
+{ "asm/dasd.h", "BIODASDRESUME", _IOC_NONE, 0x4407, 0x00 },
+{ "asm/dasd.h", "BIODASDRLSE", _IOC_NONE, 0x4403, 0x00 },
+{ "asm/dasd.h", "BIODASDRSRV", _IOC_NONE, 0x4402, 0x00 },
+{ "asm/dasd.h", "BIODASDSATTR", _IOC_WRITE, 0x4402, 0x20 },
+{ "asm/dasd.h", "BIODASDSLCK", _IOC_NONE, 0x4404, 0x00 },
+{ "asm/dasd.h", "BIODASDSNID", _IOC_READ|_IOC_WRITE, 0x4401, 0x0d },
+{ "asm/dasd.h", "BIODASDSYMMIO", _IOC_READ|_IOC_WRITE, 0x44f0, 0x20 },
+{ "asm/dasd.h", "DASDAPIVER", _IOC_READ, 0x4400, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", 0, 0x545E, 0 },
+{ "asm/tape390.h", "TAPE390_CRYPT_QUERY", _IOC_READ, 0x6403, 0x03 },
+{ "asm/tape390.h", "TAPE390_CRYPT_SET", _IOC_WRITE, 0x6402, 0x03 },
+{ "asm/tape390.h", "TAPE390_DISPLAY", _IOC_WRITE, 0x6401, 0x11 },
+{ "asm/tape390.h", "TAPE390_KEKL_QUERY", _IOC_READ, 0x6405, 0x86 },
+{ "asm/tape390.h", "TAPE390_KEKL_SET", _IOC_WRITE, 0x6404, 0x86 },
+{ "asm/zcrypt.h", "ICARSACRT", _IOC_READ|_IOC_WRITE, 0x7a06, 0x00 },
+{ "asm/zcrypt.h", "ICARSAMODEXPO", _IOC_READ|_IOC_WRITE, 0x7a05, 0x00 },
+{ "asm/zcrypt.h", "Z90STAT_CEX2ACOUNT", _IOC_READ, 0x7a4e, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_CEX2CCOUNT", _IOC_READ, 0x7a4d, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_DOMAIN_INDEX", _IOC_READ, 0x7a47, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PCICACOUNT", _IOC_READ, 0x7a41, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PCICCCOUNT", _IOC_READ, 0x7a42, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PCIXCCMCL2COUNT", _IOC_READ, 0x7a4b, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PCIXCCMCL3COUNT", _IOC_READ, 0x7a4c, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PENDINGQ_COUNT", _IOC_READ, 0x7a45, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_PERDEV_REQCNT", _IOC_READ, 0x7a4a, 0x100 },
+{ "asm/zcrypt.h", "Z90STAT_QDEPTH_MASK", _IOC_READ, 0x7a49, 0x40 },
+{ "asm/zcrypt.h", "Z90STAT_REQUESTQ_COUNT", _IOC_READ, 0x7a44, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_STATUS_MASK", _IOC_READ, 0x7a48, 0x40 },
+{ "asm/zcrypt.h", "Z90STAT_TOTALCOUNT", _IOC_READ, 0x7a40, 0x04 },
+{ "asm/zcrypt.h", "Z90STAT_TOTALOPEN_COUNT", _IOC_READ, 0x7a46, 0x04 },
+{ "asm/zcrypt.h", "ZSECSENDCPRB", _IOC_READ|_IOC_WRITE, 0x7a81, 0x00 },
+{ "asm/zcrypt.h", "ZSENDEP11CPRB", _IOC_READ|_IOC_WRITE, 0x7a04, 0x00 },
diff --git a/linux/s390/ioctls_inc0.h b/linux/s390/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/s390/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/s390/syscallent.h b/linux/s390/syscallent.h
index 26dc35a..dc78097 100644
--- a/linux/s390/syscallent.h
+++ b/linux/s390/syscallent.h
@@ -28,454 +28,362 @@
*
*/
- { 0, 0, sys_setup, "setup" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { MA, 0, NULL, NULL }, /* 17 */
- { MA, 0, NULL, NULL }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { MA, 0, NULL, NULL }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { MA, 0, NULL, NULL }, /* 31 */
- { MA, 0, NULL, NULL }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { MA, 0, NULL, NULL }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { MA, 0, NULL, NULL }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { MA, 0, NULL, NULL }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { MA, 0, NULL, NULL }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { MA, 0, NULL, NULL }, /* 58 */
- { MA, 0, NULL, NULL }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { MA, 0, NULL, NULL }, /* 68 */
- { MA, 0, NULL, NULL }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { MA, 0, NULL, NULL }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { MA, 0, NULL, NULL }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_old_mmap, "mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { MA, 0, NULL, NULL }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { MA, 0, NULL, NULL }, /* 109 */
- { MA, 0, NULL, NULL }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { MA, 0, NULL, NULL }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 5, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { MA, 0, NULL, NULL }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { MA, 0, NULL, NULL }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 5, TD, sys_pread, "pread" }, /* 180 */
- { 5, TD, sys_pwrite, "pwrite" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { 1, TD|TM|SI, sys_old_mmap_pgoff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, NF, sys_getegid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, TD, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 4, TD, sys_readahead, "readahead" }, /* 222 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 223 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 224 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 225 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 226 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 227 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 228 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 229 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 230 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 231 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 232 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 233 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 234 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 235 */
- { 0, 0, sys_gettid, "gettid" }, /* 236 */
- { 2, TS, sys_kill, "tkill" }, /* 237 */
- { 6, 0, sys_futex, "futex" }, /* 238 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 239 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 240 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 241 */
- { MA, 0, NULL, NULL }, /* 242 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 243 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 244 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 245 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 246 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 247 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 248 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 249 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 250 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 251 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 252 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 253 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 254 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 255 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 256 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 257 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 258 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 259 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 260 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 261 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 262 */
- { 5, 0, sys_vserver, "vserver" }, /* 263 */
- { 5, TD, printargs, "fadvise64_64" }, /* 264 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 265 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 266 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 267 */
- { 6, TM, sys_mbind, "mbind" }, /* 268 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 269 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 270 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 271 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 272 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 273 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 274 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 275 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 276 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 277 */
- { 5, 0, sys_add_key, "add_key" }, /* 278 */
- { 4, 0, sys_request_key, "request_key" }, /* 279 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 280 */
- { 5, TP, sys_waitid, "waitid" }, /* 281 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 282 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 283 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 284 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 285 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 286 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 287 */
- { 4, TD|TF, sys_openat, "openat" }, /* 288 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 291 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 292 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 293 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 294 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 295 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 296 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 297 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 298 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 299 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 300 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 301 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 302 */
- { 1, TP, sys_unshare, "unshare" }, /* 303 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 304 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 305 */
- { 6, TD, sys_splice, "splice" }, /* 306 */
- { 6, TD, sys_sync_file_range, "sync_file_range" }, /* 307 */
- { 4, TD, sys_tee, "tee" }, /* 308 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 309 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 310 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 311 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 312 */
- { 2, TF, sys_utimes, "utimes" }, /* 313 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 314 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 315 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 316 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 317 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 318 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 319 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 320 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 321 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 322 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 323 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 324 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 325 */
- { 3, TD, sys_dup3, "dup3" }, /* 326 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 327 */
- { 5, TD, sys_preadv, "preadv" }, /* 328 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 329 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 330 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 331 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 332 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 333 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 334 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 335 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 336 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 337 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 338 */
- { 2, TD, sys_setns, "setns" }, /* 339 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 340 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 341 */
- { 2, 0, printargs, "s390_runtime_instr" }, /* 342 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 343 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 344 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 345 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 346 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 347 */
- { 5, 0, NULL, NULL }, /* 348 */
- { 5, 0, NULL, NULL }, /* 349 */
- { 5, 0, NULL, NULL }, /* 350 */
- { 5, 0, NULL, NULL }, /* 351 */
- { 5, 0, NULL, NULL }, /* 352 */
- { 5, 0, NULL, NULL }, /* 353 */
- { 5, 0, NULL, NULL }, /* 354 */
- { 5, 0, NULL, NULL }, /* 355 */
- { 5, 0, NULL, NULL }, /* 356 */
- { 5, 0, NULL, NULL }, /* 357 */
- { 5, 0, NULL, NULL }, /* 358 */
- { 5, 0, NULL, NULL }, /* 359 */
- { 5, 0, NULL, NULL }, /* 360 */
- { 5, 0, NULL, NULL }, /* 361 */
- { 5, 0, NULL, NULL }, /* 362 */
- { 5, 0, NULL, NULL }, /* 363 */
- { 5, 0, NULL, NULL }, /* 364 */
- { 5, 0, NULL, NULL }, /* 365 */
- { 5, 0, NULL, NULL }, /* 366 */
- { 5, 0, NULL, NULL }, /* 367 */
- { 5, 0, NULL, NULL }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_setup, "setup" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { },
+[ 18] = { },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { },
+[ 32] = { },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { },
+[ 59] = { },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { },
+[ 69] = { },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_old_mmap, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { },
+[110] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 5, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 5, TD, sys_pread, "pread64" },
+[181] = { 5, TD, sys_pwrite, "pwrite64" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 1, TD|TM|SI, sys_old_mmap_pgoff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, NF, sys_geteuid, "geteuid32" },
+[202] = { 0, NF, sys_getegid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, TD, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222] = { 4, TD, sys_readahead, "readahead" },
+[223] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[224] = { 5, TF, sys_setxattr, "setxattr" },
+[225] = { 5, TF, sys_setxattr, "lsetxattr" },
+[226] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[227] = { 4, TF, sys_getxattr, "getxattr" },
+[228] = { 4, TF, sys_getxattr, "lgetxattr" },
+[229] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[230] = { 3, TF, sys_listxattr, "listxattr" },
+[231] = { 3, TF, sys_listxattr, "llistxattr" },
+[232] = { 3, TD, sys_flistxattr, "flistxattr" },
+[233] = { 2, TF, sys_removexattr, "removexattr" },
+[234] = { 2, TF, sys_removexattr, "lremovexattr" },
+[235] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[236] = { 0, 0, sys_gettid, "gettid" },
+[237] = { 2, TS, sys_kill, "tkill" },
+[238] = { 6, 0, sys_futex, "futex" },
+[239] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[240] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[241] = { 3, TS, sys_tgkill, "tgkill" },
+[242] = { },
+[243] = { 2, 0, sys_io_setup, "io_setup" },
+[244] = { 1, 0, sys_io_destroy, "io_destroy" },
+[245] = { 5, 0, sys_io_getevents, "io_getevents" },
+[246] = { 3, 0, sys_io_submit, "io_submit" },
+[247] = { 3, 0, sys_io_cancel, "io_cancel" },
+[248] = { 1, TP|SE, sys_exit, "exit_group" },
+[249] = { 1, TD, sys_epoll_create, "epoll_create" },
+[250] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[251] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[252] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[253] = { 5, TD, printargs, "fadvise64" },
+[254] = { 3, 0, sys_timer_create, "timer_create" },
+[255] = { 4, 0, sys_timer_settime, "timer_settime" },
+[256] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[257] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[258] = { 1, 0, sys_timer_delete, "timer_delete" },
+[259] = { 2, 0, sys_clock_settime, "clock_settime" },
+[260] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[261] = { 2, 0, sys_clock_getres, "clock_getres" },
+[262] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[263] = { 5, 0, sys_vserver, "vserver" },
+[264] = { 1, TD, printargs, "fadvise64_64" },
+[265] = { 3, TF, sys_statfs64, "statfs64" },
+[266] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[267] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[268] = { 6, TM, sys_mbind, "mbind" },
+[269] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[270] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[271] = { 4, 0, sys_mq_open, "mq_open" },
+[272] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[273] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[274] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[275] = { 2, 0, sys_mq_notify, "mq_notify" },
+[276] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[277] = { 4, 0, sys_kexec_load, "kexec_load" },
+[278] = { 5, 0, sys_add_key, "add_key" },
+[279] = { 4, 0, sys_request_key, "request_key" },
+[280] = { 5, 0, sys_keyctl, "keyctl" },
+[281] = { 5, TP, sys_waitid, "waitid" },
+[282] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[283] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[284] = { 0, TD, sys_inotify_init, "inotify_init" },
+[285] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[286] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[287] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[288] = { 4, TD|TF, sys_openat, "openat" },
+[289] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[290] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[291] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[292] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[293] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[294] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[295] = { 4, TD|TF, sys_renameat, "renameat" },
+[296] = { 5, TD|TF, sys_linkat, "linkat" },
+[297] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[298] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[299] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[300] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[301] = { 6, TD, sys_pselect6, "pselect6" },
+[302] = { 5, TD, sys_ppoll, "ppoll" },
+[303] = { 1, TP, sys_unshare, "unshare" },
+[304] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[305] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[306] = { 6, TD, sys_splice, "splice" },
+[307] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[308] = { 4, TD, sys_tee, "tee" },
+[309] = { 4, TD, sys_vmsplice, "vmsplice" },
+[310] = { 6, TM, sys_move_pages, "move_pages" },
+[311] = { 3, 0, sys_getcpu, "getcpu" },
+[312] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[313] = { 2, TF, sys_utimes, "utimes" },
+[314] = { 6, TD, sys_fallocate, "fallocate" },
+[315] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[316] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[317] = { 4, TD, sys_timerfd, "timerfd" },
+[318] = { 1, TD, sys_eventfd, "eventfd" },
+[319] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[320] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[321] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[322] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[323] = { 2, TD, sys_eventfd2, "eventfd2" },
+[324] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[325] = { 2, TD, sys_pipe2, "pipe2" },
+[326] = { 3, TD, sys_dup3, "dup3" },
+[327] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[328] = { 5, TD, sys_preadv, "preadv" },
+[329] = { 5, TD, sys_pwritev, "pwritev" },
+[330] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[331] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[332] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[333] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[334] = { 4, 0, sys_prlimit64, "prlimit64" },
+[335] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[336] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[337] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[338] = { 1, TD, sys_syncfs, "syncfs" },
+[339] = { 2, TD, sys_setns, "setns" },
+[340] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[341] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[342] = { 2, 0, printargs, "s390_runtime_instr" },
+[343] = { 5, 0, sys_kcmp, "kcmp" },
+[344] = { 3, TD, sys_finit_module, "finit_module" },
+[345] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[346] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[347] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[348] = { 3, 0, sys_seccomp, "seccomp", },
+[349] = { 3, 0, sys_getrandom, "getrandom", },
+[350] = { 2, TD, sys_memfd_create, "memfd_create", },
+[351] = { 3, TD, sys_bpf, "bpf", },
+[352] = { 3, 0, printargs, "s390_pci_mmio_write", },
+[353] = { 3, 0, printargs, "s390_pci_mmio_read", },
+[354] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[355 ... 399] = { },
+
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
diff --git a/linux/s390x/arch_regs.h b/linux/s390x/arch_regs.h
new file mode 100644
index 0000000..14fced4
--- /dev/null
+++ b/linux/s390x/arch_regs.h
@@ -0,0 +1 @@
+#include "s390/arch_regs.h"
diff --git a/linux/s390x/ioctlent.h.in b/linux/s390x/ioctlent.h.in
deleted file mode 100644
index 214b67f..0000000
--- a/linux/s390x/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../s390/ioctlent.h.in"
diff --git a/linux/s390x/ioctls_arch0.h b/linux/s390x/ioctls_arch0.h
new file mode 100644
index 0000000..4a16cb5
--- /dev/null
+++ b/linux/s390x/ioctls_arch0.h
@@ -0,0 +1 @@
+#include "s390/ioctls_arch0.h"
diff --git a/linux/s390x/ioctls_inc0.h b/linux/s390x/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/s390x/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/s390x/syscallent.h b/linux/s390x/syscallent.h
index aae69b5..bb4ab69 100644
--- a/linux/s390x/syscallent.h
+++ b/linux/s390x/syscallent.h
@@ -27,454 +27,347 @@
*
*/
- { 0, 0, sys_setup, "setup" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { MA, 0, NULL, NULL }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { MA, 0, NULL, NULL }, /* 16 */
- { MA, 0, NULL, NULL }, /* 17 */
- { MA, 0, NULL, NULL }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { MA, 0, NULL, NULL }, /* 23 */
- { MA, 0, NULL, NULL }, /* 24 */
- { MA, 0, NULL, NULL }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { MA, 0, NULL, NULL }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { MA, 0, NULL, NULL }, /* 31 */
- { MA, 0, NULL, NULL }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { MA, 0, NULL, NULL }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { MA, 0, NULL, NULL }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { MA, 0, NULL, NULL }, /* 46 */
- { MA, 0, NULL, NULL }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { MA, 0, NULL, NULL }, /* 49 */
- { MA, 0, NULL, NULL }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { MA, 0, NULL, NULL }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { MA, 0, NULL, NULL }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { MA, 0, NULL, NULL }, /* 58 */
- { MA, 0, NULL, NULL }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { MA, 0, NULL, NULL }, /* 68 */
- { MA, 0, NULL, NULL }, /* 69 */
- { MA, 0, NULL, NULL }, /* 70 */
- { MA, 0, NULL, NULL }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { MA, 0, NULL, NULL }, /* 80 */
- { MA, 0, NULL, NULL }, /* 81 */
- { MA, 0, NULL, NULL }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { MA, 0, NULL, NULL }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { MA, 0, NULL, NULL }, /* 89 */
- { 1, TD|TM|SI, sys_old_mmap, "mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { MA, 0, NULL, NULL }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { MA, 0, NULL, NULL }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { MA, 0, NULL, NULL }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { MA, 0, NULL, NULL }, /* 109 */
- { MA, 0, NULL, NULL }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { MA, 0, NULL, NULL }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 5, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { MA, 0, NULL, NULL }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { MA, 0, NULL, NULL }, /* 138 */
- { MA, 0, NULL, NULL }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 2, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { MA, 0, NULL, NULL }, /* 164 */
- { MA, 0, NULL, NULL }, /* 165 */
- { MA, 0, NULL, NULL }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { MA, 0, NULL, NULL }, /* 170 */
- { MA, 0, NULL, NULL }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 4, TD, sys_pread, "pread" }, /* 180 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 181 */
- { MA, 0, NULL, NULL }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 188 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 191 */
- { MA, 0, NULL, NULL }, /* 192 */
- { MA, 0, NULL, NULL }, /* 193 */
- { MA, 0, NULL, NULL }, /* 194 */
- { MA, 0, NULL, NULL }, /* 195 */
- { MA, 0, NULL, NULL }, /* 196 */
- { MA, 0, NULL, NULL }, /* 197 */
- { 3, TF, sys_chown, "lchown" }, /* 198 */
- { 0, NF, sys_getuid, "getuid" }, /* 199 */
- { 0, NF, sys_getgid, "getgid" }, /* 200 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 201 */
- { 0, NF, sys_getegid, "getegid" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 203 */
- { 2, 0, sys_setregid, "setregid" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 206 */
- { 3, TD, sys_fchown, "fchown" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 211 */
- { 3, TF, sys_chown, "chown" }, /* 212 */
- { 1, 0, sys_setuid, "setuid" }, /* 213 */
- { 1, 0, sys_setgid, "setgid" }, /* 214 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 215 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { MA, 0, NULL, NULL }, /* 221 */
- { 3, TD, sys_readahead, "readahead" }, /* 222 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 223 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 224 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 225 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 226 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 227 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 228 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 229 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 230 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 231 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 232 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 233 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 234 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 235 */
- { 0, 0, sys_gettid, "gettid" }, /* 236 */
- { 2, TS, sys_kill, "tkill" }, /* 237 */
- { 6, 0, sys_futex, "futex" }, /* 238 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 239 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 240 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 241 */
- { MA, 0, NULL, NULL }, /* 242 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 243 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 244 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 245 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 246 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 247 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 248 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 249 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 250 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 251 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 252 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 253 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 254 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 255 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 256 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 257 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 258 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 259 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 260 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 261 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 262 */
- { 5, 0, sys_vserver, "vserver" }, /* 263 */
- { 4, TD, sys_fadvise64, "fadvise64_64" }, /* 264 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 265 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 266 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 267 */
- { 6, TM, sys_mbind, "mbind" }, /* 268 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 269 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 270 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 271 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 272 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 273 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 274 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 275 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 276 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 277 */
- { 5, 0, sys_add_key, "add_key" }, /* 278 */
- { 4, 0, sys_request_key, "request_key" }, /* 279 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 280 */
- { 5, TP, sys_waitid, "waitid" }, /* 281 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 282 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 283 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 284 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 285 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 286 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 287 */
- { 4, TD|TF, sys_openat, "openat" }, /* 288 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 291 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 292 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 293 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 294 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 295 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 296 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 297 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 298 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 299 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 300 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 301 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 302 */
- { 1, TP, sys_unshare, "unshare" }, /* 303 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 304 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 305 */
- { 6, TD, sys_splice, "splice" }, /* 306 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 307 */
- { 4, TD, sys_tee, "tee" }, /* 308 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 309 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 310 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 311 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 312 */
- { 2, TF, sys_utimes, "utimes" }, /* 313 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 314 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 315 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 316 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 317 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 318 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 319 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 320 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 321 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 322 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 323 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 324 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 325 */
- { 3, TD, sys_dup3, "dup3" }, /* 326 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 327 */
- { 4, TD, sys_preadv, "preadv" }, /* 328 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 329 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 330 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 331 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 332 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 333 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 334 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 335 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 336 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 337 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 338 */
- { 2, TD, sys_setns, "setns" }, /* 339 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 340 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 341 */
- { 2, 0, printargs, "s390_runtime_instr" }, /* 342 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 343 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 344 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 345 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 346 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 347 */
- { 5, 0, NULL, NULL }, /* 348 */
- { 5, 0, NULL, NULL }, /* 349 */
- { 5, 0, NULL, NULL }, /* 350 */
- { 5, 0, NULL, NULL }, /* 351 */
- { 5, 0, NULL, NULL }, /* 352 */
- { 5, 0, NULL, NULL }, /* 353 */
- { 5, 0, NULL, NULL }, /* 354 */
- { 5, 0, NULL, NULL }, /* 355 */
- { 5, 0, NULL, NULL }, /* 356 */
- { 5, 0, NULL, NULL }, /* 357 */
- { 5, 0, NULL, NULL }, /* 358 */
- { 5, 0, NULL, NULL }, /* 359 */
- { 5, 0, NULL, NULL }, /* 360 */
- { 5, 0, NULL, NULL }, /* 361 */
- { 5, 0, NULL, NULL }, /* 362 */
- { 5, 0, NULL, NULL }, /* 363 */
- { 5, 0, NULL, NULL }, /* 364 */
- { 5, 0, NULL, NULL }, /* 365 */
- { 5, 0, NULL, NULL }, /* 366 */
- { 5, 0, NULL, NULL }, /* 367 */
- { 5, 0, NULL, NULL }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_setup, "setup" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { },
+[ 17] = { },
+[ 18] = { },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { },
+[ 24] = { },
+[ 25] = { },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { },
+[ 32] = { },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { },
+[ 47] = { },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { },
+[ 50] = { },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { },
+[ 59] = { },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68 ... 71] = { },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80 ... 82] = { },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 1, TD|TM|SI, sys_old_mmap, "mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { },
+[110] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 5, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138 ... 140] = { },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164 ... 166] = { },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170 ... 171] = { },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 4, TD, sys_pread, "pread64" },
+[181] = { 4, TD, sys_pwrite, "pwrite64" },
+[182] = { },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188] = { 5, 0, sys_getpmsg, "getpmsg" },
+[189] = { 5, 0, sys_putpmsg, "putpmsg" },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "getrlimit" },
+[196 ... 197] = { },
+[198] = { 3, TF, sys_chown, "lchown" },
+[199] = { 0, NF, sys_getuid, "getuid" },
+[200] = { 0, NF, sys_getgid, "getgid" },
+[201] = { 0, NF, sys_geteuid, "geteuid" },
+[202] = { 0, NF, sys_getegid, "getegid" },
+[203] = { 2, 0, sys_setreuid, "setreuid" },
+[204] = { 2, 0, sys_setregid, "setregid" },
+[205] = { 2, 0, sys_getgroups, "getgroups" },
+[206] = { 2, 0, sys_setgroups, "setgroups" },
+[207] = { 3, TD, sys_fchown, "fchown" },
+[208] = { 3, 0, sys_setresuid, "setresuid" },
+[209] = { 3, 0, sys_getresuid, "getresuid" },
+[210] = { 3, 0, sys_setresgid, "setresgid" },
+[211] = { 3, 0, sys_getresgid, "getresgid" },
+[212] = { 3, TF, sys_chown, "chown" },
+[213] = { 1, 0, sys_setuid, "setuid" },
+[214] = { 1, 0, sys_setgid, "setgid" },
+[215] = { 1, NF, sys_setfsuid, "setfsuid" },
+[216] = { 1, NF, sys_setfsgid, "setfsgid" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { },
+[222] = { 3, TD, sys_readahead, "readahead" },
+[223] = { },
+[224] = { 5, TF, sys_setxattr, "setxattr" },
+[225] = { 5, TF, sys_setxattr, "lsetxattr" },
+[226] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[227] = { 4, TF, sys_getxattr, "getxattr" },
+[228] = { 4, TF, sys_getxattr, "lgetxattr" },
+[229] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[230] = { 3, TF, sys_listxattr, "listxattr" },
+[231] = { 3, TF, sys_listxattr, "llistxattr" },
+[232] = { 3, TD, sys_flistxattr, "flistxattr" },
+[233] = { 2, TF, sys_removexattr, "removexattr" },
+[234] = { 2, TF, sys_removexattr, "lremovexattr" },
+[235] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[236] = { 0, 0, sys_gettid, "gettid" },
+[237] = { 2, TS, sys_kill, "tkill" },
+[238] = { 6, 0, sys_futex, "futex" },
+[239] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[240] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[241] = { 3, TS, sys_tgkill, "tgkill" },
+[242] = { },
+[243] = { 2, 0, sys_io_setup, "io_setup" },
+[244] = { 1, 0, sys_io_destroy, "io_destroy" },
+[245] = { 5, 0, sys_io_getevents, "io_getevents" },
+[246] = { 3, 0, sys_io_submit, "io_submit" },
+[247] = { 3, 0, sys_io_cancel, "io_cancel" },
+[248] = { 1, TP|SE, sys_exit, "exit_group" },
+[249] = { 1, TD, sys_epoll_create, "epoll_create" },
+[250] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[251] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[252] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[253] = { 4, TD, sys_fadvise64, "fadvise64" },
+[254] = { 3, 0, sys_timer_create, "timer_create" },
+[255] = { 4, 0, sys_timer_settime, "timer_settime" },
+[256] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[257] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[258] = { 1, 0, sys_timer_delete, "timer_delete" },
+[259] = { 2, 0, sys_clock_settime, "clock_settime" },
+[260] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[261] = { 2, 0, sys_clock_getres, "clock_getres" },
+[262] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[263] = { 5, 0, sys_vserver, "vserver" },
+[264] = { },
+[265] = { 3, TF, sys_statfs64, "statfs64" },
+[266] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[267] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[268] = { 6, TM, sys_mbind, "mbind" },
+[269] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[270] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[271] = { 4, 0, sys_mq_open, "mq_open" },
+[272] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[273] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[274] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[275] = { 2, 0, sys_mq_notify, "mq_notify" },
+[276] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[277] = { 4, 0, sys_kexec_load, "kexec_load" },
+[278] = { 5, 0, sys_add_key, "add_key" },
+[279] = { 4, 0, sys_request_key, "request_key" },
+[280] = { 5, 0, sys_keyctl, "keyctl" },
+[281] = { 5, TP, sys_waitid, "waitid" },
+[282] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[283] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[284] = { 0, TD, sys_inotify_init, "inotify_init" },
+[285] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[286] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[287] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[288] = { 4, TD|TF, sys_openat, "openat" },
+[289] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[290] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[291] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[292] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[293] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[294] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[295] = { 4, TD|TF, sys_renameat, "renameat" },
+[296] = { 5, TD|TF, sys_linkat, "linkat" },
+[297] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[298] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[299] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[300] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[301] = { 6, TD, sys_pselect6, "pselect6" },
+[302] = { 5, TD, sys_ppoll, "ppoll" },
+[303] = { 1, TP, sys_unshare, "unshare" },
+[304] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[305] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[306] = { 6, TD, sys_splice, "splice" },
+[307] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[308] = { 4, TD, sys_tee, "tee" },
+[309] = { 4, TD, sys_vmsplice, "vmsplice" },
+[310] = { 6, TM, sys_move_pages, "move_pages" },
+[311] = { 3, 0, sys_getcpu, "getcpu" },
+[312] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[313] = { 2, TF, sys_utimes, "utimes" },
+[314] = { 4, TD, sys_fallocate, "fallocate" },
+[315] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[316] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[317] = { 4, TD, sys_timerfd, "timerfd" },
+[318] = { 1, TD, sys_eventfd, "eventfd" },
+[319] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[320] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[321] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[322] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[323] = { 2, TD, sys_eventfd2, "eventfd2" },
+[324] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[325] = { 2, TD, sys_pipe2, "pipe2" },
+[326] = { 3, TD, sys_dup3, "dup3" },
+[327] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[328] = { 4, TD, sys_preadv, "preadv" },
+[329] = { 4, TD, sys_pwritev, "pwritev" },
+[330] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[331] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[332] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[333] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[334] = { 4, 0, sys_prlimit64, "prlimit64" },
+[335] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[336] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[337] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[338] = { 1, TD, sys_syncfs, "syncfs" },
+[339] = { 2, TD, sys_setns, "setns" },
+[340] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[341] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[342] = { 2, 0, printargs, "s390_runtime_instr" },
+[343] = { 5, 0, sys_kcmp, "kcmp" },
+[344] = { 3, TD, sys_finit_module, "finit_module" },
+[345] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[346] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[347] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[348] = { 3, 0, sys_seccomp, "seccomp", },
+[349] = { 3, 0, sys_getrandom, "getrandom", },
+[350] = { 2, TD, sys_memfd_create, "memfd_create", },
+[351] = { 3, TD, sys_bpf, "bpf", },
+[352] = { 3, 0, printargs, "s390_pci_mmio_write", },
+[353] = { 3, 0, printargs, "s390_pci_mmio_read", },
+[354] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[355 ... 399] = { },
+
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
diff --git a/linux/sh/ioctlent.h.in b/linux/sh/ioctlent.h.in
deleted file mode 100644
index 0627316..0000000
--- a/linux/sh/ioctlent.h.in
+++ /dev/null
@@ -1,65 +0,0 @@
- {"asm/ioctls.h", "TCGETS", 0x5401},
- {"asm/ioctls.h", "TCSETS", 0x5402},
- {"asm/ioctls.h", "TCSETSW", 0x5403},
- {"asm/ioctls.h", "TCSETSF", 0x5404},
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "FIOCLEX", 0x6601},
- {"asm/ioctls.h", "FIONCLEX", 0x6602},
- {"asm/sockios.h", "FIOGETOWN", 0x667b},
- {"asm/sockios.h", "FIOSETOWN", 0x667c},
- {"asm/ioctls.h", "FIOASYNC", 0x667d},
- {"asm/ioctls.h", "FIONBIO", 0x667e},
- {"asm/ioctls.h", "FIONREAD", 0x667f},
- {"asm/sockios.h", "SIOCATMARK", 0x7307},
- {"asm/sockios.h", "SIOCSPGRP", 0x7308},
- {"asm/sockios.h", "SIOCGPGRP", 0x7309},
- {"asm/sockios.h", "SIOCGSTAMP", 0x7364},
- {"asm/ioctls.h", "TCGETA", 0x7417},
- {"asm/ioctls.h", "TCSETA", 0x7418},
- {"asm/ioctls.h", "TCSETAW", 0x7419},
- {"asm/ioctls.h", "TCSETAF", 0x741c},
- {"asm/ioctls.h", "TCSBRK", 0x741d},
- {"asm/ioctls.h", "TCXONC", 0x741e},
- {"asm/ioctls.h", "TCFLSH", 0x741f},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x7467},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x7468},
- {"asm/ioctls.h", "TIOCSTART", 0x746e},
- {"asm/ioctls.h", "TIOCSTOP", 0x746f},
- {"asm/ioctls.h", "TIOCOUTQ", 0x7473},
- {"asm/ioctls.h", "TIOCSPGRP", 0x7476},
- {"asm/ioctls.h", "TIOCGPGRP", 0x7477},
diff --git a/linux/sh/ioctls_arch0.h b/linux/sh/ioctls_arch0.h
new file mode 100644
index 0000000..4cf49ce
--- /dev/null
+++ b/linux/sh/ioctls_arch0.h
@@ -0,0 +1,77 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/sh/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x741f, 0x00 },
+{ "asm/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x741d, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", _IOC_WRITE, 0x5425, 0x04 },
+{ "asm/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x741e, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", _IOC_NONE, 0x5428, 0x00 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_NONE, 0x541d, 0x00 },
+{ "asm/ioctls.h", "TIOCEXCL", _IOC_NONE, 0x540c, 0x00 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", _IOC_READ, 0x5424, 0x04 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x5429, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", _IOC_READ, 0x5419, 0x04 },
+{ "asm/ioctls.h", "TIOCLINUX", _IOC_WRITE, 0x541c, 0x01 },
+{ "asm/ioctls.h", "TIOCMBIC", _IOC_WRITE, 0x5417, 0x04 },
+{ "asm/ioctls.h", "TIOCMBIS", _IOC_WRITE, 0x5416, 0x04 },
+{ "asm/ioctls.h", "TIOCMGET", _IOC_READ, 0x5415, 0x04 },
+{ "asm/ioctls.h", "TIOCMIWAIT", _IOC_NONE, 0x545c, 0x00 },
+{ "asm/ioctls.h", "TIOCMSET", _IOC_WRITE, 0x5418, 0x04 },
+{ "asm/ioctls.h", "TIOCNOTTY", _IOC_NONE, 0x5422, 0x00 },
+{ "asm/ioctls.h", "TIOCNXCL", _IOC_NONE, 0x540d, 0x00 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", _IOC_WRITE, 0x5420, 0x04 },
+{ "asm/ioctls.h", "TIOCSBRK", _IOC_NONE, 0x5427, 0x00 },
+{ "asm/ioctls.h", "TIOCSCTTY", _IOC_NONE, 0x540e, 0x00 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", _IOC_NONE, 0x5453, 0x00 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", _IOC_READ, 0x5459, 0x04 },
+{ "asm/ioctls.h", "TIOCSERGWILD", _IOC_READ, 0x5454, 0x04 },
+{ "asm/ioctls.h", "TIOCSERSWILD", _IOC_WRITE, 0x5455, 0x04 },
+{ "asm/ioctls.h", "TIOCSETD", _IOC_WRITE, 0x5423, 0x04 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", _IOC_WRITE, 0x541a, 0x04 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", _IOC_WRITE, 0x5412, 0x01 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCVHANGUP", _IOC_NONE, 0x5437, 0x00 },
+{ "asm/sockios.h", "FIOGETOWN", _IOC_READ, 0x667b, 0x04 },
+{ "asm/sockios.h", "FIOSETOWN", _IOC_WRITE, 0x667c, 0x04 },
+{ "asm/sockios.h", "SIOCATMARK", _IOC_READ, 0x7307, 0x04 },
+{ "asm/sockios.h", "SIOCGPGRP", _IOC_READ, 0x7309, 0x04 },
+{ "asm/sockios.h", "SIOCGSTAMP", _IOC_READ, 0x7364, 0x08 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", _IOC_READ, 0x7365, 0x08 },
+{ "asm/sockios.h", "SIOCSPGRP", _IOC_WRITE, 0x7308, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA1", _IOC_READ, 0x6b02, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA2", _IOC_READ, 0x6b04, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA4", _IOC_READ, 0x6b06, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCHARDRESET", _IOC_NONE, 0x6b08, 0x00 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCRESET", _IOC_NONE, 0x6b00, 0x00 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA1", _IOC_WRITE, 0x6b01, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA2", _IOC_WRITE, 0x6b03, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA4", _IOC_WRITE, 0x6b05, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIOSETADDR", _IOC_WRITE, 0x6b07, 0x04 },
diff --git a/linux/sh/ioctls_inc0.h b/linux/sh/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/sh/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/sh/syscallent.h b/linux/sh/syscallent.h
index 8aa386e..f199af2 100644
--- a/linux/sh/syscallent.h
+++ b/linux/sh/syscallent.h
@@ -28,455 +28,372 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, sys_vm86old, "vm86old" }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 5, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, sys_cacheflush, "cacheflush" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 1, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 1, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, sys_vm86, "vm86" }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 6, TD, sys_pread, "pread" }, /* 180 */
- { 6, TD, sys_pwrite, "pwrite" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, NULL, NULL }, /* 188 */
- { 5, 0, NULL, NULL }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 5, 0, printargs, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 192 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 193 */
- { 3, TD, sys_ftruncate64, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, 0, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, 0, sys_getegid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, 0, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getsetgid, "getsetgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, 0, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, 0, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 220 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 221 */
- { 4, 0, NULL, NULL }, /* 222 */
- { 4, 0, NULL, NULL }, /* 223 */
- { 4, 0, sys_gettid, "gettid" }, /* 224 */
- { 4, TD, sys_readahead, "readahead" }, /* 225 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 226 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 227 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 228 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 229 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 230 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 231 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 232 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 233 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 234 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 235 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 236 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 237 */
- { 2, TS, sys_kill, "tkill" }, /* 238 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 239 */
- { 6, 0, sys_futex, "futex" }, /* 240 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 241 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 242 */
- { 0, 0, NULL, NULL }, /* 243 */
- { 0, 0, NULL, NULL }, /* 244 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 245 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 246 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 247 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 248 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 250 */
- { 0, 0, NULL, NULL }, /* 251 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 252 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 253 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 254 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 255 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 256 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 257 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 258 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 259 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 260 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 261 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 262 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 263 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 264 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 265 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 266 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 267 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 268 */
- { 2, TD, sys_fstatfs64, "fstatfs64" }, /* 269 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 270 */
- { 2, TF, sys_utimes, "utimes" }, /* 271 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 272 */
- { 0, 0, NULL, NULL }, /* 273 */
- { 4, TM, sys_mbind, "mbind" }, /* 274 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 275 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 276 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 277 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 278 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 279 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive"}, /* 280 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 281 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 282 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 283 */
- { 5, TP, sys_waitid, "waitid" }, /* 284 */
- { 5, 0, sys_add_key, "add_key" }, /* 285 */
- { 4, 0, sys_request_key, "request_key" }, /* 286 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 287 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 288 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 289 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 290 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch"}, /* 291 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch"}, /* 292 */
- { 5, 0, NULL, NULL }, /* 293 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 294 */
- { 4, TD|TF, sys_openat, "openat" }, /* 295 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 296 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 297 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 298 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 299 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 300 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 301 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 302 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 303 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 304 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 305 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 306 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 307 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 308 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 309 */
- { 1, TP, sys_unshare, "unshare" }, /* 310 */
- { 2, 0, sys_set_robust_list, "set_robust_list"}, /* 311 */
- { 3, 0, sys_get_robust_list, "get_robust_list"}, /* 312 */
- { 6, TD, sys_splice, "splice" }, /* 313 */
- { 6, TD, sys_sync_file_range, "sync_file_range"}, /* 314 */
- { 4, TD, sys_tee, "tee" }, /* 315 */
- { 5, TD, sys_vmsplice, "vmsplice" }, /* 316 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 317 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 318 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 319 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 320 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 321 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 322 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 323 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 324 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 325 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 326 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 327 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 328 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 329 */
- { 3, TD, sys_dup3, "dup3" }, /* 330 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 331 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 332 */
- { 5, TD, sys_preadv, "preadv" }, /* 333 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 334 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 335 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 336 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 337 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 338 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 339 */
- { 3, TN, sys_socket, "socket" }, /* 340 */
- { 3, TN, sys_bind, "bind" }, /* 341 */
- { 3, TN, sys_connect, "connect" }, /* 342 */
- { 2, TN, sys_listen, "listen" }, /* 343 */
- { 3, TN, sys_accept, "accept" }, /* 344 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 345 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 346 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 347 */
- { 4, TN, sys_send, "send" }, /* 348 */
- { 6, TN, sys_sendto, "sendto" }, /* 349 */
- { 4, TN, sys_recv, "recv" }, /* 350 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 351 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 352 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 353 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 354 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 355 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 356 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 357 */
- { 4, TN, sys_accept4, "accept4" }, /* 358 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 359 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 360 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 361 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 362 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 363 */
- { 2, TD, sys_setns, "setns" }, /* 364 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 365 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 366 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 367 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 368 */
- { 5, 0, NULL, NULL }, /* 369 */
- { 5, 0, NULL, NULL }, /* 370 */
- { 5, 0, NULL, NULL }, /* 371 */
- { 5, 0, NULL, NULL }, /* 372 */
- { 5, 0, NULL, NULL }, /* 373 */
- { 5, 0, NULL, NULL }, /* 374 */
- { 5, 0, NULL, NULL }, /* 375 */
- { 5, 0, NULL, NULL }, /* 376 */
- { 5, 0, NULL, NULL }, /* 377 */
- { 5, 0, NULL, NULL }, /* 378 */
- { 5, 0, NULL, NULL }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_mmap, "old_mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { 1, 0, sys_vm86old, "vm86old" },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 5, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, sys_cacheflush, "cacheflush" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 1, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { 5, 0, sys_vm86, "vm86" },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 6, TD, sys_pread, "pread" },
+[181] = { 6, TD, sys_pwrite, "pwrite" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188 ... 189] = { },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[193] = { 3, TF, sys_truncate64, "truncate64" },
+[194] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, 0, sys_geteuid, "geteuid32" },
+[202] = { 0, 0, sys_getegid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, 0, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, 0, sys_setfsuid, "setfsuid32" },
+[216] = { 1, 0, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TD, sys_getdents64, "getdents64" },
+[221] = { 3, TD, sys_fcntl, "fcntl64" },
+[222 ... 223] = { },
+[224] = { 4, 0, sys_gettid, "gettid" },
+[225] = { 4, TD, sys_readahead, "readahead" },
+[226] = { 5, TF, sys_setxattr, "setxattr" },
+[227] = { 5, TF, sys_setxattr, "lsetxattr" },
+[228] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[229] = { 4, TF, sys_getxattr, "getxattr" },
+[230] = { 4, TF, sys_getxattr, "lgetxattr" },
+[231] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[232] = { 3, TF, sys_listxattr, "listxattr" },
+[233] = { 3, TF, sys_listxattr, "llistxattr" },
+[234] = { 3, TD, sys_flistxattr, "flistxattr" },
+[235] = { 2, TF, sys_removexattr, "removexattr" },
+[236] = { 2, TF, sys_removexattr, "lremovexattr" },
+[237] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[238] = { 2, TS, sys_kill, "tkill" },
+[239] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[240] = { 6, 0, sys_futex, "futex" },
+[241] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[242] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[243 ... 244] = { },
+[245] = { 2, 0, sys_io_setup, "io_setup" },
+[246] = { 1, 0, sys_io_destroy, "io_destroy" },
+[247] = { 5, 0, sys_io_getevents, "io_getevents" },
+[248] = { 3, 0, sys_io_submit, "io_submit" },
+[249] = { 3, 0, sys_io_cancel, "io_cancel" },
+[250] = { 5, TD, sys_fadvise64, "fadvise64" },
+[251] = { },
+[252] = { 1, TP|SE, sys_exit, "exit_group" },
+[253] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[254] = { 1, TD, sys_epoll_create, "epoll_create" },
+[255] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[256] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[257] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[258] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[259] = { 3, 0, sys_timer_create, "timer_create" },
+[260] = { 4, 0, sys_timer_settime, "timer_settime" },
+[261] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[262] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[263] = { 1, 0, sys_timer_delete, "timer_delete" },
+[264] = { 2, 0, sys_clock_settime, "clock_settime" },
+[265] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[266] = { 2, 0, sys_clock_getres, "clock_getres" },
+[267] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[268] = { 3, TF, sys_statfs64, "statfs64" },
+[269] = { 2, TD, sys_fstatfs64, "fstatfs64" },
+[270] = { 3, TS, sys_tgkill, "tgkill" },
+[271] = { 2, TF, sys_utimes, "utimes" },
+[272] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[273] = { },
+[274] = { 6, TM, sys_mbind, "mbind" },
+[275] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[276] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[277] = { 4, 0, sys_mq_open, "mq_open" },
+[278] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[279] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[280] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[281] = { 2, 0, sys_mq_notify, "mq_notify" },
+[282] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[283] = { 4, 0, sys_kexec_load, "kexec_load" },
+[284] = { 5, TP, sys_waitid, "waitid" },
+[285] = { 5, 0, sys_add_key, "add_key" },
+[286] = { 4, 0, sys_request_key, "request_key" },
+[287] = { 5, 0, sys_keyctl, "keyctl" },
+[288] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[289] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[290] = { 0, TD, sys_inotify_init, "inotify_init" },
+[291] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[292] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[293] = { },
+[294] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[295] = { 4, TD|TF, sys_openat, "openat" },
+[296] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[297] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[298] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[299] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[300] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[301] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[302] = { 4, TD|TF, sys_renameat, "renameat" },
+[303] = { 5, TD|TF, sys_linkat, "linkat" },
+[304] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[305] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[306] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[307] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[308] = { 6, TD, sys_pselect6, "pselect6" },
+[309] = { 5, TD, sys_ppoll, "ppoll" },
+[310] = { 1, TP, sys_unshare, "unshare" },
+[311] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[312] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[313] = { 6, TD, sys_splice, "splice" },
+[314] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[315] = { 4, TD, sys_tee, "tee" },
+[316] = { 5, TD, sys_vmsplice, "vmsplice" },
+[317] = { 6, TM, sys_move_pages, "move_pages" },
+[318] = { 3, 0, sys_getcpu, "getcpu" },
+[319] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[320] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[321] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[322] = { 4, TD, sys_timerfd, "timerfd" },
+[323] = { 1, TD, sys_eventfd, "eventfd" },
+[324] = { 6, TD, sys_fallocate, "fallocate" },
+[325] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[326] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[327] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[328] = { 2, TD, sys_eventfd2, "eventfd2" },
+[329] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[330] = { 3, TD, sys_dup3, "dup3" },
+[331] = { 2, TD, sys_pipe2, "pipe2" },
+[332] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[333] = { 5, TD, sys_preadv, "preadv" },
+[334] = { 5, TD, sys_pwritev, "pwritev" },
+[335] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[336] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[337] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[338] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[339] = { 4, 0, sys_prlimit64, "prlimit64" },
+[340] = { 3, TN, sys_socket, "socket" },
+[341] = { 3, TN, sys_bind, "bind" },
+[342] = { 3, TN, sys_connect, "connect" },
+[343] = { 2, TN, sys_listen, "listen" },
+[344] = { 3, TN, sys_accept, "accept" },
+[345] = { 3, TN, sys_getsockname, "getsockname" },
+[346] = { 3, TN, sys_getpeername, "getpeername" },
+[347] = { 4, TN, sys_socketpair, "socketpair" },
+[348] = { 4, TN, sys_send, "send" },
+[349] = { 6, TN, sys_sendto, "sendto" },
+[350] = { 4, TN, sys_recv, "recv" },
+[351] = { 6, TN, sys_recvfrom, "recvfrom" },
+[352] = { 2, TN, sys_shutdown, "shutdown" },
+[353] = { 5, TN, sys_setsockopt, "setsockopt" },
+[354] = { 5, TN, sys_getsockopt, "getsockopt" },
+[355] = { 3, TN, sys_sendmsg, "sendmsg" },
+[356] = { 3, TN, sys_recvmsg, "recvmsg" },
+[357] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[358] = { 4, TN, sys_accept4, "accept4" },
+[359] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[360] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[361] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[362] = { 1, TD, sys_syncfs, "syncfs" },
+[363] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[364] = { 2, TD, sys_setns, "setns" },
+[365] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[366] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[367] = { 5, 0, sys_kcmp, "kcmp" },
+[368] = { 3, TD, sys_finit_module, "finit_module" },
+[369 ... 399] = { },
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
-
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
- { 4, TI, sys_semop, "semop" }, /* 421 */
- { 4, TI, sys_semget, "semget" }, /* 422 */
- { 4, TI, sys_semctl, "semctl" }, /* 423 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 424 */
- { 4, 0, printargs, "ipc_subcall" }, /* 425 */
- { 4, 0, printargs, "ipc_subcall" }, /* 426 */
- { 4, 0, printargs, "ipc_subcall" }, /* 427 */
- { 4, 0, printargs, "ipc_subcall" }, /* 428 */
- { 4, 0, printargs, "ipc_subcall" }, /* 429 */
- { 4, 0, printargs, "ipc_subcall" }, /* 430 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 431 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 432 */
- { 4, TI, sys_msgget, "msgget" }, /* 433 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 434 */
- { 4, 0, printargs, "ipc_subcall" }, /* 435 */
- { 4, 0, printargs, "ipc_subcall" }, /* 436 */
- { 4, 0, printargs, "ipc_subcall" }, /* 437 */
- { 4, 0, printargs, "ipc_subcall" }, /* 438 */
- { 4, 0, printargs, "ipc_subcall" }, /* 439 */
- { 4, 0, printargs, "ipc_subcall" }, /* 440 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 441 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 442 */
- { 4, TI, sys_shmget, "shmget" }, /* 443 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 444 */
diff --git a/linux/sh64/arch_regs.h b/linux/sh64/arch_regs.h
new file mode 100644
index 0000000..7f64b49
--- /dev/null
+++ b/linux/sh64/arch_regs.h
@@ -0,0 +1,15 @@
+/* SH64 Linux - this code assumes the following kernel API for system calls:
+ PC Offset 0
+ System Call Offset 16 (actually, (syscall no.) | (0x1n << 16),
+ where n = no. of parameters.
+ Other regs Offset 24+
+
+ On entry: R2-7 = parameters 1-6 (as many as necessary)
+ On return: R9 = result.
+*/
+
+/* Offset for peeks of registers */
+#define REG_OFFSET (24)
+#define REG_GENERAL(x) (8*(x)+REG_OFFSET)
+#define REG_PC (0*8)
+#define REG_SYSCALL (2*8)
diff --git a/linux/sh64/ioctlent.h.in b/linux/sh64/ioctlent.h.in
deleted file mode 100644
index 0d5f9bd..0000000
--- a/linux/sh64/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../sh/ioctlent.h.in"
diff --git a/linux/sh64/ioctls_arch0.h b/linux/sh64/ioctls_arch0.h
new file mode 100644
index 0000000..36e5aa2
--- /dev/null
+++ b/linux/sh64/ioctls_arch0.h
@@ -0,0 +1,77 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/sh/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x741f, 0x00 },
+{ "asm/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x741d, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", _IOC_WRITE, 0x5425, 0x04 },
+{ "asm/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x741e, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", _IOC_NONE, 0x5428, 0x00 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_NONE, 0x541d, 0x00 },
+{ "asm/ioctls.h", "TIOCEXCL", _IOC_NONE, 0x540c, 0x00 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", _IOC_READ, 0x5424, 0x04 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x5429, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", _IOC_READ, 0x5419, 0x04 },
+{ "asm/ioctls.h", "TIOCLINUX", _IOC_WRITE, 0x541c, 0x01 },
+{ "asm/ioctls.h", "TIOCMBIC", _IOC_WRITE, 0x5417, 0x04 },
+{ "asm/ioctls.h", "TIOCMBIS", _IOC_WRITE, 0x5416, 0x04 },
+{ "asm/ioctls.h", "TIOCMGET", _IOC_READ, 0x5415, 0x04 },
+{ "asm/ioctls.h", "TIOCMIWAIT", _IOC_NONE, 0x545c, 0x00 },
+{ "asm/ioctls.h", "TIOCMSET", _IOC_WRITE, 0x5418, 0x04 },
+{ "asm/ioctls.h", "TIOCNOTTY", _IOC_NONE, 0x5422, 0x00 },
+{ "asm/ioctls.h", "TIOCNXCL", _IOC_NONE, 0x540d, 0x00 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", _IOC_WRITE, 0x5420, 0x04 },
+{ "asm/ioctls.h", "TIOCSBRK", _IOC_NONE, 0x5427, 0x00 },
+{ "asm/ioctls.h", "TIOCSCTTY", _IOC_NONE, 0x540e, 0x00 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", _IOC_NONE, 0x5453, 0x00 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", _IOC_READ, 0x5459, 0x04 },
+{ "asm/ioctls.h", "TIOCSERGWILD", _IOC_READ, 0x5454, 0x04 },
+{ "asm/ioctls.h", "TIOCSERSWILD", _IOC_WRITE, 0x5455, 0x04 },
+{ "asm/ioctls.h", "TIOCSETD", _IOC_WRITE, 0x5423, 0x04 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", _IOC_WRITE, 0x541a, 0x04 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", _IOC_WRITE, 0x5412, 0x01 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCVHANGUP", _IOC_NONE, 0x5437, 0x00 },
+{ "asm/sockios.h", "FIOGETOWN", _IOC_READ, 0x667b, 0x04 },
+{ "asm/sockios.h", "FIOSETOWN", _IOC_WRITE, 0x667c, 0x04 },
+{ "asm/sockios.h", "SIOCATMARK", _IOC_READ, 0x7307, 0x04 },
+{ "asm/sockios.h", "SIOCGPGRP", _IOC_READ, 0x7309, 0x04 },
+{ "asm/sockios.h", "SIOCGSTAMP", _IOC_READ, 0x7364, 0x10 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", _IOC_READ, 0x7365, 0x10 },
+{ "asm/sockios.h", "SIOCSPGRP", _IOC_WRITE, 0x7308, 0x04 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA1", _IOC_READ, 0x6b02, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA2", _IOC_READ, 0x6b04, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCGGIODATA4", _IOC_READ, 0x6b06, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCHARDRESET", _IOC_NONE, 0x6b08, 0x00 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCRESET", _IOC_NONE, 0x6b00, 0x00 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA1", _IOC_WRITE, 0x6b01, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA2", _IOC_WRITE, 0x6b03, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIODATA4", _IOC_WRITE, 0x6b05, 0x08 },
+{ "mach-landisk/mach/gio.h", "GIODRV_IOCSGIOSETADDR", _IOC_WRITE, 0x6b07, 0x08 },
diff --git a/linux/sh64/ioctls_inc0.h b/linux/sh64/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/sh64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/sh64/syscallent.h b/linux/sh64/syscallent.h
index bb5bb8e..f6e4185 100644
--- a/linux/sh64/syscallent.h
+++ b/linux/sh64/syscallent.h
@@ -26,430 +26,383 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
- { 0, 0, sys_setup, "setup" }, /* 0 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 1, 0, sys_time, "time" }, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 0, TM, sys_break, "break" }, /* 17 */
- { 2, TF, sys_oldstat, "oldstat" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 5, TF, sys_mount, "mount" }, /* 21 */
- { 1, TF, sys_umount, "oldumount" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_stime, "stime" }, /* 25 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TD, sys_oldfstat, "oldfstat" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 2, 0, sys_stty, "stty" }, /* 31 */
- { 2, 0, sys_gtty, "gtty" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 0, 0, sys_ftime, "ftime" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_rename, "rename" }, /* 38 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 39 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 40 */
- { 1, TD, sys_dup, "dup" }, /* 41 */
- { 1, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, 0, sys_prof, "prof" }, /* 44 */
- { 1, TM|SI, sys_brk, "brk" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, TF, sys_umount2, "umount" }, /* 52 */
- { 0, 0, sys_lock, "lock" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 55 */
- { 0, 0, sys_mpx, "mpx" }, /* 56 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 57 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 58 */
- { 1, 0, sys_oldolduname, "oldolduname" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, 0, sys_ustat, "ustat" }, /* 62 */
- { 2, TD, sys_dup2, "dup2" }, /* 63 */
- { 0, 0, sys_getppid, "getppid" }, /* 64 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 65 */
- { 0, 0, sys_setsid, "setsid" }, /* 66 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 67 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 68 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 69 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 70 */
- { 2, 0, sys_setregid16, "setregid" }, /* 71 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 72 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 73 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 74 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 75 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 76 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 77 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 78 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 79 */
- { 2, 0, sys_getgroups16, "getgroups" }, /* 80 */
- { 2, 0, sys_setgroups16, "setgroups" }, /* 81 */
- { 1, TD, sys_oldselect, "oldselect" }, /* 82 */
- { 2, TF, sys_symlink, "symlink" }, /* 83 */
- { 2, TF, sys_oldlstat, "oldlstat" }, /* 84 */
- { 3, TF, sys_readlink, "readlink" }, /* 85 */
- { 1, TF, sys_uselib, "uselib" }, /* 86 */
- { 2, TF, sys_swapon, "swapon" }, /* 87 */
- { 4, 0, sys_reboot, "reboot" }, /* 88 */
- { 3, TD, sys_readdir, "readdir" }, /* 89 */
- { 6, TD|TM|SI, sys_mmap, "old_mmap" }, /* 90 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 91 */
- { 2, TF, sys_truncate, "truncate" }, /* 92 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 93 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 94 */
- { 3, TD, sys_fchown16, "fchown" }, /* 95 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 96 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 97 */
- { 4, 0, sys_profil, "profil" }, /* 98 */
- { 2, TF, sys_statfs, "statfs" }, /* 99 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 101 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 104 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 105 */
- { 2, TF, sys_stat, "stat" }, /* 106 */
- { 2, TF, sys_lstat, "lstat" }, /* 107 */
- { 2, TD, sys_fstat, "fstat" }, /* 108 */
- { 1, 0, sys_olduname, "olduname" }, /* 109 */
- { 1, 0, sys_iopl, "iopl" }, /* 110 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 111 */
- { 0, 0, sys_idle, "idle" }, /* 112 */
- { 1, 0, NULL, NULL }, /* 113 */
- { 4, TP, sys_wait4, "wait4" }, /* 114 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 115 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */
- { 5, TI, sys_ipc, "ipc" }, /* 117 */
- { 1, TD, sys_fsync, "fsync" }, /* 118 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 119 */
- { 5, TP, sys_clone, "clone" }, /* 120 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 121 */
- { 1, 0, sys_uname, "uname" }, /* 122 */
- { 3, 0, printargs, "cacheflush" }, /* 123 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 124 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 125 */
- { 3, TS, sys_sigprocmask, "sigprocmask" }, /* 126 */
- { 2, 0, sys_create_module, "create_module" }, /* 127 */
- { 3, 0, sys_init_module, "init_module" }, /* 128 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 129 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 130 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 131 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 132 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 133 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 134 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 135 */
- { 1, 0, sys_personality, "personality" }, /* 136 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 137 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 138 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 139 */
- { 5, TD, sys_llseek, "_llseek" }, /* 140 */
- { 3, TD, sys_getdents, "getdents" }, /* 141 */
- { 5, TD, sys_select, "select" }, /* 142 */
- { 2, TD, sys_flock, "flock" }, /* 143 */
- { 3, TM, sys_msync, "msync" }, /* 144 */
- { 3, TD, sys_readv, "readv" }, /* 145 */
- { 3, TD, sys_writev, "writev" }, /* 146 */
- { 1, 0, sys_getsid, "getsid" }, /* 147 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 148 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 149 */
- { 1, TM, sys_mlock, "mlock" }, /* 150 */
- { 2, TM, sys_munlock, "munlock" }, /* 151 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 152 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 153 */
- { 0, 0, sys_sched_setparam, "sched_setparam"}, /* 154 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 155 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 156 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 157 */
- { 0, 0, sys_sched_yield, "sched_yield"}, /* 158 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"}, /* 159 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"}, /* 160 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"}, /* 161 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 162 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 163 */
- { 3, 0, sys_setresuid16, "setresuid" }, /* 164 */
- { 3, 0, sys_getresuid16, "getresuid" }, /* 165 */
- { 5, 0, NULL, NULL }, /* 166 */
- { 5, 0, sys_query_module, "query_module" }, /* 167 */
- { 3, TD, sys_poll, "poll" }, /* 168 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 169 */
- { 3, 0, sys_setresgid16, "setresgid" }, /* 170 */
- { 3, 0, sys_getresgid16, "getresgid" }, /* 171 */
- { 5, 0, sys_prctl, "prctl" }, /* 172 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 173 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 174 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 175 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 176 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 177 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 178 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 179 */
- { 4, TD, sys_pread, "pread" }, /* 180 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 181 */
- { 3, TF, sys_chown16, "chown" }, /* 182 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 183 */
- { 2, 0, sys_capget, "capget" }, /* 184 */
- { 2, 0, sys_capset, "capset" }, /* 185 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 186 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 187 */
- { 5, 0, NULL, NULL }, /* 188 */
- { 5, 0, NULL, NULL }, /* 189 */
- { 0, TP, sys_vfork, "vfork" }, /* 190 */
- { 2, 0, printargs, "getrlimit" }, /* 191 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 192 */
- { 2, TF, sys_truncate, "truncate64" }, /* 193 */
- { 2, TD, sys_ftruncate, "ftruncate64" }, /* 194 */
- { 2, TF, sys_stat64, "stat64" }, /* 195 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 196 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 197 */
- { 3, TF, sys_chown, "lchown32" }, /* 198 */
- { 0, NF, sys_getuid, "getuid32" }, /* 199 */
- { 0, NF, sys_getgid, "getgid32" }, /* 200 */
- { 0, 0, sys_geteuid, "geteuid32" }, /* 201 */
- { 0, 0, sys_getegid, "getegid32" }, /* 202 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 203 */
- { 2, 0, sys_setregid, "setregid32" }, /* 204 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 205 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 206 */
- { 3, 0, sys_fchown, "fchown32" }, /* 207 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 208 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 209 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 210 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 211 */
- { 3, TF, sys_chown, "chown32" }, /* 212 */
- { 1, 0, sys_setuid, "setuid32" }, /* 213 */
- { 1, 0, sys_setgid, "setgid32" }, /* 214 */
- { 1, 0, sys_setfsuid, "setfsuid32" }, /* 215 */
- { 1, 0, sys_setfsgid, "setfsgid32" }, /* 216 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 217 */
- { 3, TM, sys_mincore, "mincore" }, /* 218 */
- { 3, TM, sys_madvise, "madvise" }, /* 219 */
- { 3, TN, sys_socket, "socket" }, /* 220 */
- { 3, TN, sys_bind, "bind" }, /* 221 */
- { 3, TN, sys_connect, "connect" }, /* 222 */
- { 2, TN, sys_listen, "listen" }, /* 223 */
- { 3, TN, sys_accept, "accept" }, /* 224 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 225 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 226 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 227 */
- { 4, TN, sys_send, "send" }, /* 228 */
- { 6, TN, sys_sendto, "sendto" }, /* 229 */
- { 4, TN, sys_recv, "recv" }, /* 230 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 231 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 232 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 233 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 234 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 235 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 236 */
- { 4, TI, sys_semop, "semop" }, /* 237 */
- { 4, TI, sys_semget, "semget" }, /* 238 */
- { 4, TI, sys_semctl, "semctl" }, /* 239 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 240 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 241 */
- { 4, TI, sys_msgget, "msgget" }, /* 242 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 243 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 244 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 245 */
- { 4, TI, sys_shmget, "shmget" }, /* 246 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 247 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 248 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 249 */
- { 4, 0, NULL, NULL }, /* 250 */
- { 4, 0, NULL, NULL }, /* 251 */
- { 4, 0, sys_gettid, "gettid" }, /* 252 */
- { 3, TD, sys_readahead, "readahead" }, /* 253 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 254 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 255 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 256 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 257 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 258 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 259 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 260 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 261 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 262 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 263 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 264 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 265 */
- { 2, TS, sys_kill, "tkill" }, /* 266 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 267 */
- { 6, 0, sys_futex, "futex" }, /* 268 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 269 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 270 */
- { 5, 0, NULL, NULL }, /* 271 */
- { 5, 0, NULL, NULL }, /* 272 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 273 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 274 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 275 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 276 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 277 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 278 */
- { 5, 0, NULL, NULL }, /* 279 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 280 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 281 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 282 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 283 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 284 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 285 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 286 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 287 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 288 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 289 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 290 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 291 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 292 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 293 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 294 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 295 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 296 */
- { 2, TD, sys_fstatfs64, "fstatfs64" }, /* 297 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 298 */
- { 2, TF, sys_utimes, "utimes" }, /* 299 */
- { 4, TD, sys_fadvise64, "fadvise64_64" }, /* 300 */
- { 0, 0, NULL, NULL }, /* 301 */
- { 4, TM, sys_mbind, "mbind" }, /* 302 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 303 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 304 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 305 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 306 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 307 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive"}, /* 308 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 309 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 310 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 311 */
- { 5, TP, sys_waitid, "waitid" }, /* 312 */
- { 5, 0, sys_add_key, "add_key" }, /* 313 */
- { 4, 0, sys_request_key, "request_key" }, /* 314 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 315 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 316 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 317 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 318 */
- { 3, TD, printargs, "inotify_add_watch"}, /* 319 */
- { 2, TD, printargs, "inotify_rm_watch"}, /* 320 */
- { 5, 0, NULL, NULL }, /* 321 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 322 */
- { 4, TD|TF, sys_openat, "openat" }, /* 323 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 324 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 325 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 326 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 327 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 328 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 329 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 330 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 331 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 332 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 333 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 334 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 335 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 336 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 337 */
- { 1, TP, sys_unshare, "unshare" }, /* 338 */
- { 2, 0, sys_set_robust_list, "set_robust_list"}, /* 339 */
- { 3, 0, sys_get_robust_list, "get_robust_list"}, /* 340 */
- { 6, TD, sys_splice, "splice" }, /* 341 */
- { 4, TD, sys_sync_file_range, "sync_file_range"}, /* 342 */
- { 4, TD, sys_tee, "tee" }, /* 343 */
- { 5, TD, sys_vmsplice, "vmsplice" }, /* 344 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 345 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 346 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 347 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 348 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 349 */
- { 4, TD, sys_timerfd, "timerfd" }, /* 350 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 351 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 352 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 353 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 354 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 355 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 356 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 357 */
- { 3, TD, sys_dup3, "dup3" }, /* 358 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 359 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 360 */
- { 4, TD, sys_preadv, "preadv" }, /* 361 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 362 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 363 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 364 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 365 */
- { 4, TN, sys_accept4, "accept4" }, /* 366 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 367 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 368 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 369 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 370 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 371 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 372 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 373 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 374 */
- { 2, TD, sys_setns, "setns" }, /* 375 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 376 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 377 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 378 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 379 */
- { 5, 0, NULL, NULL }, /* 380 */
- { 5, 0, NULL, NULL }, /* 381 */
- { 5, 0, NULL, NULL }, /* 382 */
- { 5, 0, NULL, NULL }, /* 383 */
- { 5, 0, NULL, NULL }, /* 384 */
- { 5, 0, NULL, NULL }, /* 385 */
- { 5, 0, NULL, NULL }, /* 386 */
- { 5, 0, NULL, NULL }, /* 387 */
- { 5, 0, NULL, NULL }, /* 388 */
- { 5, 0, NULL, NULL }, /* 389 */
- { 5, 0, NULL, NULL }, /* 390 */
- { 5, 0, NULL, NULL }, /* 391 */
- { 5, 0, NULL, NULL }, /* 392 */
- { 5, 0, NULL, NULL }, /* 393 */
- { 5, 0, NULL, NULL }, /* 394 */
- { 5, 0, NULL, NULL }, /* 395 */
- { 5, 0, NULL, NULL }, /* 396 */
- { 5, 0, NULL, NULL }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
+[ 0] = { 0, 0, sys_setup, "setup" },
+[ 1] = { 1, TP|SE, sys_exit, "_exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 3, TP, sys_waitpid, "waitpid" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 1, 0, sys_time, "time" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 0, TM, sys_break, "break" },
+[ 18] = { 2, TF, sys_oldstat, "oldstat" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 5, TF, sys_mount, "mount" },
+[ 22] = { 1, TF, sys_umount, "umount" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 1, 0, sys_stime, "stime" },
+[ 26] = { 4, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TD, sys_oldfstat, "oldfstat" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 2, 0, sys_stty, "stty" },
+[ 32] = { 2, 0, sys_gtty, "gtty" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 0, 0, sys_ftime, "ftime" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_rename, "rename" },
+[ 39] = { 2, TF, sys_mkdir, "mkdir" },
+[ 40] = { 1, TF, sys_rmdir, "rmdir" },
+[ 41] = { 1, TD, sys_dup, "dup" },
+[ 42] = { 1, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, 0, sys_prof, "prof" },
+[ 45] = { 1, TM|SI, sys_brk, "brk" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, TF, sys_umount2, "umount2" },
+[ 53] = { 0, 0, sys_lock, "lock" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 3, TD, sys_fcntl, "fcntl" },
+[ 56] = { 0, 0, sys_mpx, "mpx" },
+[ 57] = { 2, 0, sys_setpgid, "setpgid" },
+[ 58] = { 2, 0, sys_ulimit, "ulimit" },
+[ 59] = { 1, 0, sys_oldolduname, "oldolduname" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, 0, sys_ustat, "ustat" },
+[ 63] = { 2, TD, sys_dup2, "dup2" },
+[ 64] = { 0, 0, sys_getppid, "getppid" },
+[ 65] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 66] = { 0, 0, sys_setsid, "setsid" },
+[ 67] = { 3, TS, sys_sigaction, "sigaction" },
+[ 68] = { 0, TS, sys_siggetmask, "sgetmask" },
+[ 69] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[ 70] = { 2, 0, sys_setreuid16, "setreuid" },
+[ 71] = { 2, 0, sys_setregid16, "setregid" },
+[ 72] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[ 73] = { 1, TS, sys_sigpending, "sigpending" },
+[ 74] = { 2, 0, sys_sethostname, "sethostname" },
+[ 75] = { 2, 0, sys_setrlimit, "setrlimit" },
+[ 76] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 77] = { 2, 0, sys_getrusage, "getrusage" },
+[ 78] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 79] = { 2, 0, sys_settimeofday, "settimeofday" },
+[ 80] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 81] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 82] = { 1, TD, sys_oldselect, "oldselect" },
+[ 83] = { 2, TF, sys_symlink, "symlink" },
+[ 84] = { 2, TF, sys_oldlstat, "oldlstat" },
+[ 85] = { 3, TF, sys_readlink, "readlink" },
+[ 86] = { 1, TF, sys_uselib, "uselib" },
+[ 87] = { 2, TF, sys_swapon, "swapon" },
+[ 88] = { 4, 0, sys_reboot, "reboot" },
+[ 89] = { 3, TD, sys_readdir, "readdir" },
+[ 90] = { 6, TD|TM|SI, sys_mmap, "old_mmap" },
+[ 91] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 92] = { 2, TF, sys_truncate, "truncate" },
+[ 93] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 94] = { 2, TD, sys_fchmod, "fchmod" },
+[ 95] = { 3, TD, sys_fchown16, "fchown" },
+[ 96] = { 2, 0, sys_getpriority, "getpriority" },
+[ 97] = { 3, 0, sys_setpriority, "setpriority" },
+[ 98] = { 4, 0, sys_profil, "profil" },
+[ 99] = { 2, TF, sys_statfs, "statfs" },
+[100] = { 2, TD, sys_fstatfs, "fstatfs" },
+[101] = { 3, 0, sys_ioperm, "ioperm" },
+[102] = { 2, TD, sys_socketcall, "socketcall" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 3, 0, sys_setitimer, "setitimer" },
+[105] = { 2, 0, sys_getitimer, "getitimer" },
+[106] = { 2, TF, sys_stat, "stat" },
+[107] = { 2, TF, sys_lstat, "lstat" },
+[108] = { 2, TD, sys_fstat, "fstat" },
+[109] = { 1, 0, sys_olduname, "olduname" },
+[110] = { 1, 0, sys_iopl, "iopl" },
+[111] = { 0, 0, sys_vhangup, "vhangup" },
+[112] = { 0, 0, sys_idle, "idle" },
+[113] = { },
+[114] = { 4, TP, sys_wait4, "wait4" },
+[115] = { 1, TF, sys_swapoff, "swapoff" },
+[116] = { 1, 0, sys_sysinfo, "sysinfo" },
+[117] = { 5, TI, sys_ipc, "ipc" },
+[118] = { 1, TD, sys_fsync, "fsync" },
+[119] = { 0, TS, sys_sigreturn, "sigreturn" },
+[120] = { 5, TP, sys_clone, "clone" },
+[121] = { 2, 0, sys_setdomainname, "setdomainname" },
+[122] = { 1, 0, sys_uname, "uname" },
+[123] = { 3, 0, printargs, "cacheflush" },
+[124] = { 1, 0, sys_adjtimex, "adjtimex" },
+[125] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[126] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[127] = { 2, 0, sys_create_module, "create_module" },
+[128] = { 3, 0, sys_init_module, "init_module" },
+[129] = { 2, 0, sys_delete_module, "delete_module" },
+[130] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[131] = { 4, TF, sys_quotactl, "quotactl" },
+[132] = { 1, 0, sys_getpgid, "getpgid" },
+[133] = { 1, TD, sys_fchdir, "fchdir" },
+[134] = { 0, 0, sys_bdflush, "bdflush" },
+[135] = { 3, 0, sys_sysfs, "sysfs" },
+[136] = { 1, 0, sys_personality, "personality" },
+[137] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[138] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[139] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[140] = { 5, TD, sys_llseek, "_llseek" },
+[141] = { 3, TD, sys_getdents, "getdents" },
+[142] = { 5, TD, sys_select, "select" },
+[143] = { 2, TD, sys_flock, "flock" },
+[144] = { 3, TM, sys_msync, "msync" },
+[145] = { 3, TD, sys_readv, "readv" },
+[146] = { 3, TD, sys_writev, "writev" },
+[147] = { 1, 0, sys_getsid, "getsid" },
+[148] = { 1, TD, sys_fdatasync, "fdatasync" },
+[149] = { 1, 0, sys_sysctl, "_sysctl" },
+[150] = { 2, TM, sys_mlock, "mlock" },
+[151] = { 2, TM, sys_munlock, "munlock" },
+[152] = { 1, TM, sys_mlockall, "mlockall" },
+[153] = { 0, TM, sys_munlockall, "munlockall" },
+[154] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[155] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[156] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[157] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[158] = { 0, 0, sys_sched_yield, "sched_yield" },
+[159] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[160] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[161] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[162] = { 2, 0, sys_nanosleep, "nanosleep" },
+[163] = { 5, TM|SI, sys_mremap, "mremap" },
+[164] = { 3, 0, sys_setresuid16, "setresuid" },
+[165] = { 3, 0, sys_getresuid16, "getresuid" },
+[166] = { },
+[167] = { 5, 0, sys_query_module, "query_module" },
+[168] = { 3, TD, sys_poll, "poll" },
+[169] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[170] = { 3, 0, sys_setresgid16, "setresgid" },
+[171] = { 3, 0, sys_getresgid16, "getresgid" },
+[172] = { 5, 0, sys_prctl, "prctl" },
+[173] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[174] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[175] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[176] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[177] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[178] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[179] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[180] = { 4, TD, sys_pread, "pread" },
+[181] = { 4, TD, sys_pwrite, "pwrite" },
+[182] = { 3, TF, sys_chown16, "chown" },
+[183] = { 2, TF, sys_getcwd, "getcwd" },
+[184] = { 2, 0, sys_capget, "capget" },
+[185] = { 2, 0, sys_capset, "capset" },
+[186] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[187] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[188 ... 189] = { },
+[190] = { 0, TP, sys_vfork, "vfork" },
+[191] = { 2, 0, sys_getrlimit, "ugetrlimit" },
+[192] = { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" },
+[193] = { 2, TF, sys_truncate, "truncate64" },
+[194] = { 2, TD, sys_ftruncate, "ftruncate64" },
+[195] = { 2, TF, sys_stat64, "stat64" },
+[196] = { 2, TF, sys_lstat64, "lstat64" },
+[197] = { 2, TD, sys_fstat64, "fstat64" },
+[198] = { 3, TF, sys_chown, "lchown32" },
+[199] = { 0, NF, sys_getuid, "getuid32" },
+[200] = { 0, NF, sys_getgid, "getgid32" },
+[201] = { 0, 0, sys_geteuid, "geteuid32" },
+[202] = { 0, 0, sys_getegid, "getegid32" },
+[203] = { 2, 0, sys_setreuid, "setreuid32" },
+[204] = { 2, 0, sys_setregid, "setregid32" },
+[205] = { 2, 0, sys_getgroups, "getgroups32" },
+[206] = { 2, 0, sys_setgroups, "setgroups32" },
+[207] = { 3, 0, sys_fchown, "fchown32" },
+[208] = { 3, 0, sys_setresuid, "setresuid32" },
+[209] = { 3, 0, sys_getresuid, "getresuid32" },
+[210] = { 3, 0, sys_setresgid, "setresgid32" },
+[211] = { 3, 0, sys_getresgid, "getresgid32" },
+[212] = { 3, TF, sys_chown, "chown32" },
+[213] = { 1, 0, sys_setuid, "setuid32" },
+[214] = { 1, 0, sys_setgid, "setgid32" },
+[215] = { 1, 0, sys_setfsuid, "setfsuid32" },
+[216] = { 1, 0, sys_setfsgid, "setfsgid32" },
+[217] = { 2, TF, sys_pivotroot, "pivot_root" },
+[218] = { 3, TM, sys_mincore, "mincore" },
+[219] = { 3, TM, sys_madvise, "madvise" },
+[220] = { 3, TN, sys_socket, "socket" },
+[221] = { 3, TN, sys_bind, "bind" },
+[222] = { 3, TN, sys_connect, "connect" },
+[223] = { 2, TN, sys_listen, "listen" },
+[224] = { 3, TN, sys_accept, "accept" },
+[225] = { 3, TN, sys_getsockname, "getsockname" },
+[226] = { 3, TN, sys_getpeername, "getpeername" },
+[227] = { 4, TN, sys_socketpair, "socketpair" },
+[228] = { 4, TN, sys_send, "send" },
+[229] = { 6, TN, sys_sendto, "sendto" },
+[230] = { 4, TN, sys_recv, "recv" },
+[231] = { 6, TN, sys_recvfrom, "recvfrom" },
+[232] = { 2, TN, sys_shutdown, "shutdown" },
+[233] = { 5, TN, sys_setsockopt, "setsockopt" },
+[234] = { 5, TN, sys_getsockopt, "getsockopt" },
+[235] = { 3, TN, sys_sendmsg, "sendmsg" },
+[236] = { 3, TN, sys_recvmsg, "recvmsg" },
+[237] = { 4, TI, sys_semop, "semop" },
+[238] = { 3, TI, sys_semget, "semget" },
+[239] = { 4, TI, sys_semctl, "semctl" },
+[240] = { 4, TI, sys_msgsnd, "msgsnd" },
+[241] = { 4, TI, sys_msgrcv, "msgrcv" },
+[242] = { 2, TI, sys_msgget, "msgget" },
+[243] = { 4, TI, sys_msgctl, "msgctl" },
+[244] = { 4, TI|TM|SI, sys_shmat, "shmat" },
+[245] = { 4, TI|TM|SI, sys_shmdt, "shmdt" },
+[246] = { 3, TI, sys_shmget, "shmget" },
+[247] = { 4, TI, sys_shmctl, "shmctl" },
+[248] = { 3, TD, sys_getdents64, "getdents64" },
+[249] = { 3, TD, sys_fcntl, "fcntl64" },
+[250 ... 251] = { },
+[252] = { 4, 0, sys_gettid, "gettid" },
+[253] = { 3, TD, sys_readahead, "readahead" },
+[254] = { 5, TF, sys_setxattr, "setxattr" },
+[255] = { 5, TF, sys_setxattr, "lsetxattr" },
+[256] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[257] = { 4, TF, sys_getxattr, "getxattr" },
+[258] = { 4, TF, sys_getxattr, "lgetxattr" },
+[259] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[260] = { 3, TF, sys_listxattr, "listxattr" },
+[261] = { 3, TF, sys_listxattr, "llistxattr" },
+[262] = { 3, TD, sys_flistxattr, "flistxattr" },
+[263] = { 2, TF, sys_removexattr, "removexattr" },
+[264] = { 2, TF, sys_removexattr, "lremovexattr" },
+[265] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[266] = { 2, TS, sys_kill, "tkill" },
+[267] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[268] = { 6, 0, sys_futex, "futex" },
+[269] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[270] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[271 ... 272] = { },
+[273] = { 2, 0, sys_io_setup, "io_setup" },
+[274] = { 1, 0, sys_io_destroy, "io_destroy" },
+[275] = { 5, 0, sys_io_getevents, "io_getevents" },
+[276] = { 3, 0, sys_io_submit, "io_submit" },
+[277] = { 3, 0, sys_io_cancel, "io_cancel" },
+[278] = { 4, TD, sys_fadvise64, "fadvise64" },
+[279] = { },
+[280] = { 1, TP|SE, sys_exit, "exit_group" },
+[281] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[282] = { 1, TD, sys_epoll_create, "epoll_create" },
+[283] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[284] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[285] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[286] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[287] = { 3, 0, sys_timer_create, "timer_create" },
+[288] = { 4, 0, sys_timer_settime, "timer_settime" },
+[289] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[290] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[291] = { 1, 0, sys_timer_delete, "timer_delete" },
+[292] = { 2, 0, sys_clock_settime, "clock_settime" },
+[293] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[294] = { 2, 0, sys_clock_getres, "clock_getres" },
+[295] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[296] = { 3, TF, sys_statfs64, "statfs64" },
+[297] = { 2, TD, sys_fstatfs64, "fstatfs64" },
+[298] = { 3, TS, sys_tgkill, "tgkill" },
+[299] = { 2, TF, sys_utimes, "utimes" },
+[300] = { 4, TD, sys_fadvise64, "fadvise64_64" },
+[301] = { },
+[302] = { 6, TM, sys_mbind, "mbind" },
+[303] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[304] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[305] = { 4, 0, sys_mq_open, "mq_open" },
+[306] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[307] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[308] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[309] = { 2, 0, sys_mq_notify, "mq_notify" },
+[310] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[311] = { 4, 0, sys_kexec_load, "kexec_load" },
+[312] = { 5, TP, sys_waitid, "waitid" },
+[313] = { 5, 0, sys_add_key, "add_key" },
+[314] = { 4, 0, sys_request_key, "request_key" },
+[315] = { 5, 0, sys_keyctl, "keyctl" },
+[316] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[317] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[318] = { 0, TD, sys_inotify_init, "inotify_init" },
+[319] = { 3, TD, printargs, "inotify_add_watch" },
+[320] = { 2, TD, printargs, "inotify_rm_watch" },
+[321] = { },
+[322] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[323] = { 4, TD|TF, sys_openat, "openat" },
+[324] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[325] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[326] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[327] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[328] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[329] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[330] = { 4, TD|TF, sys_renameat, "renameat" },
+[331] = { 5, TD|TF, sys_linkat, "linkat" },
+[332] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[333] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[334] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[335] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[336] = { 6, TD, sys_pselect6, "pselect6" },
+[337] = { 5, TD, sys_ppoll, "ppoll" },
+[338] = { 1, TP, sys_unshare, "unshare" },
+[339] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[340] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[341] = { 6, TD, sys_splice, "splice" },
+[342] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[343] = { 4, TD, sys_tee, "tee" },
+[344] = { 5, TD, sys_vmsplice, "vmsplice" },
+[345] = { 6, TM, sys_move_pages, "move_pages" },
+[346] = { 3, 0, sys_getcpu, "getcpu" },
+[347] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[348] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[349] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[350] = { 4, TD, sys_timerfd, "timerfd" },
+[351] = { 1, TD, sys_eventfd, "eventfd" },
+[352] = { 4, TD, sys_fallocate, "fallocate" },
+[353] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[354] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[355] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[356] = { 2, TD, sys_eventfd2, "eventfd2" },
+[357] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[358] = { 3, TD, sys_dup3, "dup3" },
+[359] = { 2, TD, sys_pipe2, "pipe2" },
+[360] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[361] = { 4, TD, sys_preadv, "preadv" },
+[362] = { 4, TD, sys_pwritev, "pwritev" },
+[363] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[364] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[365] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[366] = { 4, TN, sys_accept4, "accept4" },
+[367] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[368] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[369] = { 4, 0, sys_prlimit64, "prlimit64" },
+[370] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[371] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[372] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[373] = { 1, TD, sys_syncfs, "syncfs" },
+[374] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[375] = { 2, TD, sys_setns, "setns" },
+[376] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[377] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[378] = { 5, 0, sys_kcmp, "kcmp" },
+[379] = { 3, TD, sys_finit_module, "finit_module" },
+[380 ... 399] = { },
#define SYS_socket_subcall 400
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 400 */
- { 3, TN, sys_socket, "socket" }, /* 401 */
- { 3, TN, sys_bind, "bind" }, /* 402 */
- { 3, TN, sys_connect, "connect" }, /* 403 */
- { 2, TN, sys_listen, "listen" }, /* 404 */
- { 3, TN, sys_accept, "accept" }, /* 405 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 406 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 407 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 408 */
- { 4, TN, sys_send, "send" }, /* 409 */
- { 4, TN, sys_recv, "recv" }, /* 410 */
- { 6, TN, sys_sendto, "sendto" }, /* 411 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 412 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 413 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 414 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 415 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 416 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 417 */
- { 4, TN, sys_accept4, "accept4" }, /* 418 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 419 */
-
-#if SYS_ipc_subcall != 420
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 420 */
diff --git a/linux/sparc/arch_regs.h b/linux/sparc/arch_regs.h
new file mode 100644
index 0000000..ac11a1d
--- /dev/null
+++ b/linux/sparc/arch_regs.h
@@ -0,0 +1,7 @@
+extern struct pt_regs sparc_regs;
+/* Indexes into the pt_regs.u_reg[] array -- UREG_XX from kernel are all off
+ * by 1 and use Ix instead of Ox. These work for both 32 and 64 bit Linux. */
+#define U_REG_G1 0
+#define U_REG_O0 7
+#define U_REG_O1 8
+#define U_REG_FP 13
diff --git a/linux/sparc/errnoent.h b/linux/sparc/errnoent.h
index d243699..fe5ff07 100644
--- a/linux/sparc/errnoent.h
+++ b/linux/sparc/errnoent.h
@@ -1,127 +1,151 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "EWOULDBLOCK", /* 35 */
- "EINPROGRESS", /* 36 */
- "EALREADY", /* 37 */
- "ENOTSOCK", /* 38 */
- "EDESTADDRREQ", /* 39 */
- "EMSGSIZE", /* 40 */
- "EPROTOTYPE", /* 41 */
- "ENOPROTOOPT", /* 42 */
- "EPROTONOSUPPORT", /* 43 */
- "ESOCKTNOSUPPORT", /* 44 */
- "EOPNOTSUPP", /* 45 */
- "EPFNOSUPPORT", /* 46 */
- "EAFNOSUPPORT", /* 47 */
- "EADDRINUSE", /* 48 */
- "EADDRNOTAVAIL", /* 49 */
- "ENETDOWN", /* 50 */
- "ENETUNREACH", /* 51 */
- "ENETRESET", /* 52 */
- "ECONNABORTED", /* 53 */
- "ECONNRESET", /* 54 */
- "ENOBUFS", /* 55 */
- "EISCONN", /* 56 */
- "ENOTCONN", /* 57 */
- "ESHUTDOWN", /* 58 */
- "ETOOMANYREFS", /* 59 */
- "ETIMEDOUT", /* 60 */
- "ECONNREFUSED", /* 61 */
- "ELOOP", /* 62 */
- "ENAMETOOLONG", /* 63 */
- "EHOSTDOWN", /* 64 */
- "EHOSTUNREACH", /* 65 */
- "ENOTEMPTY", /* 66 */
- "EPROCLIM", /* 67 */
- "EUSERS", /* 68 */
- "EDQUOT", /* 69 */
- "ESTALE", /* 70 */
- "EREMOTE", /* 71 */
- "ENOSTR", /* 72 */
- "ETIME", /* 73 */
- "ENOSR", /* 74 */
- "ENOMSG", /* 75 */
- "EBADMSG", /* 76 */
- "EIDRM", /* 77 */
- "EDEADLK", /* 78 */
- "ENOLCK", /* 79 */
- "ENONET", /* 80 */
- "ERREMOTE", /* 81 */
- "ENOLINK", /* 82 */
- "EADV", /* 83 */
- "ESRMNT", /* 84 */
- "ECOMM", /* 85 */
- "EPROTO", /* 86 */
- "EMULTIHOP", /* 87 */
- "EDOTDOT", /* 88 */
- "EREMCHG", /* 89 */
- "ENOSYS", /* 90 */
- "ESTRPIPE", /* 91 */
- "EOVERFLOW", /* 92 */
- "EBADFD", /* 93 */
- "ECHRNG", /* 94 */
- "EL2NSYNC", /* 95 */
- "EL3HLT", /* 96 */
- "EL3RST", /* 97 */
- "ELNRNG", /* 98 */
- "EUNATCH", /* 99 */
- "ENOCSI", /* 100 */
- "EL2HLT", /* 101 */
- "EBADE", /* 102 */
- "EBADR", /* 103 */
- "EXFULL", /* 104 */
- "ENOANO", /* 105 */
- "EBADRQC", /* 106 */
- "EBADSLT", /* 107 */
- "EDEADLOCK", /* 108 */
- "EBFONT", /* 109 */
- "ELIBEXEC", /* 110 */
- "ENODATA", /* 111 */
- "ELIBBAD", /* 112 */
- "ENOPKG", /* 113 */
- "ELIBACC", /* 114 */
- "ENOTUNIQ", /* 115 */
- "ERESTART", /* 116 */
- "EUCLEAN", /* 117 */
- "ENOTNAM", /* 118 */
- "ENAVAIL", /* 119 */
- "EISNAM", /* 120 */
- "EREMOTEIO", /* 121 */
- "EILSEQ", /* 122 */
- "ELIBMAX", /* 123 */
- "ELIBSCN", /* 124 */
- "ENOMEDIUM", /* 125 */
- "EMEDIUMTYPE", /* 126 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EAGAIN",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "EWOULDBLOCK",
+[ 36] = "EINPROGRESS",
+[ 37] = "EALREADY",
+[ 38] = "ENOTSOCK",
+[ 39] = "EDESTADDRREQ",
+[ 40] = "EMSGSIZE",
+[ 41] = "EPROTOTYPE",
+[ 42] = "ENOPROTOOPT",
+[ 43] = "EPROTONOSUPPORT",
+[ 44] = "ESOCKTNOSUPPORT",
+[ 45] = "EOPNOTSUPP",
+[ 46] = "EPFNOSUPPORT",
+[ 47] = "EAFNOSUPPORT",
+[ 48] = "EADDRINUSE",
+[ 49] = "EADDRNOTAVAIL",
+[ 50] = "ENETDOWN",
+[ 51] = "ENETUNREACH",
+[ 52] = "ENETRESET",
+[ 53] = "ECONNABORTED",
+[ 54] = "ECONNRESET",
+[ 55] = "ENOBUFS",
+[ 56] = "EISCONN",
+[ 57] = "ENOTCONN",
+[ 58] = "ESHUTDOWN",
+[ 59] = "ETOOMANYREFS",
+[ 60] = "ETIMEDOUT",
+[ 61] = "ECONNREFUSED",
+[ 62] = "ELOOP",
+[ 63] = "ENAMETOOLONG",
+[ 64] = "EHOSTDOWN",
+[ 65] = "EHOSTUNREACH",
+[ 66] = "ENOTEMPTY",
+[ 67] = "EPROCLIM",
+[ 68] = "EUSERS",
+[ 69] = "EDQUOT",
+[ 70] = "ESTALE",
+[ 71] = "EREMOTE",
+[ 72] = "ENOSTR",
+[ 73] = "ETIME",
+[ 74] = "ENOSR",
+[ 75] = "ENOMSG",
+[ 76] = "EBADMSG",
+[ 77] = "EIDRM",
+[ 78] = "EDEADLK",
+[ 79] = "ENOLCK",
+[ 80] = "ENONET",
+[ 81] = "ERREMOTE",
+[ 82] = "ENOLINK",
+[ 83] = "EADV",
+[ 84] = "ESRMNT",
+[ 85] = "ECOMM",
+[ 86] = "EPROTO",
+[ 87] = "EMULTIHOP",
+[ 88] = "EDOTDOT",
+[ 89] = "EREMCHG",
+[ 90] = "ENOSYS",
+[ 91] = "ESTRPIPE",
+[ 92] = "EOVERFLOW",
+[ 93] = "EBADFD",
+[ 94] = "ECHRNG",
+[ 95] = "EL2NSYNC",
+[ 96] = "EL3HLT",
+[ 97] = "EL3RST",
+[ 98] = "ELNRNG",
+[ 99] = "EUNATCH",
+[100] = "ENOCSI",
+[101] = "EL2HLT",
+[102] = "EBADE",
+[103] = "EBADR",
+[104] = "EXFULL",
+[105] = "ENOANO",
+[106] = "EBADRQC",
+[107] = "EBADSLT",
+[108] = "EDEADLOCK",
+[109] = "EBFONT",
+[110] = "ELIBEXEC",
+[111] = "ENODATA",
+[112] = "ELIBBAD",
+[113] = "ENOPKG",
+[114] = "ELIBACC",
+[115] = "ENOTUNIQ",
+[116] = "ERESTART",
+[117] = "EUCLEAN",
+[118] = "ENOTNAM",
+[119] = "ENAVAIL",
+[120] = "EISNAM",
+[121] = "EREMOTEIO",
+[122] = "EILSEQ",
+[123] = "ELIBMAX",
+[124] = "ELIBSCN",
+[125] = "ENOMEDIUM",
+[126] = "EMEDIUMTYPE",
+[127] = "ECANCELED",
+[128] = "ENOKEY",
+[129] = "EKEYEXPIRED",
+[130] = "EKEYREVOKED",
+[131] = "EKEYREJECTED",
+[132] = "EOWNERDEAD",
+[133] = "ENOTRECOVERABLE",
+[134] = "ERFKILL",
+[135] = "EHWPOISON",
+[512] = "ERESTARTSYS",
+[513] = "ERESTARTNOINTR",
+[514] = "ERESTARTNOHAND",
+[515] = "ENOIOCTLCMD",
+[516] = "ERESTART_RESTARTBLOCK",
+[517] = "EPROBE_DEFER",
+[518] = "EOPENSTALE",
+[521] = "EBADHANDLE",
+[522] = "ENOTSYNC",
+[523] = "EBADCOOKIE",
+[524] = "ENOTSUPP",
+[525] = "ETOOSMALL",
+[526] = "ESERVERFAULT",
+[527] = "EBADTYPE",
+[528] = "EJUKEBOX",
+[529] = "EIOCBQUEUED",
diff --git a/linux/sparc/errnoent1.h b/linux/sparc/errnoent1.h
index 418e2db..e4311a4 100644
--- a/linux/sparc/errnoent1.h
+++ b/linux/sparc/errnoent1.h
@@ -1,152 +1,116 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "ENOMSG", /* 35 */
- "EIDRM", /* 36 */
- "ECHRNG", /* 37 */
- "EL2NSYNC", /* 38 */
- "EL3HLT", /* 39 */
- "EL3RST", /* 40 */
- "ELNRNG", /* 41 */
- "EUNATCH", /* 42 */
- "ENOCSI", /* 43 */
- "EL2HLT", /* 44 */
- "EDEADLK", /* 45 */
- "ENOLCK", /* 46 */
- "ECANCELED", /* 47 */
- "ENOTSUP", /* 48 */
- "ERRNO_49", /* 49 */
- "EBADE", /* 50 */
- "EBADR", /* 51 */
- "EXFULL", /* 52 */
- "ENOANO", /* 53 */
- "EBADRQC", /* 54 */
- "EBADSLT", /* 55 */
- "EDEADLOCK", /* 56 */
- "EBFONT", /* 57 */
- "ERRNO_58", /* 58 */
- "ERRNO_59", /* 59 */
- "ENOSTR", /* 60 */
- "ENODATA", /* 61 */
- "ETIME", /* 62 */
- "ENOSR", /* 63 */
- "ENONET", /* 64 */
- "ENOPKG", /* 65 */
- "EREMOTE", /* 66 */
- "ENOLINK", /* 67 */
- "EADV", /* 68 */
- "ESRMNT", /* 69 */
- "ECOMM", /* 70 */
- "EPROTO", /* 71 */
- "ERRNO_72", /* 72 */
- "ERRNO_73", /* 73 */
- "EMULTIHOP", /* 74 */
- "ERRNO_75", /* 75 */
- "ERRNO_76", /* 76 */
- "EBADMSG", /* 77 */
- "ENAMETOOLONG", /* 78 */
- "EOVERFLOW", /* 79 */
- "ENOTUNIQ", /* 80 */
- "EBADFD", /* 81 */
- "EREMCHG", /* 82 */
- "ELIBACC", /* 83 */
- "ELIBBAD", /* 84 */
- "ELIBSCN", /* 85 */
- "ELIBMAX", /* 86 */
- "ELIBEXEC", /* 87 */
- "EILSEQ", /* 88 */
- "ENOSYS", /* 89 */
- "ELOOP", /* 90 */
- "ERESTART", /* 91 */
- "ESTRPIPE", /* 92 */
- "ENOTEMPTY", /* 93 */
- "EUSERS", /* 94 */
- "ENOTSOCK", /* 95 */
- "EDESTADDRREQ", /* 96 */
- "EMSGSIZE", /* 97 */
- "EPROTOTYPE", /* 98 */
- "ENOPROTOOPT", /* 99 */
- "ERRNO_100", /* 100 */
- "ERRNO_101", /* 101 */
- "ERRNO_102", /* 102 */
- "ERRNO_103", /* 103 */
- "ERRNO_104", /* 104 */
- "ERRNO_105", /* 105 */
- "ERRNO_106", /* 106 */
- "ERRNO_107", /* 107 */
- "ERRNO_108", /* 108 */
- "ERRNO_109", /* 109 */
- "ERRNO_110", /* 110 */
- "ERRNO_111", /* 111 */
- "ERRNO_112", /* 112 */
- "ERRNO_113", /* 113 */
- "ERRNO_114", /* 114 */
- "ERRNO_115", /* 115 */
- "ERRNO_116", /* 116 */
- "ERRNO_117", /* 117 */
- "ERRNO_118", /* 118 */
- "ERRNO_119", /* 119 */
- "EPROTONOSUPPORT", /* 120 */
- "ESOCKTNOSUPPORT", /* 121 */
- "EOPNOTSUPP", /* 122 */
- "EPFNOSUPPORT", /* 123 */
- "EAFNOSUPPORT", /* 124 */
- "EADDRINUSE", /* 125 */
- "EADDRNOTAVAIL", /* 126 */
- "ENETDOWN", /* 127 */
- "ENETUNREACH", /* 128 */
- "ENETRESET", /* 129 */
- "ECONNABORTED", /* 130 */
- "ECONNRESET", /* 131 */
- "ENOBUFS", /* 132 */
- "EISCONN", /* 133 */
- "ENOTCONN", /* 134 */
- "ERRNO_135", /* 135 */
- "ERRNO_136", /* 136 */
- "ERRNO_137", /* 137 */
- "ERRNO_138", /* 138 */
- "ERRNO_139", /* 139 */
- "ERRNO_140", /* 140 */
- "ERRNO_141", /* 141 */
- "ERRNO_142", /* 142 */
- "ESHUTDOWN", /* 143 */
- "ETOOMANYREFS", /* 144 */
- "ETIMEDOUT", /* 145 */
- "ECONNREFUSED", /* 146 */
- "EHOSTDOWN", /* 147 */
- "EHOSTUNREACH", /* 148 */
- "EALREADY", /* 149 */
- "EINPROGRESS", /* 150 */
- "ESTALE", /* 151 */
+[ 1] = "EPERM",
+[ 2] = "ENOENT",
+[ 3] = "ESRCH",
+[ 4] = "EINTR",
+[ 5] = "EIO",
+[ 6] = "ENXIO",
+[ 7] = "E2BIG",
+[ 8] = "ENOEXEC",
+[ 9] = "EBADF",
+[ 10] = "ECHILD",
+[ 11] = "EAGAIN",
+[ 12] = "ENOMEM",
+[ 13] = "EACCES",
+[ 14] = "EFAULT",
+[ 15] = "ENOTBLK",
+[ 16] = "EBUSY",
+[ 17] = "EEXIST",
+[ 18] = "EXDEV",
+[ 19] = "ENODEV",
+[ 20] = "ENOTDIR",
+[ 21] = "EISDIR",
+[ 22] = "EINVAL",
+[ 23] = "ENFILE",
+[ 24] = "EMFILE",
+[ 25] = "ENOTTY",
+[ 26] = "ETXTBSY",
+[ 27] = "EFBIG",
+[ 28] = "ENOSPC",
+[ 29] = "ESPIPE",
+[ 30] = "EROFS",
+[ 31] = "EMLINK",
+[ 32] = "EPIPE",
+[ 33] = "EDOM",
+[ 34] = "ERANGE",
+[ 35] = "ENOMSG",
+[ 36] = "EIDRM",
+[ 37] = "ECHRNG",
+[ 38] = "EL2NSYNC",
+[ 39] = "EL3HLT",
+[ 40] = "EL3RST",
+[ 41] = "ELNRNG",
+[ 42] = "EUNATCH",
+[ 43] = "ENOCSI",
+[ 44] = "EL2HLT",
+[ 45] = "EDEADLK",
+[ 46] = "ENOLCK",
+[ 47] = "ECANCELED",
+[ 48] = "ENOTSUP",
+[ 50] = "EBADE",
+[ 51] = "EBADR",
+[ 52] = "EXFULL",
+[ 53] = "ENOANO",
+[ 54] = "EBADRQC",
+[ 55] = "EBADSLT",
+[ 56] = "EDEADLOCK",
+[ 57] = "EBFONT",
+[ 60] = "ENOSTR",
+[ 61] = "ENODATA",
+[ 62] = "ETIME",
+[ 63] = "ENOSR",
+[ 64] = "ENONET",
+[ 65] = "ENOPKG",
+[ 66] = "EREMOTE",
+[ 67] = "ENOLINK",
+[ 68] = "EADV",
+[ 69] = "ESRMNT",
+[ 70] = "ECOMM",
+[ 71] = "EPROTO",
+[ 74] = "EMULTIHOP",
+[ 77] = "EBADMSG",
+[ 78] = "ENAMETOOLONG",
+[ 79] = "EOVERFLOW",
+[ 80] = "ENOTUNIQ",
+[ 81] = "EBADFD",
+[ 82] = "EREMCHG",
+[ 83] = "ELIBACC",
+[ 84] = "ELIBBAD",
+[ 85] = "ELIBSCN",
+[ 86] = "ELIBMAX",
+[ 87] = "ELIBEXEC",
+[ 88] = "EILSEQ",
+[ 89] = "ENOSYS",
+[ 90] = "ELOOP",
+[ 91] = "ERESTART",
+[ 92] = "ESTRPIPE",
+[ 93] = "ENOTEMPTY",
+[ 94] = "EUSERS",
+[ 95] = "ENOTSOCK",
+[ 96] = "EDESTADDRREQ",
+[ 97] = "EMSGSIZE",
+[ 98] = "EPROTOTYPE",
+[ 99] = "ENOPROTOOPT",
+[120] = "EPROTONOSUPPORT",
+[121] = "ESOCKTNOSUPPORT",
+[122] = "EOPNOTSUPP",
+[123] = "EPFNOSUPPORT",
+[124] = "EAFNOSUPPORT",
+[125] = "EADDRINUSE",
+[126] = "EADDRNOTAVAIL",
+[127] = "ENETDOWN",
+[128] = "ENETUNREACH",
+[129] = "ENETRESET",
+[130] = "ECONNABORTED",
+[131] = "ECONNRESET",
+[132] = "ENOBUFS",
+[133] = "EISCONN",
+[134] = "ENOTCONN",
+[143] = "ESHUTDOWN",
+[144] = "ETOOMANYREFS",
+[145] = "ETIMEDOUT",
+[146] = "ECONNREFUSED",
+[147] = "EHOSTDOWN",
+[148] = "EHOSTUNREACH",
+[149] = "EALREADY",
+[150] = "EINPROGRESS",
+[151] = "ESTALE",
diff --git a/linux/sparc/ioctlent.h.in b/linux/sparc/ioctlent.h.in
deleted file mode 100644
index 008aae0..0000000
--- a/linux/sparc/ioctlent.h.in
+++ /dev/null
@@ -1,120 +0,0 @@
- {"asm/apc.h", "APCIOCGFANCTL", 0x4100},
- {"asm/apc.h", "APCIOCSFANCTL", 0x4101},
- {"asm/apc.h", "APCIOCGCPWR", 0x4102},
- {"asm/apc.h", "APCIOCSCPWR", 0x4103},
- {"asm/apc.h", "APCIOCGBPORT", 0x4104},
- {"asm/apc.h", "APCIOCSBPORT", 0x4105},
- {"asm/fbio.h", "FBIOGTYPE", 0x4600},
- {"asm/fbio.h", "FBIOPUTCMAP", 0x4603},
- {"asm/fbio.h", "FBIOSATTR", 0x4605},
- {"asm/fbio.h", "FBIOGATTR", 0x4606},
- {"asm/fbio.h", "FBIOSVIDEO", 0x4607},
- {"asm/fbio.h", "FBIOGVIDEO", 0x4608},
- {"asm/fbio.h", "FBIOSCURSOR", 0x4618},
- {"asm/fbio.h", "FBIOGCURSOR", 0x4619},
- {"asm/fbio.h", "FBIOSCURPOS", 0x461a},
- {"asm/fbio.h", "FBIOGCURPOS", 0x461b},
- {"asm/fbio.h", "FBIOGCURMAX", 0x461c},
- {"asm/fbio.h", "FBIO_WID_ALLOC", 0x461e},
- {"asm/fbio.h", "FBIO_WID_FREE", 0x461f},
- {"asm/fbio.h", "FBIO_WID_PUT", 0x4620},
- {"asm/fbio.h", "FBIO_WID_GET", 0x4621},
- {"asm/fbio.h", "LEO_CLUTALLOC", 0x4c35},
- {"asm/fbio.h", "LEO_CLUTFREE", 0x4c36},
- {"asm/fbio.h", "LEO_CLUTREAD", 0x4c37},
- {"asm/fbio.h", "LEO_CLUTPOST", 0x4c38},
- {"asm/fbio.h", "LEO_SETGAMMA", 0x4c44},
- {"asm/fbio.h", "LEO_GETGAMMA", 0x4c45},
- {"asm/openpromio.h", "OPIOCGET", 0x4f01},
- {"asm/openpromio.h", "OPIOCSET", 0x4f02},
- {"asm/openpromio.h", "OPIOCNEXTPROP", 0x4f03},
- {"asm/openpromio.h", "OPIOCGETOPTNODE", 0x4f04},
- {"asm/openpromio.h", "OPIOCGETNEXT", 0x4f05},
- {"asm/openpromio.h", "OPIOCGETCHILD", 0x4f06},
- {"asm/ioctls.h", "TCGETA", 0x5401},
- {"asm/ioctls.h", "TCSETA", 0x5402},
- {"asm/ioctls.h", "TCSETAW", 0x5403},
- {"asm/ioctls.h", "TCSETAF", 0x5404},
- {"asm/ioctls.h", "TCSBRK", 0x5405},
- {"asm/ioctls.h", "TCXONC", 0x5406},
- {"asm/ioctls.h", "TCFLSH", 0x5407},
- {"asm/ioctls.h", "TCGETS", 0x5408},
- {"asm/ioctls.h", "TCSETS", 0x5409},
- {"asm/ioctls.h", "TCSETSW", 0x540a},
- {"asm/ioctls.h", "TCSETSF", 0x540b},
- {"asm/ioctls.h", "TCGETS2", 0x540c},
- {"asm/ioctls.h", "TCSETS2", 0x540d},
- {"asm/ioctls.h", "TCSETSW2", 0x540e},
- {"asm/ioctls.h", "TCSETSF2", 0x540f},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/watchdog.h", "WIOCSTART", 0x570a},
- {"asm/watchdog.h", "WIOCSTOP", 0x570b},
- {"asm/watchdog.h", "WIOCGSTAT", 0x570c},
- {"asm/ioctls.h", "FIOCLEX", 0x6601},
- {"asm/ioctls.h", "FIONCLEX", 0x6602},
- {"asm/ioctls.h", "FIOASYNC", 0x667d},
- {"asm/ioctls.h", "FIONBIO", 0x667e},
- {"asm/ioctls.h", "FIONREAD", 0x667f},
- {"asm/ioctls.h", "FIOQSIZE", 0x6680},
- {"asm/envctrl.h", "ENVCTRL_RD_CPU_TEMPERATURE", 0x7040},
- {"asm/envctrl.h", "ENVCTRL_RD_CPU_VOLTAGE", 0x7041},
- {"asm/envctrl.h", "ENVCTRL_RD_FAN_STATUS", 0x7042},
- {"asm/envctrl.h", "ENVCTRL_RD_WARNING_TEMPERATURE", 0x7043},
- {"asm/envctrl.h", "ENVCTRL_RD_SHUTDOWN_TEMPERATURE", 0x7044},
- {"asm/display7seg.h", "D7SIOCRD", 0x7045},
- {"asm/envctrl.h", "ENVCTRL_RD_VOLTAGE_STATUS", 0x7045},
- {"asm/display7seg.h", "D7SIOCWR", 0x7046},
- {"asm/envctrl.h", "ENVCTRL_RD_SCSI_TEMPERATURE", 0x7046},
- {"asm/display7seg.h", "D7SIOCTM", 0x7047},
- {"asm/envctrl.h", "ENVCTRL_RD_ETHERNET_TEMPERATURE", 0x7047},
- {"asm/envctrl.h", "ENVCTRL_RD_MTHRBD_TEMPERATURE", 0x7048},
- {"asm/envctrl.h", "ENVCTRL_RD_GLOBALADDRESS", 0x7049},
- {"asm/ioctls.h", "TIOCGETD", 0x7400},
- {"asm/ioctls.h", "TIOCSETD", 0x7401},
- {"asm/ioctls.h", "TIOCEXCL", 0x740d},
- {"asm/ioctls.h", "TIOCNXCL", 0x740e},
- {"asm/ioctls.h", "TIOCCONS", 0x7424},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x7464},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x7465},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x7467},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x7468},
- {"asm/ioctls.h", "TIOCMGET", 0x746a},
- {"asm/ioctls.h", "TIOCMBIC", 0x746b},
- {"asm/ioctls.h", "TIOCMBIS", 0x746c},
- {"asm/ioctls.h", "TIOCMSET", 0x746d},
- {"asm/ioctls.h", "TIOCSTART", 0x746e},
- {"asm/ioctls.h", "TIOCSTOP", 0x746f},
- {"asm/ioctls.h", "TIOCPKT", 0x7470},
- {"asm/ioctls.h", "TIOCNOTTY", 0x7471},
- {"asm/ioctls.h", "TIOCSTI", 0x7472},
- {"asm/ioctls.h", "TIOCOUTQ", 0x7473},
- {"asm/ioctls.h", "TIOCCBRK", 0x747a},
- {"asm/ioctls.h", "TIOCSBRK", 0x747b},
- {"asm/ioctls.h", "TIOCSPGRP", 0x7482},
- {"asm/ioctls.h", "TIOCGPGRP", 0x7483},
- {"asm/ioctls.h", "TIOCSCTTY", 0x7484},
- {"asm/ioctls.h", "TIOCGSID", 0x7485},
- {"asm/ioctls.h", "TIOCGPTN", 0x7486},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x7487},
- {"asm/ioctls.h", "TIOCSIG", 0x7488},
- {"asm/sockios.h", "FIOSETOWN", 0x8901},
- {"asm/sockios.h", "SIOCSPGRP", 0x8902},
- {"asm/sockios.h", "FIOGETOWN", 0x8903},
- {"asm/sockios.h", "SIOCGPGRP", 0x8904},
- {"asm/sockios.h", "SIOCATMARK", 0x8905},
- {"asm/sockios.h", "SIOCGSTAMP", 0x8906},
- {"asm/sockios.h", "SIOCGSTAMPNS", 0x8907},
diff --git a/linux/sparc/ioctlent1.h b/linux/sparc/ioctlent1.h
index 7119c87..72efe42 100644
--- a/linux/sparc/ioctlent1.h
+++ b/linux/sparc/ioctlent1.h
@@ -1,429 +1,429 @@
-{"sys/dkio.h", "DKIOCGGEOM", 0x401},
-{"sys/dkio.h", "DKIOCSGEOM", 0x402},
-{"sys/dkio.h", "DKIOCINFO", 0x403},
-{"sys/dkio.h", "DKIOCSAPART", 0x404},
-{"sys/dkio.h", "DKIOCGAPART", 0x405},
-{"sys/dkio.h", "DKIOCEJECT", 0x406},
-{"sys/dkio.h", "DKIOCLOCK", 0x407},
-{"sys/dkio.h", "DKIOCUNLOCK", 0x408},
-{"sys/dkio.h", "DKIOCGVTOC", 0x40b},
-{"sys/dkio.h", "DKIOCSVTOC", 0x40c},
-{"sys/dkio.h", "DKIOCSTATE", 0x40d},
-{"sys/fdio.h", "FDIOGCHAR", 0x433},
-{"sys/fdio.h", "FDIOSCHAR", 0x434},
-{"sys/fdio.h", "FDEJECT", 0x435},
-{"sys/fdio.h", "FDGETCHANGE", 0x436},
-{"sys/fdio.h", "FDGETDRIVECHAR", 0x437},
-{"sys/fdio.h", "FDSETDRIVECHAR", 0x438},
-{"sys/fdio.h", "FDGETSEARCH", 0x439},
-{"sys/fdio.h", "FDSETSEARCH", 0x43a},
-{"sys/fdio.h", "FDIOCMD", 0x43b},
-{"sys/fdio.h", "FDRAW", 0x446},
-{"sys/fdio.h", "FDDEFGEOCHAR", 0x456},
-{"sys/hdio.h", "HDKIOCSTYPE", 0x465},
-{"sys/hdio.h", "HDKIOCGTYPE", 0x466},
-{"sys/hdio.h", "HDKIOCSBAD", 0x467},
-{"sys/hdio.h", "HDKIOCGBAD", 0x468},
-{"sys/hdio.h", "HDKIOCSCMD", 0x469},
-{"sys/hdio.h", "HDKIOCGDIAG", 0x46a},
-{"sys/cdio.h", "CDROMPAUSE", 0x497},
-{"sys/cdio.h", "CDROMRESUME", 0x498},
-{"sys/cdio.h", "CDROMPLAYMSF", 0x499},
-{"sys/cdio.h", "CDROMPLAYTRKIND", 0x49a},
-{"sys/cdio.h", "CDROMREADTOCHDR", 0x49b},
-{"sys/cdio.h", "CDROMREADTOCENTRY", 0x49c},
-{"sys/cdio.h", "CDROMSTOP", 0x49d},
-{"sys/cdio.h", "CDROMSTART", 0x49e},
-{"sys/cdio.h", "CDROMEJECT", 0x49f},
-{"sys/cdio.h", "CDROMVOLCTRL", 0x4a0},
-{"sys/cdio.h", "CDROMSUBCHNL", 0x4a1},
-{"sys/cdio.h", "CDROMREADMODE2", 0x4a2},
-{"sys/cdio.h", "CDROMREADMODE1", 0x4a3},
-{"sys/cdio.h", "CDROMREADOFFSET", 0x4a4},
-{"sys/cdio.h", "CDROMGBLKMODE", 0x4a5},
-{"sys/cdio.h", "CDROMSBLKMODE", 0x4a6},
-{"sys/cdio.h", "CDROMCDDA", 0x4a7},
-{"sys/cdio.h", "CDROMCDXA", 0x4a8},
-{"sys/cdio.h", "CDROMSUBCODE", 0x4a9},
-{"sys/cdio.h", "CDROMGDRVSPEED", 0x4aa},
-{"sys/cdio.h", "CDROMSDRVSPEED", 0x4ab},
-{"sys/scsi/impl/uscsi.h", "USCSICMD", 0x4c9},
-{"sys/bufmod.h", "SBIOCSTIME", 0x4201},
-{"sys/bufmod.h", "SBIOCGTIME", 0x4202},
-{"sys/bufmod.h", "SBIOCCTIME", 0x4203},
-{"sys/bufmod.h", "SBIOCSCHUNK", 0x4204},
-{"sys/bufmod.h", "SBIOCGCHUNK", 0x4205},
-{"sys/bufmod.h", "SBIOCSSNAP", 0x4206},
-{"sys/bufmod.h", "SBIOCGSNAP", 0x4207},
-{"sys/bufmod.h", "SBIOCSFLAGS", 0x4208},
-{"sys/bufmod.h", "SBIOCGFLAGS", 0x4209},
-{"sys/termios.h", "LDOPEN", 0x4400},
-{"sys/termios.h", "LDCLOSE", 0x4401},
-{"sys/dlpi.h", "DLIOCRAW", 0x4401},
-{"sys/sad.h", "SAD_SAP", 0x4401},
-{"sys/termios.h", "LDCHG", 0x4402},
-{"sys/sad.h", "SAD_GAP", 0x4402},
-{"sys/sad.h", "SAD_VML", 0x4403},
-{"sys/termios.h", "LDGETT", 0x4408},
-{"sys/termios.h", "LDSETT", 0x4409},
-{"sys/dlpi.h", "DL_IOC_HDR_INFO", 0x440a},
-{"sys/termios.h", "LDSMAP", 0x446e},
-{"sys/termios.h", "LDGMAP", 0x446f},
-{"sys/termios.h", "LDNMAP", 0x4470},
-{"sys/termios.h", "LDEMAP", 0x4471},
-{"sys/termios.h", "LDDMAP", 0x4472},
-{"sys/fbio.h", "FBIOGTYPE", 0x4600},
-{"sys/fbio.h", "FBIOGINFO", 0x4602},
-{"sys/fbio.h", "FBIOPUTCMAP", 0x4603},
-{"sys/fbio.h", "FBIOGETCMAP", 0x4604},
-{"sys/fbio.h", "FBIOSATTR", 0x4605},
-{"sys/fbio.h", "FBIOGATTR", 0x4606},
-{"sys/fbio.h", "FBIOSVIDEO", 0x4607},
-{"sys/fbio.h", "FBIOGVIDEO", 0x4608},
-{"sys/fbio.h", "FBIOVERTICAL", 0x4609},
-{"sys/fbio.h", "GRABPAGEALLOC", 0x460a},
-{"sys/fbio.h", "GRABPAGEFREE", 0x460b},
-{"sys/fbio.h", "GRABATTACH", 0x460c},
-{"sys/fbio.h", "FBIOGPLNGRP", 0x460d},
-{"sys/fbio.h", "FBIOGCMSIZE", 0x460e},
-{"sys/fbio.h", "FBIOSCMSIZE", 0x460f},
-{"sys/fbio.h", "FBIOSCMS", 0x4610},
-{"sys/fbio.h", "FBIOAVAILPLNGRP", 0x4611},
-{"sys/fbio.h", "FBIODBLGINFO", 0x4612},
-{"sys/fbio.h", "FBIODBLSINFO", 0x4613},
-{"sys/fbio.h", "FBIOSWINFD", 0x4614},
-{"sys/fbio.h", "FBIOSAVWINFD", 0x4615},
-{"sys/fbio.h", "FBIORESWINFD", 0x4616},
-{"sys/fbio.h", "FBIOSRWINFD", 0x4617},
-{"sys/visual_io.h", "VIS_SETCURSOR", 0x4618},
-{"sys/fbio.h", "FBIOSCURSOR", 0x4618},
-{"sys/fbio.h", "FBIOGCURSOR", 0x4619},
-{"sys/visual_io.h", "VIS_GETCURSOR", 0x4619},
-{"sys/fbio.h", "FBIOSCURPOS", 0x461a},
-{"sys/visual_io.h", "VIS_MOVECURSOR", 0x461a},
-{"sys/fbio.h", "FBIOGCURPOS", 0x461b},
-{"sys/visual_io.h", "VIS_GETCURSORPOS", 0x461b},
-{"sys/fbio.h", "FBIOGCURMAX", 0x461c},
-{"sys/fbio.h", "GRABLOCKINFO", 0x461d},
-{"sys/fbio.h", "FBIO_WID_ALLOC", 0x461e},
-{"sys/fbio.h", "FBIO_WID_FREE", 0x461f},
-{"sys/fbio.h", "FBIO_WID_PUT", 0x4620},
-{"sys/fbio.h", "FBIO_WID_GET", 0x4621},
-{"sys/fbio.h", "FBIO_DEVID", 0x4622},
-{"sys/fbio.h", "FBIO_U_RST", 0x4623},
-{"sys/fbio.h", "FBIO_FULLSCREEN_ELIMINATION_GROUPS", 0x4624},
-{"sys/fbio.h", "FBIO_WID_DBL_SET", 0x4625},
-{"sys/fbio.h", "FBIOVRTOFFSET", 0x4626},
-{"sys/fbio.h", "FBIOGXINFO", 0x4627},
-{"sys/fbio.h", "FBIOMONINFO", 0x4628},
-{"sys/fbio.h", "FBIOPUTCMAPI", 0x4629},
-{"sys/fbio.h", "FBIOGETCMAPI", 0x462a},
-{"sys/fbio.h", "FBIO_ASSIGNWID", 0x462b},
-{"sys/fbio.h", "FBIO_STEREO", 0x462c},
-{"sys/gpio.h", "GP1IO_PUT_INFO", 0x4700},
-{"sys/gpio.h", "GP1IO_GET_STATIC_BLOCK", 0x4701},
-{"sys/gpio.h", "GP1IO_FREE_STATIC_BLOCK", 0x4702},
-{"sys/gpio.h", "GP1IO_GET_GBUFFER_STATE", 0x4703},
-{"sys/gpio.h", "GP1IO_CHK_GP", 0x4704},
-{"sys/gpio.h", "GP1IO_GET_RESTART_COUNT", 0x4705},
-{"sys/gpio.h", "GP1IO_REDIRECT_DEVFB", 0x4706},
-{"sys/gpio.h", "GP1IO_GET_REQDEV", 0x4707},
-{"sys/gpio.h", "GP1IO_GET_TRUMINORDEV", 0x4708},
-{"sys/gpio.h", "GP1IO_CHK_FOR_GBUFFER", 0x4709},
-{"sys/gpio.h", "GP1IO_SET_USING_GBUFFER", 0x470a},
-{"sys/gpio.h", "GP1IO_INFO_STATIC_BLOCK", 0x470b},
-{"sys/sockmod.h", "O_SI_GETUDATA", 0x4965},
-{"sys/sockmod.h", "SI_SHUTDOWN", 0x4966},
-{"sys/sockmod.h", "SI_LISTEN", 0x4967},
-{"sys/sockmod.h", "SI_SETMYNAME", 0x4968},
-{"sys/sockmod.h", "SI_SETPEERNAME", 0x4969},
-{"sys/sockmod.h", "SI_GETINTRANSIT", 0x496a},
-{"sys/sockmod.h", "SI_SOCKPARAMS", 0x496d},
-{"sys/sockmod.h", "SI_GETUDATA", 0x496e},
-{"sys/strlog.h", "I_TRCLOG", 0x4c01},
-{"sys/strlog.h", "I_ERRLOG", 0x4c02},
-{"sys/strlog.h", "I_CONSLOG", 0x4c03},
-{"sys/cg14io.h", "MDI_RESET", 0x4d01},
-{"sys/cg14io.h", "MDI_GET_CFGINFO", 0x4d02},
-{"sys/cg14io.h", "MDI_SET_PIXELMODE", 0x4d03},
-{"sys/cg14io.h", "MDI_SET_COUNTERS", 0x4d04},
-{"sys/cg14io.h", "MDI_SET_PPR", 0x4d05},
-{"sys/cg14io.h", "MDI_VRT_CNTL", 0x4d06},
-{"sys/cg14io.h", "MDI_SET_CLUT", 0x4d07},
-{"sys/cg14io.h", "MDI_GET_CLUT", 0x4d08},
-{"sys/cg14io.h", "MDI_SET_XLUT", 0x4d09},
-{"sys/cg14io.h", "MDI_GET_XLUT", 0x4d0a},
-{"sys/cg14io.h", "MDI_GAMMA_CORRECT", 0x4d0b},
-{"sys/cg14io.h", "MDI_SET_GAMMALUT", 0x4d0c},
-{"sys/cg14io.h", "MDI_GET_GAMMALUT", 0x4d0d},
-{"sys/cg14io.h", "MDI_SET_DEGAMMALUT", 0x4d0e},
-{"sys/cg14io.h", "MDI_GET_DEGAMMALUT", 0x4d0f},
-{"sys/cg14io.h", "MDI_GET_BUFFER_INFO", 0x4d10},
-{"sys/cg14io.h", "MDI_SET_CURSOR", 0x4d11},
-{"sys/cg14io.h", "MDI_GET_DIAGINFO", 0x4d12},
-{"sys/cg14io.h", "MDI_SET_RESOLUTION", 0x4d13},
-{"sys/cg14io.h", "SET_MONITOR_POWER", 0x4d14},
-{"sys/openpromio.h", "OPROMGETBOOTARGS", 0x4f0c},
-{"sys/pfmod.h", "PFIOCSETF", 0x5001},
-{"sys/stropts.h", "I_NREAD", 0x5301},
-{"sys/stropts.h", "I_PUSH", 0x5302},
-{"sys/stropts.h", "I_POP", 0x5303},
-{"sys/stropts.h", "I_LOOK", 0x5304},
-{"sys/stropts.h", "I_FLUSH", 0x5305},
-{"sys/stropts.h", "I_SRDOPT", 0x5306},
-{"sys/stropts.h", "I_GRDOPT", 0x5307},
-{"sys/stropts.h", "I_STR", 0x5308},
-{"sys/stropts.h", "I_SETSIG", 0x5309},
-{"sys/stropts.h", "I_GETSIG", 0x530a},
-{"sys/stropts.h", "I_FIND", 0x530b},
-{"sys/stropts.h", "I_LINK", 0x530c},
-{"sys/stropts.h", "I_UNLINK", 0x530d},
-{"sys/stropts.h", "I_RECVFD", 0x530e},
-{"sys/stropts.h", "I_PEEK", 0x530f},
-{"sys/stropts.h", "I_FDINSERT", 0x5310},
-{"sys/stropts.h", "I_SENDFD", 0x5311},
-{"sys/stropts.h", "I_SWROPT", 0x5313},
-{"sys/stropts.h", "I_GWROPT", 0x5314},
-{"sys/stropts.h", "I_LIST", 0x5315},
-{"sys/stropts.h", "I_PLINK", 0x5316},
-{"sys/stropts.h", "I_PUNLINK", 0x5317},
-{"sys/stropts.h", "I_SETEV", 0x5318},
-{"sys/stropts.h", "I_GETEV", 0x5319},
-{"sys/stropts.h", "I_STREV", 0x531a},
-{"sys/stropts.h", "I_UNSTREV", 0x531b},
-{"sys/stropts.h", "I_FLUSHBAND", 0x531c},
-{"sys/stropts.h", "I_CKBAND", 0x531d},
-{"sys/stropts.h", "I_GETBAND", 0x531e},
-{"sys/stropts.h", "I_ATMARK", 0x531f},
-{"sys/stropts.h", "I_SETCLTIME", 0x5320},
-{"sys/stropts.h", "I_GETCLTIME", 0x5321},
-{"sys/stropts.h", "I_CANPUT", 0x5322},
-{"sys/termios.h", "TCGETA", 0x5401},
-{"sys/termios.h", "TCSETA", 0x5402},
-{"sys/termios.h", "TCSETAW", 0x5403},
-{"sys/termios.h", "TCSETAF", 0x5404},
-{"sys/termios.h", "TCSBRK", 0x5405},
-{"sys/termios.h", "TCXONC", 0x5406},
-{"sys/termios.h", "TCFLSH", 0x5407},
-{"sys/termios.h", "TIOCKBON", 0x5408},
-{"sys/termios.h", "TIOCKBOF", 0x5409},
-{"sys/termios.h", "KBENABLED", 0x540a},
-{"sys/termios.h", "TCGETS", 0x540d},
-{"sys/termios.h", "TCSETS", 0x540e},
-{"sys/termios.h", "TCSANOW", 0x540e},
-{"sys/termios.h", "TCSADRAIN", 0x540f},
-{"sys/termios.h", "TCSETSW", 0x540f},
-{"sys/termios.h", "TCSAFLUSH", 0x5410},
-{"sys/termios.h", "TCSETSF", 0x5410},
-{"sys/termio.h", "TCDSET", 0x5420},
-{"sys/termios.h", "TCDSET", 0x5420},
-{"sys/termios.h", "RTS_TOG", 0x5421},
-{"sys/ttold.h", "TIOCSWINSZ", 0x5467},
-{"sys/termios.h", "TIOCSWINSZ", 0x5467},
-{"sys/ttold.h", "TIOCGWINSZ", 0x5468},
-{"sys/termios.h", "TIOCGWINSZ", 0x5468},
-{"sys/termios.h", "TIOCGSOFTCAR", 0x5469},
-{"sys/termios.h", "TIOCSSOFTCAR", 0x546a},
-{"sys/timod.h", "TI_GETINFO", 0x548c},
-{"sys/timod.h", "TI_OPTMGMT", 0x548d},
-{"sys/timod.h", "TI_BIND", 0x548e},
-{"sys/timod.h", "TI_UNBIND", 0x548f},
-{"sys/timod.h", "TI_GETMYNAME", 0x5490},
-{"sys/timod.h", "TI_GETPEERNAME", 0x5491},
-{"sys/timod.h", "TI_SETMYNAME", 0x5492},
-{"sys/timod.h", "TI_SETPEERNAME", 0x5493},
-{"sys/termiox.h", "TCGETX", 0x5801},
-{"sys/termiox.h", "TCSETX", 0x5802},
-{"sys/termiox.h", "TCSETXW", 0x5803},
-{"sys/termiox.h", "TCSETXF", 0x5804},
-{"sys/ioctl.h", "DIOCGETC", 0x6401},
-{"sys/ioctl.h", "DIOCGETB", 0x6402},
-{"sys/ioctl.h", "DIOCSETE", 0x6403},
-{"sys/termios.h", "DIOCGETP", 0x6408},
-{"sys/termios.h", "DIOCSETP", 0x6409},
-{"sys/jioctl.h", "JBOOT", 0x6a01},
-{"sys/jioctl.h", "JTERM", 0x6a02},
-{"sys/jioctl.h", "JMPX", 0x6a03},
-{"sys/jioctl.h", "JWINSIZE", 0x6a05},
-{"sys/jioctl.h", "JZOMBOOT", 0x6a07},
-{"sys/jioctl.h", "JAGENT", 0x6a09},
-{"sys/jioctl.h", "JTRUN", 0x6a0a},
-{"sys/jioctl.h", "JXTPROTO", 0x6a0b},
-{"sys/kbio.h", "KIOCTRANS", 0x6b00},
-{"sys/kbio.h", "KIOCSETKEY", 0x6b01},
-{"sys/kbio.h", "KIOCGETKEY", 0x6b02},
-{"sys/kbio.h", "KIOCGTRANS", 0x6b05},
-{"sys/kbio.h", "KIOCTRANSABLE", 0x6b06},
-{"sys/kbio.h", "KIOCGTRANSABLE", 0x6b07},
-{"sys/kbio.h", "KIOCCMD", 0x6b08},
-{"sys/kbio.h", "KIOCTYPE", 0x6b09},
-{"sys/kbio.h", "KIOCSDIRECT", 0x6b0a},
-{"sys/kbio.h", "KIOCGDIRECT", 0x6b0b},
-{"sys/kbio.h", "KIOCSKEY", 0x6b0c},
-{"sys/kbio.h", "KIOCGKEY", 0x6b0d},
-{"sys/kbio.h", "KIOCSLED", 0x6b0e},
-{"sys/kbio.h", "KIOCGLED", 0x6b0f},
-{"sys/kbio.h", "KIOCSCOMPAT", 0x6b10},
-{"sys/kbio.h", "KIOCGCOMPAT", 0x6b11},
-{"sys/kbio.h", "KIOCLAYOUT", 0x6b14},
-{"sys/ioctl.h", "LIOCGETP", 0x6c01},
-{"sys/ioctl.h", "LIOCSETP", 0x6c02},
-{"sys/ioctl.h", "LIOCGETS", 0x6c05},
-{"sys/ioctl.h", "LIOCSETS", 0x6c06},
-{"sys/mtio.h", "MTIOCTOP", 0x6d01},
-{"sys/msio.h", "MSIOGETPARMS", 0x6d01},
-{"sys/msio.h", "MSIOSETPARMS", 0x6d02},
-{"sys/mtio.h", "MTIOCGET", 0x6d02},
-{"sys/mtio.h", "MTIOCGETDRIVETYPE", 0x6d03},
-{"sys/procfs.h", "PIOCSTATUS", 0x7101},
-{"sys/procfs.h", "PIOCSTOP", 0x7102},
-{"sys/procfs.h", "PIOCWSTOP", 0x7103},
-{"sys/procfs.h", "PIOCRUN", 0x7104},
-{"sys/procfs.h", "PIOCGTRACE", 0x7105},
-{"sys/procfs.h", "PIOCSTRACE", 0x7106},
-{"sys/procfs.h", "PIOCSSIG", 0x7107},
-{"sys/procfs.h", "PIOCKILL", 0x7108},
-{"sys/procfs.h", "PIOCUNKILL", 0x7109},
-{"sys/procfs.h", "PIOCGHOLD", 0x710a},
-{"sys/procfs.h", "PIOCSHOLD", 0x710b},
-{"sys/procfs.h", "PIOCMAXSIG", 0x710c},
-{"sys/procfs.h", "PIOCACTION", 0x710d},
-{"sys/procfs.h", "PIOCGFAULT", 0x710e},
-{"sys/procfs.h", "PIOCSFAULT", 0x710f},
-{"sys/procfs.h", "PIOCCFAULT", 0x7110},
-{"sys/procfs.h", "PIOCGENTRY", 0x7111},
-{"sys/procfs.h", "PIOCSENTRY", 0x7112},
-{"sys/procfs.h", "PIOCGEXIT", 0x7113},
-{"sys/procfs.h", "PIOCSEXIT", 0x7114},
-{"sys/procfs.h", "PIOCSFORK", 0x7115},
-{"sys/procfs.h", "PIOCRFORK", 0x7116},
-{"sys/procfs.h", "PIOCSRLC", 0x7117},
-{"sys/procfs.h", "PIOCRRLC", 0x7118},
-{"sys/procfs.h", "PIOCGREG", 0x7119},
-{"sys/procfs.h", "PIOCSREG", 0x711a},
-{"sys/procfs.h", "PIOCGFPREG", 0x711b},
-{"sys/procfs.h", "PIOCSFPREG", 0x711c},
-{"sys/procfs.h", "PIOCNICE", 0x711d},
-{"sys/procfs.h", "PIOCPSINFO", 0x711e},
-{"sys/procfs.h", "PIOCNMAP", 0x711f},
-{"sys/procfs.h", "PIOCMAP", 0x7120},
-{"sys/procfs.h", "PIOCOPENM", 0x7121},
-{"sys/procfs.h", "PIOCCRED", 0x7122},
-{"sys/procfs.h", "PIOCGROUPS", 0x7123},
-{"sys/procfs.h", "PIOCGETPR", 0x7124},
-{"sys/procfs.h", "PIOCGETU", 0x7125},
-{"sys/procfs.h", "PIOCSET", 0x7126},
-{"sys/procfs.h", "PIOCRESET", 0x7127},
-{"sys/procfs.h", "PIOCNWATCH", 0x7128},
-{"sys/procfs.h", "PIOCGWATCH", 0x7129},
-{"sys/procfs.h", "PIOCSWATCH", 0x712a},
-{"sys/procfs.h", "PIOCUSAGE", 0x712b},
-{"sys/procfs.h", "PIOCOPENPD", 0x712c},
-{"sys/procfs.h", "PIOCLWPIDS", 0x712d},
-{"sys/procfs.h", "PIOCOPENLWP", 0x712e},
-{"sys/procfs.h", "PIOCLSTATUS", 0x712f},
-{"sys/procfs.h", "PIOCLUSAGE", 0x7130},
-{"sys/procfs.h", "PIOCNAUXV", 0x7131},
-{"sys/procfs.h", "PIOCAUXV", 0x7132},
-{"sys/procfs.h", "PIOCGWIN", 0x7165},
-{"sys/ttold.h", "TIOCGETD", 0x7400},
-{"sys/termios.h", "TIOCGETD", 0x7400},
-{"sys/termios.h", "TIOCSETD", 0x7401},
-{"sys/ttold.h", "TIOCSETD", 0x7401},
-{"sys/termios.h", "TIOCHPCL", 0x7402},
-{"sys/ttold.h", "TIOCHPCL", 0x7402},
-{"sys/ttold.h", "TIOCGETP", 0x7408},
-{"sys/termios.h", "TIOCGETP", 0x7408},
-{"sys/termios.h", "TIOCSETP", 0x7409},
-{"sys/ttold.h", "TIOCSETP", 0x7409},
-{"sys/ttold.h", "TIOCSETN", 0x740a},
-{"sys/termios.h", "TIOCSETN", 0x740a},
-{"sys/ttold.h", "TIOCEXCL", 0x740d},
-{"sys/termios.h", "TIOCEXCL", 0x740d},
-{"sys/ttold.h", "TIOCNXCL", 0x740e},
-{"sys/termios.h", "TIOCNXCL", 0x740e},
-{"sys/termios.h", "TIOCFLUSH", 0x7410},
-{"sys/ttold.h", "TIOCFLUSH", 0x7410},
-{"sys/termios.h", "TIOCSETC", 0x7411},
-{"sys/ttold.h", "TIOCSETC", 0x7411},
-{"sys/termios.h", "TIOCGETC", 0x7412},
-{"sys/ttold.h", "TIOCGETC", 0x7412},
-{"sys/termios.h", "TIOCGPGRP", 0x7414},
-{"sys/termios.h", "TIOCSPGRP", 0x7415},
-{"sys/termios.h", "TIOCGSID", 0x7416},
-{"sys/termios.h", "TIOCSTI", 0x7417},
-{"sys/termios.h", "TIOCSSID", 0x7418},
-{"sys/termios.h", "TIOCMSET", 0x741a},
-{"sys/termios.h", "TIOCMBIS", 0x741b},
-{"sys/termios.h", "TIOCMBIC", 0x741c},
-{"sys/termios.h", "TIOCMGET", 0x741d},
-{"sys/termios.h", "TIOCREMOTE", 0x741e},
-{"sys/ttold.h", "TIOCREMOTE", 0x741e},
-{"sys/termios.h", "TIOCSIGNAL", 0x741f},
-{"sys/termios.h", "TIOCSTART", 0x746e},
-{"sys/ttold.h", "TIOCSTART", 0x746e},
-{"sys/termios.h", "TIOCSTOP", 0x746f},
-{"sys/ttold.h", "TIOCSTOP", 0x746f},
-{"sys/ttold.h", "TIOCNOTTY", 0x7471},
-{"sys/termios.h", "TIOCNOTTY", 0x7471},
-{"sys/termios.h", "TIOCOUTQ", 0x7473},
-{"sys/ttold.h", "TIOCOUTQ", 0x7473},
-{"sys/termios.h", "TIOCGLTC", 0x7474},
-{"sys/ttold.h", "TIOCGLTC", 0x7474},
-{"sys/termios.h", "TIOCSLTC", 0x7475},
-{"sys/ttold.h", "TIOCSLTC", 0x7475},
-{"sys/termios.h", "TIOCCDTR", 0x7478},
-{"sys/ttold.h", "TIOCCDTR", 0x7478},
-{"sys/ttold.h", "TIOCSDTR", 0x7479},
-{"sys/termios.h", "TIOCSDTR", 0x7479},
-{"sys/termios.h", "TIOCCBRK", 0x747a},
-{"sys/ttold.h", "TIOCCBRK", 0x747a},
-{"sys/termios.h", "TIOCSBRK", 0x747b},
-{"sys/ttold.h", "TIOCSBRK", 0x747b},
-{"sys/termios.h", "TIOCLGET", 0x747c},
-{"sys/ttold.h", "TIOCLGET", 0x747c},
-{"sys/termios.h", "TIOCLSET", 0x747d},
-{"sys/ttold.h", "TIOCLSET", 0x747d},
-{"sys/ttold.h", "TIOCLBIC", 0x747e},
-{"sys/termios.h", "TIOCLBIC", 0x747e},
-{"sys/ttold.h", "TIOCLBIS", 0x747f},
-{"sys/termios.h", "TIOCLBIS", 0x747f},
-{"sys/vol.h", "VOLIOCMAP", 0x7601},
-{"sys/vuid_event.h", "VUIDSFORMAT", 0x7601},
-{"sys/vuid_event.h", "VUIDSFORMAT", 0x7601},
-{"sys/vuid_event.h", "VUIDGFORMAT", 0x7602},
-{"sys/vuid_event.h", "VUIDGFORMAT", 0x7602},
-{"sys/vol.h", "VOLIOCUNMAP", 0x7602},
-{"sys/vol.h", "VOLIOCEVENT", 0x7603},
-{"sys/vuid_event.h", "VUIDSADDR", 0x7603},
-{"sys/vuid_event.h", "VUIDSADDR", 0x7603},
-{"sys/vuid_event.h", "VUIDGADDR", 0x7604},
-{"sys/vuid_event.h", "VUIDGADDR", 0x7604},
-{"sys/vol.h", "VOLIOCEJECT", 0x7604},
-{"sys/vol.h", "VOLIOCCHECK", 0x7605},
-{"sys/vol.h", "VOLIOCINUSE", 0x7606},
-{"sys/vol.h", "VOLIOCDGATTR", 0x7607},
-{"sys/vol.h", "VOLIOCDSATTR", 0x7608},
-{"sys/vol.h", "VOLIOCDCHECK", 0x7609},
-{"sys/vol.h", "VOLIOCCANCEL", 0x760a},
-{"sys/vol.h", "VOLIOCINFO", 0x760b},
-{"sys/vol.h", "VOLIOCSATTR", 0x760c},
-{"sys/vol.h", "VOLIOCGATTR", 0x760d},
-{"sys/vol.h", "VOLIOCDINUSE", 0x760e},
-{"sys/vol.h", "VOLIOCDAEMON", 0x760f},
-{"sys/vol.h", "VOLIOCFLAGS", 0x7610},
-{"sys/vol.h", "VOLIOCEXTRA4", 0x7611},
-{"sys/vol.h", "VOLIOCEXTRA5", 0x7612},
-{"sys/vol.h", "VOLIOCEXTRA6", 0x7613},
-{"sys/vol.h", "VOLIOCEXTRA7", 0x7614},
-{"sys/ser_sync.h", "S_IOCGETMODE", 0x7a01},
-{"sys/ser_sync.h", "S_IOCSETMODE", 0x7a02},
-{"sys/ser_sync.h", "S_IOCGETSTATS", 0x7a03},
-{"sys/ser_sync.h", "S_IOCCLRSTATS", 0x7a04},
-{"sys/ser_sync.h", "S_IOCGETSPEED", 0x7a05},
-{"sys/ser_sync.h", "S_IOCGETMRU", 0x7a06},
-{"sys/ser_sync.h", "S_IOCSETMRU", 0x7a07},
-{"sys/ser_sync.h", "S_IOCGETMTU", 0x7a08},
-{"sys/ser_sync.h", "S_IOCSETMTU", 0x7a09},
-{"sys/ser_sync.h", "S_IOCGETMCTL", 0x7a0a},
-{"sys/tl.h", "TL_IOC_CREDOPT", 0x544c01},
+{"DKIOCGGEOM", 0x401},
+{"DKIOCSGEOM", 0x402},
+{"DKIOCINFO", 0x403},
+{"DKIOCSAPART", 0x404},
+{"DKIOCGAPART", 0x405},
+{"DKIOCEJECT", 0x406},
+{"DKIOCLOCK", 0x407},
+{"DKIOCUNLOCK", 0x408},
+{"DKIOCGVTOC", 0x40b},
+{"DKIOCSVTOC", 0x40c},
+{"DKIOCSTATE", 0x40d},
+{"FDIOGCHAR", 0x433},
+{"FDIOSCHAR", 0x434},
+{"FDEJECT", 0x435},
+{"FDGETCHANGE", 0x436},
+{"FDGETDRIVECHAR", 0x437},
+{"FDSETDRIVECHAR", 0x438},
+{"FDGETSEARCH", 0x439},
+{"FDSETSEARCH", 0x43a},
+{"FDIOCMD", 0x43b},
+{"FDRAW", 0x446},
+{"FDDEFGEOCHAR", 0x456},
+{"HDKIOCSTYPE", 0x465},
+{"HDKIOCGTYPE", 0x466},
+{"HDKIOCSBAD", 0x467},
+{"HDKIOCGBAD", 0x468},
+{"HDKIOCSCMD", 0x469},
+{"HDKIOCGDIAG", 0x46a},
+{"CDROMPAUSE", 0x497},
+{"CDROMRESUME", 0x498},
+{"CDROMPLAYMSF", 0x499},
+{"CDROMPLAYTRKIND", 0x49a},
+{"CDROMREADTOCHDR", 0x49b},
+{"CDROMREADTOCENTRY", 0x49c},
+{"CDROMSTOP", 0x49d},
+{"CDROMSTART", 0x49e},
+{"CDROMEJECT", 0x49f},
+{"CDROMVOLCTRL", 0x4a0},
+{"CDROMSUBCHNL", 0x4a1},
+{"CDROMREADMODE2", 0x4a2},
+{"CDROMREADMODE1", 0x4a3},
+{"CDROMREADOFFSET", 0x4a4},
+{"CDROMGBLKMODE", 0x4a5},
+{"CDROMSBLKMODE", 0x4a6},
+{"CDROMCDDA", 0x4a7},
+{"CDROMCDXA", 0x4a8},
+{"CDROMSUBCODE", 0x4a9},
+{"CDROMGDRVSPEED", 0x4aa},
+{"CDROMSDRVSPEED", 0x4ab},
+{"USCSICMD", 0x4c9},
+{"SBIOCSTIME", 0x4201},
+{"SBIOCGTIME", 0x4202},
+{"SBIOCCTIME", 0x4203},
+{"SBIOCSCHUNK", 0x4204},
+{"SBIOCGCHUNK", 0x4205},
+{"SBIOCSSNAP", 0x4206},
+{"SBIOCGSNAP", 0x4207},
+{"SBIOCSFLAGS", 0x4208},
+{"SBIOCGFLAGS", 0x4209},
+{"LDOPEN", 0x4400},
+{"LDCLOSE", 0x4401},
+{"DLIOCRAW", 0x4401},
+{"SAD_SAP", 0x4401},
+{"LDCHG", 0x4402},
+{"SAD_GAP", 0x4402},
+{"SAD_VML", 0x4403},
+{"LDGETT", 0x4408},
+{"LDSETT", 0x4409},
+{"DL_IOC_HDR_INFO", 0x440a},
+{"LDSMAP", 0x446e},
+{"LDGMAP", 0x446f},
+{"LDNMAP", 0x4470},
+{"LDEMAP", 0x4471},
+{"LDDMAP", 0x4472},
+{"FBIOGTYPE", 0x4600},
+{"FBIOGINFO", 0x4602},
+{"FBIOPUTCMAP", 0x4603},
+{"FBIOGETCMAP", 0x4604},
+{"FBIOSATTR", 0x4605},
+{"FBIOGATTR", 0x4606},
+{"FBIOSVIDEO", 0x4607},
+{"FBIOGVIDEO", 0x4608},
+{"FBIOVERTICAL", 0x4609},
+{"GRABPAGEALLOC", 0x460a},
+{"GRABPAGEFREE", 0x460b},
+{"GRABATTACH", 0x460c},
+{"FBIOGPLNGRP", 0x460d},
+{"FBIOGCMSIZE", 0x460e},
+{"FBIOSCMSIZE", 0x460f},
+{"FBIOSCMS", 0x4610},
+{"FBIOAVAILPLNGRP", 0x4611},
+{"FBIODBLGINFO", 0x4612},
+{"FBIODBLSINFO", 0x4613},
+{"FBIOSWINFD", 0x4614},
+{"FBIOSAVWINFD", 0x4615},
+{"FBIORESWINFD", 0x4616},
+{"FBIOSRWINFD", 0x4617},
+{"VIS_SETCURSOR", 0x4618},
+{"FBIOSCURSOR", 0x4618},
+{"FBIOGCURSOR", 0x4619},
+{"VIS_GETCURSOR", 0x4619},
+{"FBIOSCURPOS", 0x461a},
+{"VIS_MOVECURSOR", 0x461a},
+{"FBIOGCURPOS", 0x461b},
+{"VIS_GETCURSORPOS", 0x461b},
+{"FBIOGCURMAX", 0x461c},
+{"GRABLOCKINFO", 0x461d},
+{"FBIO_WID_ALLOC", 0x461e},
+{"FBIO_WID_FREE", 0x461f},
+{"FBIO_WID_PUT", 0x4620},
+{"FBIO_WID_GET", 0x4621},
+{"FBIO_DEVID", 0x4622},
+{"FBIO_U_RST", 0x4623},
+{"FBIO_FULLSCREEN_ELIMINATION_GROUPS", 0x4624},
+{"FBIO_WID_DBL_SET", 0x4625},
+{"FBIOVRTOFFSET", 0x4626},
+{"FBIOGXINFO", 0x4627},
+{"FBIOMONINFO", 0x4628},
+{"FBIOPUTCMAPI", 0x4629},
+{"FBIOGETCMAPI", 0x462a},
+{"FBIO_ASSIGNWID", 0x462b},
+{"FBIO_STEREO", 0x462c},
+{"GP1IO_PUT_INFO", 0x4700},
+{"GP1IO_GET_STATIC_BLOCK", 0x4701},
+{"GP1IO_FREE_STATIC_BLOCK", 0x4702},
+{"GP1IO_GET_GBUFFER_STATE", 0x4703},
+{"GP1IO_CHK_GP", 0x4704},
+{"GP1IO_GET_RESTART_COUNT", 0x4705},
+{"GP1IO_REDIRECT_DEVFB", 0x4706},
+{"GP1IO_GET_REQDEV", 0x4707},
+{"GP1IO_GET_TRUMINORDEV", 0x4708},
+{"GP1IO_CHK_FOR_GBUFFER", 0x4709},
+{"GP1IO_SET_USING_GBUFFER", 0x470a},
+{"GP1IO_INFO_STATIC_BLOCK", 0x470b},
+{"O_SI_GETUDATA", 0x4965},
+{"SI_SHUTDOWN", 0x4966},
+{"SI_LISTEN", 0x4967},
+{"SI_SETMYNAME", 0x4968},
+{"SI_SETPEERNAME", 0x4969},
+{"SI_GETINTRANSIT", 0x496a},
+{"SI_SOCKPARAMS", 0x496d},
+{"SI_GETUDATA", 0x496e},
+{"I_TRCLOG", 0x4c01},
+{"I_ERRLOG", 0x4c02},
+{"I_CONSLOG", 0x4c03},
+{"MDI_RESET", 0x4d01},
+{"MDI_GET_CFGINFO", 0x4d02},
+{"MDI_SET_PIXELMODE", 0x4d03},
+{"MDI_SET_COUNTERS", 0x4d04},
+{"MDI_SET_PPR", 0x4d05},
+{"MDI_VRT_CNTL", 0x4d06},
+{"MDI_SET_CLUT", 0x4d07},
+{"MDI_GET_CLUT", 0x4d08},
+{"MDI_SET_XLUT", 0x4d09},
+{"MDI_GET_XLUT", 0x4d0a},
+{"MDI_GAMMA_CORRECT", 0x4d0b},
+{"MDI_SET_GAMMALUT", 0x4d0c},
+{"MDI_GET_GAMMALUT", 0x4d0d},
+{"MDI_SET_DEGAMMALUT", 0x4d0e},
+{"MDI_GET_DEGAMMALUT", 0x4d0f},
+{"MDI_GET_BUFFER_INFO", 0x4d10},
+{"MDI_SET_CURSOR", 0x4d11},
+{"MDI_GET_DIAGINFO", 0x4d12},
+{"MDI_SET_RESOLUTION", 0x4d13},
+{"SET_MONITOR_POWER", 0x4d14},
+{"OPROMGETBOOTARGS", 0x4f0c},
+{"PFIOCSETF", 0x5001},
+{"I_NREAD", 0x5301},
+{"I_PUSH", 0x5302},
+{"I_POP", 0x5303},
+{"I_LOOK", 0x5304},
+{"I_FLUSH", 0x5305},
+{"I_SRDOPT", 0x5306},
+{"I_GRDOPT", 0x5307},
+{"I_STR", 0x5308},
+{"I_SETSIG", 0x5309},
+{"I_GETSIG", 0x530a},
+{"I_FIND", 0x530b},
+{"I_LINK", 0x530c},
+{"I_UNLINK", 0x530d},
+{"I_RECVFD", 0x530e},
+{"I_PEEK", 0x530f},
+{"I_FDINSERT", 0x5310},
+{"I_SENDFD", 0x5311},
+{"I_SWROPT", 0x5313},
+{"I_GWROPT", 0x5314},
+{"I_LIST", 0x5315},
+{"I_PLINK", 0x5316},
+{"I_PUNLINK", 0x5317},
+{"I_SETEV", 0x5318},
+{"I_GETEV", 0x5319},
+{"I_STREV", 0x531a},
+{"I_UNSTREV", 0x531b},
+{"I_FLUSHBAND", 0x531c},
+{"I_CKBAND", 0x531d},
+{"I_GETBAND", 0x531e},
+{"I_ATMARK", 0x531f},
+{"I_SETCLTIME", 0x5320},
+{"I_GETCLTIME", 0x5321},
+{"I_CANPUT", 0x5322},
+{"TCGETA", 0x5401},
+{"TCSETA", 0x5402},
+{"TCSETAW", 0x5403},
+{"TCSETAF", 0x5404},
+{"TCSBRK", 0x5405},
+{"TCXONC", 0x5406},
+{"TCFLSH", 0x5407},
+{"TIOCKBON", 0x5408},
+{"TIOCKBOF", 0x5409},
+{"KBENABLED", 0x540a},
+{"TCGETS", 0x540d},
+{"TCSETS", 0x540e},
+{"TCSANOW", 0x540e},
+{"TCSADRAIN", 0x540f},
+{"TCSETSW", 0x540f},
+{"TCSAFLUSH", 0x5410},
+{"TCSETSF", 0x5410},
+{"TCDSET", 0x5420},
+{"TCDSET", 0x5420},
+{"RTS_TOG", 0x5421},
+{"TIOCSWINSZ", 0x5467},
+{"TIOCSWINSZ", 0x5467},
+{"TIOCGWINSZ", 0x5468},
+{"TIOCGWINSZ", 0x5468},
+{"TIOCGSOFTCAR", 0x5469},
+{"TIOCSSOFTCAR", 0x546a},
+{"TI_GETINFO", 0x548c},
+{"TI_OPTMGMT", 0x548d},
+{"TI_BIND", 0x548e},
+{"TI_UNBIND", 0x548f},
+{"TI_GETMYNAME", 0x5490},
+{"TI_GETPEERNAME", 0x5491},
+{"TI_SETMYNAME", 0x5492},
+{"TI_SETPEERNAME", 0x5493},
+{"TCGETX", 0x5801},
+{"TCSETX", 0x5802},
+{"TCSETXW", 0x5803},
+{"TCSETXF", 0x5804},
+{"DIOCGETC", 0x6401},
+{"DIOCGETB", 0x6402},
+{"DIOCSETE", 0x6403},
+{"DIOCGETP", 0x6408},
+{"DIOCSETP", 0x6409},
+{"JBOOT", 0x6a01},
+{"JTERM", 0x6a02},
+{"JMPX", 0x6a03},
+{"JWINSIZE", 0x6a05},
+{"JZOMBOOT", 0x6a07},
+{"JAGENT", 0x6a09},
+{"JTRUN", 0x6a0a},
+{"JXTPROTO", 0x6a0b},
+{"KIOCTRANS", 0x6b00},
+{"KIOCSETKEY", 0x6b01},
+{"KIOCGETKEY", 0x6b02},
+{"KIOCGTRANS", 0x6b05},
+{"KIOCTRANSABLE", 0x6b06},
+{"KIOCGTRANSABLE", 0x6b07},
+{"KIOCCMD", 0x6b08},
+{"KIOCTYPE", 0x6b09},
+{"KIOCSDIRECT", 0x6b0a},
+{"KIOCGDIRECT", 0x6b0b},
+{"KIOCSKEY", 0x6b0c},
+{"KIOCGKEY", 0x6b0d},
+{"KIOCSLED", 0x6b0e},
+{"KIOCGLED", 0x6b0f},
+{"KIOCSCOMPAT", 0x6b10},
+{"KIOCGCOMPAT", 0x6b11},
+{"KIOCLAYOUT", 0x6b14},
+{"LIOCGETP", 0x6c01},
+{"LIOCSETP", 0x6c02},
+{"LIOCGETS", 0x6c05},
+{"LIOCSETS", 0x6c06},
+{"MTIOCTOP", 0x6d01},
+{"MSIOGETPARMS", 0x6d01},
+{"MSIOSETPARMS", 0x6d02},
+{"MTIOCGET", 0x6d02},
+{"MTIOCGETDRIVETYPE", 0x6d03},
+{"PIOCSTATUS", 0x7101},
+{"PIOCSTOP", 0x7102},
+{"PIOCWSTOP", 0x7103},
+{"PIOCRUN", 0x7104},
+{"PIOCGTRACE", 0x7105},
+{"PIOCSTRACE", 0x7106},
+{"PIOCSSIG", 0x7107},
+{"PIOCKILL", 0x7108},
+{"PIOCUNKILL", 0x7109},
+{"PIOCGHOLD", 0x710a},
+{"PIOCSHOLD", 0x710b},
+{"PIOCMAXSIG", 0x710c},
+{"PIOCACTION", 0x710d},
+{"PIOCGFAULT", 0x710e},
+{"PIOCSFAULT", 0x710f},
+{"PIOCCFAULT", 0x7110},
+{"PIOCGENTRY", 0x7111},
+{"PIOCSENTRY", 0x7112},
+{"PIOCGEXIT", 0x7113},
+{"PIOCSEXIT", 0x7114},
+{"PIOCSFORK", 0x7115},
+{"PIOCRFORK", 0x7116},
+{"PIOCSRLC", 0x7117},
+{"PIOCRRLC", 0x7118},
+{"PIOCGREG", 0x7119},
+{"PIOCSREG", 0x711a},
+{"PIOCGFPREG", 0x711b},
+{"PIOCSFPREG", 0x711c},
+{"PIOCNICE", 0x711d},
+{"PIOCPSINFO", 0x711e},
+{"PIOCNMAP", 0x711f},
+{"PIOCMAP", 0x7120},
+{"PIOCOPENM", 0x7121},
+{"PIOCCRED", 0x7122},
+{"PIOCGROUPS", 0x7123},
+{"PIOCGETPR", 0x7124},
+{"PIOCGETU", 0x7125},
+{"PIOCSET", 0x7126},
+{"PIOCRESET", 0x7127},
+{"PIOCNWATCH", 0x7128},
+{"PIOCGWATCH", 0x7129},
+{"PIOCSWATCH", 0x712a},
+{"PIOCUSAGE", 0x712b},
+{"PIOCOPENPD", 0x712c},
+{"PIOCLWPIDS", 0x712d},
+{"PIOCOPENLWP", 0x712e},
+{"PIOCLSTATUS", 0x712f},
+{"PIOCLUSAGE", 0x7130},
+{"PIOCNAUXV", 0x7131},
+{"PIOCAUXV", 0x7132},
+{"PIOCGWIN", 0x7165},
+{"TIOCGETD", 0x7400},
+{"TIOCGETD", 0x7400},
+{"TIOCSETD", 0x7401},
+{"TIOCSETD", 0x7401},
+{"TIOCHPCL", 0x7402},
+{"TIOCHPCL", 0x7402},
+{"TIOCGETP", 0x7408},
+{"TIOCGETP", 0x7408},
+{"TIOCSETP", 0x7409},
+{"TIOCSETP", 0x7409},
+{"TIOCSETN", 0x740a},
+{"TIOCSETN", 0x740a},
+{"TIOCEXCL", 0x740d},
+{"TIOCEXCL", 0x740d},
+{"TIOCNXCL", 0x740e},
+{"TIOCNXCL", 0x740e},
+{"TIOCFLUSH", 0x7410},
+{"TIOCFLUSH", 0x7410},
+{"TIOCSETC", 0x7411},
+{"TIOCSETC", 0x7411},
+{"TIOCGETC", 0x7412},
+{"TIOCGETC", 0x7412},
+{"TIOCGPGRP", 0x7414},
+{"TIOCSPGRP", 0x7415},
+{"TIOCGSID", 0x7416},
+{"TIOCSTI", 0x7417},
+{"TIOCSSID", 0x7418},
+{"TIOCMSET", 0x741a},
+{"TIOCMBIS", 0x741b},
+{"TIOCMBIC", 0x741c},
+{"TIOCMGET", 0x741d},
+{"TIOCREMOTE", 0x741e},
+{"TIOCREMOTE", 0x741e},
+{"TIOCSIGNAL", 0x741f},
+{"TIOCSTART", 0x746e},
+{"TIOCSTART", 0x746e},
+{"TIOCSTOP", 0x746f},
+{"TIOCSTOP", 0x746f},
+{"TIOCNOTTY", 0x7471},
+{"TIOCNOTTY", 0x7471},
+{"TIOCOUTQ", 0x7473},
+{"TIOCOUTQ", 0x7473},
+{"TIOCGLTC", 0x7474},
+{"TIOCGLTC", 0x7474},
+{"TIOCSLTC", 0x7475},
+{"TIOCSLTC", 0x7475},
+{"TIOCCDTR", 0x7478},
+{"TIOCCDTR", 0x7478},
+{"TIOCSDTR", 0x7479},
+{"TIOCSDTR", 0x7479},
+{"TIOCCBRK", 0x747a},
+{"TIOCCBRK", 0x747a},
+{"TIOCSBRK", 0x747b},
+{"TIOCSBRK", 0x747b},
+{"TIOCLGET", 0x747c},
+{"TIOCLGET", 0x747c},
+{"TIOCLSET", 0x747d},
+{"TIOCLSET", 0x747d},
+{"TIOCLBIC", 0x747e},
+{"TIOCLBIC", 0x747e},
+{"TIOCLBIS", 0x747f},
+{"TIOCLBIS", 0x747f},
+{"VOLIOCMAP", 0x7601},
+{"VUIDSFORMAT", 0x7601},
+{"VUIDSFORMAT", 0x7601},
+{"VUIDGFORMAT", 0x7602},
+{"VUIDGFORMAT", 0x7602},
+{"VOLIOCUNMAP", 0x7602},
+{"VOLIOCEVENT", 0x7603},
+{"VUIDSADDR", 0x7603},
+{"VUIDSADDR", 0x7603},
+{"VUIDGADDR", 0x7604},
+{"VUIDGADDR", 0x7604},
+{"VOLIOCEJECT", 0x7604},
+{"VOLIOCCHECK", 0x7605},
+{"VOLIOCINUSE", 0x7606},
+{"VOLIOCDGATTR", 0x7607},
+{"VOLIOCDSATTR", 0x7608},
+{"VOLIOCDCHECK", 0x7609},
+{"VOLIOCCANCEL", 0x760a},
+{"VOLIOCINFO", 0x760b},
+{"VOLIOCSATTR", 0x760c},
+{"VOLIOCGATTR", 0x760d},
+{"VOLIOCDINUSE", 0x760e},
+{"VOLIOCDAEMON", 0x760f},
+{"VOLIOCFLAGS", 0x7610},
+{"VOLIOCEXTRA4", 0x7611},
+{"VOLIOCEXTRA5", 0x7612},
+{"VOLIOCEXTRA6", 0x7613},
+{"VOLIOCEXTRA7", 0x7614},
+{"S_IOCGETMODE", 0x7a01},
+{"S_IOCSETMODE", 0x7a02},
+{"S_IOCGETSTATS", 0x7a03},
+{"S_IOCCLRSTATS", 0x7a04},
+{"S_IOCGETSPEED", 0x7a05},
+{"S_IOCGETMRU", 0x7a06},
+{"S_IOCSETMRU", 0x7a07},
+{"S_IOCGETMTU", 0x7a08},
+{"S_IOCSETMTU", 0x7a09},
+{"S_IOCGETMCTL", 0x7a0a},
+{"TL_IOC_CREDOPT", 0x544c01},
diff --git a/linux/sparc/ioctls_arch0.h b/linux/sparc/ioctls_arch0.h
new file mode 100644
index 0000000..07dccdd
--- /dev/null
+++ b/linux/sparc/ioctls_arch0.h
@@ -0,0 +1,129 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/sparc/include/ tree. */
+{ "asm/apc.h", "APCIOCGBPORT", _IOC_READ, 0x4104, 0x04 },
+{ "asm/apc.h", "APCIOCGCPWR", _IOC_READ, 0x4102, 0x04 },
+{ "asm/apc.h", "APCIOCGFANCTL", _IOC_READ, 0x4100, 0x04 },
+{ "asm/apc.h", "APCIOCSBPORT", _IOC_WRITE, 0x4105, 0x04 },
+{ "asm/apc.h", "APCIOCSCPWR", _IOC_WRITE, 0x4103, 0x04 },
+{ "asm/apc.h", "APCIOCSFANCTL", _IOC_WRITE, 0x4101, 0x04 },
+{ "asm/display7seg.h", "D7SIOCRD", _IOC_READ, 0x7045, 0x04 },
+{ "asm/display7seg.h", "D7SIOCTM", _IOC_NONE, 0x7047, 0x00 },
+{ "asm/display7seg.h", "D7SIOCWR", _IOC_WRITE, 0x7046, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_CPU_TEMPERATURE", _IOC_READ, 0x7040, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_CPU_VOLTAGE", _IOC_READ, 0x7041, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_ETHERNET_TEMPERATURE", _IOC_READ, 0x7047, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_FAN_STATUS", _IOC_READ, 0x7042, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_GLOBALADDRESS", _IOC_READ, 0x7049, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_MTHRBD_TEMPERATURE", _IOC_READ, 0x7048, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_SCSI_TEMPERATURE", _IOC_READ, 0x7046, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_SHUTDOWN_TEMPERATURE", _IOC_READ, 0x7044, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_VOLTAGE_STATUS", _IOC_READ, 0x7045, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_WARNING_TEMPERATURE", _IOC_READ, 0x7043, 0x04 },
+{ "asm/fbio.h", "FBIOGATTR", _IOC_READ, 0x4606, 0x58 },
+{ "asm/fbio.h", "FBIOGCURMAX", _IOC_READ, 0x461c, 0x04 },
+{ "asm/fbio.h", "FBIOGCURPOS", _IOC_WRITE, 0x461b, 0x04 },
+{ "asm/fbio.h", "FBIOGCURSOR", _IOC_READ|_IOC_WRITE, 0x4619, 0x2c },
+{ "asm/fbio.h", "FBIOGETCMAP", _IOC_WRITE, 0x4604, 0x14 },
+{ "asm/fbio.h", "FBIOGTYPE", _IOC_READ, 0x4600, 0x18 },
+{ "asm/fbio.h", "FBIOGVIDEO", _IOC_READ, 0x4608, 0x04 },
+{ "asm/fbio.h", "FBIOPUTCMAP", _IOC_WRITE, 0x4603, 0x14 },
+{ "asm/fbio.h", "FBIOSATTR", _IOC_WRITE, 0x4605, 0x58 },
+{ "asm/fbio.h", "FBIOSCURPOS", _IOC_WRITE, 0x461a, 0x04 },
+{ "asm/fbio.h", "FBIOSCURSOR", _IOC_WRITE, 0x4618, 0x2c },
+{ "asm/fbio.h", "FBIOSVIDEO", _IOC_WRITE, 0x4607, 0x04 },
+{ "asm/fbio.h", "FBIO_WID_ALLOC", _IOC_READ|_IOC_WRITE, 0x461e, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_FREE", _IOC_WRITE, 0x461f, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_GET", _IOC_READ|_IOC_WRITE, 0x4621, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_PUT", _IOC_WRITE, 0x4620, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTALLOC", _IOC_READ|_IOC_WRITE, 0x4c35, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTFREE", _IOC_WRITE, 0x4c36, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTPOST", _IOC_WRITE, 0x4c38, 0x1c },
+{ "asm/fbio.h", "LEO_CLUTREAD", _IOC_WRITE, 0x4c37, 0x1c },
+{ "asm/fbio.h", "LEO_GETGAMMA", _IOC_READ, 0x4c45, 0x04 },
+{ "asm/fbio.h", "LEO_SETGAMMA", _IOC_WRITE, 0x4c44, 0x04 },
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x5407, 0x00 },
+{ "asm/ioctls.h", "TCGETA", _IOC_READ, 0x5401, 0x12 },
+{ "asm/ioctls.h", "TCGETS", _IOC_READ, 0x5408, 0x24 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x540c, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x5405, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm/ioctls.h", "TCSETA", _IOC_WRITE, 0x5402, 0x12 },
+{ "asm/ioctls.h", "TCSETAF", _IOC_WRITE, 0x5404, 0x12 },
+{ "asm/ioctls.h", "TCSETAW", _IOC_WRITE, 0x5403, 0x12 },
+{ "asm/ioctls.h", "TCSETS", _IOC_WRITE, 0x5409, 0x24 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x540d, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", _IOC_WRITE, 0x540b, 0x24 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x540f, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", _IOC_WRITE, 0x540a, 0x24 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x540e, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x5406, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", _IOC_NONE, 0x747a, 0x00 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_NONE, 0x7424, 0x00 },
+{ "asm/ioctls.h", "TIOCEXCL", _IOC_NONE, 0x740d, 0x00 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", _IOC_READ, 0x7400, 0x04 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7483, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x7486, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x5441, 0x20 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x7485, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", _IOC_READ, 0x7464, 0x04 },
+{ "asm/ioctls.h", "TIOCGWINSZ", _IOC_READ, 0x7468, 0x08 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", _IOC_WRITE, 0x746b, 0x04 },
+{ "asm/ioctls.h", "TIOCMBIS", _IOC_WRITE, 0x746c, 0x04 },
+{ "asm/ioctls.h", "TIOCMGET", _IOC_READ, 0x746a, 0x04 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm/ioctls.h", "TIOCMSET", _IOC_WRITE, 0x746d, 0x04 },
+{ "asm/ioctls.h", "TIOCNOTTY", _IOC_NONE, 0x7471, 0x00 },
+{ "asm/ioctls.h", "TIOCNXCL", _IOC_NONE, 0x740e, 0x00 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", _IOC_WRITE, 0x7470, 0x04 },
+{ "asm/ioctls.h", "TIOCSBRK", _IOC_NONE, 0x747b, 0x00 },
+{ "asm/ioctls.h", "TIOCSCTTY", _IOC_NONE, 0x7484, 0x00 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm/ioctls.h", "TIOCSETD", _IOC_WRITE, 0x7401, 0x04 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x7488, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7482, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x7487, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x5442, 0x20 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", _IOC_WRITE, 0x7465, 0x04 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", _IOC_WRITE, 0x7472, 0x01 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCSWINSZ", _IOC_WRITE, 0x7467, 0x08 },
+{ "asm/ioctls.h", "TIOCVHANGUP", _IOC_NONE, 0x5437, 0x00 },
+{ "asm/openpromio.h", "OPIOCGET", _IOC_READ|_IOC_WRITE, 0x4f01, 0x14 },
+{ "asm/openpromio.h", "OPIOCGETCHILD", _IOC_READ|_IOC_WRITE, 0x4f06, 0x04 },
+{ "asm/openpromio.h", "OPIOCGETNEXT", _IOC_READ|_IOC_WRITE, 0x4f05, 0x04 },
+{ "asm/openpromio.h", "OPIOCGETOPTNODE", _IOC_READ, 0x4f04, 0x04 },
+{ "asm/openpromio.h", "OPIOCNEXTPROP", _IOC_READ|_IOC_WRITE, 0x4f03, 0x14 },
+{ "asm/openpromio.h", "OPIOCSET", _IOC_WRITE, 0x4f02, 0x14 },
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
+{ "asm/watchdog.h", "WIOCGSTAT", _IOC_READ, 0x570c, 0x04 },
+{ "asm/watchdog.h", "WIOCSTART", _IOC_NONE, 0x570a, 0x00 },
+{ "asm/watchdog.h", "WIOCSTOP", _IOC_NONE, 0x570b, 0x00 },
diff --git a/linux/sparc/ioctls_inc0.h b/linux/sparc/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/sparc/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/sparc/signalent.h b/linux/sparc/signalent.h
index e059b5d..83ca9ca 100644
--- a/linux/sparc/signalent.h
+++ b/linux/sparc/signalent.h
@@ -30,3 +30,4 @@
"SIGLOST", /* 29 */
"SIGUSR1", /* 30 */
"SIGUSR2", /* 31 */
+ "SIGRTMIN", /* 32 */
diff --git a/linux/sparc/syscallent.h b/linux/sparc/syscallent.h
index a194d5f..3ccbd71 100644
--- a/linux/sparc/syscallent.h
+++ b/linux/sparc/syscallent.h
@@ -1,407 +1,355 @@
- { 0, 0, sys_restart_syscall, "restart_syscall" },/* 0 */
- { 1, TP|SE, sys_exit, "exit" }, /* 1 */
- { 0, TP, sys_fork, "fork" }, /* 2 */
- { 3, TD, sys_read, "read" }, /* 3 */
- { 3, TD, sys_write, "write" }, /* 4 */
- { 3, TD|TF, sys_open, "open" }, /* 5 */
- { 1, TD, sys_close, "close" }, /* 6 */
- { 4, TP, sys_wait4, "wait4" }, /* 7 */
- { 2, TD|TF, sys_creat, "creat" }, /* 8 */
- { 2, TF, sys_link, "link" }, /* 9 */
- { 1, TF, sys_unlink, "unlink" }, /* 10 */
- { 2, TF|TP|SE|SI, sys_execv, "execv" }, /* 11 */
- { 1, TF, sys_chdir, "chdir" }, /* 12 */
- { 3, TF, sys_chown16, "chown"}, /* 13 */
- { 3, TF, sys_mknod, "mknod" }, /* 14 */
- { 2, TF, sys_chmod, "chmod" }, /* 15 */
- { 3, TF, sys_chown16, "lchown" }, /* 16 */
- { 1, TM|SI, sys_brk, "brk" }, /* 17 */
- { 4, 0, printargs, "perfctr" }, /* 18 */
- { 3, TD, sys_lseek, "lseek" }, /* 19 */
- { 0, 0, sys_getpid, "getpid" }, /* 20 */
- { 2, 0, sys_capget, "capget" }, /* 21 */
- { 2, 0, sys_capset, "capset" }, /* 22 */
- { 1, 0, sys_setuid16, "setuid" }, /* 23 */
- { 0, NF, sys_getuid16, "getuid" }, /* 24 */
- { 1, 0, sys_time, "time" }, /* 25 */
- { 5, 0, sys_ptrace, "ptrace" }, /* 26 */
- { 1, 0, sys_alarm, "alarm" }, /* 27 */
- { 2, TS, sys_sigaltstack,"sigaltstack" }, /* 28 */
- { 0, TS, sys_pause, "pause" }, /* 29 */
- { 2, TF, sys_utime, "utime" }, /* 30 */
- { 3, TF, sys_chown, "lchown32" }, /* 31 */
- { 3, TD, sys_fchown, "fchown32" }, /* 32 */
- { 2, TF, sys_access, "access" }, /* 33 */
- { 1, 0, sys_nice, "nice" }, /* 34 */
- { 3, TF, sys_chown, "chown32" }, /* 35 */
- { 0, 0, sys_sync, "sync" }, /* 36 */
- { 2, TS, sys_kill, "kill" }, /* 37 */
- { 2, TF, sys_stat, "stat" }, /* 38 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 39 */
- { 2, TF, sys_lstat, "lstat" }, /* 40 */
- { 2, TD, sys_dup, "dup" }, /* 41 */
- { 0, TD, sys_pipe, "pipe" }, /* 42 */
- { 1, 0, sys_times, "times" }, /* 43 */
- { 0, NF, sys_getuid, "getuid32" }, /* 44 */
- { 2, TF, sys_umount2, "umount" }, /* 45 */
- { 1, 0, sys_setgid16, "setgid" }, /* 46 */
- { 0, NF, sys_getgid16, "getgid" }, /* 47 */
- { 3, TS, sys_signal, "signal" }, /* 48 */
- { 0, NF, sys_geteuid16, "geteuid" }, /* 49 */
- { 0, NF, sys_getegid16, "getegid" }, /* 50 */
- { 1, TF, sys_acct, "acct" }, /* 51 */
- { 2, 0, printargs, "memory_ordering" }, /* 52 */
- { 0, NF, sys_getgid, "getgid32" }, /* 53 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 54 */
- { 4, 0, sys_reboot, "reboot" }, /* 55 */
- { 6, TD|TM|SI, sys_mmap, "mmap2" }, /* 56 */
- { 2, TF, sys_symlink, "symlink" }, /* 57 */
- { 3, TF, sys_readlink, "readlink" }, /* 58 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 59 */
- { 1, 0, sys_umask, "umask" }, /* 60 */
- { 1, TF, sys_chroot, "chroot" }, /* 61 */
- { 2, TD, sys_fstat, "fstat" }, /* 62 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 63 */
- { 0, 0, sys_getpagesize,"getpagesize" }, /* 64 */
- { 3, TM, sys_msync, "msync" }, /* 65 */
- { 0, TP, sys_vfork, "vfork" }, /* 66 */
- { 5, TD, sys_pread, "pread" }, /* 67 */
- { 5, TD, sys_pwrite, "pwrite" }, /* 68 */
- { 0, NF, sys_geteuid, "geteuid32" }, /* 69 */
- { 0, NF, sys_getegid, "getegid32" }, /* 70 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 71 */
- { 2, 0, sys_setreuid, "setreuid32" }, /* 72 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 73 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 74 */
- { 3, TM, sys_madvise, "madvise" }, /* 75 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 76 */
- { 3, TF, sys_truncate64, "truncate64" }, /* 77 */
- { 3, TM, sys_mincore, "mincore" }, /* 78 */
- { 2, 0, sys_getgroups16,"getgroups" }, /* 79 */
- { 2, 0, sys_setgroups16,"setgroups" }, /* 80 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 81 */
- { 2, 0, sys_setgroups, "setgroups32" }, /* 82 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 83 */
- { 3, TD, sys_ftruncate64,"ftruncate64" }, /* 84 */
- { 2, TF, sys_swapon, "swapon" }, /* 85 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 86 */
- { 1, 0, sys_setuid, "setuid32" }, /* 87 */
- { 2, 0, sys_sethostname,"sethostname" }, /* 88 */
- { 1, 0, sys_setgid, "setgid32" }, /* 89 */
- { 2, TD, sys_dup2, "dup2" }, /* 90 */
- { 1, NF, sys_setfsuid, "setfsuid32" }, /* 91 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 92 */
- { 5, TD, sys_select, "select" }, /* 93 */
- { 1, NF, sys_setfsgid, "setfsgid32" }, /* 94 */
- { 1, TD, sys_fsync, "fsync" }, /* 95 */
- { 3, 0, sys_setpriority,"setpriority" }, /* 96 */
- { 3, TN, sys_socket, "socket" }, /* 97 */
- { 3, TN, sys_connect, "connect" }, /* 98 */
- { 3, TN, sys_accept, "accept" }, /* 99 */
- { 2, 0, sys_getpriority,"getpriority" }, /* 100 */
- { 0, TS, sys_rt_sigreturn,"rt_sigreturn" }, /* 101 */
- { 5, TS, sys_rt_sigaction,"rt_sigaction" }, /* 102 */
- { 4, TS, sys_rt_sigprocmask,"rt_sigprocmask" }, /* 103 */
- { 2, TS, sys_rt_sigpending,"rt_sigpending" }, /* 104 */
- { 4, TS, sys_rt_sigtimedwait,"rt_sigtimedwait" },/* 105 */
- { 3, TS, sys_rt_sigqueueinfo,"rt_sigqueueinfo" },/* 106 */
- { 2, TS, sys_rt_sigsuspend,"rt_sigsuspend" }, /* 107 */
- { 3, 0, sys_setresuid, "setresuid32" }, /* 108 */
- { 3, 0, sys_getresuid, "getresuid32" }, /* 109 */
- { 3, 0, sys_setresgid, "setresgid32" }, /* 110 */
- { 3, 0, sys_getresgid, "getresgid32" }, /* 111 */
- { 2, 0, sys_setregid, "setregid32" }, /* 112 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 113 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 114 */
- { 2, 0, sys_getgroups, "getgroups32" }, /* 115 */
- { 2, 0, sys_gettimeofday,"gettimeofday" }, /* 116 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 117 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 118 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 119 */
- { 3, TD, sys_readv, "readv" }, /* 120 */
- { 3, TD, sys_writev, "writev" }, /* 121 */
- { 2, 0, sys_settimeofday,"settimeofday" }, /* 122 */
- { 3, TD, sys_fchown16, "fchown" }, /* 123 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 124 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 125 */
- { 2, 0, sys_setreuid16, "setreuid" }, /* 126 */
- { 2, 0, sys_setregid16, "setregid" }, /* 127 */
- { 2, TF, sys_rename, "rename" }, /* 128 */
- { 2, TF, sys_truncate, "truncate" }, /* 129 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 130 */
- { 2, TD, sys_flock, "flock" }, /* 131 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 132 */
- { 6, TN, sys_sendto, "sendto" }, /* 133 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 134 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 135 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 136 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 137 */
- { 2, TF, sys_utimes, "utimes" }, /* 138 */
- { 2, TF, sys_stat64, "stat64" }, /* 139 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 140 */
- { 3, TN, sys_getpeername,"getpeername" }, /* 141 */
- { 6, 0, sys_futex, "futex" }, /* 142 */
- { 0, 0, sys_gettid, "gettid" }, /* 143 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 144 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 145 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 146 */
- { 5, 0, sys_prctl, "prctl" }, /* 147 */
- { 5, 0, printargs, "pciconfig_read" }, /* 148 */
- { 5, 0, printargs, "pciconfig_write" }, /* 149 */
- { 3, TN, sys_getsockname,"getsockname" }, /* 150 */
- { 4, TN, sys_getmsg, "getmsg" }, /* 151 */
- { 4, TN, sys_putmsg, "putmsg" }, /* 152 */
- { 3, TD, sys_poll, "poll" }, /* 153 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 154 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 155 */
- { 4, 0, printargs, "getdirentries" }, /* 156 */
- { 2, TF, sys_statfs, "statfs" }, /* 157 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 158 */
- { 1, TF, sys_umount, "oldumount" }, /* 159 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 160 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 161 */
- { 2, 0, printargs, "getdomainname" }, /* 162 */
- { 2, 0, sys_setdomainname,"setdomainname" }, /* 163 */
- { 5, 0, printargs, "utrap_install" }, /* 164 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 165 */
- { 1, 0, sys_set_tid_address,"set_tid_address" }, /* 166 */
- { 5, TF, sys_mount, "mount" }, /* 167 */
- { 2, 0, sys_ustat, "ustat" }, /* 168 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 169 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 170 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 171 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 172 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 173 */
- { 3, TD, sys_getdents, "getdents" }, /* 174 */
- { 0, 0, sys_setsid, "setsid" }, /* 175 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 176 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 177 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 178 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 179 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 180 */
- { 2, TF, sys_removexattr,"removexattr" }, /* 181 */
- { 2, TF, sys_removexattr,"lremovexattr" }, /* 182 */
- { 1, TS, sys_sigpending, "sigpending" }, /* 183 */
- { 5, 0, sys_query_module,"query_module" }, /* 184 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 185 */
- { 2, TD, sys_fremovexattr,"fremovexattr" }, /* 186 */
- { 2, TS, sys_kill, "tkill" }, /* 187 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 188 */
- { 1, 0, sys_uname, "uname" }, /* 189 */
- { 3, 0, sys_init_module,"init_module" }, /* 190 */
- { 1, 0, sys_personality,"personality" }, /* 191 */
- { 5, TM|SI, sys_remap_file_pages,"remap_file_pages" },/* 192 */
- { 1, TD, sys_epoll_create,"epoll_create" }, /* 193 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 194 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 195 */
- { 2, 0, sys_ulimit, "ulimit" }, /* 196 */
- { 0, 0, sys_getppid, "getppid" }, /* 197 */
- { 3, TS, sys_sigaction, "sigaction" }, /* 198 */
- { 0, TS, sys_siggetmask, "sgetmask" }, /* 199 */
- { 1, TS, sys_sigsetmask, "ssetmask" }, /* 200 */
- { 3, TS, sys_sigsuspend, "sigsuspend" }, /* 201 */
- { 2, TF, sys_lstat, "lstat" }, /* 202 */
- { 1, TF, sys_uselib, "uselib" }, /* 203 */
- { 3, TD, sys_readdir, "readdir" }, /* 204 */
- { 4, TD, sys_readahead, "readahead" }, /* 205 */
- { 2, TD, sys_socketcall, "socketcall" }, /* 206 */
- { 3, 0, sys_syslog, "syslog" }, /* 207 */
- { 4, 0, sys_lookup_dcookie,"lookup_dcookie" }, /* 208 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 209 */
- { 6, TD, sys_fadvise64_64,"fadvise64_64" }, /* 210 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 211 */
- { 3, TP, sys_waitpid, "waitpid" }, /* 212 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 213 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 214 */
- { 5, TI, sys_ipc, "ipc" }, /* 215 */
- { 0, TS, sys_sigreturn, "sigreturn" }, /* 216 */
- { 5, TP, sys_clone, "clone" }, /* 217 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 218 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 219 */
- { 3, TS, sys_sigprocmask,"sigprocmask" }, /* 220 */
- { 2, 0, sys_create_module,"create_module" }, /* 221 */
- { 2, 0, sys_delete_module,"delete_module" }, /* 222 */
- { 1, 0, sys_get_kernel_syms,"get_kernel_syms"}, /* 223 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 224 */
- { 0, 0, sys_bdflush, "bdflush" }, /* 225 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 226 */
- { 5, 0, sys_afs_syscall,"afs_syscall" }, /* 227 */
- { 1, NF, sys_setfsuid16, "setfsuid" }, /* 228 */
- { 1, NF, sys_setfsgid16, "setfsgid" }, /* 229 */
- { 5, TD, sys_select, "select" }, /* 230 */
- { 1, 0, sys_time, "time" }, /* 231 */
- { 2, TF, sys_stat, "stat" }, /* 232 */
- { 1, 0, sys_stime, "stime" }, /* 233 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 234 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 235 */
- { 5, TD, sys_llseek, "_llseek" }, /* 236 */
- { 2, TM, sys_mlock, "mlock" }, /* 237 */
- { 2, TM, sys_munlock, "munlock" }, /* 238 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 239 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 240 */
- { 2, 0, sys_sched_setparam,"sched_setparam"}, /* 241 */
- { 2, 0, sys_sched_getparam,"sched_getparam"}, /* 242 */
- { 3, 0, sys_sched_setscheduler,"sched_setscheduler"},/* 243 */
- { 1, 0, sys_sched_getscheduler,"sched_getscheduler"},/* 244 */
- { 0, 0, sys_sched_yield,"sched_yield" }, /* 245 */
- { 1, 0, sys_sched_get_priority_max,"sched_get_priority_max"},/* 246 */
- { 1, 0, sys_sched_get_priority_min,"sched_get_priority_min"},/* 247 */
- { 2, 0, sys_sched_rr_get_interval,"sched_rr_get_interval"},/* 248 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 249 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 250 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 251 */
- { 1, 0, sys_getsid, "getsid" }, /* 252 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 253 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 254 */
- { 5, 0, printargs, "aplib" }, /* 255 */
- { 2, 0, sys_clock_settime,"clock_settime" }, /* 256 */
- { 2, 0, sys_clock_gettime,"clock_gettime" }, /* 257 */
- { 2, 0, sys_clock_getres,"clock_getres" }, /* 258 */
- { 4, 0, sys_clock_nanosleep,"clock_nanosleep" },/* 259 */
- { 3, 0, sys_sched_setaffinity,"sched_setaffinity" },/* 260 */
- { 3, 0, sys_sched_getaffinity,"sched_getaffinity" },/* 261 */
- { 4, 0, sys_timer_settime,"timer_settime" }, /* 262 */
- { 2, 0, sys_timer_gettime,"timer_gettime" }, /* 263 */
- { 1, 0, sys_timer_getoverrun,"timer_getoverrun" },/* 264 */
- { 1, 0, sys_timer_delete,"timer_delete" }, /* 265 */
- { 3, 0, sys_timer_create,"timer_create" }, /* 266 */
- { 5, 0, NULL, NULL }, /* 267 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 268 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 269 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 270 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 271 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 272 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 273 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 274 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 275 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 276 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 277 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 278 */
- { 5, TP, sys_waitid, "waitid" }, /* 279 */
- { 4, TD, sys_tee, "tee" }, /* 280 */
- { 5, 0, sys_add_key, "add_key" }, /* 281 */
- { 4, 0, sys_request_key, "request_key" }, /* 282 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 283 */
- { 4, TD|TF, sys_openat, "openat" }, /* 284 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 285 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 286 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 287 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 288 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 289 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 290 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 291 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 292 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 293 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 294 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 295 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 296 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 297 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 298 */
- { 1, TP, sys_unshare, "unshare" }, /* 299 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 300 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 301 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 302 */
- { 6, TM, sys_mbind, "mbind" }, /* 303 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 304 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 305 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 306 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 307 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 308 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 309 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 310 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 311 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 312 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 313 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 314 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 315 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 316 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 317 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 318 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 319 */
- { 3, TD, sys_dup3, "dup3" }, /* 320 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 321 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 322 */
- { 4, TN, sys_accept4, "accept4" }, /* 323 */
- { 5, TD, sys_preadv, "preadv" }, /* 324 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 325 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 326 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 327 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 328 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 329 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 330 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 331 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 332 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 333 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 334 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 335 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 336 */
- { 2, TD, sys_setns, "setns" }, /* 337 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 338 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 339 */
- { 0, NF, printargs, "kern_features" }, /* 340 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 341 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 342 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 343 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 344 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 345 */
- { 5, 0, NULL, NULL }, /* 346 */
- { 5, 0, NULL, NULL }, /* 347 */
- { 5, 0, NULL, NULL }, /* 348 */
- { 5, 0, NULL, NULL }, /* 349 */
- { 5, 0, NULL, NULL }, /* 350 */
- { 5, 0, NULL, NULL }, /* 351 */
- { 5, 0, NULL, NULL }, /* 352 */
+[ 0] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[ 1] = { 1, TP|SE, sys_exit, "exit" },
+[ 2] = { 0, TP, sys_fork, "fork" },
+[ 3] = { 3, TD, sys_read, "read" },
+[ 4] = { 3, TD, sys_write, "write" },
+[ 5] = { 3, TD|TF, sys_open, "open" },
+[ 6] = { 1, TD, sys_close, "close" },
+[ 7] = { 4, TP, sys_wait4, "wait4" },
+[ 8] = { 2, TD|TF, sys_creat, "creat" },
+[ 9] = { 2, TF, sys_link, "link" },
+[ 10] = { 1, TF, sys_unlink, "unlink" },
+[ 11] = { 2, TF|TP|SE|SI, sys_execv, "execv" },
+[ 12] = { 1, TF, sys_chdir, "chdir" },
+[ 13] = { 3, TF, sys_chown16, "chown" },
+[ 14] = { 3, TF, sys_mknod, "mknod" },
+[ 15] = { 2, TF, sys_chmod, "chmod" },
+[ 16] = { 3, TF, sys_chown16, "lchown" },
+[ 17] = { 1, TM|SI, sys_brk, "brk" },
+[ 18] = { 4, 0, printargs, "perfctr" },
+[ 19] = { 3, TD, sys_lseek, "lseek" },
+[ 20] = { 0, 0, sys_getpid, "getpid" },
+[ 21] = { 2, 0, sys_capget, "capget" },
+[ 22] = { 2, 0, sys_capset, "capset" },
+[ 23] = { 1, 0, sys_setuid16, "setuid" },
+[ 24] = { 0, NF, sys_getuid16, "getuid" },
+[ 25] = { 4, TD, sys_vmsplice, "vmsplice" },
+[ 26] = { 5, 0, sys_ptrace, "ptrace" },
+[ 27] = { 1, 0, sys_alarm, "alarm" },
+[ 28] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[ 29] = { 0, TS, sys_pause, "pause" },
+[ 30] = { 2, TF, sys_utime, "utime" },
+[ 31] = { 3, TF, sys_chown, "lchown32" },
+[ 32] = { 3, TD, sys_fchown, "fchown32" },
+[ 33] = { 2, TF, sys_access, "access" },
+[ 34] = { 1, 0, sys_nice, "nice" },
+[ 35] = { 3, TF, sys_chown, "chown32" },
+[ 36] = { 0, 0, sys_sync, "sync" },
+[ 37] = { 2, TS, sys_kill, "kill" },
+[ 38] = { 2, TF, sys_stat, "stat" },
+[ 39] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[ 40] = { 2, TF, sys_lstat, "lstat" },
+[ 41] = { 2, TD, sys_dup, "dup" },
+[ 42] = { 0, TD, sys_pipe, "pipe" },
+[ 43] = { 1, 0, sys_times, "times" },
+[ 44] = { 0, NF, sys_getuid, "getuid32" },
+[ 45] = { 2, TF, sys_umount2, "umount2" },
+[ 46] = { 1, 0, sys_setgid16, "setgid" },
+[ 47] = { 0, NF, sys_getgid16, "getgid" },
+[ 48] = { 3, TS, sys_signal, "signal" },
+[ 49] = { 0, NF, sys_geteuid16, "geteuid" },
+[ 50] = { 0, NF, sys_getegid16, "getegid" },
+[ 51] = { 1, TF, sys_acct, "acct" },
+[ 52] = { 2, 0, printargs, "memory_ordering" },
+[ 53] = { 0, NF, sys_getgid, "getgid32" },
+[ 54] = { 3, TD, sys_ioctl, "ioctl" },
+[ 55] = { 4, 0, sys_reboot, "reboot" },
+[ 56] = { 6, TD|TM|SI, sys_mmap, "mmap2" },
+[ 57] = { 2, TF, sys_symlink, "symlink" },
+[ 58] = { 3, TF, sys_readlink, "readlink" },
+[ 59] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 60] = { 1, 0, sys_umask, "umask" },
+[ 61] = { 1, TF, sys_chroot, "chroot" },
+[ 62] = { 2, TD, sys_fstat, "fstat" },
+[ 63] = { 2, TD, sys_fstat64, "fstat64" },
+[ 64] = { 0, 0, sys_getpagesize, "getpagesize" },
+[ 65] = { 3, TM, sys_msync, "msync" },
+[ 66] = { 0, TP, sys_vfork, "vfork" },
+[ 67] = { 5, TD, sys_pread, "pread64" },
+[ 68] = { 5, TD, sys_pwrite, "pwrite64" },
+[ 69] = { 0, NF, sys_geteuid, "geteuid32" },
+[ 70] = { 0, NF, sys_getegid, "getegid32" },
+[ 71] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 72] = { 2, 0, sys_setreuid, "setreuid32" },
+[ 73] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 74] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[ 75] = { 3, TM, sys_madvise, "madvise" },
+[ 76] = { 0, 0, sys_vhangup, "vhangup" },
+[ 77] = { 3, TF, sys_truncate64, "truncate64" },
+[ 78] = { 3, TM, sys_mincore, "mincore" },
+[ 79] = { 2, 0, sys_getgroups16, "getgroups" },
+[ 80] = { 2, 0, sys_setgroups16, "setgroups" },
+[ 81] = { 0, 0, sys_getpgrp, "getpgrp" },
+[ 82] = { 2, 0, sys_setgroups, "setgroups32" },
+[ 83] = { 3, 0, sys_setitimer, "setitimer" },
+[ 84] = { 3, TD, sys_ftruncate64, "ftruncate64" },
+[ 85] = { 2, TF, sys_swapon, "swapon" },
+[ 86] = { 2, 0, sys_getitimer, "getitimer" },
+[ 87] = { 1, 0, sys_setuid, "setuid32" },
+[ 88] = { 2, 0, sys_sethostname, "sethostname" },
+[ 89] = { 1, 0, sys_setgid, "setgid32" },
+[ 90] = { 2, TD, sys_dup2, "dup2" },
+[ 91] = { 1, NF, sys_setfsuid, "setfsuid32" },
+[ 92] = { 3, TD, sys_fcntl, "fcntl" },
+[ 93] = { 5, TD, sys_select, "select" },
+[ 94] = { 1, NF, sys_setfsgid, "setfsgid32" },
+[ 95] = { 1, TD, sys_fsync, "fsync" },
+[ 96] = { 3, 0, sys_setpriority, "setpriority" },
+[ 97] = { 3, TN, sys_socket, "socket" },
+[ 98] = { 3, TN, sys_connect, "connect" },
+[ 99] = { 3, TN, sys_accept, "accept" },
+[100] = { 2, 0, sys_getpriority, "getpriority" },
+[101] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[102] = { 5, TS, sys_rt_sigaction, "rt_sigaction" },
+[103] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[104] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[105] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[106] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[107] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[108] = { 3, 0, sys_setresuid, "setresuid32" },
+[109] = { 3, 0, sys_getresuid, "getresuid32" },
+[110] = { 3, 0, sys_setresgid, "setresgid32" },
+[111] = { 3, 0, sys_getresgid, "getresgid32" },
+[112] = { 2, 0, sys_setregid, "setregid32" },
+[113] = { 3, TN, sys_recvmsg, "recvmsg" },
+[114] = { 3, TN, sys_sendmsg, "sendmsg" },
+[115] = { 2, 0, sys_getgroups, "getgroups32" },
+[116] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[117] = { 2, 0, sys_getrusage, "getrusage" },
+[118] = { 5, TN, sys_getsockopt, "getsockopt" },
+[119] = { 2, TF, sys_getcwd, "getcwd" },
+[120] = { 3, TD, sys_readv, "readv" },
+[121] = { 3, TD, sys_writev, "writev" },
+[122] = { 2, 0, sys_settimeofday, "settimeofday" },
+[123] = { 3, TD, sys_fchown16, "fchown" },
+[124] = { 2, TD, sys_fchmod, "fchmod" },
+[125] = { 6, TN, sys_recvfrom, "recvfrom" },
+[126] = { 2, 0, sys_setreuid16, "setreuid" },
+[127] = { 2, 0, sys_setregid16, "setregid" },
+[128] = { 2, TF, sys_rename, "rename" },
+[129] = { 2, TF, sys_truncate, "truncate" },
+[130] = { 2, TD, sys_ftruncate, "ftruncate" },
+[131] = { 2, TD, sys_flock, "flock" },
+[132] = { 2, TF, sys_lstat64, "lstat64" },
+[133] = { 6, TN, sys_sendto, "sendto" },
+[134] = { 2, TN, sys_shutdown, "shutdown" },
+[135] = { 4, TN, sys_socketpair, "socketpair" },
+[136] = { 2, TF, sys_mkdir, "mkdir" },
+[137] = { 1, TF, sys_rmdir, "rmdir" },
+[138] = { 2, TF, sys_utimes, "utimes" },
+[139] = { 2, TF, sys_stat64, "stat64" },
+[140] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[141] = { 3, TN, sys_getpeername, "getpeername" },
+[142] = { 6, 0, sys_futex, "futex" },
+[143] = { 0, 0, sys_gettid, "gettid" },
+[144] = { 2, 0, sys_getrlimit, "getrlimit" },
+[145] = { 2, 0, sys_setrlimit, "setrlimit" },
+[146] = { 2, TF, sys_pivotroot, "pivot_root" },
+[147] = { 5, 0, sys_prctl, "prctl" },
+[148] = { 5, 0, printargs, "pciconfig_read" },
+[149] = { 5, 0, printargs, "pciconfig_write" },
+[150] = { 3, TN, sys_getsockname, "getsockname" },
+[151] = { 0, TD, sys_inotify_init, "inotify_init" },
+[152] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[153] = { 3, TD, sys_poll, "poll" },
+[154] = { 3, TD, sys_getdents64, "getdents64" },
+[155] = { 3, TD, sys_fcntl, "fcntl64" },
+[156] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[157] = { 2, TF, sys_statfs, "statfs" },
+[158] = { 2, TD, sys_fstatfs, "fstatfs" },
+[159] = { 1, TF, sys_umount, "umount" },
+[160] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[161] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[162] = { 2, 0, printargs, "getdomainname" },
+[163] = { 2, 0, sys_setdomainname, "setdomainname" },
+[164] = { 5, 0, printargs, "utrap_install" },
+[165] = { 4, TF, sys_quotactl, "quotactl" },
+[166] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[167] = { 5, TF, sys_mount, "mount" },
+[168] = { 2, 0, sys_ustat, "ustat" },
+[169] = { 5, TF, sys_setxattr, "setxattr" },
+[170] = { 5, TF, sys_setxattr, "lsetxattr" },
+[171] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[172] = { 4, TF, sys_getxattr, "getxattr" },
+[173] = { 4, TF, sys_getxattr, "lgetxattr" },
+[174] = { 3, TD, sys_getdents, "getdents" },
+[175] = { 0, 0, sys_setsid, "setsid" },
+[176] = { 1, TD, sys_fchdir, "fchdir" },
+[177] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[178] = { 3, TF, sys_listxattr, "listxattr" },
+[179] = { 3, TF, sys_listxattr, "llistxattr" },
+[180] = { 3, TD, sys_flistxattr, "flistxattr" },
+[181] = { 2, TF, sys_removexattr, "removexattr" },
+[182] = { 2, TF, sys_removexattr, "lremovexattr" },
+[183] = { 1, TS, sys_sigpending, "sigpending" },
+[184] = { 5, 0, sys_query_module, "query_module" },
+[185] = { 2, 0, sys_setpgid, "setpgid" },
+[186] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[187] = { 2, TS, sys_kill, "tkill" },
+[188] = { 1, TP|SE, sys_exit, "exit_group" },
+[189] = { 1, 0, sys_uname, "uname" },
+[190] = { 3, 0, sys_init_module, "init_module" },
+[191] = { 1, 0, sys_personality, "personality" },
+[192] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[193] = { 1, TD, sys_epoll_create, "epoll_create" },
+[194] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[195] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[196] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[197] = { 0, 0, sys_getppid, "getppid" },
+[198] = { 3, TS, sys_sigaction, "sigaction" },
+[199] = { 0, TS, sys_siggetmask, "sgetmask" },
+[200] = { 1, TS, sys_sigsetmask, "ssetmask" },
+[201] = { 3, TS, sys_sigsuspend, "sigsuspend" },
+[202] = { 2, TF, sys_lstat, "oldlstat" },
+[203] = { 1, TF, sys_uselib, "uselib" },
+[204] = { 3, TD, sys_readdir, "readdir" },
+[205] = { 4, TD, sys_readahead, "readahead" },
+[206] = { 2, TD, sys_socketcall, "socketcall" },
+[207] = { 3, 0, sys_syslog, "syslog" },
+[208] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[209] = { 5, TD, sys_fadvise64, "fadvise64" },
+[210] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[211] = { 3, TS, sys_tgkill, "tgkill" },
+[212] = { 3, TP, sys_waitpid, "waitpid" },
+[213] = { 1, TF, sys_swapoff, "swapoff" },
+[214] = { 1, 0, sys_sysinfo, "sysinfo" },
+[215] = { 5, TI, sys_ipc, "ipc" },
+[216] = { 0, TS, sys_sigreturn, "sigreturn" },
+[217] = { 5, TP, sys_clone, "clone" },
+[218] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[219] = { 1, 0, sys_adjtimex, "adjtimex" },
+[220] = { 3, TS, sys_sigprocmask, "sigprocmask" },
+[221] = { 2, 0, sys_create_module, "create_module" },
+[222] = { 2, 0, sys_delete_module, "delete_module" },
+[223] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[224] = { 1, 0, sys_getpgid, "getpgid" },
+[225] = { 0, 0, sys_bdflush, "bdflush" },
+[226] = { 3, 0, sys_sysfs, "sysfs" },
+[227] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[228] = { 1, NF, sys_setfsuid16, "setfsuid" },
+[229] = { 1, NF, sys_setfsgid16, "setfsgid" },
+[230] = { 5, TD, sys_select, "select" },
+[231] = { 1, 0, sys_time, "time" },
+[232] = { 6, TD, sys_splice, "splice" },
+[233] = { 1, 0, sys_stime, "stime" },
+[234] = { 3, TF, sys_statfs64, "statfs64" },
+[235] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[236] = { 5, TD, sys_llseek, "_llseek" },
+[237] = { 2, TM, sys_mlock, "mlock" },
+[238] = { 2, TM, sys_munlock, "munlock" },
+[239] = { 1, TM, sys_mlockall, "mlockall" },
+[240] = { 0, TM, sys_munlockall, "munlockall" },
+[241] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[242] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[243] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[244] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[245] = { 0, 0, sys_sched_yield, "sched_yield" },
+[246] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[247] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[248] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[249] = { 2, 0, sys_nanosleep, "nanosleep" },
+[250] = { 5, TM|SI, sys_mremap, "mremap" },
+[251] = { 1, 0, sys_sysctl, "_sysctl" },
+[252] = { 1, 0, sys_getsid, "getsid" },
+[253] = { 1, TD, sys_fdatasync, "fdatasync" },
+[254] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[255] = { 6, TD, sys_sync_file_range, "sync_file_range" },
+[256] = { 2, 0, sys_clock_settime, "clock_settime" },
+[257] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[258] = { 2, 0, sys_clock_getres, "clock_getres" },
+[259] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[260] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[261] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[262] = { 4, 0, sys_timer_settime, "timer_settime" },
+[263] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[264] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[265] = { 1, 0, sys_timer_delete, "timer_delete" },
+[266] = { 3, 0, sys_timer_create, "timer_create" },
+[267] = { },
+[268] = { 2, 0, sys_io_setup, "io_setup" },
+[269] = { 1, 0, sys_io_destroy, "io_destroy" },
+[270] = { 3, 0, sys_io_submit, "io_submit" },
+[271] = { 3, 0, sys_io_cancel, "io_cancel" },
+[272] = { 5, 0, sys_io_getevents, "io_getevents" },
+[273] = { 4, 0, sys_mq_open, "mq_open" },
+[274] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[275] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[276] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[277] = { 2, 0, sys_mq_notify, "mq_notify" },
+[278] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[279] = { 5, TP, sys_waitid, "waitid" },
+[280] = { 4, TD, sys_tee, "tee" },
+[281] = { 5, 0, sys_add_key, "add_key" },
+[282] = { 4, 0, sys_request_key, "request_key" },
+[283] = { 5, 0, sys_keyctl, "keyctl" },
+[284] = { 4, TD|TF, sys_openat, "openat" },
+[285] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[286] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[287] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[288] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[289] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[290] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[291] = { 4, TD|TF, sys_renameat, "renameat" },
+[292] = { 5, TD|TF, sys_linkat, "linkat" },
+[293] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[294] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[295] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[296] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[297] = { 6, TD, sys_pselect6, "pselect6" },
+[298] = { 5, TD, sys_ppoll, "ppoll" },
+[299] = { 1, TP, sys_unshare, "unshare" },
+[300] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[301] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[302] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[303] = { 6, TM, sys_mbind, "mbind" },
+[304] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[305] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[306] = { 4, 0, sys_kexec_load, "kexec_load" },
+[307] = { 6, TM, sys_move_pages, "move_pages" },
+[308] = { 3, 0, sys_getcpu, "getcpu" },
+[309] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[310] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[311] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[312] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[313] = { 1, TD, sys_eventfd, "eventfd" },
+[314] = { 6, TD, sys_fallocate, "fallocate" },
+[315] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[316] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[317] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[318] = { 2, TD, sys_eventfd2, "eventfd2" },
+[319] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[320] = { 3, TD, sys_dup3, "dup3" },
+[321] = { 2, TD, sys_pipe2, "pipe2" },
+[322] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[323] = { 4, TN, sys_accept4, "accept4" },
+[324] = { 5, TD, sys_preadv, "preadv" },
+[325] = { 5, TD, sys_pwritev, "pwritev" },
+[326] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[327] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[328] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[329] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[330] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[331] = { 4, 0, sys_prlimit64, "prlimit64" },
+[332] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[333] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[334] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[335] = { 1, TD, sys_syncfs, "syncfs" },
+[336] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[337] = { 2, TD, sys_setns, "setns" },
+[338] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[339] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[340] = { 0, NF, printargs, "kern_features" },
+[341] = { 5, 0, sys_kcmp, "kcmp" },
+[342] = { 3, TD, sys_finit_module, "finit_module" },
+[343] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[344] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[345] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[346] = { 3, 0, sys_seccomp, "seccomp", },
+[347] = { 3, 0, sys_getrandom, "getrandom", },
+[348] = { 2, TD, sys_memfd_create, "memfd_create", },
+[349] = { 3, TD, sys_bpf, "bpf", },
+[350] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
+[351 ... 352] = { },
+
#define SYS_socket_subcall 353
#include "subcall.h"
- { 6, 0, printargs, "socket_subcall"}, /* 353 */
- { 3, TN, sys_socket, "socket" }, /* 354 */
- { 3, TN, sys_bind, "bind" }, /* 355 */
- { 3, TN, sys_connect, "connect" }, /* 356 */
- { 2, TN, sys_listen, "listen" }, /* 357 */
- { 3, TN, sys_accept, "accept" }, /* 358 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 359 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 360 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 361 */
- { 4, TN, sys_send, "send" }, /* 362 */
- { 4, TN, sys_recv, "recv" }, /* 363 */
- { 6, TN, sys_sendto, "sendto" }, /* 364 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 365 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 366 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 367 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 368 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 369 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 370 */
- { 4, TN, sys_accept4, "accept4" }, /* 371 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 372 */
-#if SYS_ipc_subcall != 373
- #error fix me
-#endif
- { 4, 0, printargs, "ipc_subcall" }, /* 373 */
- { 4, TI, printargs, "semop" }, /* 374 */
- { 4, TI, sys_semget, "semget" }, /* 375 */
- { 4, TI, sys_semctl, "semctl" }, /* 376 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 377 */
- { 4, 0, printargs, "ipc_subcall" }, /* 378 */
- { 4, 0, printargs, "ipc_subcall" }, /* 379 */
- { 4, 0, printargs, "ipc_subcall" }, /* 380 */
- { 4, 0, printargs, "ipc_subcall" }, /* 381 */
- { 4, 0, printargs, "ipc_subcall" }, /* 382 */
- { 4, 0, printargs, "ipc_subcall" }, /* 383 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 384 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 385 */
- { 4, TI, sys_msgget, "msgget" }, /* 386 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 387 */
- { 4, 0, printargs, "ipc_subcall" }, /* 388 */
- { 4, 0, printargs, "ipc_subcall" }, /* 389 */
- { 4, 0, printargs, "ipc_subcall" }, /* 390 */
- { 4, 0, printargs, "ipc_subcall" }, /* 391 */
- { 4, 0, printargs, "ipc_subcall" }, /* 392 */
- { 4, 0, printargs, "ipc_subcall" }, /* 393 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 394 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 395 */
- { 4, TI, sys_shmget, "shmget" }, /* 396 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 397 */
- { 5, 0, NULL, NULL }, /* 398 */
- { 5, 0, NULL, NULL }, /* 399 */
- { 5, 0, NULL, NULL }, /* 400 */
- { 5, 0, NULL, NULL }, /* 401 */
diff --git a/linux/sparc64/arch_regs.h b/linux/sparc64/arch_regs.h
new file mode 100644
index 0000000..a49ad53
--- /dev/null
+++ b/linux/sparc64/arch_regs.h
@@ -0,0 +1 @@
+#include "sparc/arch_regs.h"
diff --git a/linux/sparc64/errnoent.h b/linux/sparc64/errnoent.h
index d243699..4ac2b73 100644
--- a/linux/sparc64/errnoent.h
+++ b/linux/sparc64/errnoent.h
@@ -1,127 +1 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "EWOULDBLOCK", /* 35 */
- "EINPROGRESS", /* 36 */
- "EALREADY", /* 37 */
- "ENOTSOCK", /* 38 */
- "EDESTADDRREQ", /* 39 */
- "EMSGSIZE", /* 40 */
- "EPROTOTYPE", /* 41 */
- "ENOPROTOOPT", /* 42 */
- "EPROTONOSUPPORT", /* 43 */
- "ESOCKTNOSUPPORT", /* 44 */
- "EOPNOTSUPP", /* 45 */
- "EPFNOSUPPORT", /* 46 */
- "EAFNOSUPPORT", /* 47 */
- "EADDRINUSE", /* 48 */
- "EADDRNOTAVAIL", /* 49 */
- "ENETDOWN", /* 50 */
- "ENETUNREACH", /* 51 */
- "ENETRESET", /* 52 */
- "ECONNABORTED", /* 53 */
- "ECONNRESET", /* 54 */
- "ENOBUFS", /* 55 */
- "EISCONN", /* 56 */
- "ENOTCONN", /* 57 */
- "ESHUTDOWN", /* 58 */
- "ETOOMANYREFS", /* 59 */
- "ETIMEDOUT", /* 60 */
- "ECONNREFUSED", /* 61 */
- "ELOOP", /* 62 */
- "ENAMETOOLONG", /* 63 */
- "EHOSTDOWN", /* 64 */
- "EHOSTUNREACH", /* 65 */
- "ENOTEMPTY", /* 66 */
- "EPROCLIM", /* 67 */
- "EUSERS", /* 68 */
- "EDQUOT", /* 69 */
- "ESTALE", /* 70 */
- "EREMOTE", /* 71 */
- "ENOSTR", /* 72 */
- "ETIME", /* 73 */
- "ENOSR", /* 74 */
- "ENOMSG", /* 75 */
- "EBADMSG", /* 76 */
- "EIDRM", /* 77 */
- "EDEADLK", /* 78 */
- "ENOLCK", /* 79 */
- "ENONET", /* 80 */
- "ERREMOTE", /* 81 */
- "ENOLINK", /* 82 */
- "EADV", /* 83 */
- "ESRMNT", /* 84 */
- "ECOMM", /* 85 */
- "EPROTO", /* 86 */
- "EMULTIHOP", /* 87 */
- "EDOTDOT", /* 88 */
- "EREMCHG", /* 89 */
- "ENOSYS", /* 90 */
- "ESTRPIPE", /* 91 */
- "EOVERFLOW", /* 92 */
- "EBADFD", /* 93 */
- "ECHRNG", /* 94 */
- "EL2NSYNC", /* 95 */
- "EL3HLT", /* 96 */
- "EL3RST", /* 97 */
- "ELNRNG", /* 98 */
- "EUNATCH", /* 99 */
- "ENOCSI", /* 100 */
- "EL2HLT", /* 101 */
- "EBADE", /* 102 */
- "EBADR", /* 103 */
- "EXFULL", /* 104 */
- "ENOANO", /* 105 */
- "EBADRQC", /* 106 */
- "EBADSLT", /* 107 */
- "EDEADLOCK", /* 108 */
- "EBFONT", /* 109 */
- "ELIBEXEC", /* 110 */
- "ENODATA", /* 111 */
- "ELIBBAD", /* 112 */
- "ENOPKG", /* 113 */
- "ELIBACC", /* 114 */
- "ENOTUNIQ", /* 115 */
- "ERESTART", /* 116 */
- "EUCLEAN", /* 117 */
- "ENOTNAM", /* 118 */
- "ENAVAIL", /* 119 */
- "EISNAM", /* 120 */
- "EREMOTEIO", /* 121 */
- "EILSEQ", /* 122 */
- "ELIBMAX", /* 123 */
- "ELIBSCN", /* 124 */
- "ENOMEDIUM", /* 125 */
- "EMEDIUMTYPE", /* 126 */
+#include "sparc/errnoent.h"
diff --git a/linux/sparc64/errnoent1.h b/linux/sparc64/errnoent1.h
index c1eaac6..d194023 100644
--- a/linux/sparc64/errnoent1.h
+++ b/linux/sparc64/errnoent1.h
@@ -1 +1 @@
-#include "../sparc/errnoent1.h"
+#include "sparc/errnoent1.h"
diff --git a/linux/sparc64/errnoent2.h b/linux/sparc64/errnoent2.h
index d243699..c0f7787 100644
--- a/linux/sparc64/errnoent2.h
+++ b/linux/sparc64/errnoent2.h
@@ -1,127 +1 @@
- "ERRNO_0", /* 0 */
- "EPERM", /* 1 */
- "ENOENT", /* 2 */
- "ESRCH", /* 3 */
- "EINTR", /* 4 */
- "EIO", /* 5 */
- "ENXIO", /* 6 */
- "E2BIG", /* 7 */
- "ENOEXEC", /* 8 */
- "EBADF", /* 9 */
- "ECHILD", /* 10 */
- "EAGAIN", /* 11 */
- "ENOMEM", /* 12 */
- "EACCES", /* 13 */
- "EFAULT", /* 14 */
- "ENOTBLK", /* 15 */
- "EBUSY", /* 16 */
- "EEXIST", /* 17 */
- "EXDEV", /* 18 */
- "ENODEV", /* 19 */
- "ENOTDIR", /* 20 */
- "EISDIR", /* 21 */
- "EINVAL", /* 22 */
- "ENFILE", /* 23 */
- "EMFILE", /* 24 */
- "ENOTTY", /* 25 */
- "ETXTBSY", /* 26 */
- "EFBIG", /* 27 */
- "ENOSPC", /* 28 */
- "ESPIPE", /* 29 */
- "EROFS", /* 30 */
- "EMLINK", /* 31 */
- "EPIPE", /* 32 */
- "EDOM", /* 33 */
- "ERANGE", /* 34 */
- "EWOULDBLOCK", /* 35 */
- "EINPROGRESS", /* 36 */
- "EALREADY", /* 37 */
- "ENOTSOCK", /* 38 */
- "EDESTADDRREQ", /* 39 */
- "EMSGSIZE", /* 40 */
- "EPROTOTYPE", /* 41 */
- "ENOPROTOOPT", /* 42 */
- "EPROTONOSUPPORT", /* 43 */
- "ESOCKTNOSUPPORT", /* 44 */
- "EOPNOTSUPP", /* 45 */
- "EPFNOSUPPORT", /* 46 */
- "EAFNOSUPPORT", /* 47 */
- "EADDRINUSE", /* 48 */
- "EADDRNOTAVAIL", /* 49 */
- "ENETDOWN", /* 50 */
- "ENETUNREACH", /* 51 */
- "ENETRESET", /* 52 */
- "ECONNABORTED", /* 53 */
- "ECONNRESET", /* 54 */
- "ENOBUFS", /* 55 */
- "EISCONN", /* 56 */
- "ENOTCONN", /* 57 */
- "ESHUTDOWN", /* 58 */
- "ETOOMANYREFS", /* 59 */
- "ETIMEDOUT", /* 60 */
- "ECONNREFUSED", /* 61 */
- "ELOOP", /* 62 */
- "ENAMETOOLONG", /* 63 */
- "EHOSTDOWN", /* 64 */
- "EHOSTUNREACH", /* 65 */
- "ENOTEMPTY", /* 66 */
- "EPROCLIM", /* 67 */
- "EUSERS", /* 68 */
- "EDQUOT", /* 69 */
- "ESTALE", /* 70 */
- "EREMOTE", /* 71 */
- "ENOSTR", /* 72 */
- "ETIME", /* 73 */
- "ENOSR", /* 74 */
- "ENOMSG", /* 75 */
- "EBADMSG", /* 76 */
- "EIDRM", /* 77 */
- "EDEADLK", /* 78 */
- "ENOLCK", /* 79 */
- "ENONET", /* 80 */
- "ERREMOTE", /* 81 */
- "ENOLINK", /* 82 */
- "EADV", /* 83 */
- "ESRMNT", /* 84 */
- "ECOMM", /* 85 */
- "EPROTO", /* 86 */
- "EMULTIHOP", /* 87 */
- "EDOTDOT", /* 88 */
- "EREMCHG", /* 89 */
- "ENOSYS", /* 90 */
- "ESTRPIPE", /* 91 */
- "EOVERFLOW", /* 92 */
- "EBADFD", /* 93 */
- "ECHRNG", /* 94 */
- "EL2NSYNC", /* 95 */
- "EL3HLT", /* 96 */
- "EL3RST", /* 97 */
- "ELNRNG", /* 98 */
- "EUNATCH", /* 99 */
- "ENOCSI", /* 100 */
- "EL2HLT", /* 101 */
- "EBADE", /* 102 */
- "EBADR", /* 103 */
- "EXFULL", /* 104 */
- "ENOANO", /* 105 */
- "EBADRQC", /* 106 */
- "EBADSLT", /* 107 */
- "EDEADLOCK", /* 108 */
- "EBFONT", /* 109 */
- "ELIBEXEC", /* 110 */
- "ENODATA", /* 111 */
- "ELIBBAD", /* 112 */
- "ENOPKG", /* 113 */
- "ELIBACC", /* 114 */
- "ENOTUNIQ", /* 115 */
- "ERESTART", /* 116 */
- "EUCLEAN", /* 117 */
- "ENOTNAM", /* 118 */
- "ENAVAIL", /* 119 */
- "EISNAM", /* 120 */
- "EREMOTEIO", /* 121 */
- "EILSEQ", /* 122 */
- "ELIBMAX", /* 123 */
- "ELIBSCN", /* 124 */
- "ENOMEDIUM", /* 125 */
- "EMEDIUMTYPE", /* 126 */
+#include "errnoent.h"
diff --git a/linux/sparc64/ioctlent.h.in b/linux/sparc64/ioctlent.h.in
deleted file mode 100644
index 4bc5cfd..0000000
--- a/linux/sparc64/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../sparc/ioctlent.h.in"
diff --git a/linux/sparc64/ioctlent1.h b/linux/sparc64/ioctlent1.h
index c572f6e..8daf265 100644
--- a/linux/sparc64/ioctlent1.h
+++ b/linux/sparc64/ioctlent1.h
@@ -1 +1 @@
-#include "../sparc/ioctlent1.h"
+#include "sparc/ioctlent1.h"
diff --git a/linux/sparc64/ioctlent2.h b/linux/sparc64/ioctlent2.h
deleted file mode 100644
index c1d6b8a..0000000
--- a/linux/sparc64/ioctlent2.h
+++ /dev/null
@@ -1,838 +0,0 @@
- {"linux/fs.h", "FIBMAP", 0x1},
- {"linux/fs.h", "FIGETBSZ", 0x2},
- {"linux/fd.h", "FDGETPRM", 0x204},
- {"linux/fd.h", "FDGETMAXERRS", 0x20e},
- {"linux/fd.h", "FDGETDRVTYP", 0x20f},
- {"linux/fd.h", "FDGETDRVPRM", 0x211},
- {"linux/fd.h", "FDGETDRVSTAT", 0x212},
- {"linux/fd.h", "FDPOLLDRVSTAT", 0x213},
- {"linux/fd.h", "FDGETFDCSTAT", 0x215},
- {"linux/fd.h", "FDWERRORGET", 0x217},
- {"linux/fd.h", "FDCLRPRM", 0x241},
- {"linux/fd.h", "FDSETPRM", 0x242},
- {"linux/fd.h", "FDDEFPRM", 0x243},
- {"linux/fd.h", "FDMSGON", 0x245},
- {"linux/fd.h", "FDMSGOFF", 0x246},
- {"linux/fd.h", "FDFMTBEG", 0x247},
- {"linux/fd.h", "FDFMTTRK", 0x248},
- {"linux/fd.h", "FDFMTEND", 0x249},
- {"linux/fd.h", "FDSETEMSGTRESH", 0x24a},
- {"linux/fd.h", "FDFLUSH", 0x24b},
- {"linux/fd.h", "FDSETMAXERRS", 0x24c},
- {"linux/fd.h", "FDRESET", 0x254},
- {"linux/fd.h", "FDWERRORCLR", 0x256},
- {"linux/fd.h", "FDRAWCMD", 0x258},
- {"linux/fd.h", "FDTWADDLE", 0x259},
- {"linux/fd.h", "FDEJECT", 0x25a},
- {"linux/fd.h", "FDSETDRVPRM", 0x290},
- {"linux/umsdos_fs.h", "UMSDOS_READDIR_DOS", 0x4d2},
- {"linux/umsdos_fs.h", "UMSDOS_UNLINK_DOS", 0x4d3},
- {"linux/umsdos_fs.h", "UMSDOS_RMDIR_DOS", 0x4d4},
- {"linux/umsdos_fs.h", "UMSDOS_STAT_DOS", 0x4d5},
- {"linux/umsdos_fs.h", "UMSDOS_CREAT_EMD", 0x4d6},
- {"linux/umsdos_fs.h", "UMSDOS_UNLINK_EMD", 0x4d7},
- {"linux/umsdos_fs.h", "UMSDOS_READDIR_EMD", 0x4d8},
- {"linux/umsdos_fs.h", "UMSDOS_GETVERSION", 0x4d9},
- {"linux/umsdos_fs.h", "UMSDOS_INIT_EMD", 0x4da},
- {"linux/umsdos_fs.h", "UMSDOS_DOS_SETUP", 0x4db},
- {"linux/umsdos_fs.h", "UMSDOS_RENAME_DOS", 0x4dc},
- {"linux/fs.h", "BLKROSET", 0x125d},
- {"linux/fs.h", "BLKROGET", 0x125e},
- {"linux/fs.h", "BLKRRPART", 0x125f},
- {"linux/fs.h", "BLKGETSIZE", 0x1260},
- {"linux/fs.h", "BLKFLSBUF", 0x1261},
- {"linux/fs.h", "BLKRASET", 0x1262},
- {"linux/fs.h", "BLKRAGET", 0x1263},
- {"linux/fs.h", "BLKFRASET", 0x1264},
- {"linux/fs.h", "BLKFRAGET", 0x1265},
- {"linux/fs.h", "BLKSECTSET", 0x1266},
- {"linux/fs.h", "BLKSECTGET", 0x1267},
- {"linux/fs.h", "BLKSSZGET", 0x1268},
- {"linux/blkpg.h", "BLKPG", 0x1269},
- {"linux/fs.h", "BLKPG", 0x1269},
- {"linux/elevator.h", "BLKELVGET", 0x126a},
- {"linux/fs.h", "BLKELVGET", 0x126a},
- {"linux/elevator.h", "BLKELVSET", 0x126b},
- {"linux/fs.h", "BLKELVSET", 0x126b},
- {"linux/fs.h", "BLKBSZGET", 0x1270},
- {"linux/fs.h", "BLKBSZSET", 0x1271},
- {"linux/fs.h", "BLKGETSIZE64", 0x1272},
- {"linux/agpgart.h", "AGPIOC_INFO", 0x4100},
- {"linux/agpgart.h", "AGPIOC_ACQUIRE", 0x4101},
- {"linux/apm_bios.h", "APM_IOC_STANDBY", 0x4101},
- {"linux/agpgart.h", "AGPIOC_RELEASE", 0x4102},
- {"linux/apm_bios.h", "APM_IOC_SUSPEND", 0x4102},
- {"linux/agpgart.h", "AGPIOC_SETUP", 0x4103},
- {"linux/agpgart.h", "AGPIOC_RESERVE", 0x4104},
- {"linux/agpgart.h", "AGPIOC_PROTECT", 0x4105},
- {"linux/agpgart.h", "AGPIOC_ALLOCATE", 0x4106},
- {"linux/agpgart.h", "AGPIOC_DEALLOCATE", 0x4107},
- {"linux/agpgart.h", "AGPIOC_BIND", 0x4108},
- {"linux/agpgart.h", "AGPIOC_UNBIND", 0x4109},
- {"linux/pmu.h", "PMU_IOC_SLEEP", 0x4200},
- {"linux/cciss_ioctl.h", "CCISS_GETPCIINFO", 0x4201},
- {"linux/pmu.h", "PMU_IOC_GET_BACKLIGHT", 0x4201},
- {"linux/cciss_ioctl.h", "CCISS_GETINTINFO", 0x4202},
- {"linux/pmu.h", "PMU_IOC_SET_BACKLIGHT", 0x4202},
- {"linux/cciss_ioctl.h", "CCISS_SETINTINFO", 0x4203},
- {"linux/pmu.h", "PMU_IOC_GET_MODEL", 0x4203},
- {"linux/cciss_ioctl.h", "CCISS_GETNODENAME", 0x4204},
- {"linux/pmu.h", "PMU_IOC_HAS_ADB", 0x4204},
- {"linux/cciss_ioctl.h", "CCISS_SETNODENAME", 0x4205},
- {"linux/pmu.h", "PMU_IOC_CAN_SLEEP", 0x4205},
- {"linux/cciss_ioctl.h", "CCISS_GETHEARTBEAT", 0x4206},
- {"linux/cciss_ioctl.h", "CCISS_GETBUSTYPES", 0x4207},
- {"linux/cciss_ioctl.h", "CCISS_GETFIRMVER", 0x4208},
- {"linux/cciss_ioctl.h", "CCISS_GETDRIVVER", 0x4209},
- {"linux/cciss_ioctl.h", "CCISS_REVALIDVOLS", 0x420a},
- {"linux/cciss_ioctl.h", "CCISS_PASSTHRU", 0x420b},
- {"linux/soundcard.h", "SNDCTL_COPR_RESET", 0x4300},
- {"linux/capi.h", "CAPI_REGISTER", 0x4301},
- {"linux/soundcard.h", "SNDCTL_COPR_LOAD", 0x4301},
- {"linux/soundcard.h", "SNDCTL_COPR_RDATA", 0x4302},
- {"linux/soundcard.h", "SNDCTL_COPR_RCODE", 0x4303},
- {"linux/soundcard.h", "SNDCTL_COPR_WDATA", 0x4304},
- {"linux/soundcard.h", "SNDCTL_COPR_WCODE", 0x4305},
- {"linux/capi.h", "CAPI_GET_MANUFACTURER", 0x4306},
- {"linux/soundcard.h", "SNDCTL_COPR_RUN", 0x4306},
- {"linux/capi.h", "CAPI_GET_VERSION", 0x4307},
- {"linux/soundcard.h", "SNDCTL_COPR_HALT", 0x4307},
- {"linux/capi.h", "CAPI_GET_SERIAL", 0x4308},
- {"linux/soundcard.h", "SNDCTL_COPR_SENDMSG", 0x4308},
- {"linux/capi.h", "CAPI_GET_PROFILE", 0x4309},
- {"linux/soundcard.h", "SNDCTL_COPR_RCVMSG", 0x4309},
- {"linux/capi.h", "CAPI_MANUFACTURER_CMD", 0x4320},
- {"linux/capi.h", "CAPI_GET_ERRCODE", 0x4321},
- {"linux/capi.h", "CAPI_INSTALLED", 0x4322},
- {"linux/capi.h", "CAPI_GET_FLAGS", 0x4323},
- {"linux/capi.h", "CAPI_SET_FLAGS", 0x4324},
- {"linux/capi.h", "CAPI_CLR_FLAGS", 0x4325},
- {"linux/capi.h", "CAPI_NCCI_OPENCOUNT", 0x4326},
- {"linux/capi.h", "CAPI_NCCI_GETUNIT", 0x4327},
- {"linux/input.h", "EVIOCGVERSION", 0x4501},
- {"linux/input.h", "EVIOCGID", 0x4502},
- {"linux/input.h", "EVIOCGREP", 0x4503},
- {"linux/input.h", "EVIOCSREP", 0x4503},
- {"linux/input.h", "EVIOCGKEYCODE", 0x4504},
- {"linux/input.h", "EVIOCSKEYCODE", 0x4504},
- {"linux/input.h", "EVIOCGKEY", 0x4505},
- {"linux/input.h", "EVIOCGBUS", 0x4507},
- {"linux/input.h", "EVIOCRMFF", 0x4581},
- {"linux/input.h", "EVIOCSGAIN", 0x4582},
- {"linux/input.h", "EVIOCSAUTOCENTER", 0x4583},
- {"linux/input.h", "EVIOCGEFFECTS", 0x4584},
- {"linux/fb.h", "FBIOGET_VBLANK", 0x4612},
- {"linux/hiddev.h", "HIDIOCGVERSION", 0x4801},
- {"linux/hiddev.h", "HIDIOCAPPLICATION", 0x4802},
- {"linux/hiddev.h", "HIDIOCGDEVINFO", 0x4803},
- {"linux/hiddev.h", "HIDIOCGSTRING", 0x4804},
- {"linux/hiddev.h", "HIDIOCINITREPORT", 0x4805},
- {"linux/hiddev.h", "HIDIOCGREPORT", 0x4807},
- {"linux/hiddev.h", "HIDIOCSREPORT", 0x4808},
- {"linux/hiddev.h", "HIDIOCGREPORTINFO", 0x4809},
- {"linux/hiddev.h", "HIDIOCGFIELDINFO", 0x480a},
- {"linux/hiddev.h", "HIDIOCGUSAGE", 0x480b},
- {"linux/hiddev.h", "HIDIOCSUSAGE", 0x480c},
- {"linux/hiddev.h", "HIDIOCGUCODE", 0x480d},
- {"linux/isdn.h", "IIOCNETAIF", 0x4901},
- {"linux/isdn.h", "IIOCNETDIF", 0x4902},
- {"linux/isdn.h", "IIOCNETSCF", 0x4903},
- {"linux/isdn.h", "IIOCNETGCF", 0x4904},
- {"linux/isdn.h", "IIOCNETANM", 0x4905},
- {"linux/isdn.h", "IIOCNETDNM", 0x4906},
- {"linux/isdn.h", "IIOCNETGNM", 0x4907},
- {"linux/isdn.h", "IIOCGETSET", 0x4908},
- {"linux/isdn.h", "IIOCSETSET", 0x4909},
- {"linux/isdn.h", "IIOCSETVER", 0x490a},
- {"linux/isdn.h", "IIOCNETHUP", 0x490b},
- {"linux/isdn.h", "IIOCSETGST", 0x490c},
- {"linux/isdn.h", "IIOCSETBRJ", 0x490d},
- {"linux/isdn.h", "IIOCSIGPRF", 0x490e},
- {"linux/isdn.h", "IIOCGETPRF", 0x490f},
- {"linux/isdn.h", "IIOCSETPRF", 0x4910},
- {"linux/isdn.h", "IIOCGETMAP", 0x4911},
- {"linux/isdn.h", "IIOCSETMAP", 0x4912},
- {"linux/isdn.h", "IIOCNETASL", 0x4913},
- {"linux/isdn.h", "IIOCNETDIL", 0x4914},
- {"linux/isdn.h", "IIOCGETCPS", 0x4915},
- {"linux/isdn.h", "IIOCGETDVR", 0x4916},
- {"linux/isdn.h", "IIOCNETLCR", 0x4917},
- {"linux/isdn.h", "IIOCNETDWRSET", 0x4918},
- {"linux/isdn.h", "IIOCNETALN", 0x4920},
- {"linux/isdn.h", "IIOCNETDLN", 0x4921},
- {"linux/isdn.h", "IIOCNETGPN", 0x4922},
- {"linux/isdn.h", "IIOCDBGVAR", 0x497f},
- {"linux/isdn.h", "IIOCDRVCTL", 0x4980},
- {"linux/soundcard.h", "SOUND_MIXER_INFO", 0x4d65},
- {"linux/soundcard.h", "SOUND_OLD_MIXER_INFO", 0x4d65},
- {"linux/soundcard.h", "SOUND_MIXER_ACCESS", 0x4d66},
- {"linux/soundcard.h", "SOUND_MIXER_AGC", 0x4d67},
- {"linux/soundcard.h", "SOUND_MIXER_3DSE", 0x4d68},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE1", 0x4d6f},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE2", 0x4d70},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE3", 0x4d71},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE4", 0x4d72},
- {"linux/soundcard.h", "SOUND_MIXER_PRIVATE5", 0x4d73},
- {"linux/soundcard.h", "SOUND_MIXER_GETLEVELS", 0x4d74},
- {"linux/soundcard.h", "SOUND_MIXER_SETLEVELS", 0x4d75},
- {"linux/soundcard.h", "OSS_GETVERSION", 0x4d76},
- {"linux/soundcard.h", "SNDCTL_DSP_RESET", 0x5000},
- {"linux/soundcard.h", "SNDCTL_DSP_SYNC", 0x5001},
- {"linux/soundcard.h", "SNDCTL_DSP_SPEED", 0x5002},
- {"linux/soundcard.h", "SOUND_PCM_READ_RATE", 0x5002},
- {"linux/soundcard.h", "SNDCTL_DSP_STEREO", 0x5003},
- {"linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", 0x5004},
- {"linux/soundcard.h", "SNDCTL_DSP_SETFMT", 0x5005},
- {"linux/soundcard.h", "SOUND_PCM_READ_BITS", 0x5005},
- {"linux/soundcard.h", "SNDCTL_DSP_CHANNELS", 0x5006},
- {"linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", 0x5006},
- {"linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", 0x5007},
- {"linux/soundcard.h", "SOUND_PCM_READ_FILTER", 0x5007},
- {"linux/soundcard.h", "SNDCTL_DSP_POST", 0x5008},
- {"linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", 0x5009},
- {"linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", 0x500a},
- {"linux/soundcard.h", "SNDCTL_DSP_GETFMTS", 0x500b},
- {"linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", 0x500c},
- {"linux/soundcard.h", "SNDCTL_DSP_GETISPACE", 0x500d},
- {"linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", 0x500e},
- {"linux/soundcard.h", "SNDCTL_DSP_GETCAPS", 0x500f},
- {"linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", 0x5010},
- {"linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", 0x5010},
- {"linux/soundcard.h", "SNDCTL_DSP_GETIPTR", 0x5011},
- {"linux/soundcard.h", "SNDCTL_DSP_GETOPTR", 0x5012},
- {"linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", 0x5013},
- {"linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", 0x5014},
- {"linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", 0x5015},
- {"linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", 0x5016},
- {"linux/soundcard.h", "SNDCTL_DSP_GETODELAY", 0x5017},
- {"linux/soundcard.h", "SNDCTL_DSP_PROFILE", 0x5017},
- {"linux/soundcard.h", "SNDCTL_DSP_GETCHANNELMASK", 0x5040},
- {"linux/soundcard.h", "SNDCTL_DSP_BIND_CHANNEL", 0x5041},
- {"linux/soundcard.h", "SNDCTL_DSP_SETSPDIF", 0x5042},
- {"linux/soundcard.h", "SNDCTL_DSP_GETSPDIF", 0x5043},
- {"linux/soundcard.h", "SNDCTL_SEQ_RESET", 0x5100},
- {"linux/soundcard.h", "SNDCTL_SEQ_SYNC", 0x5101},
- {"linux/soundcard.h", "SNDCTL_SYNTH_INFO", 0x5102},
- {"linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", 0x5103},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", 0x5104},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", 0x5105},
- {"linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", 0x5106},
- {"linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", 0x5107},
- {"linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", 0x5108},
- {"linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", 0x5109},
- {"linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", 0x510a},
- {"linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", 0x510b},
- {"linux/soundcard.h", "SNDCTL_MIDI_INFO", 0x510c},
- {"linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", 0x510d},
- {"linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", 0x510e},
- {"linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", 0x510f},
- {"linux/soundcard.h", "SNDCTL_SEQ_PANIC", 0x5111},
- {"linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", 0x5112},
- {"linux/soundcard.h", "SNDCTL_SEQ_GETTIME", 0x5113},
- {"linux/soundcard.h", "SNDCTL_SYNTH_ID", 0x5114},
- {"linux/soundcard.h", "SNDCTL_SYNTH_CONTROL", 0x5115},
- {"linux/soundcard.h", "SNDCTL_SYNTH_REMOVESAMPLE", 0x5116},
- {"linux/random.h", "RNDGETENTCNT", 0x5200},
- {"linux/random.h", "RNDADDTOENTCNT", 0x5201},
- {"linux/random.h", "RNDGETPOOL", 0x5202},
- {"linux/random.h", "RNDADDENTROPY", 0x5203},
- {"linux/random.h", "RNDZAPENTCNT", 0x5204},
- {"linux/random.h", "RNDCLEARPOOL", 0x5206},
- {"asm/ioctls.h", "TCGETS", 0x5401},
- {"linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", 0x5401},
- {"asm/ioctls.h", "TCSETS", 0x5402},
- {"linux/soundcard.h", "SNDCTL_TMR_START", 0x5402},
- {"asm/ioctls.h", "TCSETSW", 0x5403},
- {"linux/soundcard.h", "SNDCTL_TMR_STOP", 0x5403},
- {"asm/ioctls.h", "TCSETSF", 0x5404},
- {"linux/soundcard.h", "SNDCTL_TMR_CONTINUE", 0x5404},
- {"asm/ioctls.h", "TCGETA", 0x5405},
- {"linux/soundcard.h", "SNDCTL_TMR_TEMPO", 0x5405},
- {"asm/ioctls.h", "TCSETA", 0x5406},
- {"linux/soundcard.h", "SNDCTL_TMR_SOURCE", 0x5406},
- {"asm/ioctls.h", "TCSETAW", 0x5407},
- {"linux/soundcard.h", "SNDCTL_TMR_METRONOME", 0x5407},
- {"asm/ioctls.h", "TCSETAF", 0x5408},
- {"linux/soundcard.h", "SNDCTL_TMR_SELECT", 0x5408},
- {"asm/ioctls.h", "TCSBRK", 0x5409},
- {"asm/ioctls.h", "TCXONC", 0x540a},
- {"asm/ioctls.h", "TCFLSH", 0x540b},
- {"asm/ioctls.h", "TIOCEXCL", 0x540c},
- {"asm/ioctls.h", "TIOCNXCL", 0x540d},
- {"asm/ioctls.h", "TIOCSCTTY", 0x540e},
- {"asm/ioctls.h", "TIOCGPGRP", 0x540f},
- {"asm/ioctls.h", "TIOCSPGRP", 0x5410},
- {"asm/ioctls.h", "TIOCOUTQ", 0x5411},
- {"asm/ioctls.h", "TIOCSTI", 0x5412},
- {"asm/ioctls.h", "TIOCGWINSZ", 0x5413},
- {"asm/ioctls.h", "TIOCSWINSZ", 0x5414},
- {"asm/ioctls.h", "TIOCMGET", 0x5415},
- {"asm/ioctls.h", "TIOCMBIS", 0x5416},
- {"asm/ioctls.h", "TIOCMBIC", 0x5417},
- {"asm/ioctls.h", "TIOCMSET", 0x5418},
- {"asm/ioctls.h", "TIOCGSOFTCAR", 0x5419},
- {"asm/ioctls.h", "TIOCSSOFTCAR", 0x541a},
- {"asm/ioctls.h", "FIONREAD", 0x541b},
- {"asm/ioctls.h", "TIOCLINUX", 0x541c},
- {"asm/ioctls.h", "TIOCCONS", 0x541d},
- {"asm/ioctls.h", "TIOCGSERIAL", 0x541e},
- {"asm/ioctls.h", "TIOCSSERIAL", 0x541f},
- {"asm/ioctls.h", "TIOCPKT", 0x5420},
- {"asm/ioctls.h", "FIONBIO", 0x5421},
- {"asm/ioctls.h", "TIOCNOTTY", 0x5422},
- {"asm/ioctls.h", "TIOCSETD", 0x5423},
- {"asm/ioctls.h", "TIOCGETD", 0x5424},
- {"asm/ioctls.h", "TCSBRKP", 0x5425},
- {"asm/ioctls.h", "TIOCTTYGSTRUCT", 0x5426},
- {"asm/ioctls.h", "TIOCSBRK", 0x5427},
- {"asm/ioctls.h", "TIOCCBRK", 0x5428},
- {"asm/ioctls.h", "TIOCGSID", 0x5429},
- {"asm/ioctls.h", "TIOCGPTN", 0x5430},
- {"asm/ioctls.h", "TIOCSPTLCK", 0x5431},
- {"asm/ioctls.h", "FIONCLEX", 0x5450},
- {"asm/ioctls.h", "FIOCLEX", 0x5451},
- {"asm/ioctls.h", "FIOASYNC", 0x5452},
- {"asm/ioctls.h", "TIOCSERCONFIG", 0x5453},
- {"asm/ioctls.h", "TIOCSERGWILD", 0x5454},
- {"asm/ioctls.h", "TIOCSERSWILD", 0x5455},
- {"asm/ioctls.h", "TIOCGLCKTRMIOS", 0x5456},
- {"asm/ioctls.h", "TIOCSLCKTRMIOS", 0x5457},
- {"asm/ioctls.h", "TIOCSERGSTRUCT", 0x5458},
- {"asm/ioctls.h", "TIOCSERGETLSR", 0x5459},
- {"asm/ioctls.h", "TIOCSERGETMULTI", 0x545a},
- {"asm/ioctls.h", "TIOCSERSETMULTI", 0x545b},
- {"asm/ioctls.h", "TIOCMIWAIT", 0x545c},
- {"asm/ioctls.h", "TIOCGICOUNT", 0x545d},
- {"asm/ioctls.h", "TIOCGHAYESESP", 0x545e},
- {"asm/ioctls.h", "TIOCSHAYESESP", 0x545f},
- {"linux/if_tun.h", "TUNSETNOCSUM", 0x54c8},
- {"linux/if_tun.h", "TUNSETDEBUG", 0x54c9},
- {"linux/if_tun.h", "TUNSETIFF", 0x54ca},
- {"linux/if_tun.h", "TUNSETPERSIST", 0x54cb},
- {"linux/if_tun.h", "TUNSETOWNER", 0x54cc},
- {"linux/usbdevice_fs.h", "USBDEVFS_CONTROL", 0x5500},
- {"linux/usbdevice_fs.h", "USBDEVFS_BULK", 0x5502},
- {"linux/usbdevice_fs.h", "USBDEVFS_RESETEP", 0x5503},
- {"linux/usbdevice_fs.h", "USBDEVFS_SETINTERFACE", 0x5504},
- {"linux/usbdevice_fs.h", "USBDEVFS_SETCONFIGURATION", 0x5505},
- {"linux/usbdevice_fs.h", "USBDEVFS_GETDRIVER", 0x5508},
- {"linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB", 0x550a},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCARDURB", 0x550b},
- {"linux/usbdevice_fs.h", "USBDEVFS_REAPURB", 0x550c},
- {"linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY", 0x550d},
- {"linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL", 0x550e},
- {"linux/usbdevice_fs.h", "USBDEVFS_CLAIMINTERFACE", 0x550f},
- {"linux/usbdevice_fs.h", "USBDEVFS_RELEASEINTERFACE", 0x5510},
- {"linux/usbdevice_fs.h", "USBDEVFS_CONNECTINFO", 0x5511},
- {"linux/usbdevice_fs.h", "USBDEVFS_IOCTL", 0x5512},
- {"linux/usbdevice_fs.h", "USBDEVFS_HUB_PORTINFO", 0x5513},
- {"linux/usbdevice_fs.h", "USBDEVFS_RESET", 0x5514},
- {"linux/usbdevice_fs.h", "USBDEVFS_CLEAR_HALT", 0x5515},
- {"linux/watchdog.h", "WDIOC_GETSUPPORT", 0x5700},
- {"linux/watchdog.h", "WDIOC_GETSTATUS", 0x5701},
- {"linux/watchdog.h", "WDIOC_GETBOOTSTATUS", 0x5702},
- {"linux/watchdog.h", "WDIOC_GETTEMP", 0x5703},
- {"linux/watchdog.h", "WDIOC_SETOPTIONS", 0x5704},
- {"linux/watchdog.h", "WDIOC_KEEPALIVE", 0x5705},
- {"linux/watchdog.h", "WDIOC_SETTIMEOUT", 0x5706},
- {"linux/watchdog.h", "WDIOC_GETTIMEOUT", 0x5707},
- {"linux/ite_gpio.h", "ITE_GPIO_IN", 0x5a00},
- {"linux/ite_gpio.h", "ITE_GPIO_OUT", 0x5a01},
- {"linux/ite_gpio.h", "ITE_GPIO_INT_CTRL", 0x5a02},
- {"linux/ite_gpio.h", "ITE_GPIO_IN_STATUS", 0x5a03},
- {"linux/ite_gpio.h", "ITE_GPIO_OUT_STATUS", 0x5a04},
- {"linux/ite_gpio.h", "ITE_GPIO_GEN_CTRL", 0x5a05},
- {"linux/ite_gpio.h", "ITE_GPIO_INT_WAIT", 0x5a06},
- {"linux/sonet.h", "SONET_GETSTAT", 0x6110},
- {"linux/sonet.h", "SONET_GETSTATZ", 0x6111},
- {"linux/sonet.h", "SONET_SETDIAG", 0x6112},
- {"linux/sonet.h", "SONET_CLRDIAG", 0x6113},
- {"linux/sonet.h", "SONET_GETDIAG", 0x6114},
- {"linux/sonet.h", "SONET_SETFRAMING", 0x6115},
- {"linux/sonet.h", "SONET_GETFRAMING", 0x6116},
- {"linux/sonet.h", "SONET_GETFRSENSE", 0x6117},
- {"linux/atm_idt77105.h", "IDT77105_GETSTAT", 0x6132},
- {"linux/atm_idt77105.h", "IDT77105_GETSTATZ", 0x6133},
- {"linux/atmdev.h", "ATM_GETSTAT", 0x6150},
- {"linux/atmdev.h", "ATM_GETSTATZ", 0x6151},
- {"linux/atmdev.h", "ATM_GETLOOP", 0x6152},
- {"linux/atmdev.h", "ATM_SETLOOP", 0x6153},
- {"linux/atmdev.h", "ATM_QUERYLOOP", 0x6154},
- {"linux/atm_eni.h", "ENI_MEMDUMP", 0x6160},
- {"linux/atm_nicstar.h", "NS_GETPSTAT", 0x6161},
- {"linux/atm_zatm.h", "ZATM_GETPOOL", 0x6161},
- {"linux/atm_nicstar.h", "NS_SETBUFLEV", 0x6162},
- {"linux/atm_zatm.h", "ZATM_GETPOOLZ", 0x6162},
- {"linux/atm_nicstar.h", "NS_ADJBUFLEV", 0x6163},
- {"linux/atm_zatm.h", "ZATM_SETPOOL", 0x6163},
- {"linux/atm_zatm.h", "ZATM_GETTHIST", 0x6164},
- {"linux/atm_eni.h", "ENI_SETMULT", 0x6167},
- {"linux/atm_tcp.h", "SIOCSIFATMTCP", 0x6180},
- {"linux/atmdev.h", "ATM_GETLINKRATE", 0x6181},
- {"linux/atmdev.h", "ATM_GETNAMES", 0x6183},
- {"linux/atmdev.h", "ATM_GETTYPE", 0x6184},
- {"linux/atmdev.h", "ATM_GETESI", 0x6185},
- {"linux/atmdev.h", "ATM_GETADDR", 0x6186},
- {"linux/atmdev.h", "ATM_RSTADDR", 0x6187},
- {"linux/atmdev.h", "ATM_ADDADDR", 0x6188},
- {"linux/atmdev.h", "ATM_DELADDR", 0x6189},
- {"linux/atmdev.h", "ATM_GETCIRANGE", 0x618a},
- {"linux/atmdev.h", "ATM_SETCIRANGE", 0x618b},
- {"linux/atmdev.h", "ATM_SETESI", 0x618c},
- {"linux/atmdev.h", "ATM_SETESIF", 0x618d},
- {"linux/atm_tcp.h", "ATMTCP_CREATE", 0x618e},
- {"linux/atm_tcp.h", "ATMTCP_REMOVE", 0x618f},
- {"linux/atmlec.h", "ATMLEC_CTRL", 0x61d0},
- {"linux/atmlec.h", "ATMLEC_DATA", 0x61d1},
- {"linux/atmlec.h", "ATMLEC_MCAST", 0x61d2},
- {"linux/atmmpc.h", "ATMMPC_CTRL", 0x61d8},
- {"linux/atmmpc.h", "ATMMPC_DATA", 0x61d9},
- {"linux/atmclip.h", "SIOCMKCLIP", 0x61e0},
- {"linux/atmarp.h", "ATMARPD_CTRL", 0x61e1},
- {"linux/atmarp.h", "ATMARP_MKIP", 0x61e2},
- {"linux/atmarp.h", "ATMARP_SETENTRY", 0x61e3},
- {"linux/atmarp.h", "ATMARP_ENCAP", 0x61e5},
- {"linux/atmsvc.h", "ATMSIGD_CTRL", 0x61f0},
- {"linux/atmdev.h", "ATM_SETSC", 0x61f1},
- {"linux/atmdev.h", "ATM_SETBACKEND", 0x61f2},
- {"linux/coda.h", "CIOC_KERNEL_VERSION", 0x630a},
- {"linux/comstats.h", "COM_GETPORTSTATS", 0x631e},
- {"linux/comstats.h", "COM_CLRPORTSTATS", 0x631f},
- {"linux/comstats.h", "COM_GETBRDSTATS", 0x6320},
- {"linux/comstats.h", "COM_READPORT", 0x6328},
- {"linux/comstats.h", "COM_READBOARD", 0x6329},
- {"linux/comstats.h", "COM_READPANEL", 0x632a},
- {"linux/devfs_fs.h", "DEVFSDIOC_GET_PROTO_REV", 0x6400},
- {"linux/video_decoder.h", "DECODER_GET_CAPABILITIES", 0x6401},
- {"linux/devfs_fs.h", "DEVFSDIOC_SET_EVENT_MASK", 0x6402},
- {"linux/video_decoder.h", "DECODER_GET_STATUS", 0x6402},
- {"linux/devfs_fs.h", "DEVFSDIOC_RELEASE_EVENT_QUEUE", 0x6403},
- {"linux/video_decoder.h", "DECODER_SET_NORM", 0x6403},
- {"linux/devfs_fs.h", "DEVFSDIOC_SET_DEBUG_MASK", 0x6404},
- {"linux/video_decoder.h", "DECODER_SET_INPUT", 0x6404},
- {"linux/video_decoder.h", "DECODER_SET_OUTPUT", 0x6405},
- {"linux/video_decoder.h", "DECODER_ENABLE_OUTPUT", 0x6406},
- {"linux/video_decoder.h", "DECODER_SET_PICTURE", 0x6407},
- {"linux/video_decoder.h", "DECODER_DUMP", 0x64c0},
- {"linux/video_encoder.h", "ENCODER_GET_CAPABILITIES", 0x6501},
- {"linux/video_encoder.h", "ENCODER_SET_NORM", 0x6502},
- {"linux/video_encoder.h", "ENCODER_SET_INPUT", 0x6503},
- {"linux/video_encoder.h", "ENCODER_SET_OUTPUT", 0x6504},
- {"linux/video_encoder.h", "ENCODER_ENABLE_OUTPUT", 0x6505},
- {"linux/ext2_fs.h", "EXT2_IOC_GETFLAGS", 0x6601},
- {"linux/ext3_fs.h", "EXT3_IOC_GETFLAGS", 0x6601},
- {"linux/ext2_fs.h", "EXT2_IOC_SETFLAGS", 0x6602},
- {"linux/ext3_fs.h", "EXT3_IOC_SETFLAGS", 0x6602},
- {"linux/ext3_fs.h", "EXT3_IOC_GETVERSION", 0x6603},
- {"linux/ext3_fs.h", "EXT3_IOC_SETVERSION", 0x6604},
- {"linux/ext3_fs.h", "EXT3_IOC_WAIT_FOR_READONLY", 0x6663},
- {"linux/i2o-dev.h", "I2OGETIOPS", 0x6900},
- {"linux/i2o-dev.h", "I2OHRTGET", 0x6901},
- {"linux/i2o-dev.h", "I2OLCTGET", 0x6902},
- {"linux/i2o-dev.h", "I2OPARMSET", 0x6903},
- {"linux/i2o-dev.h", "I2OPARMGET", 0x6904},
- {"linux/i2o-dev.h", "I2OSWDL", 0x6905},
- {"linux/i2o-dev.h", "I2OSWUL", 0x6906},
- {"linux/i2o-dev.h", "I2OSWDEL", 0x6907},
- {"linux/i2o-dev.h", "I2OVALIDATE", 0x6908},
- {"linux/i2o-dev.h", "I2OHTML", 0x6909},
- {"linux/i2o-dev.h", "I2OEVTREG", 0x690a},
- {"linux/i2o-dev.h", "I2OEVTGET", 0x690b},
- {"linux/i8k.h", "I8K_BIOS_VERSION", 0x6980},
- {"linux/i8k.h", "I8K_MACHINE_ID", 0x6981},
- {"linux/i8k.h", "I8K_POWER_STATUS", 0x6982},
- {"linux/i8k.h", "I8K_FN_STATUS", 0x6983},
- {"linux/i8k.h", "I8K_GET_TEMP", 0x6984},
- {"linux/i8k.h", "I8K_GET_SPEED", 0x6985},
- {"linux/i8k.h", "I8K_GET_FAN", 0x6986},
- {"linux/i8k.h", "I8K_SET_FAN", 0x6987},
- {"linux/joystick.h", "JSIOCGVERSION", 0x6a01},
- {"linux/joystick.h", "JSIOCGAXES", 0x6a11},
- {"linux/joystick.h", "JSIOCGBUTTONS", 0x6a12},
- {"linux/joystick.h", "JSIOCSCORR", 0x6a21},
- {"linux/joystick.h", "JSIOCGCORR", 0x6a22},
- {"linux/joystick.h", "JSIOCSAXMAP", 0x6a31},
- {"linux/joystick.h", "JSIOCGAXMAP", 0x6a32},
- {"linux/joystick.h", "JSIOCSBTNMAP", 0x6a33},
- {"linux/joystick.h", "JSIOCGBTNMAP", 0x6a34},
- {"linux/udf_fs_i.h", "UDF_GETEASIZE", 0x6c40},
- {"linux/udf_fs_i.h", "UDF_GETEABLOCK", 0x6c41},
- {"linux/udf_fs_i.h", "UDF_GETVOLIDENT", 0x6c42},
- {"linux/udf_fs_i.h", "UDF_RELOCATE_BLOCKS", 0x6c43},
- {"linux/soundcard.h", "SNDCTL_MIDI_PRETIME", 0x6d00},
- {"linux/synclink.h", "MGSL_IOCSPARAMS", 0x6d00},
- {"linux/mtio.h", "MTIOCTOP", 0x6d01},
- {"linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", 0x6d01},
- {"linux/synclink.h", "MGSL_IOCGPARAMS", 0x6d01},
- {"linux/mtio.h", "MTIOCGET", 0x6d02},
- {"linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", 0x6d02},
- {"linux/synclink.h", "MGSL_IOCSTXIDLE", 0x6d02},
- {"linux/mtio.h", "MTIOCPOS", 0x6d03},
- {"linux/synclink.h", "MGSL_IOCGTXIDLE", 0x6d03},
- {"linux/mtio.h", "MTIOCGETCONFIG", 0x6d04},
- {"linux/synclink.h", "MGSL_IOCTXENABLE", 0x6d04},
- {"linux/mtio.h", "MTIOCSETCONFIG", 0x6d05},
- {"linux/synclink.h", "MGSL_IOCRXENABLE", 0x6d05},
- {"linux/mtio.h", "MTIOCRDFTSEG", 0x6d06},
- {"linux/synclink.h", "MGSL_IOCTXABORT", 0x6d06},
- {"linux/mtio.h", "MTIOCWRFTSEG", 0x6d07},
- {"linux/synclink.h", "MGSL_IOCGSTATS", 0x6d07},
- {"linux/mtio.h", "MTIOCVOLINFO", 0x6d08},
- {"linux/synclink.h", "MGSL_IOCWAITEVENT", 0x6d08},
- {"linux/mtio.h", "MTIOCGETSIZE", 0x6d09},
- {"linux/synclink.h", "MGSL_IOCLOOPTXDONE", 0x6d09},
- {"linux/mtio.h", "MTIOCFTFORMAT", 0x6d0a},
- {"linux/mtio.h", "MTIOCFTCMD", 0x6d0b},
- {"linux/synclink.h", "MGSL_IOCCLRMODCOUNT", 0x6d0f},
- {"linux/zftape.h", "MTIOC_ZFTAPE_GETBLKSZ", 0x6d68},
- {"linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", 0x6e01},
- {"linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", 0x6e02},
- {"linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID2", 0x6e02},
- {"linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", 0x6e03},
- {"linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", 0x6e04},
- {"linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO_V2", 0x6e04},
- {"linux/ncp_fs.h", "NCP_IOC_SIGN_INIT", 0x6e05},
- {"linux/ncp_fs.h", "NCP_IOC_SIGN_WANTED", 0x6e06},
- {"linux/ncp_fs.h", "NCP_IOC_SET_SIGN_WANTED", 0x6e06},
- {"linux/ncp_fs.h", "NCP_IOC_LOCKUNLOCK", 0x6e07},
- {"linux/ncp_fs.h", "NCP_IOC_GETROOT", 0x6e08},
- {"linux/ncp_fs.h", "NCP_IOC_SETROOT", 0x6e08},
- {"linux/ncp_fs.h", "NCP_IOC_GETOBJECTNAME", 0x6e09},
- {"linux/ncp_fs.h", "NCP_IOC_SETOBJECTNAME", 0x6e09},
- {"linux/ncp_fs.h", "NCP_IOC_GETPRIVATEDATA", 0x6e0a},
- {"linux/ncp_fs.h", "NCP_IOC_SETPRIVATEDATA", 0x6e0a},
- {"linux/ncp_fs.h", "NCP_IOC_GETCHARSETS", 0x6e0b},
- {"linux/ncp_fs.h", "NCP_IOC_SETCHARSETS", 0x6e0b},
- {"linux/ncp_fs.h", "NCP_IOC_GETDENTRYTTL", 0x6e0c},
- {"linux/ncp_fs.h", "NCP_IOC_SETDENTRYTTL", 0x6e0c},
- {"linux/matroxfb.h", "MATROXFB_SET_OUTPUT_CONNECTION", 0x6ef8},
- {"linux/matroxfb.h", "MATROXFB_GET_OUTPUT_CONNECTION", 0x6ef8},
- {"linux/matroxfb.h", "MATROXFB_GET_AVAILABLE_OUTPUTS", 0x6ef9},
- {"linux/matroxfb.h", "MATROXFB_SET_OUTPUT_MODE", 0x6efa},
- {"linux/matroxfb.h", "MATROXFB_GET_OUTPUT_MODE", 0x6efa},
- {"linux/matroxfb.h", "MATROXFB_GET_ALL_OUTPUTS", 0x6efb},
- {"linux/rtc.h", "RTC_AIE_ON", 0x7001},
- {"linux/rtc.h", "RTC_AIE_OFF", 0x7002},
- {"linux/intermezzo_fs.h", "PRESTO_GETMOUNT", 0x7003},
- {"linux/rtc.h", "RTC_UIE_ON", 0x7003},
- {"linux/intermezzo_fs.h", "PRESTO_SETPID", 0x7004},
- {"linux/rtc.h", "RTC_UIE_OFF", 0x7004},
- {"linux/rtc.h", "RTC_PIE_ON", 0x7005},
- {"linux/intermezzo_fs.h", "PRESTO_CLOSE_JOURNALF", 0x7006},
- {"linux/rtc.h", "RTC_PIE_OFF", 0x7006},
- {"linux/intermezzo_fs.h", "PRESTO_SET_FSETROOT", 0x7007},
- {"linux/rtc.h", "RTC_ALM_SET", 0x7007},
- {"linux/intermezzo_fs.h", "PRESTO_CLEAR_FSETROOT", 0x7008},
- {"linux/rtc.h", "RTC_ALM_READ", 0x7008},
- {"linux/intermezzo_fs.h", "PRESTO_SETOPT", 0x7009},
- {"linux/rtc.h", "RTC_RD_TIME", 0x7009},
- {"linux/intermezzo_fs.h", "PRESTO_GETOPT", 0x700a},
- {"linux/rtc.h", "RTC_SET_TIME", 0x700a},
- {"linux/intermezzo_fs.h", "PRESTO_GET_KMLSIZE", 0x700b},
- {"linux/rtc.h", "RTC_IRQP_READ", 0x700b},
- {"linux/intermezzo_fs.h", "PRESTO_GET_RECNO", 0x700c},
- {"linux/rtc.h", "RTC_IRQP_SET", 0x700c},
- {"linux/rtc.h", "RTC_EPOCH_READ", 0x700d},
- {"linux/rtc.h", "RTC_EPOCH_SET", 0x700e},
- {"linux/rtc.h", "RTC_WIE_ON", 0x700f},
- {"linux/rtc.h", "RTC_WKALM_SET", 0x700f},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_SETATTR", 0x7010},
- {"linux/rtc.h", "RTC_WIE_OFF", 0x7010},
- {"linux/rtc.h", "RTC_WKALM_RD", 0x7010},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_CREATE", 0x7011},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_LINK", 0x7012},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_UNLINK", 0x7013},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_SYMLINK", 0x7014},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_MKDIR", 0x7015},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_RMDIR", 0x7016},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_MKNOD", 0x7017},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_RENAME", 0x7018},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_CLOSE", 0x701a},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_IOPEN", 0x701b},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_SETEXTATTR", 0x701c},
- {"linux/intermezzo_fs.h", "PRESTO_VFS_DELEXTATTR", 0x701d},
- {"linux/intermezzo_fs.h", "PRESTO_MARK", 0x7020},
- {"linux/intermezzo_fs.h", "PRESTO_RELEASE_PERMIT", 0x7021},
- {"linux/intermezzo_fs.h", "PRESTO_CLEAR_ALL_FSETROOTS", 0x7022},
- {"linux/intermezzo_fs.h", "PRESTO_BACKFETCH_LML", 0x7023},
- {"linux/intermezzo_fs.h", "PRESTO_REINT", 0x7024},
- {"linux/intermezzo_fs.h", "PRESTO_CANCEL_LML", 0x7025},
- {"linux/intermezzo_fs.h", "PRESTO_RESET_FSET", 0x7026},
- {"linux/intermezzo_fs.h", "PRESTO_COMPLETE_CLOSES", 0x7027},
- {"linux/intermezzo_fs.h", "PRESTO_REINT_BEGIN", 0x7030},
- {"linux/intermezzo_fs.h", "PRESTO_DO_REINT", 0x7031},
- {"linux/intermezzo_fs.h", "PRESTO_REINT_END", 0x7032},
- {"linux/nvram.h", "NVRAM_INIT", 0x7040},
- {"linux/nvram.h", "NVRAM_SETCKS", 0x7041},
- {"linux/ppdev.h", "PPSETMODE", 0x7080},
- {"linux/ppdev.h", "PPRSTATUS", 0x7081},
- {"linux/ppdev.h", "PPRCONTROL", 0x7083},
- {"linux/ppdev.h", "PPWCONTROL", 0x7084},
- {"linux/ppdev.h", "PPRDATA", 0x7085},
- {"linux/ppdev.h", "PPWDATA", 0x7086},
- {"linux/ppdev.h", "PPCLAIM", 0x708b},
- {"linux/ppdev.h", "PPRELEASE", 0x708c},
- {"linux/ppdev.h", "PPYIELD", 0x708d},
- {"linux/ppdev.h", "PPFCONTROL", 0x708e},
- {"linux/ppdev.h", "PPEXCL", 0x708f},
- {"linux/ppdev.h", "PPDATADIR", 0x7090},
- {"linux/ppdev.h", "PPNEGOT", 0x7091},
- {"linux/ppdev.h", "PPWCTLONIRQ", 0x7092},
- {"linux/ppdev.h", "PPCLRIRQ", 0x7093},
- {"linux/ppdev.h", "PPSETPHASE", 0x7094},
- {"linux/ppdev.h", "PPGETTIME", 0x7095},
- {"linux/ppdev.h", "PPSETTIME", 0x7096},
- {"linux/ppdev.h", "PPGETMODES", 0x7097},
- {"linux/ppdev.h", "PPGETMODE", 0x7098},
- {"linux/ppdev.h", "PPGETPHASE", 0x7099},
- {"linux/ppdev.h", "PPGETFLAGS", 0x709a},
- {"linux/ppdev.h", "PPSETFLAGS", 0x709b},
- {"linux/serio.h", "SPIOCSTYPE", 0x7101},
- {"linux/telephony.h", "PHONE_CAPABILITIES", 0x7180},
- {"linux/telephony.h", "PHONE_CAPABILITIES_LIST", 0x7181},
- {"linux/telephony.h", "PHONE_CAPABILITIES_CHECK", 0x7182},
- {"linux/telephony.h", "PHONE_RING", 0x7183},
- {"linux/telephony.h", "PHONE_HOOKSTATE", 0x7184},
- {"linux/telephony.h", "PHONE_MAXRINGS", 0x7185},
- {"linux/telephony.h", "PHONE_RING_CADENCE", 0x7186},
- {"linux/telephony.h", "OLD_PHONE_RING_START", 0x7187},
- {"linux/telephony.h", "PHONE_RING_START", 0x7187},
- {"linux/telephony.h", "PHONE_RING_STOP", 0x7188},
- {"linux/telephony.h", "PHONE_REC_CODEC", 0x7189},
- {"linux/telephony.h", "PHONE_REC_START", 0x718a},
- {"linux/telephony.h", "PHONE_REC_STOP", 0x718b},
- {"linux/telephony.h", "PHONE_REC_DEPTH", 0x718c},
- {"linux/telephony.h", "PHONE_FRAME", 0x718d},
- {"linux/telephony.h", "PHONE_REC_VOLUME", 0x718e},
- {"linux/telephony.h", "PHONE_REC_LEVEL", 0x718f},
- {"linux/telephony.h", "PHONE_PLAY_CODEC", 0x7190},
- {"linux/telephony.h", "PHONE_PLAY_START", 0x7191},
- {"linux/telephony.h", "PHONE_PLAY_STOP", 0x7192},
- {"linux/telephony.h", "PHONE_PLAY_DEPTH", 0x7193},
- {"linux/telephony.h", "PHONE_PLAY_VOLUME", 0x7194},
- {"linux/telephony.h", "PHONE_PLAY_LEVEL", 0x7195},
- {"linux/telephony.h", "PHONE_DTMF_READY", 0x7196},
- {"linux/telephony.h", "PHONE_GET_DTMF", 0x7197},
- {"linux/telephony.h", "PHONE_GET_DTMF_ASCII", 0x7198},
- {"linux/telephony.h", "PHONE_DTMF_OOB", 0x7199},
- {"linux/telephony.h", "PHONE_EXCEPTION", 0x719a},
- {"linux/telephony.h", "PHONE_PLAY_TONE", 0x719b},
- {"linux/telephony.h", "PHONE_SET_TONE_ON_TIME", 0x719c},
- {"linux/telephony.h", "PHONE_SET_TONE_OFF_TIME", 0x719d},
- {"linux/telephony.h", "PHONE_GET_TONE_ON_TIME", 0x719e},
- {"linux/telephony.h", "PHONE_GET_TONE_OFF_TIME", 0x719f},
- {"linux/telephony.h", "PHONE_GET_TONE_STATE", 0x71a0},
- {"linux/telephony.h", "PHONE_BUSY", 0x71a1},
- {"linux/telephony.h", "PHONE_RINGBACK", 0x71a2},
- {"linux/telephony.h", "PHONE_DIALTONE", 0x71a3},
- {"linux/telephony.h", "PHONE_CPT_STOP", 0x71a4},
- {"linux/telephony.h", "PHONE_PSTN_SET_STATE", 0x71a4},
- {"linux/telephony.h", "PHONE_PSTN_GET_STATE", 0x71a5},
- {"linux/telephony.h", "PHONE_WINK_DURATION", 0x71a6},
- {"linux/telephony.h", "PHONE_QUERY_CODEC", 0x71a7},
- {"linux/telephony.h", "PHONE_PSTN_LINETEST", 0x71a8},
- {"linux/telephony.h", "PHONE_VAD", 0x71a9},
- {"linux/telephony.h", "PHONE_WINK", 0x71aa},
- {"linux/ixjuser.h", "IXJCTL_DSP_RESET", 0x71c0},
- {"linux/ixjuser.h", "IXJCTL_CARDTYPE", 0x71c1},
- {"linux/ixjuser.h", "IXJCTL_SERIAL", 0x71c2},
- {"linux/ixjuser.h", "IXJCTL_DSP_TYPE", 0x71c3},
- {"linux/ixjuser.h", "IXJCTL_DSP_VERSION", 0x71c4},
- {"linux/ixjuser.h", "IXJCTL_DSP_IDLE", 0x71c5},
- {"linux/ixjuser.h", "IXJCTL_TESTRAM", 0x71c6},
- {"linux/ixjuser.h", "IXJCTL_SET_FILTER", 0x71c7},
- {"linux/ixjuser.h", "IXJCTL_GET_FILTER_HIST", 0x71c8},
- {"linux/ixjuser.h", "IXJCTL_INIT_TONE", 0x71c9},
- {"linux/ixjuser.h", "IXJCTL_TONE_CADENCE", 0x71ca},
- {"linux/ixjuser.h", "IXJCTL_AEC_START", 0x71cb},
- {"linux/ixjuser.h", "IXJCTL_AEC_STOP", 0x71cc},
- {"linux/ixjuser.h", "IXJCTL_AEC_GET_LEVEL", 0x71cd},
- {"linux/ixjuser.h", "IXJCTL_SET_LED", 0x71ce},
- {"linux/ixjuser.h", "IXJCTL_MIXER", 0x71cf},
- {"linux/ixjuser.h", "IXJCTL_DAA_COEFF_SET", 0x71d0},
- {"linux/ixjuser.h", "IXJCTL_PORT", 0x71d1},
- {"linux/ixjuser.h", "IXJCTL_DAA_AGAIN", 0x71d2},
- {"linux/ixjuser.h", "IXJCTL_PSTN_LINETEST", 0x71d3},
- {"linux/ixjuser.h", "IXJCTL_CID", 0x71d4},
- {"linux/ixjuser.h", "IXJCTL_POTS_PSTN", 0x71d5},
- {"linux/ixjuser.h", "IXJCTL_FILTER_CADENCE", 0x71d6},
- {"linux/ixjuser.h", "IXJCTL_PLAY_CID", 0x71d7},
- {"linux/ixjuser.h", "IXJCTL_VMWI", 0x71d8},
- {"linux/ixjuser.h", "IXJCTL_CIDCW", 0x71d9},
- {"linux/ixjuser.h", "IXJCTL_VERSION", 0x71da},
- {"linux/telephony.h", "PHONE_REC_VOLUME_LINEAR", 0x71db},
- {"linux/telephony.h", "PHONE_PLAY_VOLUME_LINEAR", 0x71dc},
- {"linux/ixjuser.h", "IXJCTL_SET_FILTER_RAW", 0x71dd},
- {"linux/ixjuser.h", "IXJCTL_HZ", 0x71e0},
- {"linux/ixjuser.h", "IXJCTL_RATE", 0x71e1},
- {"linux/ixjuser.h", "IXJCTL_FRAMES_READ", 0x71e2},
- {"linux/ixjuser.h", "IXJCTL_FRAMES_WRITTEN", 0x71e3},
- {"linux/ixjuser.h", "IXJCTL_READ_WAIT", 0x71e4},
- {"linux/ixjuser.h", "IXJCTL_WRITE_WAIT", 0x71e5},
- {"linux/ixjuser.h", "IXJCTL_DRYBUFFER_READ", 0x71e6},
- {"linux/ixjuser.h", "IXJCTL_DRYBUFFER_CLEAR", 0x71e7},
- {"linux/ixjuser.h", "IXJCTL_DTMF_PRESCALE", 0x71e8},
- {"linux/ixjuser.h", "IXJCTL_SIGCTL", 0x71e9},
- {"linux/ixjuser.h", "IXJCTL_SC_RXG", 0x71ea},
- {"linux/ixjuser.h", "IXJCTL_SC_TXG", 0x71eb},
- {"linux/ixjuser.h", "IXJCTL_INTERCOM_START", 0x71fd},
- {"linux/ixjuser.h", "IXJCTL_INTERCOM_STOP", 0x71fe},
- {"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", 0x7201},
- {"linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", 0x7202},
- {"linux/cdk.h", "STL_BINTR", 0x7314},
- {"linux/cdk.h", "STL_BSTART", 0x7315},
- {"linux/cdk.h", "STL_BSTOP", 0x7316},
- {"linux/cdk.h", "STL_BRESET", 0x7317},
- {"linux/cdk.h", "STL_GETPFLAG", 0x7350},
- {"linux/cdk.h", "STL_SETPFLAG", 0x7351},
- {"linux/if_ppp.h", "PPPIOCGCHAN", 0x7437},
- {"linux/if_ppp.h", "PPPIOCATTCHAN", 0x7438},
- {"linux/if_ppp.h", "PPPIOCDISCONN", 0x7439},
- {"linux/if_ppp.h", "PPPIOCCONNECT", 0x743a},
- {"linux/if_ppp.h", "PPPIOCSMRRU", 0x743b},
- {"linux/if_ppp.h", "PPPIOCDETACH", 0x743c},
- {"linux/if_ppp.h", "PPPIOCATTACH", 0x743d},
- {"linux/if_ppp.h", "PPPIOCNEWUNIT", 0x743e},
- {"linux/if_ppp.h", "PPPIOCGIDLE", 0x743f},
- {"linux/if_ppp.h", "PPPIOCSDEBUG", 0x7440},
- {"linux/if_ppp.h", "PPPIOCGDEBUG", 0x7441},
- {"linux/if_ppp.h", "PPPIOCSACTIVE", 0x7446},
- {"linux/if_ppp.h", "PPPIOCSPASS", 0x7447},
- {"linux/if_ppp.h", "PPPIOCSNPMODE", 0x744b},
- {"linux/if_ppp.h", "PPPIOCGNPMODE", 0x744c},
- {"linux/if_ppp.h", "PPPIOCSCOMPRESS", 0x744d},
- {"linux/if_ppp.h", "PPPIOCXFERUNIT", 0x744e},
- {"linux/if_ppp.h", "PPPIOCSXASYNCMAP", 0x744f},
- {"linux/if_ppp.h", "PPPIOCGXASYNCMAP", 0x7450},
- {"linux/if_ppp.h", "PPPIOCSMAXCID", 0x7451},
- {"linux/if_ppp.h", "PPPIOCSMRU", 0x7452},
- {"linux/if_ppp.h", "PPPIOCGMRU", 0x7453},
- {"linux/if_ppp.h", "PPPIOCSRASYNCMAP", 0x7454},
- {"linux/if_ppp.h", "PPPIOCGRASYNCMAP", 0x7455},
- {"linux/if_ppp.h", "PPPIOCGUNIT", 0x7456},
- {"linux/if_ppp.h", "PPPIOCSASYNCMAP", 0x7457},
- {"linux/if_ppp.h", "PPPIOCGASYNCMAP", 0x7458},
- {"linux/if_ppp.h", "PPPIOCSFLAGS", 0x7459},
- {"linux/if_ppp.h", "PPPIOCGFLAGS", 0x745a},
- {"linux/jffs.h", "JFFS_PRINT_HASH", 0x745a},
- {"linux/jffs.h", "JFFS_PRINT_TREE", 0x745b},
- {"linux/jffs.h", "JFFS_GET_STATUS", 0x745c},
- {"linux/isdn_ppp.h", "PPPIOCGCALLINFO", 0x7480},
- {"linux/isdn_ppp.h", "PPPIOCBUNDLE", 0x7481},
- {"linux/isdn_ppp.h", "PPPIOCGMPFLAGS", 0x7482},
- {"linux/isdn_ppp.h", "PPPIOCSMPFLAGS", 0x7483},
- {"linux/isdn_ppp.h", "PPPIOCSMPMTU", 0x7484},
- {"linux/isdn_ppp.h", "PPPIOCSMPMRU", 0x7485},
- {"linux/isdn_ppp.h", "PPPIOCGCOMPRESSORS", 0x7486},
- {"linux/isdn_ppp.h", "PPPIOCSCOMPRESSOR", 0x7487},
- {"linux/isdn_ppp.h", "PPPIOCGIFNAME", 0x7488},
- {"linux/toshiba.h", "TOSH_SMM", 0x7490},
- {"linux/smb_fs.h", "SMB_IOC_GETMOUNTUID", 0x7501},
- {"linux/smb_fs.h", "SMB_IOC_NEWCONN", 0x7502},
- {"linux/smb_fs.h", "SMB_IOC_GETMOUNTUID32", 0x7503},
- {"linux/sonypi.h", "SONYPI_IOCGBRT", 0x7600},
- {"linux/sonypi.h", "SONYPI_IOCSBRT", 0x7600},
- {"linux/ext2_fs.h", "EXT2_IOC_GETVERSION", 0x7601},
- {"linux/ext3_fs.h", "EXT3_IOC_GETVERSION_OLD", 0x7601},
- {"linux/videodev.h", "VIDIOCGCAP", 0x7601},
- {"linux/ext2_fs.h", "EXT2_IOC_SETVERSION", 0x7602},
- {"linux/ext3_fs.h", "EXT3_IOC_SETVERSION_OLD", 0x7602},
- {"linux/sonypi.h", "SONYPI_IOCGBAT1CAP", 0x7602},
- {"linux/videodev.h", "VIDIOCGCHAN", 0x7602},
- {"linux/sonypi.h", "SONYPI_IOCGBAT1REM", 0x7603},
- {"linux/videodev.h", "VIDIOCSCHAN", 0x7603},
- {"linux/sonypi.h", "SONYPI_IOCGBAT2CAP", 0x7604},
- {"linux/videodev.h", "VIDIOCGTUNER", 0x7604},
- {"linux/sonypi.h", "SONYPI_IOCGBAT2REM", 0x7605},
- {"linux/videodev.h", "VIDIOCSTUNER", 0x7605},
- {"linux/videodev.h", "VIDIOCGPICT", 0x7606},
- {"linux/sonypi.h", "SONYPI_IOCGBATFLAGS", 0x7607},
- {"linux/videodev.h", "VIDIOCSPICT", 0x7607},
- {"linux/sonypi.h", "SONYPI_IOCGBLUE", 0x7608},
- {"linux/videodev.h", "VIDIOCCAPTURE", 0x7608},
- {"linux/sonypi.h", "SONYPI_IOCSBLUE", 0x7609},
- {"linux/videodev.h", "VIDIOCGWIN", 0x7609},
- {"linux/videodev.h", "VIDIOCSWIN", 0x760a},
- {"linux/videodev.h", "VIDIOCGFBUF", 0x760b},
- {"linux/videodev.h", "VIDIOCSFBUF", 0x760c},
- {"linux/videodev.h", "VIDIOCKEY", 0x760d},
- {"linux/videodev.h", "VIDIOCGFREQ", 0x760e},
- {"linux/videodev.h", "VIDIOCSFREQ", 0x760f},
- {"linux/videodev.h", "VIDIOCGAUDIO", 0x7610},
- {"linux/videodev.h", "VIDIOCSAUDIO", 0x7611},
- {"linux/videodev.h", "VIDIOCSYNC", 0x7612},
- {"linux/videodev.h", "VIDIOCMCAPTURE", 0x7613},
- {"linux/videodev.h", "VIDIOCGMBUF", 0x7614},
- {"linux/videodev.h", "VIDIOCGUNIT", 0x7615},
- {"linux/videodev.h", "VIDIOCGCAPTURE", 0x7616},
- {"linux/videodev.h", "VIDIOCSCAPTURE", 0x7617},
- {"linux/videodev.h", "VIDIOCSPLAYMODE", 0x7618},
- {"linux/videodev.h", "VIDIOCSWRITEMODE", 0x7619},
- {"linux/videodev.h", "VIDIOCGPLAYINFO", 0x761a},
- {"linux/videodev.h", "VIDIOCSMICROCODE", 0x761b},
- {"linux/videodev.h", "VIDIOCGVBIFMT", 0x761c},
- {"linux/videodev.h", "VIDIOCSVBIFMT", 0x761d},
- {"linux/meye.h", "MEYEIOC_G_PARAMS", 0x76c0},
- {"linux/meye.h", "MEYEIOC_S_PARAMS", 0x76c1},
- {"linux/meye.h", "MEYEIOC_QBUF_CAPT", 0x76c2},
- {"linux/meye.h", "MEYEIOC_SYNC", 0x76c3},
- {"linux/meye.h", "MEYEIOC_STILLCAPT", 0x76c4},
- {"linux/meye.h", "MEYEIOC_STILLJCAPT", 0x76c5},
- {"linux/dn.h", "SIOCSNETADDR", 0x89e0},
- {"linux/dn.h", "OSIOCSNETADDR", 0x89e0},
- {"linux/dn.h", "SIOCGNETADDR", 0x89e1},
- {"linux/dn.h", "OSIOCGNETADDR", 0x89e1},
- {"linux/auto_fs.h", "AUTOFS_IOC_READY", 0x9360},
- {"linux/auto_fs.h", "AUTOFS_IOC_FAIL", 0x9361},
- {"linux/auto_fs.h", "AUTOFS_IOC_CATATONIC", 0x9362},
- {"linux/auto_fs.h", "AUTOFS_IOC_PROTOVER", 0x9363},
- {"linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT", 0x9364},
- {"linux/auto_fs.h", "AUTOFS_IOC_EXPIRE", 0x9365},
- {"linux/auto_fs4.h", "AUTOFS_IOC_EXPIRE_MULTI", 0x9366},
- {"linux/nbd.h", "NBD_SET_SOCK", 0xab00},
- {"linux/nbd.h", "NBD_SET_BLKSIZE", 0xab01},
- {"linux/nbd.h", "NBD_SET_SIZE", 0xab02},
- {"linux/nbd.h", "NBD_DO_IT", 0xab03},
- {"linux/nbd.h", "NBD_CLEAR_SOCK", 0xab04},
- {"linux/nbd.h", "NBD_CLEAR_QUE", 0xab05},
- {"linux/nbd.h", "NBD_PRINT_DEBUG", 0xab06},
- {"linux/nbd.h", "NBD_SET_SIZE_BLOCKS", 0xab07},
- {"linux/nbd.h", "NBD_DISCONNECT", 0xab08},
- {"linux/raw.h", "RAW_SETBIND", 0xac00},
- {"linux/raw.h", "RAW_GETBIND", 0xac01},
- {"linux/if_pppox.h", "PPPOEIOCSFWD", 0xb100},
- {"linux/if_pppox.h", "PPPOEIOCDFWD", 0xb101},
- {"linux/reiserfs_fs.h", "REISERFS_IOC_UNPACK", 0xcd01},
- {"linux/lvm.h", "VG_CREATE_OLD", 0xfe00},
- {"linux/lvm.h", "VG_REMOVE", 0xfe01},
- {"linux/lvm.h", "VG_EXTEND", 0xfe03},
- {"linux/lvm.h", "VG_REDUCE", 0xfe04},
- {"linux/lvm.h", "VG_STATUS", 0xfe05},
- {"linux/lvm.h", "VG_STATUS_GET_COUNT", 0xfe06},
- {"linux/lvm.h", "VG_STATUS_GET_NAMELIST", 0xfe07},
- {"linux/lvm.h", "VG_SET_EXTENDABLE", 0xfe08},
- {"linux/lvm.h", "VG_RENAME", 0xfe09},
- {"linux/lvm.h", "VG_CREATE", 0xfe0a},
- {"linux/lvm.h", "LV_CREATE", 0xfe20},
- {"linux/lvm.h", "LV_REMOVE", 0xfe21},
- {"linux/lvm.h", "LV_ACTIVATE", 0xfe22},
- {"linux/lvm.h", "LV_DEACTIVATE", 0xfe23},
- {"linux/lvm.h", "LV_EXTEND", 0xfe24},
- {"linux/lvm.h", "LV_REDUCE", 0xfe25},
- {"linux/lvm.h", "LV_STATUS_BYNAME", 0xfe26},
- {"linux/lvm.h", "LV_STATUS_BYINDEX", 0xfe27},
- {"linux/lvm.h", "LV_SET_ACCESS", 0xfe28},
- {"linux/lvm.h", "LV_SET_ALLOCATION", 0xfe29},
- {"linux/lvm.h", "LV_SET_STATUS", 0xfe2a},
- {"linux/lvm.h", "LE_REMAP", 0xfe2b},
- {"linux/lvm.h", "LV_SNAPSHOT_USE_RATE", 0xfe2c},
- {"linux/lvm.h", "LV_STATUS_BYDEV", 0xfe2e},
- {"linux/lvm.h", "LV_RENAME", 0xfe2f},
- {"linux/lvm.h", "LV_BMAP", 0xfe30},
- {"linux/lvm.h", "PV_STATUS", 0xfe40},
- {"linux/lvm.h", "PV_CHANGE", 0xfe41},
- {"linux/lvm.h", "PV_FLUSH", 0xfe42},
- {"linux/lvm.h", "PE_LOCK_UNLOCK", 0xfe50},
- {"linux/lvm.h", "LVM_GET_IOP_VERSION", 0xfe98},
- {"linux/lvm.h", "LVM_RESET", 0xfe99},
- {"linux/lvm.h", "LVM_LOCK_LVM", 0xff00},
diff --git a/linux/sparc64/ioctls_arch0.h b/linux/sparc64/ioctls_arch0.h
new file mode 100644
index 0000000..96bd895
--- /dev/null
+++ b/linux/sparc64/ioctls_arch0.h
@@ -0,0 +1 @@
+#include "sparc/ioctls_arch0.h"
diff --git a/linux/sparc64/ioctls_arch2.h b/linux/sparc64/ioctls_arch2.h
new file mode 100644
index 0000000..6128dc9
--- /dev/null
+++ b/linux/sparc64/ioctls_arch2.h
@@ -0,0 +1,129 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/sparc/include/ tree. */
+{ "asm/apc.h", "APCIOCGBPORT", _IOC_READ, 0x4104, 0x04 },
+{ "asm/apc.h", "APCIOCGCPWR", _IOC_READ, 0x4102, 0x04 },
+{ "asm/apc.h", "APCIOCGFANCTL", _IOC_READ, 0x4100, 0x04 },
+{ "asm/apc.h", "APCIOCSBPORT", _IOC_WRITE, 0x4105, 0x04 },
+{ "asm/apc.h", "APCIOCSCPWR", _IOC_WRITE, 0x4103, 0x04 },
+{ "asm/apc.h", "APCIOCSFANCTL", _IOC_WRITE, 0x4101, 0x04 },
+{ "asm/display7seg.h", "D7SIOCRD", _IOC_READ, 0x7045, 0x04 },
+{ "asm/display7seg.h", "D7SIOCTM", _IOC_NONE, 0x7047, 0x00 },
+{ "asm/display7seg.h", "D7SIOCWR", _IOC_WRITE, 0x7046, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_CPU_TEMPERATURE", _IOC_READ, 0x7040, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_CPU_VOLTAGE", _IOC_READ, 0x7041, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_ETHERNET_TEMPERATURE", _IOC_READ, 0x7047, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_FAN_STATUS", _IOC_READ, 0x7042, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_GLOBALADDRESS", _IOC_READ, 0x7049, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_MTHRBD_TEMPERATURE", _IOC_READ, 0x7048, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_SCSI_TEMPERATURE", _IOC_READ, 0x7046, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_SHUTDOWN_TEMPERATURE", _IOC_READ, 0x7044, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_VOLTAGE_STATUS", _IOC_READ, 0x7045, 0x04 },
+{ "asm/envctrl.h", "ENVCTRL_RD_WARNING_TEMPERATURE", _IOC_READ, 0x7043, 0x04 },
+{ "asm/fbio.h", "FBIOGATTR", _IOC_READ, 0x4606, 0x58 },
+{ "asm/fbio.h", "FBIOGCURMAX", _IOC_READ, 0x461c, 0x04 },
+{ "asm/fbio.h", "FBIOGCURPOS", _IOC_WRITE, 0x461b, 0x04 },
+{ "asm/fbio.h", "FBIOGCURSOR", _IOC_READ|_IOC_WRITE, 0x4619, 0x48 },
+{ "asm/fbio.h", "FBIOGETCMAP", _IOC_WRITE, 0x4604, 0x20 },
+{ "asm/fbio.h", "FBIOGTYPE", _IOC_READ, 0x4600, 0x18 },
+{ "asm/fbio.h", "FBIOGVIDEO", _IOC_READ, 0x4608, 0x04 },
+{ "asm/fbio.h", "FBIOPUTCMAP", _IOC_WRITE, 0x4603, 0x20 },
+{ "asm/fbio.h", "FBIOSATTR", _IOC_WRITE, 0x4605, 0x58 },
+{ "asm/fbio.h", "FBIOSCURPOS", _IOC_WRITE, 0x461a, 0x04 },
+{ "asm/fbio.h", "FBIOSCURSOR", _IOC_WRITE, 0x4618, 0x48 },
+{ "asm/fbio.h", "FBIOSVIDEO", _IOC_WRITE, 0x4607, 0x04 },
+{ "asm/fbio.h", "FBIO_WID_ALLOC", _IOC_READ|_IOC_WRITE, 0x461e, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_FREE", _IOC_WRITE, 0x461f, 0x0c },
+{ "asm/fbio.h", "FBIO_WID_GET", _IOC_READ|_IOC_WRITE, 0x4621, 0x10 },
+{ "asm/fbio.h", "FBIO_WID_PUT", _IOC_WRITE, 0x4620, 0x10 },
+{ "asm/fbio.h", "LEO_CLUTALLOC", _IOC_READ|_IOC_WRITE, 0x4c35, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTFREE", _IOC_WRITE, 0x4c36, 0x0c },
+{ "asm/fbio.h", "LEO_CLUTPOST", _IOC_WRITE, 0x4c38, 0x28 },
+{ "asm/fbio.h", "LEO_CLUTREAD", _IOC_WRITE, 0x4c37, 0x28 },
+{ "asm/fbio.h", "LEO_GETGAMMA", _IOC_READ, 0x4c45, 0x04 },
+{ "asm/fbio.h", "LEO_SETGAMMA", _IOC_WRITE, 0x4c44, 0x04 },
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x5407, 0x00 },
+{ "asm/ioctls.h", "TCGETA", _IOC_READ, 0x5401, 0x12 },
+{ "asm/ioctls.h", "TCGETS", _IOC_READ, 0x5408, 0x38 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x540c, 0x40 },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x5405, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm/ioctls.h", "TCSETA", _IOC_WRITE, 0x5402, 0x12 },
+{ "asm/ioctls.h", "TCSETAF", _IOC_WRITE, 0x5404, 0x12 },
+{ "asm/ioctls.h", "TCSETAW", _IOC_WRITE, 0x5403, 0x12 },
+{ "asm/ioctls.h", "TCSETS", _IOC_WRITE, 0x5409, 0x38 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x540d, 0x40 },
+{ "asm/ioctls.h", "TCSETSF", _IOC_WRITE, 0x540b, 0x38 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x540f, 0x40 },
+{ "asm/ioctls.h", "TCSETSW", _IOC_WRITE, 0x540a, 0x38 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x540e, 0x40 },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x5406, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", _IOC_NONE, 0x747a, 0x00 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_NONE, 0x7424, 0x00 },
+{ "asm/ioctls.h", "TIOCEXCL", _IOC_NONE, 0x740d, 0x00 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", _IOC_READ, 0x7400, 0x04 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7483, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x7486, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x5441, 0x20 },
+{ "asm/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x7485, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", _IOC_READ, 0x7464, 0x04 },
+{ "asm/ioctls.h", "TIOCGWINSZ", _IOC_READ, 0x7468, 0x08 },
+{ "asm/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm/ioctls.h", "TIOCMBIC", _IOC_WRITE, 0x746b, 0x04 },
+{ "asm/ioctls.h", "TIOCMBIS", _IOC_WRITE, 0x746c, 0x04 },
+{ "asm/ioctls.h", "TIOCMGET", _IOC_READ, 0x746a, 0x04 },
+{ "asm/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm/ioctls.h", "TIOCMSET", _IOC_WRITE, 0x746d, 0x04 },
+{ "asm/ioctls.h", "TIOCNOTTY", _IOC_NONE, 0x7471, 0x00 },
+{ "asm/ioctls.h", "TIOCNXCL", _IOC_NONE, 0x740e, 0x00 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", _IOC_WRITE, 0x7470, 0x04 },
+{ "asm/ioctls.h", "TIOCSBRK", _IOC_NONE, 0x747b, 0x00 },
+{ "asm/ioctls.h", "TIOCSCTTY", _IOC_NONE, 0x7484, 0x00 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm/ioctls.h", "TIOCSETD", _IOC_WRITE, 0x7401, 0x04 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x7488, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7482, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x7487, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x5442, 0x20 },
+{ "asm/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", _IOC_WRITE, 0x7465, 0x04 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", _IOC_WRITE, 0x7472, 0x01 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCSWINSZ", _IOC_WRITE, 0x7467, 0x08 },
+{ "asm/ioctls.h", "TIOCVHANGUP", _IOC_NONE, 0x5437, 0x00 },
+{ "asm/openpromio.h", "OPIOCGET", _IOC_READ|_IOC_WRITE, 0x4f01, 0x20 },
+{ "asm/openpromio.h", "OPIOCGETCHILD", _IOC_READ|_IOC_WRITE, 0x4f06, 0x04 },
+{ "asm/openpromio.h", "OPIOCGETNEXT", _IOC_READ|_IOC_WRITE, 0x4f05, 0x04 },
+{ "asm/openpromio.h", "OPIOCGETOPTNODE", _IOC_READ, 0x4f04, 0x04 },
+{ "asm/openpromio.h", "OPIOCNEXTPROP", _IOC_READ|_IOC_WRITE, 0x4f03, 0x20 },
+{ "asm/openpromio.h", "OPIOCSET", _IOC_WRITE, 0x4f02, 0x20 },
+{ "asm/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
+{ "asm/watchdog.h", "WIOCGSTAT", _IOC_READ, 0x570c, 0x04 },
+{ "asm/watchdog.h", "WIOCSTART", _IOC_NONE, 0x570a, 0x00 },
+{ "asm/watchdog.h", "WIOCSTOP", _IOC_NONE, 0x570b, 0x00 },
diff --git a/linux/sparc64/ioctls_inc0.h b/linux/sparc64/ioctls_inc0.h
new file mode 100644
index 0000000..63b70e4
--- /dev/null
+++ b/linux/sparc64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "sparc/ioctls_inc0.h"
diff --git a/linux/sparc64/ioctls_inc2.h b/linux/sparc64/ioctls_inc2.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/sparc64/ioctls_inc2.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/sparc64/signalent.h b/linux/sparc64/signalent.h
index e059b5d..b4c6c15 100644
--- a/linux/sparc64/signalent.h
+++ b/linux/sparc64/signalent.h
@@ -1,32 +1 @@
- "SIG_0", /* 0 */
- "SIGHUP", /* 1 */
- "SIGINT", /* 2 */
- "SIGQUIT", /* 3 */
- "SIGILL", /* 4 */
- "SIGTRAP", /* 5 */
- "SIGABRT", /* 6 */
- "SIGEMT", /* 7 */
- "SIGFPE", /* 8 */
- "SIGKILL", /* 9 */
- "SIGBUS", /* 10 */
- "SIGSEGV", /* 11 */
- "SIGSYS", /* 12 */
- "SIGPIPE", /* 13 */
- "SIGALRM", /* 14 */
- "SIGTERM", /* 15 */
- "SIGURG", /* 16 */
- "SIGSTOP", /* 17 */
- "SIGTSTP", /* 18 */
- "SIGCONT", /* 19 */
- "SIGCHLD", /* 20 */
- "SIGTTIN", /* 21 */
- "SIGTTOU", /* 22 */
- "SIGIO", /* 23 */
- "SIGXCPU", /* 24 */
- "SIGXFSZ", /* 25 */
- "SIGVTALRM", /* 26 */
- "SIGPROF", /* 27 */
- "SIGWINCH", /* 28 */
- "SIGLOST", /* 29 */
- "SIGUSR1", /* 30 */
- "SIGUSR2", /* 31 */
+#include "sparc/signalent.h"
diff --git a/linux/sparc64/signalent1.h b/linux/sparc64/signalent1.h
index 0f6314f..9df023e 100644
--- a/linux/sparc64/signalent1.h
+++ b/linux/sparc64/signalent1.h
@@ -1 +1 @@
-#include "../sparc/signalent1.h"
+#include "sparc/signalent1.h"
diff --git a/linux/sparc64/signalent2.h b/linux/sparc64/signalent2.h
index e059b5d..093cba7 100644
--- a/linux/sparc64/signalent2.h
+++ b/linux/sparc64/signalent2.h
@@ -1,32 +1 @@
- "SIG_0", /* 0 */
- "SIGHUP", /* 1 */
- "SIGINT", /* 2 */
- "SIGQUIT", /* 3 */
- "SIGILL", /* 4 */
- "SIGTRAP", /* 5 */
- "SIGABRT", /* 6 */
- "SIGEMT", /* 7 */
- "SIGFPE", /* 8 */
- "SIGKILL", /* 9 */
- "SIGBUS", /* 10 */
- "SIGSEGV", /* 11 */
- "SIGSYS", /* 12 */
- "SIGPIPE", /* 13 */
- "SIGALRM", /* 14 */
- "SIGTERM", /* 15 */
- "SIGURG", /* 16 */
- "SIGSTOP", /* 17 */
- "SIGTSTP", /* 18 */
- "SIGCONT", /* 19 */
- "SIGCHLD", /* 20 */
- "SIGTTIN", /* 21 */
- "SIGTTOU", /* 22 */
- "SIGIO", /* 23 */
- "SIGXCPU", /* 24 */
- "SIGXFSZ", /* 25 */
- "SIGVTALRM", /* 26 */
- "SIGPROF", /* 27 */
- "SIGWINCH", /* 28 */
- "SIGLOST", /* 29 */
- "SIGUSR1", /* 30 */
- "SIGUSR2", /* 31 */
+#include "signalent.h"
diff --git a/linux/subcall.h b/linux/subcall.h
index 54f7fca..5a46b6a 100644
--- a/linux/subcall.h
+++ b/linux/subcall.h
@@ -1,6 +1,60 @@
#ifndef SYS_socket_subcall
# error SYS_socket_subcall is not defined
#endif
-#define SYS_socket_nsubcalls 20
-#define SYS_ipc_subcall ((SYS_socket_subcall)+(SYS_socket_nsubcalls))
+
+#define IS TRACE_INDIRECT_SUBCALL
+
+[SYS_socket_subcall + 0] = { 6, 0, printargs, "socket_subcall" },
+[SYS_socket_subcall + 1] = { 3, IS|TN, sys_socket, "socket" },
+[SYS_socket_subcall + 2] = { 3, IS|TN, sys_bind, "bind" },
+[SYS_socket_subcall + 3] = { 3, IS|TN, sys_connect, "connect" },
+[SYS_socket_subcall + 4] = { 2, IS|TN, sys_listen, "listen" },
+[SYS_socket_subcall + 5] = { 3, IS|TN, sys_accept, "accept" },
+[SYS_socket_subcall + 6] = { 3, IS|TN, sys_getsockname, "getsockname" },
+[SYS_socket_subcall + 7] = { 3, IS|TN, sys_getpeername, "getpeername" },
+[SYS_socket_subcall + 8] = { 4, IS|TN, sys_socketpair, "socketpair" },
+[SYS_socket_subcall + 9] = { 4, IS|TN, sys_send, "send" },
+[SYS_socket_subcall + 10] = { 4, IS|TN, sys_recv, "recv" },
+[SYS_socket_subcall + 11] = { 6, IS|TN, sys_sendto, "sendto" },
+[SYS_socket_subcall + 12] = { 6, IS|TN, sys_recvfrom, "recvfrom" },
+[SYS_socket_subcall + 13] = { 2, IS|TN, sys_shutdown, "shutdown" },
+[SYS_socket_subcall + 14] = { 5, IS|TN, sys_setsockopt, "setsockopt" },
+[SYS_socket_subcall + 15] = { 5, IS|TN, sys_getsockopt, "getsockopt" },
+[SYS_socket_subcall + 16] = { 3, IS|TN, sys_sendmsg, "sendmsg" },
+[SYS_socket_subcall + 17] = { 3, IS|TN, sys_recvmsg, "recvmsg" },
+[SYS_socket_subcall + 18] = { 4, IS|TN, sys_accept4, "accept4" },
+[SYS_socket_subcall + 19] = { 5, IS|TN, sys_recvmmsg, "recvmmsg" },
+[SYS_socket_subcall + 20] = { 4, IS|TN, sys_sendmmsg, "sendmmsg" },
+
+#define SYS_socket_nsubcalls 21
+#define SYS_ipc_subcall ((SYS_socket_subcall) + (SYS_socket_nsubcalls))
+
+[SYS_ipc_subcall + 0] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 1] = { 4, IS|TI, sys_semop, "semop" },
+[SYS_ipc_subcall + 2] = { 3, IS|TI, sys_semget, "semget" },
+[SYS_ipc_subcall + 3] = { 4, IS|TI, sys_semctl, "semctl" },
+[SYS_ipc_subcall + 4] = { 5, IS|TI, sys_semtimedop, "semtimedop" },
+[SYS_ipc_subcall + 5] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 6] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 7] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 8] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 9] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 10] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 11] = { 4, IS|TI, sys_msgsnd, "msgsnd" },
+[SYS_ipc_subcall + 12] = { 4, IS|TI, sys_msgrcv, "msgrcv" },
+[SYS_ipc_subcall + 13] = { 2, IS|TI, sys_msgget, "msgget" },
+[SYS_ipc_subcall + 14] = { 4, IS|TI, sys_msgctl, "msgctl" },
+[SYS_ipc_subcall + 15] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 16] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 17] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 18] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 19] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 20] = { 6, 0, printargs, "ipc_subcall" },
+[SYS_ipc_subcall + 21] = { 4, IS|TI|TM|SI, sys_shmat, "shmat" },
+[SYS_ipc_subcall + 22] = { 4, IS|TI|TM|SI, sys_shmdt, "shmdt" },
+[SYS_ipc_subcall + 23] = { 3, IS|TI, sys_shmget, "shmget" },
+[SYS_ipc_subcall + 24] = { 4, IS|TI, sys_shmctl, "shmctl" },
+
#define SYS_ipc_nsubcalls 25
+
+#undef IS
diff --git a/linux/syscall.h b/linux/syscall.h
index d353f74..45d261a 100644
--- a/linux/syscall.h
+++ b/linux/syscall.h
@@ -104,6 +104,7 @@
int sys_getitimer();
int sys_getpmsg(); /* TODO: non-Linux, remove? */
int sys_getpriority();
+int sys_getrandom();
int sys_getresuid();
int sys_getrlimit();
int sys_getrusage();
@@ -221,6 +222,7 @@
int sys_sched_setaffinity();
int sys_sched_setparam();
int sys_sched_setscheduler();
+int sys_seccomp();
int sys_select();
int sys_semctl();
int sys_semget();
diff --git a/linux/tile/arch_regs.h b/linux/tile/arch_regs.h
new file mode 100644
index 0000000..cd3f72b
--- /dev/null
+++ b/linux/tile/arch_regs.h
@@ -0,0 +1 @@
+extern struct pt_regs tile_regs;
diff --git a/linux/tile/errnoent1.h b/linux/tile/errnoent1.h
index 439ec5c..091df78 100644
--- a/linux/tile/errnoent1.h
+++ b/linux/tile/errnoent1.h
@@ -1,2 +1,2 @@
/* tilegx32/tilepro */
-#include "../errnoent.h"
+#include "errnoent.h"
diff --git a/linux/tile/ioctlent.h.in b/linux/tile/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/tile/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/tile/ioctlent1.h b/linux/tile/ioctlent1.h
deleted file mode 100644
index 9057b32..0000000
--- a/linux/tile/ioctlent1.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* tilegx32/tilepro */
-#include "ioctlent.h"
diff --git a/linux/tile/ioctls_arch0.h b/linux/tile/ioctls_arch0.h
new file mode 100644
index 0000000..0563585
--- /dev/null
+++ b/linux/tile/ioctls_arch0.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/tile/include/ tree. */
diff --git a/linux/tile/ioctls_arch1.h b/linux/tile/ioctls_arch1.h
new file mode 100644
index 0000000..0563585
--- /dev/null
+++ b/linux/tile/ioctls_arch1.h
@@ -0,0 +1 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/tile/include/ tree. */
diff --git a/linux/tile/ioctls_inc0.h b/linux/tile/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/tile/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/tile/ioctls_inc1.h b/linux/tile/ioctls_inc1.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/tile/ioctls_inc1.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/tile/signalent1.h b/linux/tile/signalent1.h
index 27a3e48..62f1193 100644
--- a/linux/tile/signalent1.h
+++ b/linux/tile/signalent1.h
@@ -1,2 +1,2 @@
/* tilegx32/tilepro */
-#include "../signalent.h"
+#include "signalent.h"
diff --git a/linux/tile/syscallent.h b/linux/tile/syscallent.h
index 5c41539..9d9933e 100644
--- a/linux/tile/syscallent.h
+++ b/linux/tile/syscallent.h
@@ -1,274 +1,4 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount2" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 42 */
- { 2, TF, sys_statfs, "statfs" }, /* 43 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 44 */
- { 2, TF, sys_truncate, "truncate" }, /* 45 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 46 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 3, TD, sys_lseek, "lseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 4, TD, sys_pread, "pread64" }, /* 67 */
- { 4, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 4, TD, sys_preadv, "preadv" }, /* 69 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "fstatat" }, /* 79 */
- { 2, TD, sys_fstat, "fstat" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 4, TD, sys_sync_file_range2, "sync_file_range2" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 4, TI, sys_msgget, "msgget" }, /* 186 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 4, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 4, TI, sys_semop, "semop" }, /* 193 */
- { 4, TI, sys_shmget, "shmget" }, /* 194 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 3, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 222 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 223 */
- { 1, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 2, TM, sys_mlock, "mlock" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
- { 0, 0, printargs, "arch_unimpl" }, /* 244 */
- { 3, 0, printargs, "cacheflush" }, /* 245 */
- { 1, 0, printargs, "set_dataplane" }, /* 246 */
- { 0, 0, printargs, "arch_unimpl" }, /* 247 */
- { 0, 0, printargs, "arch_unimpl" }, /* 248 */
- { 0, 0, printargs, "arch_unimpl" }, /* 249 */
- { 0, 0, printargs, "arch_unimpl" }, /* 250 */
- { 0, 0, printargs, "arch_unimpl" }, /* 251 */
- { 0, 0, printargs, "arch_unimpl" }, /* 252 */
- { 0, 0, printargs, "arch_unimpl" }, /* 253 */
- { 0, 0, printargs, "arch_unimpl" }, /* 254 */
- { 0, 0, printargs, "arch_unimpl" }, /* 255 */
- { 0, 0, printargs, "arch_unimpl" }, /* 256 */
- { 0, 0, printargs, "arch_unimpl" }, /* 257 */
- { 0, 0, printargs, "arch_unimpl" }, /* 258 */
- { 0, 0, printargs, "arch_unimpl" }, /* 259 */
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
+#include "64/syscallent.h"
+[244] = { 1, 0, printargs, "cmpxchg_badaddr" },
+[245] = { 3, 0, printargs, "cacheflush" },
+[246 ... 259] = { },
diff --git a/linux/tile/syscallent1.h b/linux/tile/syscallent1.h
index a1ac268..9b2e9fb 100644
--- a/linux/tile/syscallent1.h
+++ b/linux/tile/syscallent1.h
@@ -1,278 +1,6 @@
- { 2, 0, sys_io_setup, "io_setup" }, /* 0 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 1 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 2 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 3 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 4 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 5 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 6 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 7 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 8 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 9 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 10 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 11 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 12 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 13 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 14 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 15 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 16 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 17 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie" }, /* 18 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 19 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 20 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 21 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 22 */
- { 1, TD, sys_dup, "dup" }, /* 23 */
- { 3, TD, sys_dup3, "dup3" }, /* 24 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 25 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 26 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 27 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 28 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 29 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 30 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 31 */
- { 2, TD, sys_flock, "flock" }, /* 32 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 33 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 34 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 35 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 36 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 37 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 38 */
- { 2, TF, sys_umount2, "umount2" }, /* 39 */
- { 5, TF, sys_mount, "mount" }, /* 40 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 41 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 42 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 43 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 44 */
- { 4, TF, sys_truncate64, "truncate64" }, /* 45 */
- { 4, TD, sys_ftruncate64, "ftruncate64" }, /* 46 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 47 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 48 */
- { 1, TF, sys_chdir, "chdir" }, /* 49 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 50 */
- { 1, TF, sys_chroot, "chroot" }, /* 51 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 53 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 54 */
- { 3, TD, sys_fchown, "fchown" }, /* 55 */
- { 4, TD|TF, sys_openat, "openat" }, /* 56 */
- { 1, TD, sys_close, "close" }, /* 57 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 58 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 59 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 60 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 61 */
- { 5, TD, sys_llseek, "llseek" }, /* 62 */
- { 3, TD, sys_read, "read" }, /* 63 */
- { 3, TD, sys_write, "write" }, /* 64 */
- { 3, TD, sys_readv, "readv" }, /* 65 */
- { 3, TD, sys_writev, "writev" }, /* 66 */
- { 6, TD, sys_pread, "pread64" }, /* 67 */
- { 6, TD, sys_pwrite, "pwrite64" }, /* 68 */
- { 5, TD, sys_preadv, "preadv" }, /* 69 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 70 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 71 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 72 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 73 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 74 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 75 */
- { 6, TD, sys_splice, "splice" }, /* 76 */
- { 4, TD, sys_tee, "tee" }, /* 77 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 78 */
- { 4, TD|TF, sys_newfstatat, "fstatat64" }, /* 79 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 80 */
- { 0, 0, sys_sync, "sync" }, /* 81 */
- { 1, TD, sys_fsync, "fsync" }, /* 82 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 83 */
- { 6, TD, sys_sync_file_range2, "sync_file_range2" }, /* 84 */
- { 2, TD, sys_timerfd_create, "timerfd_create" }, /* 85 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime" }, /* 86 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime" }, /* 87 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 88 */
- { 1, TF, sys_acct, "acct" }, /* 89 */
- { 2, 0, sys_capget, "capget" }, /* 90 */
- { 2, 0, sys_capset, "capset" }, /* 91 */
- { 1, 0, sys_personality, "personality" }, /* 92 */
- { 1, TP|SE, sys_exit, "exit" }, /* 93 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 94 */
- { 5, TP, sys_waitid, "waitid" }, /* 95 */
- { 1, 0, sys_set_tid_address, "set_tid_address" }, /* 96 */
- { 1, TP, sys_unshare, "unshare" }, /* 97 */
- { 6, 0, sys_futex, "futex" }, /* 98 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 99 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 100 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 101 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 102 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 103 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 104 */
- { 3, 0, sys_init_module, "init_module" }, /* 105 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 106 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 107 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 108 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun" }, /* 109 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 110 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 111 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 112 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 113 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 114 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep" }, /* 115 */
- { 3, 0, sys_syslog, "syslog" }, /* 116 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 117 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 118 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 119 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 120 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 121 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" }, /* 122 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" }, /* 123 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 124 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 125 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 126 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 127 */
- { 0, 0, sys_restart_syscall, "restart_syscall" }, /* 128 */
- { 2, TS, sys_kill, "kill" }, /* 129 */
- { 2, TS, sys_kill, "tkill" }, /* 130 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 131 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 132 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 133 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 134 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" }, /* 135 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 136 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 137 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 138 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 139 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 140 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 141 */
- { 4, 0, sys_reboot, "reboot" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 1, 0, sys_setgid, "setgid" }, /* 144 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 145 */
- { 1, 0, sys_setuid, "setuid" }, /* 146 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 147 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 148 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 149 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 150 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 151 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 152 */
- { 1, 0, sys_times, "times" }, /* 153 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 154 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 155 */
- { 1, 0, sys_getsid, "getsid" }, /* 156 */
- { 0, 0, sys_setsid, "setsid" }, /* 157 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 158 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 159 */
- { 1, 0, sys_uname, "uname" }, /* 160 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 161 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 162 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 163 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 164 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 165 */
- { 1, 0, sys_umask, "umask" }, /* 166 */
- { 5, 0, sys_prctl, "prctl" }, /* 167 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 168 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 169 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 170 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 171 */
- { 0, 0, sys_getpid, "getpid" }, /* 172 */
- { 0, 0, sys_getppid, "getppid" }, /* 173 */
- { 0, NF, sys_getuid, "getuid" }, /* 174 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 175 */
- { 0, NF, sys_getgid, "getgid" }, /* 176 */
- { 0, NF, sys_getegid, "getegid" }, /* 177 */
- { 0, 0, sys_gettid, "gettid" }, /* 178 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 179 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 180 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 181 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 182 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 183 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 184 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 185 */
- { 4, TI, sys_msgget, "msgget" }, /* 186 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 187 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 188 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 189 */
- { 4, TI, sys_semget, "semget" }, /* 190 */
- { 4, TI, sys_semctl, "semctl" }, /* 191 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 192 */
- { 4, TI, sys_semop, "semop" }, /* 193 */
- { 4, TI, sys_shmget, "shmget" }, /* 194 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 195 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 196 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 197 */
- { 3, TN, sys_socket, "socket" }, /* 198 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 199 */
- { 3, TN, sys_bind, "bind" }, /* 200 */
- { 2, TN, sys_listen, "listen" }, /* 201 */
- { 3, TN, sys_accept, "accept" }, /* 202 */
- { 3, TN, sys_connect, "connect" }, /* 203 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 204 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 205 */
- { 6, TN, sys_sendto, "sendto" }, /* 206 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 207 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 208 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 209 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 210 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 211 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 212 */
- { 4, TD, sys_readahead, "readahead" }, /* 213 */
- { 1, TM|SI, sys_brk, "brk" }, /* 214 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 215 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 216 */
- { 5, 0, sys_add_key, "add_key" }, /* 217 */
- { 4, 0, sys_request_key, "request_key" }, /* 218 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 219 */
- { 5, TP, sys_clone, "clone" }, /* 220 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 221 */
- { 6, TD|TM|SI, sys_mmap_4koff, "mmap2" }, /* 222 */
- { 5, TD, sys_fadvise64, "fadvise64" }, /* 223 */
- { 1, TF, sys_swapon, "swapon" }, /* 224 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 225 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 226 */
- { 3, TM, sys_msync, "msync" }, /* 227 */
- { 2, TM, sys_mlock, "mlock" }, /* 228 */
- { 2, TM, sys_munlock, "munlock" }, /* 229 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 230 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 231 */
- { 3, TM, sys_mincore, "mincore" }, /* 232 */
- { 3, TM, sys_madvise, "madvise" }, /* 233 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" }, /* 234 */
- { 6, TM, sys_mbind, "mbind" }, /* 235 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 236 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 237 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 238 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 239 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 240 */
- { 5, TD, sys_perf_event_open, "perf_event_open" }, /* 241 */
- { 4, TN, sys_accept4, "accept4" }, /* 242 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 243 */
-#ifdef __tilegx__
- { 0, 0, printargs, "arch_unimpl" }, /* 244 */
-#else
- { 2, 0, printargs, "cmpxchg_badaddr" }, /* 244 */
-#endif
- { 3, 0, printargs, "cacheflush" }, /* 245 */
- { 1, 0, printargs, "set_dataplane" }, /* 246 */
- { 0, 0, printargs, "arch_unimpl" }, /* 247 */
- { 0, 0, printargs, "arch_unimpl" }, /* 248 */
- { 0, 0, printargs, "arch_unimpl" }, /* 249 */
- { 0, 0, printargs, "arch_unimpl" }, /* 250 */
- { 0, 0, printargs, "arch_unimpl" }, /* 251 */
- { 0, 0, printargs, "arch_unimpl" }, /* 252 */
- { 0, 0, printargs, "arch_unimpl" }, /* 253 */
- { 0, 0, printargs, "arch_unimpl" }, /* 254 */
- { 0, 0, printargs, "arch_unimpl" }, /* 255 */
- { 0, 0, printargs, "arch_unimpl" }, /* 256 */
- { 0, 0, printargs, "arch_unimpl" }, /* 257 */
- { 0, 0, printargs, "arch_unimpl" }, /* 258 */
- { 0, 0, printargs, "arch_unimpl" }, /* 259 */
- { 4, TP, sys_wait4, "wait4" }, /* 260 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 261 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 262 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 263 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" }, /* 264 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at" }, /* 265 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 266 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 267 */
- { 2, TD, sys_setns, "setns" }, /* 268 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 269 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 270 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 271 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 272 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 273 */
+#define ARCH_sys_mmap sys_mmap_4koff
+#define ARCH_WANT_SYNC_FILE_RANGE2 1
+#include "32/syscallent.h"
+[244] = { 1, 0, printargs, "cmpxchg_badaddr" },
+[245] = { 3, 0, printargs, "cacheflush" },
+[246 ... 259] = { },
diff --git a/linux/x32/arch_regs.h b/linux/x32/arch_regs.h
new file mode 100644
index 0000000..9064ca6
--- /dev/null
+++ b/linux/x32/arch_regs.h
@@ -0,0 +1 @@
+#include "x86_64/arch_regs.h"
diff --git a/linux/x32/errnoent.h b/linux/x32/errnoent.h
deleted file mode 100644
index 441c66b..0000000
--- a/linux/x32/errnoent.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../errnoent.h"
diff --git a/linux/x32/errnoent1.h b/linux/x32/errnoent1.h
index de1136c..d32435a 100644
--- a/linux/x32/errnoent1.h
+++ b/linux/x32/errnoent1.h
@@ -1,2 +1,2 @@
/* i386 personality */
-#include "../errnoent.h"
+#include "errnoent.h"
diff --git a/linux/x32/ioctlent.h.in b/linux/x32/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/x32/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/x32/ioctlent1.h b/linux/x32/ioctlent1.h
deleted file mode 100644
index 4750671..0000000
--- a/linux/x32/ioctlent1.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* i386 personality */
-#include "ioctlent.h"
diff --git a/linux/x32/ioctls_arch0.h b/linux/x32/ioctls_arch0.h
new file mode 100644
index 0000000..7070560
--- /dev/null
+++ b/linux/x32/ioctls_arch0.h
@@ -0,0 +1 @@
+#include "x86_64/ioctls_arch0.h"
diff --git a/linux/x32/ioctls_arch1.h b/linux/x32/ioctls_arch1.h
new file mode 100644
index 0000000..58a5706
--- /dev/null
+++ b/linux/x32/ioctls_arch1.h
@@ -0,0 +1 @@
+#include "i386/ioctls_arch0.h"
diff --git a/linux/x32/ioctls_inc0.h b/linux/x32/ioctls_inc0.h
new file mode 100644
index 0000000..5176116
--- /dev/null
+++ b/linux/x32/ioctls_inc0.h
@@ -0,0 +1,2617 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/include/ tree. */
+{ "acpi/apei.h", "APEI_ERST_CLEAR_RECORD", _IOC_WRITE, 0x4501, 0x08 },
+{ "acpi/apei.h", "APEI_ERST_GET_RECORD_COUNT", _IOC_READ, 0x4502, 0x04 },
+{ "asm-generic/ioctls.h", "FIOASYNC", 0, 0x5452, 0 },
+{ "asm-generic/ioctls.h", "FIOCLEX", 0, 0x5451, 0 },
+{ "asm-generic/ioctls.h", "FIONBIO", 0, 0x5421, 0 },
+{ "asm-generic/ioctls.h", "FIONCLEX", 0, 0x5450, 0 },
+{ "asm-generic/ioctls.h", "FIONREAD", 0, 0x541B, 0 },
+{ "asm-generic/ioctls.h", "FIOQSIZE", 0, 0x5460, 0 },
+{ "asm-generic/ioctls.h", "TCFLSH", 0, 0x540B, 0 },
+{ "asm-generic/ioctls.h", "TCGETA", 0, 0x5405, 0 },
+{ "asm-generic/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm-generic/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm-generic/ioctls.h", "TCGETX", 0, 0x5432, 0 },
+{ "asm-generic/ioctls.h", "TCSBRK", 0, 0x5409, 0 },
+{ "asm-generic/ioctls.h", "TCSBRKP", 0, 0x5425, 0 },
+{ "asm-generic/ioctls.h", "TCSETA", 0, 0x5406, 0 },
+{ "asm-generic/ioctls.h", "TCSETAF", 0, 0x5408, 0 },
+{ "asm-generic/ioctls.h", "TCSETAW", 0, 0x5407, 0 },
+{ "asm-generic/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm-generic/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm-generic/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm-generic/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm-generic/ioctls.h", "TCSETX", 0, 0x5433, 0 },
+{ "asm-generic/ioctls.h", "TCSETXF", 0, 0x5434, 0 },
+{ "asm-generic/ioctls.h", "TCSETXW", 0, 0x5435, 0 },
+{ "asm-generic/ioctls.h", "TCXONC", 0, 0x540A, 0 },
+{ "asm-generic/ioctls.h", "TIOCCBRK", 0, 0x5428, 0 },
+{ "asm-generic/ioctls.h", "TIOCCONS", 0, 0x541D, 0 },
+{ "asm-generic/ioctls.h", "TIOCEXCL", 0, 0x540C, 0 },
+{ "asm-generic/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGETD", 0, 0x5424, 0 },
+{ "asm-generic/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm-generic/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPGRP", 0, 0x540F, 0 },
+{ "asm-generic/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCGRS485", 0, 0x542E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSERIAL", 0, 0x541E, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSID", 0, 0x5429, 0 },
+{ "asm-generic/ioctls.h", "TIOCGSOFTCAR", 0, 0x5419, 0 },
+{ "asm-generic/ioctls.h", "TIOCGWINSZ", 0, 0x5413, 0 },
+{ "asm-generic/ioctls.h", "TIOCLINUX", 0, 0x541C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIC", 0, 0x5417, 0 },
+{ "asm-generic/ioctls.h", "TIOCMBIS", 0, 0x5416, 0 },
+{ "asm-generic/ioctls.h", "TIOCMGET", 0, 0x5415, 0 },
+{ "asm-generic/ioctls.h", "TIOCMIWAIT", 0, 0x545C, 0 },
+{ "asm-generic/ioctls.h", "TIOCMSET", 0, 0x5418, 0 },
+{ "asm-generic/ioctls.h", "TIOCNOTTY", 0, 0x5422, 0 },
+{ "asm-generic/ioctls.h", "TIOCNXCL", 0, 0x540D, 0 },
+{ "asm-generic/ioctls.h", "TIOCOUTQ", 0, 0x5411, 0 },
+{ "asm-generic/ioctls.h", "TIOCPKT", 0, 0x5420, 0 },
+{ "asm-generic/ioctls.h", "TIOCSBRK", 0, 0x5427, 0 },
+{ "asm-generic/ioctls.h", "TIOCSCTTY", 0, 0x540E, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERCONFIG", 0, 0x5453, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETLSR", 0, 0x5459, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGETMULTI", 0, 0x545A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERGWILD", 0, 0x5454, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSETMULTI", 0, 0x545B, 0 },
+{ "asm-generic/ioctls.h", "TIOCSERSWILD", 0, 0x5455, 0 },
+{ "asm-generic/ioctls.h", "TIOCSETD", 0, 0x5423, 0 },
+{ "asm-generic/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPGRP", 0, 0x5410, 0 },
+{ "asm-generic/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm-generic/ioctls.h", "TIOCSRS485", 0, 0x542F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSERIAL", 0, 0x541F, 0 },
+{ "asm-generic/ioctls.h", "TIOCSSOFTCAR", 0, 0x541A, 0 },
+{ "asm-generic/ioctls.h", "TIOCSTI", 0, 0x5412, 0 },
+{ "asm-generic/ioctls.h", "TIOCSWINSZ", 0, 0x5414, 0 },
+{ "asm-generic/ioctls.h", "TIOCVHANGUP", 0, 0x5437, 0 },
+{ "asm-generic/sockios.h", "FIOGETOWN", 0, 0x8903, 0 },
+{ "asm-generic/sockios.h", "FIOSETOWN", 0, 0x8901, 0 },
+{ "asm-generic/sockios.h", "SIOCATMARK", 0, 0x8905, 0 },
+{ "asm-generic/sockios.h", "SIOCGPGRP", 0, 0x8904, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm-generic/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm-generic/sockios.h", "SIOCSPGRP", 0, 0x8902, 0 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_BUFS", _IOC_READ|_IOC_WRITE, 0x6416, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_CTX", _IOC_READ|_IOC_WRITE, 0x6420, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_DRAW", _IOC_READ|_IOC_WRITE, 0x6427, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_ADD_MAP", _IOC_READ|_IOC_WRITE, 0x6415, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ACQUIRE", _IOC_NONE, 0x6430, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6434, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_BIND", _IOC_WRITE, 0x6436, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_ENABLE", _IOC_WRITE, 0x6432, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_FREE", _IOC_WRITE, 0x6435, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_INFO", _IOC_READ, 0x6433, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_RELEASE", _IOC_NONE, 0x6431, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_AGP_UNBIND", _IOC_WRITE, 0x6437, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_AUTH_MAGIC", _IOC_WRITE, 0x6411, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_BLOCK", _IOC_READ|_IOC_WRITE, 0x6412, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_CONTROL", _IOC_WRITE, 0x6414, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_DMA", _IOC_READ|_IOC_WRITE, 0x6429, 0x28 },
+{ "drm/drm.h", "DRM_IOCTL_DROP_MASTER", _IOC_NONE, 0x641f, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_FINISH", _IOC_WRITE, 0x642c, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_FREE_BUFS", _IOC_WRITE, 0x641a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_CLOSE", _IOC_WRITE, 0x6409, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_FLINK", _IOC_READ|_IOC_WRITE, 0x640a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GEM_OPEN", _IOC_READ|_IOC_WRITE, 0x640b, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CAP", _IOC_READ|_IOC_WRITE, 0x640c, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CLIENT", _IOC_READ|_IOC_WRITE, 0x6405, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_GET_CTX", _IOC_READ|_IOC_WRITE, 0x6423, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAGIC", _IOC_READ, 0x6402, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_GET_MAP", _IOC_READ|_IOC_WRITE, 0x6404, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_GET_SAREA_CTX", _IOC_READ|_IOC_WRITE, 0x641d, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_GET_STATS", _IOC_READ, 0x6406, 0x7c },
+{ "drm/drm.h", "DRM_IOCTL_GET_UNIQUE", _IOC_READ|_IOC_WRITE, 0x6401, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_INFO_BUFS", _IOC_READ|_IOC_WRITE, 0x6418, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_IRQ_BUSID", _IOC_READ|_IOC_WRITE, 0x6403, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_LOCK", _IOC_WRITE, 0x642a, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MAP_BUFS", _IOC_READ|_IOC_WRITE, 0x6419, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_MARK_BUFS", _IOC_WRITE, 0x6417, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODESET_CTL", _IOC_WRITE, 0x6408, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB", _IOC_READ|_IOC_WRITE, 0x64ae, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ADDFB2", _IOC_READ|_IOC_WRITE, 0x64b8, 0x44 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_ATTACHMODE", _IOC_READ|_IOC_WRITE, 0x64a8, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CREATE_DUMB", _IOC_READ|_IOC_WRITE, 0x64b2, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR", _IOC_READ|_IOC_WRITE, 0x64a3, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_CURSOR2", _IOC_READ|_IOC_WRITE, 0x64bb, 0x24 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DESTROY_DUMB", _IOC_READ|_IOC_WRITE, 0x64b4, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DETACHMODE", _IOC_READ|_IOC_WRITE, 0x64a9, 0x48 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_DIRTYFB", _IOC_READ|_IOC_WRITE, 0x64b1, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCONNECTOR", _IOC_READ|_IOC_WRITE, 0x64a7, 0x50 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETCRTC", _IOC_READ|_IOC_WRITE, 0x64a1, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETENCODER", _IOC_READ|_IOC_WRITE, 0x64a6, 0x14 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETFB", _IOC_READ|_IOC_WRITE, 0x64ad, 0x1c },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a4, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANE", _IOC_READ|_IOC_WRITE, 0x64b6, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPLANERESOURCES", _IOC_READ|_IOC_WRITE, 0x64b5, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPBLOB", _IOC_READ|_IOC_WRITE, 0x64ac, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64aa, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_GETRESOURCES", _IOC_READ|_IOC_WRITE, 0x64a0, 0x40 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_MAP_DUMB", _IOC_READ|_IOC_WRITE, 0x64b3, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_GETPROPERTIES", _IOC_READ|_IOC_WRITE, 0x64b9, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_OBJ_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ba, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_PAGE_FLIP", _IOC_READ|_IOC_WRITE, 0x64b0, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_RMFB", _IOC_READ|_IOC_WRITE, 0x64af, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETCRTC", _IOC_READ|_IOC_WRITE, 0x64a2, 0x68 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETGAMMA", _IOC_READ|_IOC_WRITE, 0x64a5, 0x20 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPLANE", _IOC_READ|_IOC_WRITE, 0x64b7, 0x30 },
+{ "drm/drm.h", "DRM_IOCTL_MODE_SETPROPERTY", _IOC_READ|_IOC_WRITE, 0x64ab, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_MOD_CTX", _IOC_WRITE, 0x6422, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_NEW_CTX", _IOC_WRITE, 0x6425, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_FD_TO_HANDLE", _IOC_READ|_IOC_WRITE, 0x642e, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_PRIME_HANDLE_TO_FD", _IOC_READ|_IOC_WRITE, 0x642d, 0x0c },
+{ "drm/drm.h", "DRM_IOCTL_RES_CTX", _IOC_READ|_IOC_WRITE, 0x6426, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_RM_CTX", _IOC_READ|_IOC_WRITE, 0x6421, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_RM_DRAW", _IOC_READ|_IOC_WRITE, 0x6428, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_RM_MAP", _IOC_WRITE, 0x641b, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_SET_CLIENT_CAP", _IOC_WRITE, 0x640d, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SET_MASTER", _IOC_NONE, 0x641e, 0x00 },
+{ "drm/drm.h", "DRM_IOCTL_SET_SAREA_CTX", _IOC_WRITE, 0x641c, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SET_UNIQUE", _IOC_WRITE, 0x6410, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SET_VERSION", _IOC_READ|_IOC_WRITE, 0x6407, 0x10 },
+{ "drm/drm.h", "DRM_IOCTL_SG_ALLOC", _IOC_READ|_IOC_WRITE, 0x6438, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SG_FREE", _IOC_WRITE, 0x6439, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_SWITCH_CTX", _IOC_WRITE, 0x6424, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UNBLOCK", _IOC_READ|_IOC_WRITE, 0x6413, 0x04 },
+{ "drm/drm.h", "DRM_IOCTL_UNLOCK", _IOC_WRITE, 0x642b, 0x08 },
+{ "drm/drm.h", "DRM_IOCTL_UPDATE_DRAW", _IOC_WRITE, 0x643f, 0x18 },
+{ "drm/drm.h", "DRM_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x6400, 0x24 },
+{ "drm/drm.h", "DRM_IOCTL_WAIT_VBLANK", _IOC_READ|_IOC_WRITE, 0x643a, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_EXEC", _IOC_READ|_IOC_WRITE, 0x6462, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_GET_VER", _IOC_READ|_IOC_WRITE, 0x6460, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_G2D_SET_CMDLIST", _IOC_READ|_IOC_WRITE, 0x6461, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_GEM_GET", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_CMD_CTRL", _IOC_READ|_IOC_WRITE, 0x6473, 0x08 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_GET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6470, 0x50 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_QUEUE_BUF", _IOC_READ|_IOC_WRITE, 0x6472, 0x28 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_IPP_SET_PROPERTY", _IOC_READ|_IOC_WRITE, 0x6471, 0x60 },
+{ "drm/exynos_drm.h", "DRM_IOCTL_EXYNOS_VIDI_CONNECTION", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_CLEAR", _IOC_WRITE, 0x6442, 0x0c },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_COPY", _IOC_WRITE, 0x6447, 0x0c },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_DOCOPY", _IOC_NONE, 0x6448, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLIP", _IOC_NONE, 0x644e, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FLUSH", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_FSTATUS", _IOC_NONE, 0x644a, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETAGE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_GETBUF", _IOC_READ|_IOC_WRITE, 0x6445, 0x10 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_INIT", _IOC_WRITE, 0x6440, 0x40 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_MC", _IOC_WRITE, 0x644c, 0x14 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0FLIP", _IOC_NONE, 0x644b, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_OV0INFO", _IOC_READ, 0x6449, 0x08 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_RSTATUS", _IOC_NONE, 0x644d, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_SWAP", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/i810_drm.h", "DRM_IOCTL_I810_VERTEX", _IOC_WRITE, 0x6441, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_ALLOC", _IOC_READ|_IOC_WRITE, 0x6448, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_BATCHBUFFER", _IOC_WRITE, 0x6443, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_CMDBUFFER", _IOC_WRITE, 0x644b, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_DESTROY_HEAP", _IOC_WRITE, 0x644c, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLIP", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FLUSH", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_FREE", _IOC_WRITE, 0x6449, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x6457, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_CREATE", _IOC_READ|_IOC_WRITE, 0x646d, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY", _IOC_WRITE, 0x646e, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645b, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_ENTERVT", _IOC_NONE, 0x6459, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER", _IOC_WRITE, 0x6454, 0x28 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_EXECBUFFER2", _IOC_WRITE, 0x6469, 0x40 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_APERTURE", _IOC_READ, 0x6463, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_CACHING", _IOC_READ|_IOC_WRITE, 0x6470, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6462, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_INIT", _IOC_WRITE, 0x6453, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_LEAVEVT", _IOC_NONE, 0x645a, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MADVISE", _IOC_READ|_IOC_WRITE, 0x6466, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_MMAP_GTT", _IOC_READ|_IOC_WRITE, 0x6464, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PIN", _IOC_READ|_IOC_WRITE, 0x6455, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PREAD", _IOC_WRITE, 0x645c, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_PWRITE", _IOC_WRITE, 0x645d, 0x20 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_CACHING", _IOC_WRITE, 0x646f, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_DOMAIN", _IOC_WRITE, 0x645f, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6461, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_SW_FINISH", _IOC_WRITE, 0x6460, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_THROTTLE", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_UNPIN", _IOC_WRITE, 0x6456, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x6473, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GEM_WAIT", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6446, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID", _IOC_READ|_IOC_WRITE, 0x6465, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_RESET_STATS", _IOC_READ|_IOC_WRITE, 0x6472, 0x18 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_GET_VBLANK_PIPE", _IOC_READ, 0x644e, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_HWS_ADDR", _IOC_WRITE, 0x6451, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT", _IOC_WRITE, 0x6440, 0x44 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_INIT_HEAP", _IOC_WRITE, 0x644a, 0x0c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_IRQ_WAIT", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_ATTRS", _IOC_READ|_IOC_WRITE, 0x6468, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE", _IOC_WRITE, 0x6467, 0x2c },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_REG_READ", _IOC_READ|_IOC_WRITE, 0x6471, 0x10 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SETPARAM", _IOC_WRITE, 0x6447, 0x08 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_SPRITE_COLORKEY", _IOC_READ|_IOC_WRITE, 0x646b, 0x14 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_SET_VBLANK_PIPE", _IOC_WRITE, 0x644d, 0x04 },
+{ "drm/i915_drm.h", "DRM_IOCTL_I915_VBLANK_SWAP", _IOC_READ|_IOC_WRITE, 0x644f, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_BLIT", _IOC_WRITE, 0x6448, 0x34 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_CLEAR", _IOC_WRITE, 0x6444, 0x14 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_DMA_BOOTSTRAP", _IOC_READ|_IOC_WRITE, 0x644c, 0x1c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_FLUSH", _IOC_WRITE, 0x6441, 0x08 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6449, 0x08 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_ILOAD", _IOC_WRITE, 0x6447, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INDICES", _IOC_WRITE, 0x6446, 0x10 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_INIT", _IOC_WRITE, 0x6440, 0x5c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_RESET", _IOC_NONE, 0x6442, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SET_FENCE", _IOC_WRITE, 0x644a, 0x04 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_SWAP", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_VERTEX", _IOC_WRITE, 0x6445, 0x0c },
+{ "drm/mga_drm.h", "DRM_IOCTL_MGA_WAIT_FENCE", _IOC_READ|_IOC_WRITE, 0x644b, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x04 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x18 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6442, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GEM_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6446, 0x20 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/msm_drm.h", "DRM_IOCTL_MSM_WAIT_FENCE", _IOC_WRITE, 0x6447, 0x18 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_FINI", _IOC_WRITE, 0x6483, 0x04 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_CPU_PREP", _IOC_WRITE, 0x6482, 0x08 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6484, 0x28 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6480, 0x30 },
+{ "drm/nouveau_drm.h", "DRM_IOCTL_NOUVEAU_GEM_PUSHBUF", _IOC_READ|_IOC_WRITE, 0x6481, 0x40 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_FINI", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_CPU_PREP", _IOC_WRITE, 0x6444, 0x08 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GEM_NEW", _IOC_READ|_IOC_WRITE, 0x6443, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_GET_PARAM", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/omap_drm.h", "DRM_IOCTL_OMAP_SET_PARAM", _IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC", _IOC_READ|_IOC_WRITE, 0x6440, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_ALLOC_SURF", _IOC_READ|_IOC_WRITE, 0x6446, 0x18 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_CLIENTCAP", _IOC_WRITE, 0x6445, 0x08 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_EXECBUFFER", _IOC_WRITE, 0x6442, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_MAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x10 },
+{ "drm/qxl_drm.h", "DRM_IOCTL_QXL_UPDATE_AREA", _IOC_WRITE, 0x6443, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_BLIT", _IOC_WRITE, 0x644b, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CCE_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_CLEAR", _IOC_WRITE, 0x6448, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_DEPTH", _IOC_WRITE, 0x644c, 0x18 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FLIP", _IOC_NONE, 0x6453, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_FULLSCREEN", _IOC_WRITE, 0x6450, 0x04 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6452, 0x08 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644f, 0x10 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_INIT", _IOC_WRITE, 0x6440, 0x58 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_RESET", _IOC_NONE, 0x6446, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_STIPPLE", _IOC_WRITE, 0x644d, 0x04 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/r128_drm.h", "DRM_IOCTL_R128_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_ALLOC", _IOC_READ|_IOC_WRITE, 0x6453, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CLEAR", _IOC_WRITE, 0x6448, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CMDBUF", _IOC_WRITE, 0x6450, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_IDLE", _IOC_NONE, 0x6444, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_INIT", _IOC_WRITE, 0x6440, 0x54 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESET", _IOC_NONE, 0x6443, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_RESUME", _IOC_NONE, 0x6458, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_START", _IOC_NONE, 0x6441, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CP_STOP", _IOC_WRITE, 0x6442, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_CS", _IOC_READ|_IOC_WRITE, 0x6466, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FLIP", _IOC_NONE, 0x6452, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FREE", _IOC_WRITE, 0x6454, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_FULLSCREEN", _IOC_WRITE, 0x6446, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_BUSY", _IOC_READ|_IOC_WRITE, 0x646a, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x645d, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x6469, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_INFO", _IOC_READ|_IOC_WRITE, 0x645c, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x645e, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_OP", _IOC_READ|_IOC_WRITE, 0x646c, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PREAD", _IOC_READ|_IOC_WRITE, 0x6461, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_PWRITE", _IOC_READ|_IOC_WRITE, 0x6462, 0x20 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_DOMAIN", _IOC_READ|_IOC_WRITE, 0x6463, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x6468, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_USERPTR", _IOC_READ|_IOC_WRITE, 0x646d, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_VA", _IOC_READ|_IOC_WRITE, 0x646b, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GEM_WAIT_IDLE", _IOC_WRITE, 0x6464, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_GETPARAM", _IOC_READ|_IOC_WRITE, 0x6451, 0x08 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDICES", _IOC_WRITE, 0x644a, 0x14 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INDIRECT", _IOC_READ|_IOC_WRITE, 0x644d, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INFO", _IOC_READ|_IOC_WRITE, 0x6467, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_INIT_HEAP", _IOC_WRITE, 0x6455, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_EMIT", _IOC_READ|_IOC_WRITE, 0x6456, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_IRQ_WAIT", _IOC_WRITE, 0x6457, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_RESET", _IOC_NONE, 0x6445, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SETPARAM", _IOC_WRITE, 0x6459, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_STIPPLE", _IOC_WRITE, 0x644c, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_ALLOC", _IOC_WRITE, 0x645a, 0x0c },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SURF_FREE", _IOC_WRITE, 0x645b, 0x04 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_SWAP", _IOC_NONE, 0x6447, 0x00 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_TEXTURE", _IOC_READ|_IOC_WRITE, 0x644e, 0x18 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX", _IOC_WRITE, 0x6449, 0x10 },
+{ "drm/radeon_drm.h", "DRM_IOCTL_RADEON_VERTEX2", _IOC_WRITE, 0x644f, 0x18 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_CMDBUF", _IOC_WRITE, 0x6441, 0x24 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_EMIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_EVENT_WAIT", _IOC_WRITE, 0x6443, 0x08 },
+{ "drm/savage_drm.h", "DRM_IOCTL_SAVAGE_BCI_INIT", _IOC_WRITE, 0x6440, 0x50 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_ALLOC", _IOC_READ|_IOC_WRITE, 0x6454, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_FREE", _IOC_WRITE, 0x6455, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6453, 0x08 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_ALLOC", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_FREE", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/sis_drm.h", "DRM_IOCTL_SIS_FB_INIT", _IOC_WRITE, 0x6456, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_CLOSE_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6446, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_CREATE", _IOC_READ|_IOC_WRITE, 0x6440, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644d, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_GET_TILING", _IOC_READ|_IOC_WRITE, 0x644b, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_MMAP", _IOC_READ|_IOC_WRITE, 0x6441, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_FLAGS", _IOC_READ|_IOC_WRITE, 0x644c, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GEM_SET_TILING", _IOC_READ|_IOC_WRITE, 0x644a, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_GET_SYNCPT_BASE", _IOC_READ|_IOC_WRITE, 0x6449, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_OPEN_CHANNEL", _IOC_READ|_IOC_WRITE, 0x6445, 0x10 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SUBMIT", _IOC_READ|_IOC_WRITE, 0x6448, 0x58 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_INCR", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_READ", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/tegra_drm.h", "DRM_IOCTL_TEGRA_SYNCPT_WAIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_AGP_INIT", _IOC_READ|_IOC_WRITE, 0x6442, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_ALLOCMEM", _IOC_READ|_IOC_WRITE, 0x6440, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_BLIT_SYNC", _IOC_WRITE, 0x644f, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUFFER", _IOC_WRITE, 0x6448, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_CMDBUF_SIZE", _IOC_READ|_IOC_WRITE, 0x644b, 0x0c },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DEC_FUTEX", _IOC_WRITE, 0x6445, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_BLIT", _IOC_WRITE, 0x644e, 0x28 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_DMA_INIT", _IOC_READ|_IOC_WRITE, 0x6447, 0x10 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FB_INIT", _IOC_READ|_IOC_WRITE, 0x6443, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FLUSH", _IOC_NONE, 0x6449, 0x00 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_FREEMEM", _IOC_WRITE, 0x6441, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_MAP_INIT", _IOC_READ|_IOC_WRITE, 0x6444, 0x14 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_PCICMD", _IOC_WRITE, 0x644a, 0x08 },
+{ "drm/via_drm.h", "DRM_IOCTL_VIA_WAIT_IRQ", _IOC_READ|_IOC_WRITE, 0x644d, 0x10 },
+{ "linux/agpgart.h", "AGPIOC_ACQUIRE", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x4106, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_BIND", _IOC_WRITE, 0x4108, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_CHIPSET_FLUSH", _IOC_NONE, 0x410a, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_DEALLOCATE", _IOC_WRITE, 0x4107, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_INFO", _IOC_READ, 0x4100, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_PROTECT", _IOC_WRITE, 0x4105, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_RELEASE", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/agpgart.h", "AGPIOC_RESERVE", _IOC_WRITE, 0x4104, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_SETUP", _IOC_WRITE, 0x4103, 0x04 },
+{ "linux/agpgart.h", "AGPIOC_UNBIND", _IOC_WRITE, 0x4109, 0x04 },
+{ "linux/android/binder.h", "BC_ACQUIRE", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/android/binder.h", "BC_ACQUIRE_DONE", _IOC_WRITE, 0x6309, 0x10 },
+{ "linux/android/binder.h", "BC_ACQUIRE_RESULT", _IOC_WRITE, 0x6302, 0x04 },
+{ "linux/android/binder.h", "BC_ATTEMPT_ACQUIRE", _IOC_WRITE, 0x630a, 0x08 },
+{ "linux/android/binder.h", "BC_CLEAR_DEATH_NOTIFICATION", _IOC_WRITE, 0x630f, 0x0c },
+{ "linux/android/binder.h", "BC_DEAD_BINDER_DONE", _IOC_WRITE, 0x6310, 0x08 },
+{ "linux/android/binder.h", "BC_DECREFS", _IOC_WRITE, 0x6307, 0x04 },
+{ "linux/android/binder.h", "BC_ENTER_LOOPER", _IOC_NONE, 0x630c, 0x00 },
+{ "linux/android/binder.h", "BC_EXIT_LOOPER", _IOC_NONE, 0x630d, 0x00 },
+{ "linux/android/binder.h", "BC_FREE_BUFFER", _IOC_WRITE, 0x6303, 0x08 },
+{ "linux/android/binder.h", "BC_INCREFS", _IOC_WRITE, 0x6304, 0x04 },
+{ "linux/android/binder.h", "BC_INCREFS_DONE", _IOC_WRITE, 0x6308, 0x10 },
+{ "linux/android/binder.h", "BC_REGISTER_LOOPER", _IOC_NONE, 0x630b, 0x00 },
+{ "linux/android/binder.h", "BC_RELEASE", _IOC_WRITE, 0x6306, 0x04 },
+{ "linux/android/binder.h", "BC_REPLY", _IOC_WRITE, 0x6301, 0x40 },
+{ "linux/android/binder.h", "BC_REQUEST_DEATH_NOTIFICATION", _IOC_WRITE, 0x630e, 0x0c },
+{ "linux/android/binder.h", "BC_TRANSACTION", _IOC_WRITE, 0x6300, 0x40 },
+{ "linux/android/binder.h", "BINDER_SET_CONTEXT_MGR", _IOC_WRITE, 0x6207, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_PRIORITY", _IOC_WRITE, 0x6206, 0x04 },
+{ "linux/android/binder.h", "BINDER_SET_IDLE_TIMEOUT", _IOC_WRITE, 0x6203, 0x08 },
+{ "linux/android/binder.h", "BINDER_SET_MAX_THREADS", _IOC_WRITE, 0x6205, 0x04 },
+{ "linux/android/binder.h", "BINDER_THREAD_EXIT", _IOC_WRITE, 0x6208, 0x04 },
+{ "linux/android/binder.h", "BINDER_VERSION", _IOC_READ|_IOC_WRITE, 0x6209, 0x04 },
+{ "linux/android/binder.h", "BINDER_WRITE_READ", _IOC_READ|_IOC_WRITE, 0x6201, 0x30 },
+{ "linux/android/binder.h", "BR_ACQUIRE", _IOC_READ, 0x7208, 0x10 },
+{ "linux/android/binder.h", "BR_ACQUIRE_RESULT", _IOC_READ, 0x7204, 0x04 },
+{ "linux/android/binder.h", "BR_ATTEMPT_ACQUIRE", _IOC_READ, 0x720b, 0x18 },
+{ "linux/android/binder.h", "BR_CLEAR_DEATH_NOTIFICATION_DONE", _IOC_READ, 0x7210, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_BINDER", _IOC_READ, 0x720f, 0x08 },
+{ "linux/android/binder.h", "BR_DEAD_REPLY", _IOC_NONE, 0x7205, 0x00 },
+{ "linux/android/binder.h", "BR_DECREFS", _IOC_READ, 0x720a, 0x10 },
+{ "linux/android/binder.h", "BR_ERROR", _IOC_READ, 0x7200, 0x04 },
+{ "linux/android/binder.h", "BR_FAILED_REPLY", _IOC_NONE, 0x7211, 0x00 },
+{ "linux/android/binder.h", "BR_FINISHED", _IOC_NONE, 0x720e, 0x00 },
+{ "linux/android/binder.h", "BR_INCREFS", _IOC_READ, 0x7207, 0x10 },
+{ "linux/android/binder.h", "BR_NOOP", _IOC_NONE, 0x720c, 0x00 },
+{ "linux/android/binder.h", "BR_OK", _IOC_NONE, 0x7201, 0x00 },
+{ "linux/android/binder.h", "BR_RELEASE", _IOC_READ, 0x7209, 0x10 },
+{ "linux/android/binder.h", "BR_REPLY", _IOC_READ, 0x7203, 0x40 },
+{ "linux/android/binder.h", "BR_SPAWN_LOOPER", _IOC_NONE, 0x720d, 0x00 },
+{ "linux/android/binder.h", "BR_TRANSACTION", _IOC_READ, 0x7202, 0x40 },
+{ "linux/android/binder.h", "BR_TRANSACTION_COMPLETE", _IOC_NONE, 0x7206, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_STANDBY", _IOC_NONE, 0x4101, 0x00 },
+{ "linux/apm_bios.h", "APM_IOC_SUSPEND", _IOC_NONE, 0x4102, 0x00 },
+{ "linux/arcfb.h", "FBIO_GETCONTROL2", _IOC_READ, 0x4689, 0x04 },
+{ "linux/arcfb.h", "FBIO_WAITEVENT", _IOC_NONE, 0x4688, 0x00 },
+{ "linux/atm_eni.h", "ENI_MEMDUMP", _IOC_WRITE, 0x6160, 0x0c },
+{ "linux/atm_eni.h", "ENI_SETMULT", _IOC_WRITE, 0x6167, 0x0c },
+{ "linux/atm_he.h", "HE_GET_REG", _IOC_WRITE, 0x6160, 0x0c },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTAT", _IOC_WRITE, 0x6132, 0x0c },
+{ "linux/atm_idt77105.h", "IDT77105_GETSTATZ", _IOC_WRITE, 0x6133, 0x0c },
+{ "linux/atm_nicstar.h", "NS_ADJBUFLEV", _IOC_NONE, 0x6163, 0x00 },
+{ "linux/atm_nicstar.h", "NS_GETPSTAT", _IOC_READ|_IOC_WRITE, 0x6161, 0x0c },
+{ "linux/atm_nicstar.h", "NS_SETBUFLEV", _IOC_WRITE, 0x6162, 0x0c },
+{ "linux/atm_tcp.h", "ATMTCP_CREATE", _IOC_NONE, 0x618e, 0x00 },
+{ "linux/atm_tcp.h", "ATMTCP_REMOVE", _IOC_NONE, 0x618f, 0x00 },
+{ "linux/atm_tcp.h", "SIOCSIFATMTCP", _IOC_NONE, 0x6180, 0x00 },
+{ "linux/atm_zatm.h", "ZATM_GETPOOL", _IOC_WRITE, 0x6161, 0x0c },
+{ "linux/atm_zatm.h", "ZATM_GETPOOLZ", _IOC_WRITE, 0x6162, 0x0c },
+{ "linux/atm_zatm.h", "ZATM_SETPOOL", _IOC_WRITE, 0x6163, 0x0c },
+{ "linux/atmarp.h", "ATMARPD_CTRL", _IOC_NONE, 0x61e1, 0x00 },
+{ "linux/atmarp.h", "ATMARP_ENCAP", _IOC_NONE, 0x61e5, 0x00 },
+{ "linux/atmarp.h", "ATMARP_MKIP", _IOC_NONE, 0x61e2, 0x00 },
+{ "linux/atmarp.h", "ATMARP_SETENTRY", _IOC_NONE, 0x61e3, 0x00 },
+{ "linux/atmbr2684.h", "BR2684_SETFILT", _IOC_WRITE, 0x6190, 0x1c },
+{ "linux/atmclip.h", "SIOCMKCLIP", _IOC_NONE, 0x61e0, 0x00 },
+{ "linux/atmdev.h", "ATM_ADDADDR", _IOC_WRITE, 0x6188, 0x0c },
+{ "linux/atmdev.h", "ATM_ADDLECSADDR", _IOC_WRITE, 0x618e, 0x0c },
+{ "linux/atmdev.h", "ATM_ADDPARTY", _IOC_WRITE, 0x61f4, 0x08 },
+{ "linux/atmdev.h", "ATM_DELADDR", _IOC_WRITE, 0x6189, 0x0c },
+{ "linux/atmdev.h", "ATM_DELLECSADDR", _IOC_WRITE, 0x618f, 0x0c },
+{ "linux/atmdev.h", "ATM_DROPPARTY", _IOC_WRITE, 0x61f5, 0x04 },
+{ "linux/atmdev.h", "ATM_GETADDR", _IOC_WRITE, 0x6186, 0x0c },
+{ "linux/atmdev.h", "ATM_GETCIRANGE", _IOC_WRITE, 0x618a, 0x0c },
+{ "linux/atmdev.h", "ATM_GETESI", _IOC_WRITE, 0x6185, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLECSADDR", _IOC_WRITE, 0x6190, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLINKRATE", _IOC_WRITE, 0x6181, 0x0c },
+{ "linux/atmdev.h", "ATM_GETLOOP", _IOC_WRITE, 0x6152, 0x0c },
+{ "linux/atmdev.h", "ATM_GETNAMES", _IOC_WRITE, 0x6183, 0x08 },
+{ "linux/atmdev.h", "ATM_GETSTAT", _IOC_WRITE, 0x6150, 0x0c },
+{ "linux/atmdev.h", "ATM_GETSTATZ", _IOC_WRITE, 0x6151, 0x0c },
+{ "linux/atmdev.h", "ATM_GETTYPE", _IOC_WRITE, 0x6184, 0x0c },
+{ "linux/atmdev.h", "ATM_NEWBACKENDIF", _IOC_WRITE, 0x61f3, 0x02 },
+{ "linux/atmdev.h", "ATM_QUERYLOOP", _IOC_WRITE, 0x6154, 0x0c },
+{ "linux/atmdev.h", "ATM_RSTADDR", _IOC_WRITE, 0x6187, 0x0c },
+{ "linux/atmdev.h", "ATM_SETBACKEND", _IOC_WRITE, 0x61f2, 0x02 },
+{ "linux/atmdev.h", "ATM_SETCIRANGE", _IOC_WRITE, 0x618b, 0x0c },
+{ "linux/atmdev.h", "ATM_SETESI", _IOC_WRITE, 0x618c, 0x0c },
+{ "linux/atmdev.h", "ATM_SETESIF", _IOC_WRITE, 0x618d, 0x0c },
+{ "linux/atmdev.h", "ATM_SETLOOP", _IOC_WRITE, 0x6153, 0x0c },
+{ "linux/atmdev.h", "ATM_SETSC", _IOC_WRITE, 0x61f1, 0x04 },
+{ "linux/atmlec.h", "ATMLEC_CTRL", _IOC_NONE, 0x61d0, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_DATA", _IOC_NONE, 0x61d1, 0x00 },
+{ "linux/atmlec.h", "ATMLEC_MCAST", _IOC_NONE, 0x61d2, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_CTRL", _IOC_NONE, 0x61d8, 0x00 },
+{ "linux/atmmpc.h", "ATMMPC_DATA", _IOC_NONE, 0x61d9, 0x00 },
+{ "linux/atmsvc.h", "ATMSIGD_CTRL", _IOC_NONE, 0x61f0, 0x00 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ASKUMOUNT", _IOC_READ|_IOC_WRITE, 0x937d, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CATATONIC", _IOC_READ|_IOC_WRITE, 0x9379, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_CLOSEMOUNT", _IOC_READ|_IOC_WRITE, 0x9375, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_EXPIRE", _IOC_READ|_IOC_WRITE, 0x937c, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_FAIL", _IOC_READ|_IOC_WRITE, 0x9377, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_ISMOUNTPOINT", _IOC_READ|_IOC_WRITE, 0x937e, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_OPENMOUNT", _IOC_READ|_IOC_WRITE, 0x9374, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOSUBVER", _IOC_READ|_IOC_WRITE, 0x9373, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_PROTOVER", _IOC_READ|_IOC_WRITE, 0x9372, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_READY", _IOC_READ|_IOC_WRITE, 0x9376, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_REQUESTER", _IOC_READ|_IOC_WRITE, 0x937b, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_SETPIPEFD", _IOC_READ|_IOC_WRITE, 0x9378, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_TIMEOUT", _IOC_READ|_IOC_WRITE, 0x937a, 0x18 },
+{ "linux/auto_dev-ioctl.h", "AUTOFS_DEV_IOCTL_VERSION", _IOC_READ|_IOC_WRITE, 0x9371, 0x18 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_CATATONIC", _IOC_NONE, 0x9362, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_EXPIRE", _IOC_READ, 0x9365, 0x10c },
+{ "linux/auto_fs.h", "AUTOFS_IOC_FAIL", _IOC_NONE, 0x9361, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_PROTOVER", _IOC_READ, 0x9363, 0x04 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_READY", _IOC_NONE, 0x9360, 0x00 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x9364, 0x04 },
+{ "linux/auto_fs.h", "AUTOFS_IOC_SETTIMEOUT32", _IOC_READ|_IOC_WRITE, 0x9364, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_ASKUMOUNT", _IOC_READ, 0x9370, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_EXPIRE_MULTI", _IOC_WRITE, 0x9366, 0x04 },
+{ "linux/auto_fs4.h", "AUTOFS_IOC_PROTOSUBVER", _IOC_READ, 0x9367, 0x04 },
+{ "linux/blkpg.h", "BLKPG", _IOC_NONE, 0x1269, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_ADD_DEV", _IOC_WRITE, 0x940a, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE", _IOC_WRITE, 0x940c, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_CTL", _IOC_WRITE, 0x9421, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_PROGRESS", _IOC_READ, 0x9422, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_BALANCE_V2", _IOC_READ|_IOC_WRITE, 0x9420, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE", _IOC_WRITE, 0x9409, 0x04 },
+{ "linux/btrfs.h", "BTRFS_IOC_CLONE_RANGE", _IOC_WRITE, 0x940d, 0x20 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFAULT_SUBVOL", _IOC_WRITE, 0x9413, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG", _IOC_WRITE, 0x9402, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEFRAG_RANGE", _IOC_WRITE, 0x9410, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEVICES_READY", _IOC_READ, 0x9427, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_INFO", _IOC_READ|_IOC_WRITE, 0x941e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_DEV_REPLACE", _IOC_READ|_IOC_WRITE, 0x9435, 0xa28 },
+{ "linux/btrfs.h", "BTRFS_IOC_FILE_EXTENT_SAME", _IOC_READ|_IOC_WRITE, 0x9436, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_FS_INFO", _IOC_READ, 0x941f, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_DEV_STATS", _IOC_READ|_IOC_WRITE, 0x9434, 0x408 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FEATURES", _IOC_READ, 0x9439, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_FSLABEL", _IOC_READ, 0x9431, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_GET_SUPPORTED_FEATURES", _IOC_READ, 0x9439, 0x48 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_LOOKUP", _IOC_READ|_IOC_WRITE, 0x9412, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_INO_PATHS", _IOC_READ|_IOC_WRITE, 0x9423, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_LOGICAL_INO", _IOC_READ|_IOC_WRITE, 0x9424, 0x38 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_ASSIGN", _IOC_WRITE, 0x9429, 0x18 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_CREATE", _IOC_WRITE, 0x942a, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QGROUP_LIMIT", _IOC_READ, 0x942b, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_CTL", _IOC_READ|_IOC_WRITE, 0x9428, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN", _IOC_WRITE, 0x942c, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_STATUS", _IOC_READ, 0x942d, 0x40 },
+{ "linux/btrfs.h", "BTRFS_IOC_QUOTA_RESCAN_WAIT", _IOC_NONE, 0x942e, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_RESIZE", _IOC_WRITE, 0x9403, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_RM_DEV", _IOC_WRITE, 0x940b, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCAN_DEV", _IOC_WRITE, 0x9404, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB", _IOC_READ|_IOC_WRITE, 0x941b, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_CANCEL", _IOC_NONE, 0x941c, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_SCRUB_PROGRESS", _IOC_READ|_IOC_WRITE, 0x941d, 0x400 },
+{ "linux/btrfs.h", "BTRFS_IOC_SEND", _IOC_WRITE, 0x9426, 0x48 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FEATURES", _IOC_WRITE, 0x9439, 0x30 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_FSLABEL", _IOC_WRITE, 0x9432, 0x100 },
+{ "linux/btrfs.h", "BTRFS_IOC_SET_RECEIVED_SUBVOL", _IOC_READ|_IOC_WRITE, 0x9425, 0xc8 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE", _IOC_WRITE, 0x9401, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_CREATE_V2", _IOC_WRITE, 0x9417, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SNAP_DESTROY", _IOC_WRITE, 0x940f, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SPACE_INFO", _IOC_READ|_IOC_WRITE, 0x9414, 0x10 },
+{ "linux/btrfs.h", "BTRFS_IOC_START_SYNC", _IOC_READ, 0x9418, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE", _IOC_WRITE, 0x940e, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_CREATE_V2", _IOC_WRITE, 0x9418, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_GETFLAGS", _IOC_READ, 0x9419, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SUBVOL_SETFLAGS", _IOC_WRITE, 0x941a, 0x08 },
+{ "linux/btrfs.h", "BTRFS_IOC_SYNC", _IOC_NONE, 0x9408, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_END", _IOC_NONE, 0x9407, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TRANS_START", _IOC_NONE, 0x9406, 0x00 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH", _IOC_READ|_IOC_WRITE, 0x9411, 0x1000 },
+{ "linux/btrfs.h", "BTRFS_IOC_TREE_SEARCH_V2", _IOC_READ|_IOC_WRITE, 0x9411, 0x70 },
+{ "linux/btrfs.h", "BTRFS_IOC_WAIT_SYNC", _IOC_WRITE, 0x9416, 0x08 },
+{ "linux/capi.h", "CAPI_CLR_FLAGS", _IOC_READ, 0x4325, 0x04 },
+{ "linux/capi.h", "CAPI_GET_ERRCODE", _IOC_READ, 0x4321, 0x02 },
+{ "linux/capi.h", "CAPI_GET_FLAGS", _IOC_READ, 0x4323, 0x04 },
+{ "linux/capi.h", "CAPI_GET_MANUFACTURER", _IOC_READ|_IOC_WRITE, 0x4306, 0x04 },
+{ "linux/capi.h", "CAPI_GET_PROFILE", _IOC_READ|_IOC_WRITE, 0x4309, 0x40 },
+{ "linux/capi.h", "CAPI_GET_SERIAL", _IOC_READ|_IOC_WRITE, 0x4308, 0x04 },
+{ "linux/capi.h", "CAPI_GET_VERSION", _IOC_READ|_IOC_WRITE, 0x4307, 0x10 },
+{ "linux/capi.h", "CAPI_INSTALLED", _IOC_READ, 0x4322, 0x02 },
+{ "linux/capi.h", "CAPI_MANUFACTURER_CMD", _IOC_READ|_IOC_WRITE, 0x4320, 0x08 },
+{ "linux/capi.h", "CAPI_NCCI_GETUNIT", _IOC_READ, 0x4327, 0x04 },
+{ "linux/capi.h", "CAPI_NCCI_OPENCOUNT", _IOC_READ, 0x4326, 0x04 },
+{ "linux/capi.h", "CAPI_REGISTER", _IOC_WRITE, 0x4301, 0x0c },
+{ "linux/capi.h", "CAPI_SET_FLAGS", _IOC_READ, 0x4324, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_BIG_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x4212, 0x58 },
+{ "linux/cciss_ioctl.h", "CCISS_DEREGDISK", _IOC_NONE, 0x420c, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_GETBUSTYPES", _IOC_READ, 0x4207, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETDRIVVER", _IOC_READ, 0x4209, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETFIRMVER", _IOC_READ, 0x4208, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETHEARTBEAT", _IOC_READ, 0x4206, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_GETINTINFO", _IOC_READ, 0x4202, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_GETLUNINFO", _IOC_READ, 0x4211, 0x0c },
+{ "linux/cciss_ioctl.h", "CCISS_GETNODENAME", _IOC_READ, 0x4204, 0x10 },
+{ "linux/cciss_ioctl.h", "CCISS_GETPCIINFO", _IOC_READ, 0x4201, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_PASSTHRU", _IOC_READ|_IOC_WRITE, 0x420b, 0x54 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWD", _IOC_NONE, 0x420e, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REGNEWDISK", _IOC_WRITE, 0x420d, 0x04 },
+{ "linux/cciss_ioctl.h", "CCISS_RESCANDISK", _IOC_NONE, 0x4210, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_REVALIDVOLS", _IOC_NONE, 0x420a, 0x00 },
+{ "linux/cciss_ioctl.h", "CCISS_SETINTINFO", _IOC_WRITE, 0x4203, 0x08 },
+{ "linux/cciss_ioctl.h", "CCISS_SETNODENAME", _IOC_WRITE, 0x4205, 0x10 },
+{ "linux/cdrom.h", "CDROMAUDIOBUFSIZ", 0, 0x5382, 0 },
+{ "linux/cdrom.h", "CDROMCLOSETRAY", 0, 0x5319, 0 },
+{ "linux/cdrom.h", "CDROMEJECT", 0, 0x5309, 0 },
+{ "linux/cdrom.h", "CDROMEJECT_SW", 0, 0x530f, 0 },
+{ "linux/cdrom.h", "CDROMGETSPINDOWN", 0, 0x531d, 0 },
+{ "linux/cdrom.h", "CDROMMULTISESSION", 0, 0x5310, 0 },
+{ "linux/cdrom.h", "CDROMPAUSE", 0, 0x5301, 0 },
+{ "linux/cdrom.h", "CDROMPLAYBLK", 0, 0x5317, 0 },
+{ "linux/cdrom.h", "CDROMPLAYMSF", 0, 0x5303, 0 },
+{ "linux/cdrom.h", "CDROMPLAYTRKIND", 0, 0x5304, 0 },
+{ "linux/cdrom.h", "CDROMREADALL", 0, 0x5318, 0 },
+{ "linux/cdrom.h", "CDROMREADAUDIO", 0, 0x530e, 0 },
+{ "linux/cdrom.h", "CDROMREADCOOKED", 0, 0x5315, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE1", 0, 0x530d, 0 },
+{ "linux/cdrom.h", "CDROMREADMODE2", 0, 0x530c, 0 },
+{ "linux/cdrom.h", "CDROMREADRAW", 0, 0x5314, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCENTRY", 0, 0x5306, 0 },
+{ "linux/cdrom.h", "CDROMREADTOCHDR", 0, 0x5305, 0 },
+{ "linux/cdrom.h", "CDROMRESET", 0, 0x5312, 0 },
+{ "linux/cdrom.h", "CDROMRESUME", 0, 0x5302, 0 },
+{ "linux/cdrom.h", "CDROMSEEK", 0, 0x5316, 0 },
+{ "linux/cdrom.h", "CDROMSETSPINDOWN", 0, 0x531e, 0 },
+{ "linux/cdrom.h", "CDROMSTART", 0, 0x5308, 0 },
+{ "linux/cdrom.h", "CDROMSTOP", 0, 0x5307, 0 },
+{ "linux/cdrom.h", "CDROMSUBCHNL", 0, 0x530b, 0 },
+{ "linux/cdrom.h", "CDROMVOLCTRL", 0, 0x530a, 0 },
+{ "linux/cdrom.h", "CDROMVOLREAD", 0, 0x5313, 0 },
+{ "linux/cdrom.h", "CDROM_CHANGER_NSLOTS", 0, 0x5328, 0 },
+{ "linux/cdrom.h", "CDROM_CLEAR_OPTIONS", 0, 0x5321, 0 },
+{ "linux/cdrom.h", "CDROM_DEBUG", 0, 0x5330, 0 },
+{ "linux/cdrom.h", "CDROM_DISC_STATUS", 0, 0x5327, 0 },
+{ "linux/cdrom.h", "CDROM_DRIVE_STATUS", 0, 0x5326, 0 },
+{ "linux/cdrom.h", "CDROM_GET_CAPABILITY", 0, 0x5331, 0 },
+{ "linux/cdrom.h", "CDROM_GET_MCN", 0, 0x5311, 0 },
+{ "linux/cdrom.h", "CDROM_LAST_WRITTEN", 0, 0x5395, 0 },
+{ "linux/cdrom.h", "CDROM_LOCKDOOR", 0, 0x5329, 0 },
+{ "linux/cdrom.h", "CDROM_MEDIA_CHANGED", 0, 0x5325, 0 },
+{ "linux/cdrom.h", "CDROM_NEXT_WRITABLE", 0, 0x5394, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_DISC", 0, 0x5323, 0 },
+{ "linux/cdrom.h", "CDROM_SELECT_SPEED", 0, 0x5322, 0 },
+{ "linux/cdrom.h", "CDROM_SEND_PACKET", 0, 0x5393, 0 },
+{ "linux/cdrom.h", "CDROM_SET_OPTIONS", 0, 0x5320, 0 },
+{ "linux/cdrom.h", "DVD_AUTH", 0, 0x5392, 0 },
+{ "linux/cdrom.h", "DVD_READ_STRUCT", 0, 0x5390, 0 },
+{ "linux/cdrom.h", "DVD_WRITE_STRUCT", 0, 0x5391, 0 },
+{ "linux/chio.h", "CHIOEXCHANGE", _IOC_WRITE, 0x6302, 0x1c },
+{ "linux/chio.h", "CHIOGELEM", _IOC_WRITE, 0x6310, 0x6c },
+{ "linux/chio.h", "CHIOGPARAMS", _IOC_READ, 0x6306, 0x14 },
+{ "linux/chio.h", "CHIOGPICKER", _IOC_READ, 0x6304, 0x04 },
+{ "linux/chio.h", "CHIOGSTATUS", _IOC_WRITE, 0x6308, 0x08 },
+{ "linux/chio.h", "CHIOGVPARAMS", _IOC_READ, 0x6313, 0x70 },
+{ "linux/chio.h", "CHIOINITELEM", _IOC_NONE, 0x6311, 0x00 },
+{ "linux/chio.h", "CHIOMOVE", _IOC_WRITE, 0x6301, 0x14 },
+{ "linux/chio.h", "CHIOPOSITION", _IOC_WRITE, 0x6303, 0x0c },
+{ "linux/chio.h", "CHIOSPICKER", _IOC_WRITE, 0x6305, 0x04 },
+{ "linux/chio.h", "CHIOSVOLTAG", _IOC_WRITE, 0x6312, 0x30 },
+{ "linux/cm4000_cs.h", "CM_IOCARDOFF", _IOC_NONE, 0x6304, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOCGATR", _IOC_READ|_IOC_WRITE, 0x6301, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCGSTATUS", _IOC_READ, 0x6300, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCSPTS", _IOC_WRITE, 0x6302, 0x04 },
+{ "linux/cm4000_cs.h", "CM_IOCSRDR", _IOC_NONE, 0x6303, 0x00 },
+{ "linux/cm4000_cs.h", "CM_IOSDBGLVL", _IOC_WRITE, 0x63fa, 0x04 },
+{ "linux/coda.h", "CIOC_KERNEL_VERSION", _IOC_READ|_IOC_WRITE, 0x630a, 0x04 },
+{ "linux/dm-ioctl.h", "DM_DEV_CREATE", _IOC_READ|_IOC_WRITE, 0xfd03, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_REMOVE", _IOC_READ|_IOC_WRITE, 0xfd04, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_RENAME", _IOC_READ|_IOC_WRITE, 0xfd05, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SET_GEOMETRY", _IOC_READ|_IOC_WRITE, 0xfd0f, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_STATUS", _IOC_READ|_IOC_WRITE, 0xfd07, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_SUSPEND", _IOC_READ|_IOC_WRITE, 0xfd06, 0x138 },
+{ "linux/dm-ioctl.h", "DM_DEV_WAIT", _IOC_READ|_IOC_WRITE, 0xfd08, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_DEVICES", _IOC_READ|_IOC_WRITE, 0xfd02, 0x138 },
+{ "linux/dm-ioctl.h", "DM_LIST_VERSIONS", _IOC_READ|_IOC_WRITE, 0xfd0d, 0x138 },
+{ "linux/dm-ioctl.h", "DM_REMOVE_ALL", _IOC_READ|_IOC_WRITE, 0xfd01, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_CLEAR", _IOC_READ|_IOC_WRITE, 0xfd0a, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_DEPS", _IOC_READ|_IOC_WRITE, 0xfd0b, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_LOAD", _IOC_READ|_IOC_WRITE, 0xfd09, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TABLE_STATUS", _IOC_READ|_IOC_WRITE, 0xfd0c, 0x138 },
+{ "linux/dm-ioctl.h", "DM_TARGET_MSG", _IOC_READ|_IOC_WRITE, 0xfd0e, 0x138 },
+{ "linux/dm-ioctl.h", "DM_VERSION", _IOC_READ|_IOC_WRITE, 0xfd00, 0x138 },
+{ "linux/dn.h", "OSIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "OSIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dn.h", "SIOCGNETADDR", _IOC_READ, 0x89e1, 0x04 },
+{ "linux/dn.h", "SIOCSNETADDR", _IOC_WRITE, 0x89e0, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_BILINGUAL_CHANNEL_SELECT", _IOC_NONE, 0x6f14, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CHANNEL_SELECT", _IOC_NONE, 0x6f09, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CLEAR_BUFFER", _IOC_NONE, 0x6f0c, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_CONTINUE", _IOC_NONE, 0x6f04, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_GET_CAPABILITIES", _IOC_READ, 0x6f0b, 0x04 },
+{ "linux/dvb/audio.h", "AUDIO_GET_PTS", _IOC_READ, 0x6f13, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_GET_STATUS", _IOC_READ, 0x6f0a, 0x20 },
+{ "linux/dvb/audio.h", "AUDIO_PAUSE", _IOC_NONE, 0x6f03, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_PLAY", _IOC_NONE, 0x6f02, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SELECT_SOURCE", _IOC_NONE, 0x6f05, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ATTRIBUTES", _IOC_WRITE, 0x6f11, 0x02 },
+{ "linux/dvb/audio.h", "AUDIO_SET_AV_SYNC", _IOC_NONE, 0x6f07, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_BYPASS_MODE", _IOC_NONE, 0x6f08, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_EXT_ID", _IOC_NONE, 0x6f10, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_ID", _IOC_NONE, 0x6f0d, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_KARAOKE", _IOC_WRITE, 0x6f12, 0x0c },
+{ "linux/dvb/audio.h", "AUDIO_SET_MIXER", _IOC_WRITE, 0x6f0e, 0x08 },
+{ "linux/dvb/audio.h", "AUDIO_SET_MUTE", _IOC_NONE, 0x6f06, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_SET_STREAMTYPE", _IOC_NONE, 0x6f0f, 0x00 },
+{ "linux/dvb/audio.h", "AUDIO_STOP", _IOC_NONE, 0x6f01, 0x00 },
+{ "linux/dvb/ca.h", "CA_GET_CAP", _IOC_READ, 0x6f81, 0x10 },
+{ "linux/dvb/ca.h", "CA_GET_DESCR_INFO", _IOC_READ, 0x6f83, 0x08 },
+{ "linux/dvb/ca.h", "CA_GET_MSG", _IOC_READ, 0x6f84, 0x10c },
+{ "linux/dvb/ca.h", "CA_GET_SLOT_INFO", _IOC_READ, 0x6f82, 0x0c },
+{ "linux/dvb/ca.h", "CA_RESET", _IOC_NONE, 0x6f80, 0x00 },
+{ "linux/dvb/ca.h", "CA_SEND_MSG", _IOC_WRITE, 0x6f85, 0x10c },
+{ "linux/dvb/ca.h", "CA_SET_DESCR", _IOC_WRITE, 0x6f86, 0x10 },
+{ "linux/dvb/ca.h", "CA_SET_PID", _IOC_WRITE, 0x6f87, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_ADD_PID", _IOC_WRITE, 0x6f33, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_GET_CAPS", _IOC_READ, 0x6f30, 0x08 },
+{ "linux/dvb/dmx.h", "DMX_GET_PES_PIDS", _IOC_READ, 0x6f2f, 0x0a },
+{ "linux/dvb/dmx.h", "DMX_GET_STC", _IOC_READ|_IOC_WRITE, 0x6f32, 0x10 },
+{ "linux/dvb/dmx.h", "DMX_REMOVE_PID", _IOC_WRITE, 0x6f34, 0x02 },
+{ "linux/dvb/dmx.h", "DMX_SET_BUFFER_SIZE", _IOC_NONE, 0x6f2d, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_SET_FILTER", _IOC_WRITE, 0x6f2b, 0x3c },
+{ "linux/dvb/dmx.h", "DMX_SET_PES_FILTER", _IOC_WRITE, 0x6f2c, 0x14 },
+{ "linux/dvb/dmx.h", "DMX_SET_SOURCE", _IOC_WRITE, 0x6f31, 0x04 },
+{ "linux/dvb/dmx.h", "DMX_START", _IOC_NONE, 0x6f29, 0x00 },
+{ "linux/dvb/dmx.h", "DMX_STOP", _IOC_NONE, 0x6f2a, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RECV_SLAVE_REPLY", _IOC_READ, 0x6f40, 0x0c },
+{ "linux/dvb/frontend.h", "FE_DISEQC_RESET_OVERLOAD", _IOC_NONE, 0x6f3e, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_BURST", _IOC_NONE, 0x6f41, 0x00 },
+{ "linux/dvb/frontend.h", "FE_DISEQC_SEND_MASTER_CMD", _IOC_WRITE, 0x6f3f, 0x07 },
+{ "linux/dvb/frontend.h", "FE_DISHNETWORK_SEND_LEGACY_CMD", _IOC_NONE, 0x6f50, 0x00 },
+{ "linux/dvb/frontend.h", "FE_ENABLE_HIGH_LNB_VOLTAGE", _IOC_NONE, 0x6f44, 0x00 },
+{ "linux/dvb/frontend.h", "FE_GET_EVENT", _IOC_READ, 0x6f4e, 0x28 },
+{ "linux/dvb/frontend.h", "FE_GET_FRONTEND", _IOC_READ, 0x6f4d, 0x24 },
+{ "linux/dvb/frontend.h", "FE_GET_INFO", _IOC_READ, 0x6f3d, 0xa8 },
+{ "linux/dvb/frontend.h", "FE_GET_PROPERTY", _IOC_READ, 0x6f53, 0x08 },
+{ "linux/dvb/frontend.h", "FE_READ_BER", _IOC_READ, 0x6f46, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_SIGNAL_STRENGTH", _IOC_READ, 0x6f47, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_SNR", _IOC_READ, 0x6f48, 0x02 },
+{ "linux/dvb/frontend.h", "FE_READ_STATUS", _IOC_READ, 0x6f45, 0x04 },
+{ "linux/dvb/frontend.h", "FE_READ_UNCORRECTED_BLOCKS", _IOC_READ, 0x6f49, 0x04 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND", _IOC_WRITE, 0x6f4c, 0x24 },
+{ "linux/dvb/frontend.h", "FE_SET_FRONTEND_TUNE_MODE", _IOC_NONE, 0x6f51, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_PROPERTY", _IOC_WRITE, 0x6f52, 0x08 },
+{ "linux/dvb/frontend.h", "FE_SET_TONE", _IOC_NONE, 0x6f42, 0x00 },
+{ "linux/dvb/frontend.h", "FE_SET_VOLTAGE", _IOC_NONE, 0x6f43, 0x00 },
+{ "linux/dvb/net.h", "NET_ADD_IF", _IOC_READ|_IOC_WRITE, 0x6f34, 0x06 },
+{ "linux/dvb/net.h", "NET_GET_IF", _IOC_READ|_IOC_WRITE, 0x6f36, 0x06 },
+{ "linux/dvb/net.h", "NET_REMOVE_IF", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/osd.h", "OSD_GET_CAPABILITY", _IOC_READ, 0x6fa1, 0x08 },
+{ "linux/dvb/osd.h", "OSD_SEND_CMD", _IOC_WRITE, 0x6fa0, 0x1c },
+{ "linux/dvb/video.h", "VIDEO_CLEAR_BUFFER", _IOC_NONE, 0x6f22, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3b, 0x48 },
+{ "linux/dvb/video.h", "VIDEO_CONTINUE", _IOC_NONE, 0x6f18, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FAST_FORWARD", _IOC_NONE, 0x6f1f, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_FREEZE", _IOC_NONE, 0x6f17, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_GET_CAPABILITIES", _IOC_READ, 0x6f21, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_EVENT", _IOC_READ, 0x6f1c, 0x20 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_COUNT", _IOC_READ, 0x6f3a, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_FRAME_RATE", _IOC_READ, 0x6f38, 0x04 },
+{ "linux/dvb/video.h", "VIDEO_GET_NAVI", _IOC_READ, 0x6f34, 0x404 },
+{ "linux/dvb/video.h", "VIDEO_GET_PTS", _IOC_READ, 0x6f39, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_GET_SIZE", _IOC_READ, 0x6f37, 0x0c },
+{ "linux/dvb/video.h", "VIDEO_GET_STATUS", _IOC_READ, 0x6f1b, 0x14 },
+{ "linux/dvb/video.h", "VIDEO_PLAY", _IOC_NONE, 0x6f16, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SELECT_SOURCE", _IOC_NONE, 0x6f19, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_ATTRIBUTES", _IOC_NONE, 0x6f35, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_BLANK", _IOC_NONE, 0x6f1a, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_DISPLAY_FORMAT", _IOC_NONE, 0x6f1d, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_FORMAT", _IOC_NONE, 0x6f25, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_HIGHLIGHT", _IOC_WRITE, 0x6f27, 0x10 },
+{ "linux/dvb/video.h", "VIDEO_SET_ID", _IOC_NONE, 0x6f23, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU", _IOC_WRITE, 0x6f32, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_SET_SPU_PALETTE", _IOC_WRITE, 0x6f33, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_SET_STREAMTYPE", _IOC_NONE, 0x6f24, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SET_SYSTEM", _IOC_NONE, 0x6f26, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_SLOWMOTION", _IOC_NONE, 0x6f20, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_STILLPICTURE", _IOC_WRITE, 0x6f1e, 0x08 },
+{ "linux/dvb/video.h", "VIDEO_STOP", _IOC_NONE, 0x6f15, 0x00 },
+{ "linux/dvb/video.h", "VIDEO_TRY_COMMAND", _IOC_READ|_IOC_WRITE, 0x6f3c, 0x48 },
+{ "linux/fb.h", "FBIOBLANK", 0, 0x4611, 0 },
+{ "linux/fb.h", "FBIOGETCMAP", 0, 0x4604, 0 },
+{ "linux/fb.h", "FBIOGET_CON2FBMAP", 0, 0x460F, 0 },
+{ "linux/fb.h", "FBIOGET_DISPINFO", 0, 0x4618, 0 },
+{ "linux/fb.h", "FBIOGET_FSCREENINFO", 0, 0x4602, 0 },
+{ "linux/fb.h", "FBIOGET_GLYPH", 0, 0x4615, 0 },
+{ "linux/fb.h", "FBIOGET_HWCINFO", 0, 0x4616, 0 },
+{ "linux/fb.h", "FBIOGET_VBLANK", _IOC_READ, 0x4612, 0x20 },
+{ "linux/fb.h", "FBIOGET_VSCREENINFO", 0, 0x4600, 0 },
+{ "linux/fb.h", "FBIOPAN_DISPLAY", 0, 0x4606, 0 },
+{ "linux/fb.h", "FBIOPUTCMAP", 0, 0x4605, 0 },
+{ "linux/fb.h", "FBIOPUT_CON2FBMAP", 0, 0x4610, 0 },
+{ "linux/fb.h", "FBIOPUT_MODEINFO", 0, 0x4617, 0 },
+{ "linux/fb.h", "FBIOPUT_VSCREENINFO", 0, 0x4601, 0 },
+{ "linux/fb.h", "FBIO_ALLOC", 0, 0x4613, 0 },
+{ "linux/fb.h", "FBIO_CURSOR", _IOC_READ|_IOC_WRITE, 0x4608, 0x48 },
+{ "linux/fb.h", "FBIO_FREE", 0, 0x4614, 0 },
+{ "linux/fb.h", "FBIO_WAITFORVSYNC", _IOC_WRITE, 0x4620, 0x04 },
+{ "linux/fd.h", "FDCLRPRM", _IOC_NONE, 0x0241, 0x00 },
+{ "linux/fd.h", "FDDEFPRM", _IOC_WRITE, 0x0243, 0x1c },
+{ "linux/fd.h", "FDEJECT", _IOC_NONE, 0x025a, 0x00 },
+{ "linux/fd.h", "FDFLUSH", _IOC_NONE, 0x024b, 0x00 },
+{ "linux/fd.h", "FDFMTBEG", _IOC_NONE, 0x0247, 0x00 },
+{ "linux/fd.h", "FDFMTEND", _IOC_NONE, 0x0249, 0x00 },
+{ "linux/fd.h", "FDFMTTRK", _IOC_WRITE, 0x0248, 0x0c },
+{ "linux/fd.h", "FDGETDRVPRM", _IOC_READ, 0x0211, 0x58 },
+{ "linux/fd.h", "FDGETDRVSTAT", _IOC_READ, 0x0212, 0x34 },
+{ "linux/fd.h", "FDGETDRVTYP", _IOC_READ, 0x020f, 0x10 },
+{ "linux/fd.h", "FDGETFDCSTAT", _IOC_READ, 0x0215, 0x20 },
+{ "linux/fd.h", "FDGETMAXERRS", _IOC_READ, 0x020e, 0x14 },
+{ "linux/fd.h", "FDGETPRM", _IOC_READ, 0x0204, 0x1c },
+{ "linux/fd.h", "FDMSGOFF", _IOC_NONE, 0x0246, 0x00 },
+{ "linux/fd.h", "FDMSGON", _IOC_NONE, 0x0245, 0x00 },
+{ "linux/fd.h", "FDPOLLDRVSTAT", _IOC_READ, 0x0213, 0x34 },
+{ "linux/fd.h", "FDRAWCMD", _IOC_NONE, 0x0258, 0x00 },
+{ "linux/fd.h", "FDRESET", _IOC_NONE, 0x0254, 0x00 },
+{ "linux/fd.h", "FDSETDRVPRM", _IOC_WRITE, 0x0290, 0x58 },
+{ "linux/fd.h", "FDSETEMSGTRESH", _IOC_NONE, 0x024a, 0x00 },
+{ "linux/fd.h", "FDSETMAXERRS", _IOC_WRITE, 0x024c, 0x14 },
+{ "linux/fd.h", "FDSETPRM", _IOC_WRITE, 0x0242, 0x1c },
+{ "linux/fd.h", "FDTWADDLE", _IOC_NONE, 0x0259, 0x00 },
+{ "linux/fd.h", "FDWERRORCLR", _IOC_NONE, 0x0256, 0x00 },
+{ "linux/fd.h", "FDWERRORGET", _IOC_READ, 0x0217, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ADD_DESCRIPTOR", _IOC_READ|_IOC_WRITE, 0x2306, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE", _IOC_READ|_IOC_WRITE, 0x2302, 0x20 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE", _IOC_READ|_IOC_WRITE, 0x230d, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x230f, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_CREATE_ISO_CONTEXT", _IOC_READ|_IOC_WRITE, 0x2308, 0x20 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE", _IOC_WRITE, 0x2303, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE", _IOC_WRITE, 0x230e, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE", _IOC_WRITE, 0x2310, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_FLUSH_ISO", _IOC_WRITE, 0x2318, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER", _IOC_READ, 0x230c, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_CYCLE_TIMER2", _IOC_READ|_IOC_WRITE, 0x2314, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_INFO", _IOC_READ|_IOC_WRITE, 0x2300, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_GET_SPEED", _IOC_NONE, 0x2311, 0x00 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_INITIATE_BUS_RESET", _IOC_WRITE, 0x2305, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_QUEUE_ISO", _IOC_READ|_IOC_WRITE, 0x2309, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_RECEIVE_PHY_PACKETS", _IOC_WRITE, 0x2316, 0x08 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_REMOVE_DESCRIPTOR", _IOC_WRITE, 0x2307, 0x04 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_BROADCAST_REQUEST", _IOC_WRITE, 0x2312, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_PHY_PACKET", _IOC_READ|_IOC_WRITE, 0x2315, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_REQUEST", _IOC_WRITE, 0x2301, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_RESPONSE", _IOC_WRITE, 0x2304, 0x18 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SEND_STREAM_PACKET", _IOC_WRITE, 0x2313, 0x28 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_SET_ISO_CHANNELS", _IOC_WRITE, 0x2317, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_START_ISO", _IOC_WRITE, 0x230a, 0x10 },
+{ "linux/firewire-cdev.h", "FW_CDEV_IOC_STOP_ISO", _IOC_WRITE, 0x230b, 0x04 },
+{ "linux/fs.h", "BLKALIGNOFF", _IOC_NONE, 0x127a, 0x00 },
+{ "linux/fs.h", "BLKBSZGET", _IOC_READ, 0x1270, 0x04 },
+{ "linux/fs.h", "BLKBSZSET", _IOC_WRITE, 0x1271, 0x04 },
+{ "linux/fs.h", "BLKDISCARD", _IOC_NONE, 0x1277, 0x00 },
+{ "linux/fs.h", "BLKDISCARDZEROES", _IOC_NONE, 0x127c, 0x00 },
+{ "linux/fs.h", "BLKFLSBUF", _IOC_NONE, 0x1261, 0x00 },
+{ "linux/fs.h", "BLKFRAGET", _IOC_NONE, 0x1265, 0x00 },
+{ "linux/fs.h", "BLKFRASET", _IOC_NONE, 0x1264, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE", _IOC_NONE, 0x1260, 0x00 },
+{ "linux/fs.h", "BLKGETSIZE64", _IOC_READ, 0x1272, 0x04 },
+{ "linux/fs.h", "BLKIOMIN", _IOC_NONE, 0x1278, 0x00 },
+{ "linux/fs.h", "BLKIOOPT", _IOC_NONE, 0x1279, 0x00 },
+{ "linux/fs.h", "BLKPBSZGET", _IOC_NONE, 0x127b, 0x00 },
+{ "linux/fs.h", "BLKRAGET", _IOC_NONE, 0x1263, 0x00 },
+{ "linux/fs.h", "BLKRASET", _IOC_NONE, 0x1262, 0x00 },
+{ "linux/fs.h", "BLKROGET", _IOC_NONE, 0x125e, 0x00 },
+{ "linux/fs.h", "BLKROSET", _IOC_NONE, 0x125d, 0x00 },
+{ "linux/fs.h", "BLKROTATIONAL", _IOC_NONE, 0x127e, 0x00 },
+{ "linux/fs.h", "BLKRRPART", _IOC_NONE, 0x125f, 0x00 },
+{ "linux/fs.h", "BLKSECDISCARD", _IOC_NONE, 0x127d, 0x00 },
+{ "linux/fs.h", "BLKSECTGET", _IOC_NONE, 0x1267, 0x00 },
+{ "linux/fs.h", "BLKSECTSET", _IOC_NONE, 0x1266, 0x00 },
+{ "linux/fs.h", "BLKSSZGET", _IOC_NONE, 0x1268, 0x00 },
+{ "linux/fs.h", "BLKTRACESETUP", _IOC_READ|_IOC_WRITE, 0x1273, 0x48 },
+{ "linux/fs.h", "BLKTRACESTART", _IOC_NONE, 0x1274, 0x00 },
+{ "linux/fs.h", "BLKTRACESTOP", _IOC_NONE, 0x1275, 0x00 },
+{ "linux/fs.h", "BLKTRACETEARDOWN", _IOC_NONE, 0x1276, 0x00 },
+{ "linux/fs.h", "BLKZEROOUT", _IOC_NONE, 0x127f, 0x00 },
+{ "linux/fs.h", "FIBMAP", _IOC_NONE, 0x0001, 0x00 },
+{ "linux/fs.h", "FIFREEZE", _IOC_READ|_IOC_WRITE, 0x5877, 0x04 },
+{ "linux/fs.h", "FIGETBSZ", _IOC_NONE, 0x0002, 0x00 },
+{ "linux/fs.h", "FITHAW", _IOC_READ|_IOC_WRITE, 0x5878, 0x04 },
+{ "linux/fs.h", "FITRIM", _IOC_READ|_IOC_WRITE, 0x5879, 0x18 },
+{ "linux/fs.h", "FS_IOC32_GETFLAGS", _IOC_READ, 0x6601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_GETVERSION", _IOC_READ, 0x7601, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETFLAGS", _IOC_WRITE, 0x6602, 0x04 },
+{ "linux/fs.h", "FS_IOC32_SETVERSION", _IOC_WRITE, 0x7602, 0x04 },
+{ "linux/fs.h", "FS_IOC_FIEMAP", _IOC_READ|_IOC_WRITE, 0x660b, 0x20 },
+{ "linux/fs.h", "FS_IOC_GETFLAGS", _IOC_READ, 0x6601, 0x04 },
+{ "linux/fs.h", "FS_IOC_GETVERSION", _IOC_READ, 0x7601, 0x04 },
+{ "linux/fs.h", "FS_IOC_SETFLAGS", _IOC_WRITE, 0x6602, 0x04 },
+{ "linux/fs.h", "FS_IOC_SETVERSION", _IOC_WRITE, 0x7602, 0x04 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_ALPHA", _IOC_READ, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_AOID", _IOC_READ, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_GAMMA", _IOC_READ, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_GET_PIXFMT", _IOC_READ, 0x4d08, 0x04 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_ALPHA", _IOC_WRITE, 0x4d00, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_AOID", _IOC_WRITE, 0x4d04, 0x08 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_BRIGHTNESS", _IOC_WRITE, 0x4d03, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_CHROMA_KEY", _IOC_WRITE, 0x4d01, 0x0c },
+{ "linux/fsl-diu-fb.h", "MFB_SET_GAMMA", _IOC_WRITE, 0x4d01, 0x01 },
+{ "linux/fsl-diu-fb.h", "MFB_SET_PIXFMT", _IOC_WRITE, 0x4d08, 0x04 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_DOORBELL", _IOC_READ|_IOC_WRITE, 0xaf06, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_GETPROP", _IOC_READ|_IOC_WRITE, 0xaf07, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_MEMCPY", _IOC_READ|_IOC_WRITE, 0xaf05, 0x28 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_GET_STATUS", _IOC_READ|_IOC_WRITE, 0xaf02, 0x0c },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_RESTART", _IOC_READ|_IOC_WRITE, 0xaf01, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_START", _IOC_READ|_IOC_WRITE, 0xaf03, 0x10 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_PARTITION_STOP", _IOC_READ|_IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/fsl_hypervisor.h", "FSL_HV_IOCTL_SETPROP", _IOC_READ|_IOC_WRITE, 0xaf08, 0x28 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_DDCB", _IOC_READ|_IOC_WRITE, 0xa532, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_EXECUTE_RAW_DDCB", _IOC_READ|_IOC_WRITE, 0xa533, 0xe8 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_GET_CARD_STATE", _IOC_READ, 0xa524, 0x04 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_PIN_MEM", _IOC_READ|_IOC_WRITE, 0xa528, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG16", _IOC_READ, 0xa522, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG32", _IOC_READ, 0xa520, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_READ_REG64", _IOC_READ, 0xa51e, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_READ", _IOC_READ|_IOC_WRITE, 0xa551, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_SLU_UPDATE", _IOC_READ|_IOC_WRITE, 0xa550, 0x38 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_UNPIN_MEM", _IOC_READ|_IOC_WRITE, 0xa529, 0x20 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG16", _IOC_WRITE, 0xa523, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG32", _IOC_WRITE, 0xa521, 0x10 },
+{ "linux/genwqe/genwqe_card.h", "GENWQE_WRITE_REG64", _IOC_WRITE, 0xa51f, 0x10 },
+{ "linux/gigaset_dev.h", "GIGASET_BRKCHARS", _IOC_WRITE, 0x4702, 0x06 },
+{ "linux/gigaset_dev.h", "GIGASET_CONFIG", _IOC_READ|_IOC_WRITE, 0x4701, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_REDIR", _IOC_READ|_IOC_WRITE, 0x4700, 0x04 },
+{ "linux/gigaset_dev.h", "GIGASET_VERSION", _IOC_READ|_IOC_WRITE, 0x4703, 0x10 },
+{ "linux/gsmmux.h", "GSMIOC_DISABLE_NET", _IOC_NONE, 0x4703, 0x00 },
+{ "linux/gsmmux.h", "GSMIOC_ENABLE_NET", _IOC_WRITE, 0x4702, 0x34 },
+{ "linux/gsmmux.h", "GSMIOC_GETCONF", _IOC_READ, 0x4700, 0x4c },
+{ "linux/gsmmux.h", "GSMIOC_SETCONF", _IOC_WRITE, 0x4701, 0x4c },
+{ "linux/hdreg.h", "HDIO_DRIVE_CMD", 0, 0x031f, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_RESET", 0, 0x031c, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASK", 0, 0x031e, 0 },
+{ "linux/hdreg.h", "HDIO_DRIVE_TASKFILE", 0, 0x031d, 0 },
+{ "linux/hdreg.h", "HDIO_GETGEO", 0, 0x0301, 0 },
+{ "linux/hdreg.h", "HDIO_GET_32BIT", 0, 0x0309, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ACOUSTIC", 0, 0x030f, 0 },
+{ "linux/hdreg.h", "HDIO_GET_ADDRESS", 0, 0x0310, 0 },
+{ "linux/hdreg.h", "HDIO_GET_BUSSTATE", 0, 0x031a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_DMA", 0, 0x030b, 0 },
+{ "linux/hdreg.h", "HDIO_GET_IDENTITY", 0, 0x030d, 0 },
+{ "linux/hdreg.h", "HDIO_GET_KEEPSETTINGS", 0, 0x0308, 0 },
+{ "linux/hdreg.h", "HDIO_GET_MULTCOUNT", 0, 0x0304, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NICE", 0, 0x030c, 0 },
+{ "linux/hdreg.h", "HDIO_GET_NOWERR", 0, 0x030a, 0 },
+{ "linux/hdreg.h", "HDIO_GET_QDMA", 0, 0x0305, 0 },
+{ "linux/hdreg.h", "HDIO_GET_UNMASKINTR", 0, 0x0302, 0 },
+{ "linux/hdreg.h", "HDIO_GET_WCACHE", 0, 0x030e, 0 },
+{ "linux/hdreg.h", "HDIO_OBSOLETE_IDENTITY", 0, 0x0307, 0 },
+{ "linux/hdreg.h", "HDIO_SCAN_HWIF", 0, 0x0328, 0 },
+{ "linux/hdreg.h", "HDIO_SET_32BIT", 0, 0x0324, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ACOUSTIC", 0, 0x032c, 0 },
+{ "linux/hdreg.h", "HDIO_SET_ADDRESS", 0, 0x032f, 0 },
+{ "linux/hdreg.h", "HDIO_SET_BUSSTATE", 0, 0x032d, 0 },
+{ "linux/hdreg.h", "HDIO_SET_DMA", 0, 0x0326, 0 },
+{ "linux/hdreg.h", "HDIO_SET_KEEPSETTINGS", 0, 0x0323, 0 },
+{ "linux/hdreg.h", "HDIO_SET_MULTCOUNT", 0, 0x0321, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NICE", 0, 0x0329, 0 },
+{ "linux/hdreg.h", "HDIO_SET_NOWERR", 0, 0x0325, 0 },
+{ "linux/hdreg.h", "HDIO_SET_PIO_MODE", 0, 0x0327, 0 },
+{ "linux/hdreg.h", "HDIO_SET_QDMA", 0, 0x032e, 0 },
+{ "linux/hdreg.h", "HDIO_SET_UNMASKINTR", 0, 0x0322, 0 },
+{ "linux/hdreg.h", "HDIO_SET_WCACHE", 0, 0x032b, 0 },
+{ "linux/hdreg.h", "HDIO_SET_XFER", 0, 0x0306, 0 },
+{ "linux/hdreg.h", "HDIO_TRISTATE_HWIF", 0, 0x031b, 0 },
+{ "linux/hdreg.h", "HDIO_UNREGISTER_HWIF", 0, 0x032a, 0 },
+{ "linux/hid-roccat.h", "ROCCATIOCGREPSIZE", _IOC_READ, 0x48f1, 0x04 },
+{ "linux/hiddev.h", "HIDIOCAPPLICATION", _IOC_NONE, 0x4802, 0x00 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINDEX", _IOC_WRITE, 0x4810, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGCOLLECTIONINFO", _IOC_READ|_IOC_WRITE, 0x4811, 0x10 },
+{ "linux/hiddev.h", "HIDIOCGDEVINFO", _IOC_READ, 0x4803, 0x1c },
+{ "linux/hiddev.h", "HIDIOCGFIELDINFO", _IOC_READ|_IOC_WRITE, 0x480a, 0x38 },
+{ "linux/hiddev.h", "HIDIOCGFLAG", _IOC_READ, 0x480e, 0x04 },
+{ "linux/hiddev.h", "HIDIOCGREPORT", _IOC_WRITE, 0x4807, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGREPORTINFO", _IOC_READ|_IOC_WRITE, 0x4809, 0x0c },
+{ "linux/hiddev.h", "HIDIOCGSTRING", _IOC_READ, 0x4804, 0x104 },
+{ "linux/hiddev.h", "HIDIOCGUCODE", _IOC_READ|_IOC_WRITE, 0x480d, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGE", _IOC_READ|_IOC_WRITE, 0x480b, 0x18 },
+{ "linux/hiddev.h", "HIDIOCGUSAGES", _IOC_READ|_IOC_WRITE, 0x4813, 0x101c },
+{ "linux/hiddev.h", "HIDIOCGVERSION", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hiddev.h", "HIDIOCINITREPORT", _IOC_NONE, 0x4805, 0x00 },
+{ "linux/hiddev.h", "HIDIOCSFLAG", _IOC_WRITE, 0x480f, 0x04 },
+{ "linux/hiddev.h", "HIDIOCSREPORT", _IOC_WRITE, 0x4808, 0x0c },
+{ "linux/hiddev.h", "HIDIOCSUSAGE", _IOC_WRITE, 0x480c, 0x18 },
+{ "linux/hiddev.h", "HIDIOCSUSAGES", _IOC_WRITE, 0x4814, 0x101c },
+{ "linux/hidraw.h", "HIDIOCGRAWINFO", _IOC_READ, 0x4803, 0x08 },
+{ "linux/hidraw.h", "HIDIOCGRDESC", _IOC_READ, 0x4802, 0x1004 },
+{ "linux/hidraw.h", "HIDIOCGRDESCSIZE", _IOC_READ, 0x4801, 0x04 },
+{ "linux/hpet.h", "HPET_DPI", _IOC_NONE, 0x6805, 0x00 },
+{ "linux/hpet.h", "HPET_EPI", _IOC_NONE, 0x6804, 0x00 },
+{ "linux/hpet.h", "HPET_IE_OFF", _IOC_NONE, 0x6802, 0x00 },
+{ "linux/hpet.h", "HPET_IE_ON", _IOC_NONE, 0x6801, 0x00 },
+{ "linux/hpet.h", "HPET_INFO", _IOC_READ, 0x6803, 0x0c },
+{ "linux/hpet.h", "HPET_IRQFREQ", _IOC_WRITE, 0x6806, 0x04 },
+{ "linux/hsi/hsi_char.h", "HSC_GET_RX", _IOC_WRITE, 0x6b14, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_GET_TX", _IOC_WRITE, 0x6b16, 0x10 },
+{ "linux/hsi/hsi_char.h", "HSC_RESET", _IOC_NONE, 0x6b10, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SEND_BREAK", _IOC_NONE, 0x6b12, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_PM", _IOC_NONE, 0x6b11, 0x00 },
+{ "linux/hsi/hsi_char.h", "HSC_SET_RX", _IOC_WRITE, 0x6b13, 0x0c },
+{ "linux/hsi/hsi_char.h", "HSC_SET_TX", _IOC_WRITE, 0x6b15, 0x10 },
+{ "linux/i2o-dev.h", "I2OEVTGET", _IOC_READ, 0x690b, 0x68 },
+{ "linux/i2o-dev.h", "I2OEVTREG", _IOC_WRITE, 0x690a, 0x0c },
+{ "linux/i2o-dev.h", "I2OGETIOPS", _IOC_READ, 0x6900, 0x20 },
+{ "linux/i2o-dev.h", "I2OHRTGET", _IOC_READ|_IOC_WRITE, 0x6901, 0x0c },
+{ "linux/i2o-dev.h", "I2OHTML", _IOC_READ|_IOC_WRITE, 0x6909, 0x1c },
+{ "linux/i2o-dev.h", "I2OLCTGET", _IOC_READ|_IOC_WRITE, 0x6902, 0x0c },
+{ "linux/i2o-dev.h", "I2OPARMGET", _IOC_READ|_IOC_WRITE, 0x6904, 0x18 },
+{ "linux/i2o-dev.h", "I2OPARMSET", _IOC_READ|_IOC_WRITE, 0x6903, 0x18 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU", _IOC_READ, 0x690c, 0x08 },
+{ "linux/i2o-dev.h", "I2OPASSTHRU32", _IOC_READ, 0x690c, 0x08 },
+{ "linux/i2o-dev.h", "I2OSWDEL", _IOC_READ|_IOC_WRITE, 0x6907, 0x1c },
+{ "linux/i2o-dev.h", "I2OSWDL", _IOC_READ|_IOC_WRITE, 0x6905, 0x1c },
+{ "linux/i2o-dev.h", "I2OSWUL", _IOC_READ|_IOC_WRITE, 0x6906, 0x1c },
+{ "linux/i2o-dev.h", "I2OVALIDATE", _IOC_READ, 0x6908, 0x04 },
+{ "linux/i2o.h", "BLKI2OGRSTRAT", _IOC_READ, 0x3201, 0x04 },
+{ "linux/i2o.h", "BLKI2OGWSTRAT", _IOC_READ, 0x3202, 0x04 },
+{ "linux/i2o.h", "BLKI2OSRSTRAT", _IOC_WRITE, 0x3203, 0x04 },
+{ "linux/i2o.h", "BLKI2OSWSTRAT", _IOC_WRITE, 0x3204, 0x04 },
+{ "linux/i8k.h", "I8K_BIOS_VERSION", _IOC_READ, 0x6980, 0x04 },
+{ "linux/i8k.h", "I8K_FN_STATUS", _IOC_READ, 0x6983, 0x04 },
+{ "linux/i8k.h", "I8K_GET_FAN", _IOC_READ|_IOC_WRITE, 0x6986, 0x04 },
+{ "linux/i8k.h", "I8K_GET_SPEED", _IOC_READ|_IOC_WRITE, 0x6985, 0x04 },
+{ "linux/i8k.h", "I8K_GET_TEMP", _IOC_READ, 0x6984, 0x04 },
+{ "linux/i8k.h", "I8K_MACHINE_ID", _IOC_READ, 0x6981, 0x04 },
+{ "linux/i8k.h", "I8K_POWER_STATUS", _IOC_READ, 0x6982, 0x04 },
+{ "linux/i8k.h", "I8K_SET_FAN", _IOC_READ|_IOC_WRITE, 0x6987, 0x04 },
+{ "linux/if_pppox.h", "PPPOEIOCDFWD", _IOC_NONE, 0xb101, 0x00 },
+{ "linux/if_pppox.h", "PPPOEIOCSFWD", _IOC_WRITE, 0xb100, 0x04 },
+{ "linux/if_tun.h", "TUNATTACHFILTER", _IOC_WRITE, 0x54d5, 0x08 },
+{ "linux/if_tun.h", "TUNDETACHFILTER", _IOC_WRITE, 0x54d6, 0x08 },
+{ "linux/if_tun.h", "TUNGETFEATURES", _IOC_READ, 0x54cf, 0x04 },
+{ "linux/if_tun.h", "TUNGETFILTER", _IOC_READ, 0x54db, 0x08 },
+{ "linux/if_tun.h", "TUNGETIFF", _IOC_READ, 0x54d2, 0x04 },
+{ "linux/if_tun.h", "TUNGETSNDBUF", _IOC_READ, 0x54d3, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETHDRSZ", _IOC_READ, 0x54d7, 0x04 },
+{ "linux/if_tun.h", "TUNGETVNETLE", _IOC_READ, 0x54dd, 0x04 },
+{ "linux/if_tun.h", "TUNSETDEBUG", _IOC_WRITE, 0x54c9, 0x04 },
+{ "linux/if_tun.h", "TUNSETGROUP", _IOC_WRITE, 0x54ce, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFF", _IOC_WRITE, 0x54ca, 0x04 },
+{ "linux/if_tun.h", "TUNSETIFINDEX", _IOC_WRITE, 0x54da, 0x04 },
+{ "linux/if_tun.h", "TUNSETLINK", _IOC_WRITE, 0x54cd, 0x04 },
+{ "linux/if_tun.h", "TUNSETNOCSUM", _IOC_WRITE, 0x54c8, 0x04 },
+{ "linux/if_tun.h", "TUNSETOFFLOAD", _IOC_WRITE, 0x54d0, 0x04 },
+{ "linux/if_tun.h", "TUNSETOWNER", _IOC_WRITE, 0x54cc, 0x04 },
+{ "linux/if_tun.h", "TUNSETPERSIST", _IOC_WRITE, 0x54cb, 0x04 },
+{ "linux/if_tun.h", "TUNSETQUEUE", _IOC_WRITE, 0x54d9, 0x04 },
+{ "linux/if_tun.h", "TUNSETSNDBUF", _IOC_WRITE, 0x54d4, 0x04 },
+{ "linux/if_tun.h", "TUNSETTXFILTER", _IOC_WRITE, 0x54d1, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETHDRSZ", _IOC_WRITE, 0x54d8, 0x04 },
+{ "linux/if_tun.h", "TUNSETVNETLE", _IOC_WRITE, 0x54dc, 0x04 },
+{ "linux/iio/events.h", "IIO_GET_EVENT_FD_IOCTL", _IOC_READ, 0x6990, 0x04 },
+{ "linux/input.h", "EVIOCGEFFECTS", _IOC_READ, 0x4584, 0x04 },
+{ "linux/input.h", "EVIOCGID", _IOC_READ, 0x4502, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE", _IOC_READ, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCGKEYCODE_V2", _IOC_READ, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCGRAB", _IOC_WRITE, 0x4590, 0x04 },
+{ "linux/input.h", "EVIOCGREP", _IOC_READ, 0x4503, 0x08 },
+{ "linux/input.h", "EVIOCGVERSION", _IOC_READ, 0x4501, 0x04 },
+{ "linux/input.h", "EVIOCREVOKE", _IOC_WRITE, 0x4591, 0x04 },
+{ "linux/input.h", "EVIOCRMFF", _IOC_WRITE, 0x4581, 0x04 },
+{ "linux/input.h", "EVIOCSCLOCKID", _IOC_WRITE, 0x45a0, 0x04 },
+{ "linux/input.h", "EVIOCSFF", _IOC_WRITE, 0x4580, 0x2c },
+{ "linux/input.h", "EVIOCSKEYCODE", _IOC_WRITE, 0x4504, 0x08 },
+{ "linux/input.h", "EVIOCSKEYCODE_V2", _IOC_WRITE, 0x4504, 0x28 },
+{ "linux/input.h", "EVIOCSREP", _IOC_WRITE, 0x4503, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_GET_MAINTENANCE_MODE_CMD", _IOC_READ, 0x691e, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_ADDRESS_CMD", _IOC_READ, 0x6912, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6919, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691b, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_MY_LUN_CMD", _IOC_READ, 0x6914, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_GET_TIMING_PARMS_CMD", _IOC_READ, 0x6917, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG", _IOC_READ|_IOC_WRITE, 0x690c, 0x18 },
+{ "linux/ipmi.h", "IPMICTL_RECEIVE_MSG_TRUNC", _IOC_READ|_IOC_WRITE, 0x690b, 0x18 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD", _IOC_READ, 0x690e, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_REGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691c, 0x0c },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND", _IOC_READ, 0x690d, 0x14 },
+{ "linux/ipmi.h", "IPMICTL_SEND_COMMAND_SETTIME", _IOC_READ, 0x6915, 0x1c },
+{ "linux/ipmi.h", "IPMICTL_SET_GETS_EVENTS_CMD", _IOC_READ, 0x6910, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MAINTENANCE_MODE_CMD", _IOC_WRITE, 0x691f, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_ADDRESS_CMD", _IOC_READ, 0x6911, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD", _IOC_READ, 0x6918, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_CHANNEL_LUN_CMD", _IOC_READ, 0x691a, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_MY_LUN_CMD", _IOC_READ, 0x6913, 0x04 },
+{ "linux/ipmi.h", "IPMICTL_SET_TIMING_PARMS_CMD", _IOC_READ, 0x6916, 0x08 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD", _IOC_READ, 0x690f, 0x02 },
+{ "linux/ipmi.h", "IPMICTL_UNREGISTER_FOR_CMD_CHANS", _IOC_READ, 0x691d, 0x0c },
+{ "linux/isdn.h", "IIOCDBGVAR", _IOC_NONE, 0x497f, 0x00 },
+{ "linux/isdn.h", "IIOCDRVCTL", _IOC_NONE, 0x4980, 0x00 },
+{ "linux/isdn.h", "IIOCGETCPS", _IOC_NONE, 0x4915, 0x00 },
+{ "linux/isdn.h", "IIOCGETDVR", _IOC_NONE, 0x4916, 0x00 },
+{ "linux/isdn.h", "IIOCGETMAP", _IOC_NONE, 0x4911, 0x00 },
+{ "linux/isdn.h", "IIOCGETPRF", _IOC_NONE, 0x490f, 0x00 },
+{ "linux/isdn.h", "IIOCGETSET", _IOC_NONE, 0x4908, 0x00 },
+{ "linux/isdn.h", "IIOCNETAIF", _IOC_NONE, 0x4901, 0x00 },
+{ "linux/isdn.h", "IIOCNETALN", _IOC_NONE, 0x4920, 0x00 },
+{ "linux/isdn.h", "IIOCNETANM", _IOC_NONE, 0x4905, 0x00 },
+{ "linux/isdn.h", "IIOCNETASL", _IOC_NONE, 0x4913, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIF", _IOC_NONE, 0x4902, 0x00 },
+{ "linux/isdn.h", "IIOCNETDIL", _IOC_NONE, 0x4914, 0x00 },
+{ "linux/isdn.h", "IIOCNETDLN", _IOC_NONE, 0x4921, 0x00 },
+{ "linux/isdn.h", "IIOCNETDNM", _IOC_NONE, 0x4906, 0x00 },
+{ "linux/isdn.h", "IIOCNETDWRSET", _IOC_NONE, 0x4918, 0x00 },
+{ "linux/isdn.h", "IIOCNETGCF", _IOC_NONE, 0x4904, 0x00 },
+{ "linux/isdn.h", "IIOCNETGNM", _IOC_NONE, 0x4907, 0x00 },
+{ "linux/isdn.h", "IIOCNETGPN", _IOC_NONE, 0x4922, 0x00 },
+{ "linux/isdn.h", "IIOCNETHUP", _IOC_NONE, 0x490b, 0x00 },
+{ "linux/isdn.h", "IIOCNETLCR", _IOC_NONE, 0x4917, 0x00 },
+{ "linux/isdn.h", "IIOCNETSCF", _IOC_NONE, 0x4903, 0x00 },
+{ "linux/isdn.h", "IIOCSETBRJ", _IOC_NONE, 0x490d, 0x00 },
+{ "linux/isdn.h", "IIOCSETGST", _IOC_NONE, 0x490c, 0x00 },
+{ "linux/isdn.h", "IIOCSETMAP", _IOC_NONE, 0x4912, 0x00 },
+{ "linux/isdn.h", "IIOCSETPRF", _IOC_NONE, 0x4910, 0x00 },
+{ "linux/isdn.h", "IIOCSETSET", _IOC_NONE, 0x4909, 0x00 },
+{ "linux/isdn.h", "IIOCSETVER", _IOC_NONE, 0x490a, 0x00 },
+{ "linux/isdn.h", "IIOCSIGPRF", _IOC_NONE, 0x490e, 0x00 },
+{ "linux/isdn_ppp.h", "PPPIOCBUNDLE", _IOC_WRITE, 0x7481, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCGCALLINFO", _IOC_READ|_IOC_WRITE, 0x7480, 0x88 },
+{ "linux/isdn_ppp.h", "PPPIOCGCOMPRESSORS", _IOC_READ, 0x7486, 0x20 },
+{ "linux/isdn_ppp.h", "PPPIOCGIFNAME", _IOC_READ, 0x7488, 0x10 },
+{ "linux/isdn_ppp.h", "PPPIOCGMPFLAGS", _IOC_READ, 0x7482, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSCOMPRESSOR", _IOC_WRITE, 0x7487, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPFLAGS", _IOC_WRITE, 0x7483, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMRU", _IOC_WRITE, 0x7485, 0x04 },
+{ "linux/isdn_ppp.h", "PPPIOCSMPMTU", _IOC_WRITE, 0x7484, 0x04 },
+{ "linux/ivtv.h", "IVTV_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x38 },
+{ "linux/ivtv.h", "IVTV_IOC_PASSTHROUGH_MODE", _IOC_WRITE, 0x56c1, 0x04 },
+{ "linux/ivtvfb.h", "IVTVFB_IOC_DMA_FRAME", _IOC_WRITE, 0x56c0, 0x0c },
+{ "linux/ixjuser.h", "IXJCTL_AEC_GET_LEVEL", _IOC_NONE, 0x71cd, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_START", _IOC_WRITE, 0x71cb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_AEC_STOP", _IOC_NONE, 0x71cc, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_CARDTYPE", _IOC_READ, 0x71c1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_CID", _IOC_READ, 0x71d4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_CIDCW", _IOC_WRITE, 0x71d9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_AGAIN", _IOC_WRITE, 0x71d2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DAA_COEFF_SET", _IOC_WRITE, 0x71d0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_CLEAR", _IOC_NONE, 0x71e7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DRYBUFFER_READ", _IOC_READ, 0x71e6, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_IDLE", _IOC_NONE, 0x71c5, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_RESET", _IOC_NONE, 0x71c0, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_TYPE", _IOC_READ, 0x71c3, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DSP_VERSION", _IOC_READ, 0x71c4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_DTMF_PRESCALE", _IOC_WRITE, 0x71e8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FILTER_CADENCE", _IOC_WRITE, 0x71d6, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_READ", _IOC_READ, 0x71e2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_FRAMES_WRITTEN", _IOC_READ, 0x71e3, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_GET_FILTER_HIST", _IOC_WRITE, 0x71c8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_HZ", _IOC_WRITE, 0x71e0, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INIT_TONE", _IOC_WRITE, 0x71c9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_START", _IOC_WRITE, 0x71fd, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_INTERCOM_STOP", _IOC_WRITE, 0x71fe, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_MIXER", _IOC_WRITE, 0x71cf, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PLAY_CID", _IOC_NONE, 0x71d7, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_PORT", _IOC_WRITE, 0x71d1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_POTS_PSTN", _IOC_WRITE, 0x71d5, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_PSTN_LINETEST", _IOC_NONE, 0x71d3, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_RATE", _IOC_WRITE, 0x71e1, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_READ_WAIT", _IOC_READ, 0x71e4, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SC_RXG", _IOC_WRITE, 0x71ea, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SC_TXG", _IOC_WRITE, 0x71eb, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SERIAL", _IOC_READ, 0x71c2, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER", _IOC_WRITE, 0x71c7, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_FILTER_RAW", _IOC_WRITE, 0x71dd, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SET_LED", _IOC_WRITE, 0x71ce, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_SIGCTL", _IOC_WRITE, 0x71e9, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_TESTRAM", _IOC_NONE, 0x71c6, 0x00 },
+{ "linux/ixjuser.h", "IXJCTL_TONE_CADENCE", _IOC_WRITE, 0x71ca, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_VERSION", _IOC_READ, 0x71da, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_VMWI", _IOC_READ, 0x71d8, 0x04 },
+{ "linux/ixjuser.h", "IXJCTL_WRITE_WAIT", _IOC_READ, 0x71e5, 0x04 },
+{ "linux/joystick.h", "JSIOCGAXES", _IOC_READ, 0x6a11, 0x01 },
+{ "linux/joystick.h", "JSIOCGAXMAP", _IOC_READ, 0x6a32, 0x40 },
+{ "linux/joystick.h", "JSIOCGBTNMAP", _IOC_READ, 0x6a34, 0x400 },
+{ "linux/joystick.h", "JSIOCGBUTTONS", _IOC_READ, 0x6a12, 0x01 },
+{ "linux/joystick.h", "JSIOCGCORR", _IOC_READ, 0x6a22, 0x24 },
+{ "linux/joystick.h", "JSIOCGVERSION", _IOC_READ, 0x6a01, 0x04 },
+{ "linux/joystick.h", "JSIOCSAXMAP", _IOC_WRITE, 0x6a31, 0x40 },
+{ "linux/joystick.h", "JSIOCSBTNMAP", _IOC_WRITE, 0x6a33, 0x400 },
+{ "linux/joystick.h", "JSIOCSCORR", _IOC_WRITE, 0x6a21, 0x24 },
+{ "linux/kd.h", "GIO_CMAP", 0, 0x4B70, 0 },
+{ "linux/kd.h", "GIO_FONT", 0, 0x4B60, 0 },
+{ "linux/kd.h", "GIO_FONTX", 0, 0x4B6B, 0 },
+{ "linux/kd.h", "GIO_SCRNMAP", 0, 0x4B40, 0 },
+{ "linux/kd.h", "GIO_UNIMAP", 0, 0x4B66, 0 },
+{ "linux/kd.h", "GIO_UNISCRNMAP", 0, 0x4B69, 0 },
+{ "linux/kd.h", "KDADDIO", 0, 0x4B34, 0 },
+{ "linux/kd.h", "KDDELIO", 0, 0x4B35, 0 },
+{ "linux/kd.h", "KDDISABIO", 0, 0x4B37, 0 },
+{ "linux/kd.h", "KDENABIO", 0, 0x4B36, 0 },
+{ "linux/kd.h", "KDFONTOP", 0, 0x4B72, 0 },
+{ "linux/kd.h", "KDGETKEYCODE", 0, 0x4B4C, 0 },
+{ "linux/kd.h", "KDGETLED", 0, 0x4B31, 0 },
+{ "linux/kd.h", "KDGETMODE", 0, 0x4B3B, 0 },
+{ "linux/kd.h", "KDGKBDIACR", 0, 0x4B4A, 0 },
+{ "linux/kd.h", "KDGKBDIACRUC", 0, 0x4BFA, 0 },
+{ "linux/kd.h", "KDGKBENT", 0, 0x4B46, 0 },
+{ "linux/kd.h", "KDGKBLED", 0, 0x4B64, 0 },
+{ "linux/kd.h", "KDGKBMETA", 0, 0x4B62, 0 },
+{ "linux/kd.h", "KDGKBMODE", 0, 0x4B44, 0 },
+{ "linux/kd.h", "KDGKBSENT", 0, 0x4B48, 0 },
+{ "linux/kd.h", "KDGKBTYPE", 0, 0x4B33, 0 },
+{ "linux/kd.h", "KDKBDREP", 0, 0x4B52, 0 },
+{ "linux/kd.h", "KDMAPDISP", 0, 0x4B3C, 0 },
+{ "linux/kd.h", "KDMKTONE", 0, 0x4B30, 0 },
+{ "linux/kd.h", "KDSETKEYCODE", 0, 0x4B4D, 0 },
+{ "linux/kd.h", "KDSETLED", 0, 0x4B32, 0 },
+{ "linux/kd.h", "KDSETMODE", 0, 0x4B3A, 0 },
+{ "linux/kd.h", "KDSIGACCEPT", 0, 0x4B4E, 0 },
+{ "linux/kd.h", "KDSKBDIACR", 0, 0x4B4B, 0 },
+{ "linux/kd.h", "KDSKBDIACRUC", 0, 0x4BFB, 0 },
+{ "linux/kd.h", "KDSKBENT", 0, 0x4B47, 0 },
+{ "linux/kd.h", "KDSKBLED", 0, 0x4B65, 0 },
+{ "linux/kd.h", "KDSKBMETA", 0, 0x4B63, 0 },
+{ "linux/kd.h", "KDSKBMODE", 0, 0x4B45, 0 },
+{ "linux/kd.h", "KDSKBSENT", 0, 0x4B49, 0 },
+{ "linux/kd.h", "KDUNMAPDISP", 0, 0x4B3D, 0 },
+{ "linux/kd.h", "KIOCSOUND", 0, 0x4B2F, 0 },
+{ "linux/kd.h", "PIO_CMAP", 0, 0x4B71, 0 },
+{ "linux/kd.h", "PIO_FONT", 0, 0x4B61, 0 },
+{ "linux/kd.h", "PIO_FONTRESET", 0, 0x4B6D, 0 },
+{ "linux/kd.h", "PIO_FONTX", 0, 0x4B6C, 0 },
+{ "linux/kd.h", "PIO_SCRNMAP", 0, 0x4B41, 0 },
+{ "linux/kd.h", "PIO_UNIMAP", 0, 0x4B67, 0 },
+{ "linux/kd.h", "PIO_UNIMAPCLR", 0, 0x4B68, 0 },
+{ "linux/kd.h", "PIO_UNISCRNMAP", 0, 0x4B6A, 0 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b02, 0x58 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_DESTROY_QUEUE", _IOC_READ|_IOC_WRITE, 0x4b03, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_CLOCK_COUNTERS", _IOC_READ|_IOC_WRITE, 0x4b05, 0x28 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_PROCESS_APERTURES", _IOC_READ, 0x4b06, 0x190 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_GET_VERSION", _IOC_READ, 0x4b01, 0x08 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_SET_MEMORY_POLICY", _IOC_WRITE, 0x4b04, 0x20 },
+{ "linux/kfd_ioctl.h", "AMDKFD_IOC_UPDATE_QUEUE", _IOC_WRITE, 0x4b07, 0x18 },
+{ "linux/kvm.h", "KVM_ALLOCATE_RMA", _IOC_READ, 0xaea9, 0x08 },
+{ "linux/kvm.h", "KVM_ARM_PREFERRED_TARGET", _IOC_READ, 0xaeaf, 0x20 },
+{ "linux/kvm.h", "KVM_ARM_SET_DEVICE_ADDR", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_ARM_VCPU_INIT", _IOC_WRITE, 0xaeae, 0x20 },
+{ "linux/kvm.h", "KVM_ASSIGN_DEV_IRQ", _IOC_WRITE, 0xae70, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_PCI_DEVICE", _IOC_READ, 0xae69, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_INTX_MASK", _IOC_WRITE, 0xaea4, 0x40 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_ENTRY", _IOC_WRITE, 0xae74, 0x10 },
+{ "linux/kvm.h", "KVM_ASSIGN_SET_MSIX_NR", _IOC_WRITE, 0xae73, 0x08 },
+{ "linux/kvm.h", "KVM_CHECK_EXTENSION", _IOC_NONE, 0xae03, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_DEVICE", _IOC_READ|_IOC_WRITE, 0xaee0, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_IRQCHIP", _IOC_NONE, 0xae60, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT", _IOC_NONE, 0xae64, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_PIT2", _IOC_WRITE, 0xae77, 0x40 },
+{ "linux/kvm.h", "KVM_CREATE_SPAPR_TCE", _IOC_WRITE, 0xaea8, 0x0c },
+{ "linux/kvm.h", "KVM_CREATE_VCPU", _IOC_NONE, 0xae41, 0x00 },
+{ "linux/kvm.h", "KVM_CREATE_VM", _IOC_NONE, 0xae01, 0x00 },
+{ "linux/kvm.h", "KVM_DEASSIGN_DEV_IRQ", _IOC_WRITE, 0xae75, 0x40 },
+{ "linux/kvm.h", "KVM_DEASSIGN_PCI_DEVICE", _IOC_WRITE, 0xae72, 0x40 },
+{ "linux/kvm.h", "KVM_DIRTY_TLB", _IOC_WRITE, 0xaeaa, 0x10 },
+{ "linux/kvm.h", "KVM_ENABLE_CAP", _IOC_WRITE, 0xaea3, 0x68 },
+{ "linux/kvm.h", "KVM_GET_API_VERSION", _IOC_NONE, 0xae00, 0x00 },
+{ "linux/kvm.h", "KVM_GET_CLOCK", _IOC_READ, 0xae7c, 0x30 },
+{ "linux/kvm.h", "KVM_GET_CPUID2", _IOC_READ|_IOC_WRITE, 0xae91, 0x08 },
+{ "linux/kvm.h", "KVM_GET_DEBUGREGS", _IOC_READ, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_GET_DEVICE_ATTR", _IOC_WRITE, 0xaee2, 0x18 },
+{ "linux/kvm.h", "KVM_GET_DIRTY_LOG", _IOC_WRITE, 0xae42, 0x10 },
+{ "linux/kvm.h", "KVM_GET_EMULATED_CPUID", _IOC_READ|_IOC_WRITE, 0xae09, 0x08 },
+{ "linux/kvm.h", "KVM_GET_FPU", _IOC_READ, 0xae8c, 0x1a0 },
+{ "linux/kvm.h", "KVM_GET_IRQCHIP", _IOC_READ|_IOC_WRITE, 0xae62, 0x208 },
+{ "linux/kvm.h", "KVM_GET_LAPIC", _IOC_READ, 0xae8e, 0x400 },
+{ "linux/kvm.h", "KVM_GET_MP_STATE", _IOC_READ, 0xae98, 0x04 },
+{ "linux/kvm.h", "KVM_GET_MSRS", _IOC_READ|_IOC_WRITE, 0xae88, 0x08 },
+{ "linux/kvm.h", "KVM_GET_MSR_INDEX_LIST", _IOC_READ|_IOC_WRITE, 0xae02, 0x04 },
+{ "linux/kvm.h", "KVM_GET_NR_MMU_PAGES", _IOC_NONE, 0xae45, 0x00 },
+{ "linux/kvm.h", "KVM_GET_ONE_REG", _IOC_WRITE, 0xaeab, 0x10 },
+{ "linux/kvm.h", "KVM_GET_PIT", _IOC_READ|_IOC_WRITE, 0xae65, 0x48 },
+{ "linux/kvm.h", "KVM_GET_PIT2", _IOC_READ, 0xae9f, 0x70 },
+{ "linux/kvm.h", "KVM_GET_REGS", _IOC_READ, 0xae81, 0x90 },
+{ "linux/kvm.h", "KVM_GET_REG_LIST", _IOC_READ|_IOC_WRITE, 0xaeb0, 0x08 },
+{ "linux/kvm.h", "KVM_GET_SREGS", _IOC_READ, 0xae83, 0x138 },
+{ "linux/kvm.h", "KVM_GET_SUPPORTED_CPUID", _IOC_READ|_IOC_WRITE, 0xae05, 0x08 },
+{ "linux/kvm.h", "KVM_GET_TSC_KHZ", _IOC_NONE, 0xaea3, 0x00 },
+{ "linux/kvm.h", "KVM_GET_VCPU_EVENTS", _IOC_READ, 0xae9f, 0x40 },
+{ "linux/kvm.h", "KVM_GET_VCPU_MMAP_SIZE", _IOC_NONE, 0xae04, 0x00 },
+{ "linux/kvm.h", "KVM_GET_XCRS", _IOC_READ, 0xaea6, 0x188 },
+{ "linux/kvm.h", "KVM_GET_XSAVE", _IOC_READ, 0xaea4, 0x1000 },
+{ "linux/kvm.h", "KVM_HAS_DEVICE_ATTR", _IOC_WRITE, 0xaee3, 0x18 },
+{ "linux/kvm.h", "KVM_INTERRUPT", _IOC_WRITE, 0xae86, 0x04 },
+{ "linux/kvm.h", "KVM_IOEVENTFD", _IOC_WRITE, 0xae79, 0x40 },
+{ "linux/kvm.h", "KVM_IRQFD", _IOC_WRITE, 0xae76, 0x20 },
+{ "linux/kvm.h", "KVM_IRQ_LINE", _IOC_WRITE, 0xae61, 0x08 },
+{ "linux/kvm.h", "KVM_IRQ_LINE_STATUS", _IOC_READ|_IOC_WRITE, 0xae67, 0x08 },
+{ "linux/kvm.h", "KVM_KVMCLOCK_CTRL", _IOC_NONE, 0xaead, 0x00 },
+{ "linux/kvm.h", "KVM_NMI", _IOC_NONE, 0xae9a, 0x00 },
+{ "linux/kvm.h", "KVM_PPC_ALLOCATE_HTAB", _IOC_READ|_IOC_WRITE, 0xaea7, 0x04 },
+{ "linux/kvm.h", "KVM_PPC_GET_HTAB_FD", _IOC_WRITE, 0xaeaa, 0x20 },
+{ "linux/kvm.h", "KVM_PPC_GET_PVINFO", _IOC_WRITE, 0xaea1, 0x80 },
+{ "linux/kvm.h", "KVM_PPC_GET_SMMU_INFO", _IOC_READ, 0xaea6, 0x250 },
+{ "linux/kvm.h", "KVM_PPC_RTAS_DEFINE_TOKEN", _IOC_WRITE, 0xaeac, 0x80 },
+{ "linux/kvm.h", "KVM_REGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae67, 0x10 },
+{ "linux/kvm.h", "KVM_REINJECT_CONTROL", _IOC_NONE, 0xae71, 0x00 },
+{ "linux/kvm.h", "KVM_RUN", _IOC_NONE, 0xae80, 0x00 },
+{ "linux/kvm.h", "KVM_S390_ENABLE_SIE", _IOC_NONE, 0xae06, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INITIAL_RESET", _IOC_NONE, 0xae97, 0x00 },
+{ "linux/kvm.h", "KVM_S390_INTERRUPT", _IOC_WRITE, 0xae94, 0x10 },
+{ "linux/kvm.h", "KVM_S390_SET_INITIAL_PSW", _IOC_WRITE, 0xae96, 0x10 },
+{ "linux/kvm.h", "KVM_S390_STORE_STATUS", _IOC_WRITE, 0xae95, 0x04 },
+{ "linux/kvm.h", "KVM_S390_UCAS_MAP", _IOC_WRITE, 0xae50, 0x18 },
+{ "linux/kvm.h", "KVM_S390_UCAS_UNMAP", _IOC_WRITE, 0xae51, 0x18 },
+{ "linux/kvm.h", "KVM_S390_VCPU_FAULT", _IOC_WRITE, 0xae52, 0x04 },
+{ "linux/kvm.h", "KVM_SET_BOOT_CPU_ID", _IOC_NONE, 0xae78, 0x00 },
+{ "linux/kvm.h", "KVM_SET_CLOCK", _IOC_WRITE, 0xae7b, 0x30 },
+{ "linux/kvm.h", "KVM_SET_CPUID", _IOC_WRITE, 0xae8a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_CPUID2", _IOC_WRITE, 0xae90, 0x08 },
+{ "linux/kvm.h", "KVM_SET_DEBUGREGS", _IOC_WRITE, 0xaea2, 0x80 },
+{ "linux/kvm.h", "KVM_SET_DEVICE_ATTR", _IOC_WRITE, 0xaee1, 0x18 },
+{ "linux/kvm.h", "KVM_SET_FPU", _IOC_WRITE, 0xae8d, 0x1a0 },
+{ "linux/kvm.h", "KVM_SET_GSI_ROUTING", _IOC_WRITE, 0xae6a, 0x08 },
+{ "linux/kvm.h", "KVM_SET_GUEST_DEBUG", _IOC_WRITE, 0xae9b, 0x48 },
+{ "linux/kvm.h", "KVM_SET_IDENTITY_MAP_ADDR", _IOC_WRITE, 0xae48, 0x08 },
+{ "linux/kvm.h", "KVM_SET_IRQCHIP", _IOC_READ, 0xae63, 0x208 },
+{ "linux/kvm.h", "KVM_SET_LAPIC", _IOC_WRITE, 0xae8f, 0x400 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_ALIAS", _IOC_WRITE, 0xae43, 0x20 },
+{ "linux/kvm.h", "KVM_SET_MEMORY_REGION", _IOC_WRITE, 0xae40, 0x18 },
+{ "linux/kvm.h", "KVM_SET_MP_STATE", _IOC_WRITE, 0xae99, 0x04 },
+{ "linux/kvm.h", "KVM_SET_MSRS", _IOC_WRITE, 0xae89, 0x08 },
+{ "linux/kvm.h", "KVM_SET_NR_MMU_PAGES", _IOC_NONE, 0xae44, 0x00 },
+{ "linux/kvm.h", "KVM_SET_ONE_REG", _IOC_WRITE, 0xaeac, 0x10 },
+{ "linux/kvm.h", "KVM_SET_PIT", _IOC_READ, 0xae66, 0x48 },
+{ "linux/kvm.h", "KVM_SET_PIT2", _IOC_WRITE, 0xaea0, 0x70 },
+{ "linux/kvm.h", "KVM_SET_REGS", _IOC_WRITE, 0xae82, 0x90 },
+{ "linux/kvm.h", "KVM_SET_SIGNAL_MASK", _IOC_WRITE, 0xae8b, 0x04 },
+{ "linux/kvm.h", "KVM_SET_SREGS", _IOC_WRITE, 0xae84, 0x138 },
+{ "linux/kvm.h", "KVM_SET_TSC_KHZ", _IOC_NONE, 0xaea2, 0x00 },
+{ "linux/kvm.h", "KVM_SET_TSS_ADDR", _IOC_NONE, 0xae47, 0x00 },
+{ "linux/kvm.h", "KVM_SET_USER_MEMORY_REGION", _IOC_WRITE, 0xae46, 0x20 },
+{ "linux/kvm.h", "KVM_SET_VAPIC_ADDR", _IOC_WRITE, 0xae93, 0x08 },
+{ "linux/kvm.h", "KVM_SET_VCPU_EVENTS", _IOC_WRITE, 0xaea0, 0x40 },
+{ "linux/kvm.h", "KVM_SET_XCRS", _IOC_WRITE, 0xaea7, 0x188 },
+{ "linux/kvm.h", "KVM_SET_XSAVE", _IOC_WRITE, 0xaea5, 0x1000 },
+{ "linux/kvm.h", "KVM_SIGNAL_MSI", _IOC_WRITE, 0xaea5, 0x20 },
+{ "linux/kvm.h", "KVM_TPR_ACCESS_REPORTING", _IOC_READ|_IOC_WRITE, 0xae92, 0x28 },
+{ "linux/kvm.h", "KVM_TRANSLATE", _IOC_READ|_IOC_WRITE, 0xae85, 0x18 },
+{ "linux/kvm.h", "KVM_UNREGISTER_COALESCED_MMIO", _IOC_WRITE, 0xae68, 0x10 },
+{ "linux/kvm.h", "KVM_X86_GET_MCE_CAP_SUPPORTED", _IOC_READ, 0xae9d, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SETUP_MCE", _IOC_WRITE, 0xae9c, 0x08 },
+{ "linux/kvm.h", "KVM_X86_SET_MCE", _IOC_WRITE, 0xae9e, 0x40 },
+{ "linux/kvm.h", "KVM_XEN_HVM_CONFIG", _IOC_WRITE, 0xae7a, 0x38 },
+{ "linux/loop.h", "LOOP_CHANGE_FD", 0, 0x4C06, 0 },
+{ "linux/loop.h", "LOOP_CLR_FD", 0, 0x4C01, 0 },
+{ "linux/loop.h", "LOOP_CTL_ADD", 0, 0x4C80, 0 },
+{ "linux/loop.h", "LOOP_CTL_GET_FREE", 0, 0x4C82, 0 },
+{ "linux/loop.h", "LOOP_CTL_REMOVE", 0, 0x4C81, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS", 0, 0x4C03, 0 },
+{ "linux/loop.h", "LOOP_GET_STATUS64", 0, 0x4C05, 0 },
+{ "linux/loop.h", "LOOP_SET_CAPACITY", 0, 0x4C07, 0 },
+{ "linux/loop.h", "LOOP_SET_FD", 0, 0x4C00, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS", 0, 0x4C02, 0 },
+{ "linux/loop.h", "LOOP_SET_STATUS64", 0, 0x4C04, 0 },
+{ "linux/mISDNif.h", "IMADDTIMER", _IOC_READ, 0x4940, 0x04 },
+{ "linux/mISDNif.h", "IMCLEAR_L2", _IOC_READ, 0x4946, 0x04 },
+{ "linux/mISDNif.h", "IMCTRLREQ", _IOC_READ, 0x4945, 0x04 },
+{ "linux/mISDNif.h", "IMDELTIMER", _IOC_READ, 0x4941, 0x04 },
+{ "linux/mISDNif.h", "IMGETCOUNT", _IOC_READ, 0x4943, 0x04 },
+{ "linux/mISDNif.h", "IMGETDEVINFO", _IOC_READ, 0x4944, 0x04 },
+{ "linux/mISDNif.h", "IMGETVERSION", _IOC_READ, 0x4942, 0x04 },
+{ "linux/mISDNif.h", "IMHOLD_L1", _IOC_READ, 0x4948, 0x04 },
+{ "linux/mISDNif.h", "IMSETDEVNAME", _IOC_READ, 0x4947, 0x18 },
+{ "linux/matroxfb.h", "MATROXFB_GET_ALL_OUTPUTS", _IOC_READ, 0x6efb, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_AVAILABLE_OUTPUTS", _IOC_READ, 0x6ef9, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_CONNECTION", _IOC_READ, 0x6ef8, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_GET_OUTPUT_MODE", _IOC_READ|_IOC_WRITE, 0x6efa, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_CONNECTION", _IOC_WRITE, 0x6ef8, 0x04 },
+{ "linux/matroxfb.h", "MATROXFB_SET_OUTPUT_MODE", _IOC_WRITE, 0x6efa, 0x04 },
+{ "linux/media.h", "MEDIA_IOC_DEVICE_INFO", _IOC_READ|_IOC_WRITE, 0x7c00, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_ENTITIES", _IOC_READ|_IOC_WRITE, 0x7c01, 0x100 },
+{ "linux/media.h", "MEDIA_IOC_ENUM_LINKS", _IOC_READ|_IOC_WRITE, 0x7c02, 0x1c },
+{ "linux/media.h", "MEDIA_IOC_SETUP_LINK", _IOC_READ|_IOC_WRITE, 0x7c03, 0x34 },
+{ "linux/mei.h", "IOCTL_MEI_CONNECT_CLIENT", _IOC_READ|_IOC_WRITE, 0x4801, 0x10 },
+{ "linux/meye.h", "MEYEIOC_G_PARAMS", _IOC_READ, 0x76c0, 0x06 },
+{ "linux/meye.h", "MEYEIOC_QBUF_CAPT", _IOC_WRITE, 0x76c2, 0x04 },
+{ "linux/meye.h", "MEYEIOC_STILLCAPT", _IOC_NONE, 0x76c4, 0x00 },
+{ "linux/meye.h", "MEYEIOC_STILLJCAPT", _IOC_READ, 0x76c5, 0x04 },
+{ "linux/meye.h", "MEYEIOC_SYNC", _IOC_READ|_IOC_WRITE, 0x76c3, 0x04 },
+{ "linux/meye.h", "MEYEIOC_S_PARAMS", _IOC_WRITE, 0x76c1, 0x06 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_ADD_DEVICE", _IOC_READ|_IOC_WRITE, 0x7301, 0x04 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_CONFIG_CHANGE", _IOC_READ|_IOC_WRITE, 0x7305, 0x04 },
+{ "linux/mic_ioctl.h", "MIC_VIRTIO_COPY_DESC", _IOC_READ|_IOC_WRITE, 0x7302, 0x04 },
+{ "linux/mmc/ioctl.h", "MMC_IOC_CMD", _IOC_READ|_IOC_WRITE, 0xb300, 0x48 },
+{ "linux/mmtimer.h", "MMTIMER_GETBITS", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETCOUNTER", _IOC_READ, 0x6d09, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_GETFREQ", _IOC_READ, 0x6d02, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_GETOFFSET", _IOC_NONE, 0x6d00, 0x00 },
+{ "linux/mmtimer.h", "MMTIMER_GETRES", _IOC_READ, 0x6d01, 0x04 },
+{ "linux/mmtimer.h", "MMTIMER_MMAPAVAIL", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_ATTRIBUTES", _IOC_READ, 0x7210, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_GET_VOLUME_ID", _IOC_READ, 0x7213, 0x04 },
+{ "linux/msdos_fs.h", "FAT_IOCTL_SET_ATTRIBUTES", _IOC_WRITE, 0x7211, 0x04 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_BOTH", _IOC_READ, 0x7201, 0x230 },
+{ "linux/msdos_fs.h", "VFAT_IOCTL_READDIR_SHORT", _IOC_READ, 0x7202, 0x230 },
+{ "linux/msm_mdp.h", "MSMFB_BLIT", _IOC_WRITE, 0x6d02, 0x04 },
+{ "linux/msm_mdp.h", "MSMFB_GRP_DISP", _IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/mtio.h", "MTIOCGET", _IOC_READ, 0x6d02, 0x1c },
+{ "linux/mtio.h", "MTIOCPOS", _IOC_READ, 0x6d03, 0x04 },
+{ "linux/mtio.h", "MTIOCTOP", _IOC_WRITE, 0x6d01, 0x08 },
+{ "linux/nbd.h", "NBD_CLEAR_QUE", _IOC_NONE, 0xab05, 0x00 },
+{ "linux/nbd.h", "NBD_CLEAR_SOCK", _IOC_NONE, 0xab04, 0x00 },
+{ "linux/nbd.h", "NBD_DISCONNECT", _IOC_NONE, 0xab08, 0x00 },
+{ "linux/nbd.h", "NBD_DO_IT", _IOC_NONE, 0xab03, 0x00 },
+{ "linux/nbd.h", "NBD_PRINT_DEBUG", _IOC_NONE, 0xab06, 0x00 },
+{ "linux/nbd.h", "NBD_SET_BLKSIZE", _IOC_NONE, 0xab01, 0x00 },
+{ "linux/nbd.h", "NBD_SET_FLAGS", _IOC_NONE, 0xab0a, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE", _IOC_NONE, 0xab02, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SIZE_BLOCKS", _IOC_NONE, 0xab07, 0x00 },
+{ "linux/nbd.h", "NBD_SET_SOCK", _IOC_NONE, 0xab00, 0x00 },
+{ "linux/nbd.h", "NBD_SET_TIMEOUT", _IOC_NONE, 0xab09, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_CONN_LOGGED_IN", _IOC_NONE, 0x6e03, 0x00 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETCHARSETS", _IOC_READ|_IOC_WRITE, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_GETDENTRYTTL", _IOC_WRITE, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID", _IOC_WRITE, 0x6e02, 0x02 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETMOUNTUID2", _IOC_WRITE, 0x6e02, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETOBJECTNAME", _IOC_READ|_IOC_WRITE, 0x6e09, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_GETPRIVATEDATA", _IOC_READ|_IOC_WRITE, 0x6e0a, 0x08 },
+{ "linux/ncp_fs.h", "NCP_IOC_GETROOT", _IOC_WRITE, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO", _IOC_READ|_IOC_WRITE, 0x6e04, 0x28 },
+{ "linux/ncp_fs.h", "NCP_IOC_GET_FS_INFO_V2", _IOC_READ|_IOC_WRITE, 0x6e04, 0x24 },
+{ "linux/ncp_fs.h", "NCP_IOC_LOCKUNLOCK", _IOC_READ, 0x6e07, 0x14 },
+{ "linux/ncp_fs.h", "NCP_IOC_NCPREQUEST", _IOC_READ, 0x6e01, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SETCHARSETS", _IOC_READ, 0x6e0b, 0x2a },
+{ "linux/ncp_fs.h", "NCP_IOC_SETDENTRYTTL", _IOC_READ, 0x6e0c, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETOBJECTNAME", _IOC_READ, 0x6e09, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SETPRIVATEDATA", _IOC_READ, 0x6e0a, 0x08 },
+{ "linux/ncp_fs.h", "NCP_IOC_SETROOT", _IOC_READ, 0x6e08, 0x0c },
+{ "linux/ncp_fs.h", "NCP_IOC_SET_SIGN_WANTED", _IOC_WRITE, 0x6e06, 0x04 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_INIT", _IOC_READ, 0x6e05, 0x18 },
+{ "linux/ncp_fs.h", "NCP_IOC_SIGN_WANTED", _IOC_READ, 0x6e06, 0x04 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CHANGE_CPMODE", _IOC_WRITE, 0x6e80, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_CLEAN_SEGMENTS", _IOC_WRITE, 0x6e88, 0x78 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_DELETE_CHECKPOINT", _IOC_WRITE, 0x6e81, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_BDESCS", _IOC_READ|_IOC_WRITE, 0x6e87, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPINFO", _IOC_READ, 0x6e82, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_CPSTAT", _IOC_READ, 0x6e83, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUINFO", _IOC_READ, 0x6e84, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_SUSTAT", _IOC_READ, 0x6e85, 0x30 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_GET_VINFO", _IOC_READ|_IOC_WRITE, 0x6e86, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_RESIZE", _IOC_WRITE, 0x6e8b, 0x08 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_ALLOC_RANGE", _IOC_WRITE, 0x6e8c, 0x10 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SET_SUINFO", _IOC_WRITE, 0x6e8d, 0x18 },
+{ "linux/nilfs2_fs.h", "NILFS_IOCTL_SYNC", _IOC_READ, 0x6e8a, 0x08 },
+{ "linux/nvme.h", "NVME_IOCTL_ADMIN_CMD", _IOC_READ|_IOC_WRITE, 0x4e41, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_ID", _IOC_NONE, 0x4e40, 0x00 },
+{ "linux/nvme.h", "NVME_IOCTL_IO_CMD", _IOC_READ|_IOC_WRITE, 0x4e43, 0x48 },
+{ "linux/nvme.h", "NVME_IOCTL_SUBMIT_IO", _IOC_WRITE, 0x4e42, 0x30 },
+{ "linux/nvram.h", "NVRAM_INIT", _IOC_NONE, 0x7040, 0x00 },
+{ "linux/nvram.h", "NVRAM_SETCKS", _IOC_NONE, 0x7041, 0x00 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AEWB_CFG", _IOC_READ|_IOC_WRITE, 0x56c3, 0x20 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_AF_CFG", _IOC_READ|_IOC_WRITE, 0x56c5, 0x4c },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_CCDC_CFG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x20 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_HIST_CFG", _IOC_READ|_IOC_WRITE, 0x56c4, 0x30 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_PRV_CFG", _IOC_READ|_IOC_WRITE, 0x56c2, 0x3c },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_EN", _IOC_READ|_IOC_WRITE, 0x56c7, 0x04 },
+{ "linux/omap3isp.h", "VIDIOC_OMAP3ISP_STAT_REQ", _IOC_READ|_IOC_WRITE, 0x56c6, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_CTRL_TEST", _IOC_WRITE, 0x4f2e, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_CAPS", _IOC_READ, 0x4f2a, 0x0c },
+{ "linux/omapfb.h", "OMAPFB_GET_COLOR_KEY", _IOC_WRITE, 0x4f33, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_GET_DISPLAY_INFO", _IOC_READ, 0x4f3f, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_GET_OVERLAY_COLORMODE", _IOC_READ, 0x4f3b, 0x3c },
+{ "linux/omapfb.h", "OMAPFB_GET_UPDATE_MODE", _IOC_WRITE, 0x4f2b, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_GET_VRAM_INFO", _IOC_READ, 0x4f3d, 0x20 },
+{ "linux/omapfb.h", "OMAPFB_LCD_TEST", _IOC_WRITE, 0x4f2d, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_MEMORY_READ", _IOC_READ, 0x4f3a, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_MIRROR", _IOC_WRITE, 0x4f1f, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_MEM", _IOC_WRITE, 0x4f38, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_QUERY_PLANE", _IOC_WRITE, 0x4f35, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_MEM", _IOC_WRITE, 0x4f37, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SETUP_PLANE", _IOC_WRITE, 0x4f34, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_SET_COLOR_KEY", _IOC_WRITE, 0x4f32, 0x10 },
+{ "linux/omapfb.h", "OMAPFB_SET_TEARSYNC", _IOC_WRITE, 0x4f3e, 0x08 },
+{ "linux/omapfb.h", "OMAPFB_SET_UPDATE_MODE", _IOC_WRITE, 0x4f28, 0x04 },
+{ "linux/omapfb.h", "OMAPFB_SYNC_GFX", _IOC_NONE, 0x4f25, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW", _IOC_WRITE, 0x4f36, 0x44 },
+{ "linux/omapfb.h", "OMAPFB_UPDATE_WINDOW_OLD", _IOC_WRITE, 0x4f2f, 0x14 },
+{ "linux/omapfb.h", "OMAPFB_VSYNC", _IOC_NONE, 0x4f26, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORGO", _IOC_NONE, 0x4f3c, 0x00 },
+{ "linux/omapfb.h", "OMAPFB_WAITFORVSYNC", _IOC_NONE, 0x4f39, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_DISABLE", _IOC_NONE, 0x2401, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ENABLE", _IOC_NONE, 0x2400, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_ID", _IOC_READ, 0x2407, 0x04 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_PERIOD", _IOC_WRITE, 0x2404, 0x08 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_REFRESH", _IOC_NONE, 0x2402, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_RESET", _IOC_NONE, 0x2403, 0x00 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_FILTER", _IOC_WRITE, 0x2406, 0x04 },
+{ "linux/perf_event.h", "PERF_EVENT_IOC_SET_OUTPUT", _IOC_NONE, 0x2405, 0x00 },
+{ "linux/phantom.h", "PHN_GETREG", _IOC_READ|_IOC_WRITE, 0x7005, 0x08 },
+{ "linux/phantom.h", "PHN_GETREGS", _IOC_READ|_IOC_WRITE, 0x7007, 0x28 },
+{ "linux/phantom.h", "PHN_GET_REG", _IOC_READ|_IOC_WRITE, 0x7000, 0x04 },
+{ "linux/phantom.h", "PHN_GET_REGS", _IOC_READ|_IOC_WRITE, 0x7002, 0x04 },
+{ "linux/phantom.h", "PHN_NOT_OH", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/phantom.h", "PHN_SETREG", _IOC_WRITE, 0x7006, 0x08 },
+{ "linux/phantom.h", "PHN_SETREGS", _IOC_WRITE, 0x7008, 0x28 },
+{ "linux/phantom.h", "PHN_SET_REG", _IOC_WRITE, 0x7001, 0x04 },
+{ "linux/phantom.h", "PHN_SET_REGS", _IOC_WRITE, 0x7003, 0x04 },
+{ "linux/pktcdvd.h", "PACKET_CTRL_CMD", _IOC_READ|_IOC_WRITE, 0x5801, 0x18 },
+{ "linux/pmu.h", "PMU_IOC_CAN_SLEEP", _IOC_READ, 0x4205, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GET_BACKLIGHT", _IOC_READ, 0x4201, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GET_MODEL", _IOC_READ, 0x4203, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_GRAB_BACKLIGHT", _IOC_READ, 0x4206, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_HAS_ADB", _IOC_READ, 0x4204, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_SET_BACKLIGHT", _IOC_WRITE, 0x4202, 0x04 },
+{ "linux/pmu.h", "PMU_IOC_SLEEP", _IOC_NONE, 0x4200, 0x00 },
+{ "linux/ppdev.h", "PPCLAIM", _IOC_NONE, 0x708b, 0x00 },
+{ "linux/ppdev.h", "PPCLRIRQ", _IOC_READ, 0x7093, 0x04 },
+{ "linux/ppdev.h", "PPDATADIR", _IOC_WRITE, 0x7090, 0x04 },
+{ "linux/ppdev.h", "PPEXCL", _IOC_NONE, 0x708f, 0x00 },
+{ "linux/ppdev.h", "PPFCONTROL", _IOC_WRITE, 0x708e, 0x02 },
+{ "linux/ppdev.h", "PPGETFLAGS", _IOC_READ, 0x709a, 0x04 },
+{ "linux/ppdev.h", "PPGETMODE", _IOC_READ, 0x7098, 0x04 },
+{ "linux/ppdev.h", "PPGETMODES", _IOC_READ, 0x7097, 0x04 },
+{ "linux/ppdev.h", "PPGETPHASE", _IOC_READ, 0x7099, 0x04 },
+{ "linux/ppdev.h", "PPGETTIME", _IOC_READ, 0x7095, 0x10 },
+{ "linux/ppdev.h", "PPNEGOT", _IOC_WRITE, 0x7091, 0x04 },
+{ "linux/ppdev.h", "PPRCONTROL", _IOC_READ, 0x7083, 0x01 },
+{ "linux/ppdev.h", "PPRDATA", _IOC_READ, 0x7085, 0x01 },
+{ "linux/ppdev.h", "PPRELEASE", _IOC_NONE, 0x708c, 0x00 },
+{ "linux/ppdev.h", "PPRSTATUS", _IOC_READ, 0x7081, 0x01 },
+{ "linux/ppdev.h", "PPSETFLAGS", _IOC_WRITE, 0x709b, 0x04 },
+{ "linux/ppdev.h", "PPSETMODE", _IOC_WRITE, 0x7080, 0x04 },
+{ "linux/ppdev.h", "PPSETPHASE", _IOC_WRITE, 0x7094, 0x04 },
+{ "linux/ppdev.h", "PPSETTIME", _IOC_WRITE, 0x7096, 0x10 },
+{ "linux/ppdev.h", "PPWCONTROL", _IOC_WRITE, 0x7084, 0x01 },
+{ "linux/ppdev.h", "PPWCTLONIRQ", _IOC_WRITE, 0x7092, 0x01 },
+{ "linux/ppdev.h", "PPWDATA", _IOC_WRITE, 0x7086, 0x01 },
+{ "linux/ppdev.h", "PPYIELD", _IOC_NONE, 0x708d, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTACH", _IOC_WRITE, 0x743d, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCATTCHAN", _IOC_WRITE, 0x7438, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCCONNECT", _IOC_WRITE, 0x743a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDETACH", _IOC_WRITE, 0x743c, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCDISCONN", _IOC_NONE, 0x7439, 0x00 },
+{ "linux/ppp-ioctl.h", "PPPIOCGASYNCMAP", _IOC_READ, 0x7458, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGCHAN", _IOC_READ, 0x7437, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGDEBUG", _IOC_READ, 0x7441, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGFLAGS", _IOC_READ, 0x745a, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGIDLE", _IOC_READ, 0x743f, 0x10 },
+{ "linux/ppp-ioctl.h", "PPPIOCGL2TPSTATS", _IOC_READ, 0x7436, 0x48 },
+{ "linux/ppp-ioctl.h", "PPPIOCGMRU", _IOC_READ, 0x7453, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGNPMODE", _IOC_READ|_IOC_WRITE, 0x744c, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCGRASYNCMAP", _IOC_READ, 0x7455, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGUNIT", _IOC_READ, 0x7456, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCGXASYNCMAP", _IOC_READ, 0x7450, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCNEWUNIT", _IOC_READ|_IOC_WRITE, 0x743e, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSACTIVE", _IOC_WRITE, 0x7446, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSASYNCMAP", _IOC_WRITE, 0x7457, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSCOMPRESS", _IOC_WRITE, 0x744d, 0x0c },
+{ "linux/ppp-ioctl.h", "PPPIOCSDEBUG", _IOC_WRITE, 0x7440, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSFLAGS", _IOC_WRITE, 0x7459, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMAXCID", _IOC_WRITE, 0x7451, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRRU", _IOC_WRITE, 0x743b, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSMRU", _IOC_WRITE, 0x7452, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSNPMODE", _IOC_WRITE, 0x744b, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSPASS", _IOC_WRITE, 0x7447, 0x08 },
+{ "linux/ppp-ioctl.h", "PPPIOCSRASYNCMAP", _IOC_WRITE, 0x7454, 0x04 },
+{ "linux/ppp-ioctl.h", "PPPIOCSXASYNCMAP", _IOC_WRITE, 0x744f, 0x20 },
+{ "linux/ppp-ioctl.h", "PPPIOCXFERUNIT", _IOC_NONE, 0x744e, 0x00 },
+{ "linux/pps.h", "PPS_FETCH", _IOC_READ|_IOC_WRITE, 0x70a4, 0x04 },
+{ "linux/pps.h", "PPS_GETCAP", _IOC_READ, 0x70a3, 0x04 },
+{ "linux/pps.h", "PPS_GETPARAMS", _IOC_READ, 0x70a1, 0x04 },
+{ "linux/pps.h", "PPS_KC_BIND", _IOC_WRITE, 0x70a5, 0x04 },
+{ "linux/pps.h", "PPS_SETPARAMS", _IOC_WRITE, 0x70a2, 0x04 },
+{ "linux/ptp_clock.h", "PTP_CLOCK_GETCAPS", _IOC_READ, 0x3d01, 0x50 },
+{ "linux/ptp_clock.h", "PTP_ENABLE_PPS", _IOC_WRITE, 0x3d04, 0x04 },
+{ "linux/ptp_clock.h", "PTP_EXTTS_REQUEST", _IOC_WRITE, 0x3d02, 0x10 },
+{ "linux/ptp_clock.h", "PTP_PEROUT_REQUEST", _IOC_WRITE, 0x3d03, 0x38 },
+{ "linux/ptp_clock.h", "PTP_PIN_GETFUNC", _IOC_READ|_IOC_WRITE, 0x3d06, 0x60 },
+{ "linux/ptp_clock.h", "PTP_PIN_SETFUNC", _IOC_WRITE, 0x3d07, 0x60 },
+{ "linux/ptp_clock.h", "PTP_SYS_OFFSET", _IOC_WRITE, 0x3d05, 0x340 },
+{ "linux/radeonfb.h", "FBIO_RADEON_GET_MIRROR", _IOC_READ, 0x4003, 0x04 },
+{ "linux/radeonfb.h", "FBIO_RADEON_SET_MIRROR", _IOC_WRITE, 0x4004, 0x04 },
+{ "linux/raid/md_u.h", "ADD_NEW_DISK", _IOC_WRITE, 0x0921, 0x14 },
+{ "linux/raid/md_u.h", "CLEAR_ARRAY", _IOC_NONE, 0x0920, 0x00 },
+{ "linux/raid/md_u.h", "GET_ARRAY_INFO", _IOC_READ, 0x0911, 0x48 },
+{ "linux/raid/md_u.h", "GET_BITMAP_FILE", _IOC_READ, 0x0915, 0x1000 },
+{ "linux/raid/md_u.h", "GET_DISK_INFO", _IOC_READ, 0x0912, 0x14 },
+{ "linux/raid/md_u.h", "HOT_ADD_DISK", _IOC_NONE, 0x0928, 0x00 },
+{ "linux/raid/md_u.h", "HOT_GENERATE_ERROR", _IOC_NONE, 0x092a, 0x00 },
+{ "linux/raid/md_u.h", "HOT_REMOVE_DISK", _IOC_NONE, 0x0922, 0x00 },
+{ "linux/raid/md_u.h", "PROTECT_ARRAY", _IOC_NONE, 0x0927, 0x00 },
+{ "linux/raid/md_u.h", "RAID_AUTORUN", _IOC_NONE, 0x0914, 0x00 },
+{ "linux/raid/md_u.h", "RAID_VERSION", _IOC_READ, 0x0910, 0x0c },
+{ "linux/raid/md_u.h", "RESTART_ARRAY_RW", _IOC_NONE, 0x0934, 0x00 },
+{ "linux/raid/md_u.h", "RUN_ARRAY", _IOC_WRITE, 0x0930, 0x0c },
+{ "linux/raid/md_u.h", "SET_ARRAY_INFO", _IOC_WRITE, 0x0923, 0x48 },
+{ "linux/raid/md_u.h", "SET_BITMAP_FILE", _IOC_WRITE, 0x092b, 0x04 },
+{ "linux/raid/md_u.h", "SET_DISK_FAULTY", _IOC_NONE, 0x0929, 0x00 },
+{ "linux/raid/md_u.h", "SET_DISK_INFO", _IOC_NONE, 0x0924, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY", _IOC_NONE, 0x0932, 0x00 },
+{ "linux/raid/md_u.h", "STOP_ARRAY_RO", _IOC_NONE, 0x0933, 0x00 },
+{ "linux/raid/md_u.h", "UNPROTECT_ARRAY", _IOC_NONE, 0x0926, 0x00 },
+{ "linux/raid/md_u.h", "WRITE_RAID_INFO", _IOC_NONE, 0x0925, 0x00 },
+{ "linux/random.h", "RNDADDENTROPY", _IOC_WRITE, 0x5203, 0x08 },
+{ "linux/random.h", "RNDADDTOENTCNT", _IOC_WRITE, 0x5201, 0x04 },
+{ "linux/random.h", "RNDCLEARPOOL", _IOC_NONE, 0x5206, 0x00 },
+{ "linux/random.h", "RNDGETENTCNT", _IOC_READ, 0x5200, 0x04 },
+{ "linux/random.h", "RNDGETPOOL", _IOC_READ, 0x5202, 0x08 },
+{ "linux/random.h", "RNDZAPENTCNT", _IOC_NONE, 0x5204, 0x00 },
+{ "linux/raw.h", "RAW_GETBIND", _IOC_NONE, 0xac01, 0x00 },
+{ "linux/raw.h", "RAW_SETBIND", _IOC_NONE, 0xac00, 0x00 },
+{ "linux/reiserfs_fs.h", "REISERFS_IOC_UNPACK", _IOC_WRITE, 0xcd01, 0x04 },
+{ "linux/rfkill.h", "RFKILL_IOCTL_NOINPUT", _IOC_NONE, 0x5201, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_OFF", _IOC_NONE, 0x7002, 0x00 },
+{ "linux/rtc.h", "RTC_AIE_ON", _IOC_NONE, 0x7001, 0x00 },
+{ "linux/rtc.h", "RTC_ALM_READ", _IOC_READ, 0x7008, 0x24 },
+{ "linux/rtc.h", "RTC_ALM_SET", _IOC_WRITE, 0x7007, 0x24 },
+{ "linux/rtc.h", "RTC_EPOCH_READ", _IOC_READ, 0x700d, 0x04 },
+{ "linux/rtc.h", "RTC_EPOCH_SET", _IOC_WRITE, 0x700e, 0x04 },
+{ "linux/rtc.h", "RTC_IRQP_READ", _IOC_READ, 0x700b, 0x04 },
+{ "linux/rtc.h", "RTC_IRQP_SET", _IOC_WRITE, 0x700c, 0x04 },
+{ "linux/rtc.h", "RTC_PIE_OFF", _IOC_NONE, 0x7006, 0x00 },
+{ "linux/rtc.h", "RTC_PIE_ON", _IOC_NONE, 0x7005, 0x00 },
+{ "linux/rtc.h", "RTC_PLL_GET", _IOC_READ, 0x7011, 0x1c },
+{ "linux/rtc.h", "RTC_PLL_SET", _IOC_WRITE, 0x7012, 0x1c },
+{ "linux/rtc.h", "RTC_RD_TIME", _IOC_READ, 0x7009, 0x24 },
+{ "linux/rtc.h", "RTC_SET_TIME", _IOC_WRITE, 0x700a, 0x24 },
+{ "linux/rtc.h", "RTC_UIE_OFF", _IOC_NONE, 0x7004, 0x00 },
+{ "linux/rtc.h", "RTC_UIE_ON", _IOC_NONE, 0x7003, 0x00 },
+{ "linux/rtc.h", "RTC_VL_CLR", _IOC_NONE, 0x7014, 0x00 },
+{ "linux/rtc.h", "RTC_VL_READ", _IOC_READ, 0x7013, 0x04 },
+{ "linux/rtc.h", "RTC_WIE_OFF", _IOC_NONE, 0x7010, 0x00 },
+{ "linux/rtc.h", "RTC_WIE_ON", _IOC_NONE, 0x700f, 0x00 },
+{ "linux/rtc.h", "RTC_WKALM_RD", _IOC_READ, 0x7010, 0x28 },
+{ "linux/rtc.h", "RTC_WKALM_SET", _IOC_WRITE, 0x700f, 0x28 },
+{ "linux/serio.h", "SPIOCSTYPE", _IOC_WRITE, 0x7101, 0x04 },
+{ "linux/sockios.h", "SIOCADDDLCI", 0, 0x8980, 0 },
+{ "linux/sockios.h", "SIOCADDMULTI", 0, 0x8931, 0 },
+{ "linux/sockios.h", "SIOCADDRT", 0, 0x890B, 0 },
+{ "linux/sockios.h", "SIOCBONDCHANGEACTIVE", 0, 0x8995, 0 },
+{ "linux/sockios.h", "SIOCBONDENSLAVE", 0, 0x8990, 0 },
+{ "linux/sockios.h", "SIOCBONDINFOQUERY", 0, 0x8994, 0 },
+{ "linux/sockios.h", "SIOCBONDRELEASE", 0, 0x8991, 0 },
+{ "linux/sockios.h", "SIOCBONDSETHWADDR", 0, 0x8992, 0 },
+{ "linux/sockios.h", "SIOCBONDSLAVEINFOQUERY", 0, 0x8993, 0 },
+{ "linux/sockios.h", "SIOCBRADDBR", 0, 0x89a0, 0 },
+{ "linux/sockios.h", "SIOCBRADDIF", 0, 0x89a2, 0 },
+{ "linux/sockios.h", "SIOCBRDELBR", 0, 0x89a1, 0 },
+{ "linux/sockios.h", "SIOCBRDELIF", 0, 0x89a3, 0 },
+{ "linux/sockios.h", "SIOCDARP", 0, 0x8953, 0 },
+{ "linux/sockios.h", "SIOCDELDLCI", 0, 0x8981, 0 },
+{ "linux/sockios.h", "SIOCDELMULTI", 0, 0x8932, 0 },
+{ "linux/sockios.h", "SIOCDELRT", 0, 0x890C, 0 },
+{ "linux/sockios.h", "SIOCDEVPRIVATE", 0, 0x89F0, 0 },
+{ "linux/sockios.h", "SIOCDIFADDR", 0, 0x8936, 0 },
+{ "linux/sockios.h", "SIOCDRARP", 0, 0x8960, 0 },
+{ "linux/sockios.h", "SIOCETHTOOL", 0, 0x8946, 0 },
+{ "linux/sockios.h", "SIOCGARP", 0, 0x8954, 0 },
+{ "linux/sockios.h", "SIOCGHWTSTAMP", 0, 0x89b1, 0 },
+{ "linux/sockios.h", "SIOCGIFADDR", 0, 0x8915, 0 },
+{ "linux/sockios.h", "SIOCGIFBR", 0, 0x8940, 0 },
+{ "linux/sockios.h", "SIOCGIFBRDADDR", 0, 0x8919, 0 },
+{ "linux/sockios.h", "SIOCGIFCONF", 0, 0x8912, 0 },
+{ "linux/sockios.h", "SIOCGIFCOUNT", 0, 0x8938, 0 },
+{ "linux/sockios.h", "SIOCGIFDSTADDR", 0, 0x8917, 0 },
+{ "linux/sockios.h", "SIOCGIFENCAP", 0, 0x8925, 0 },
+{ "linux/sockios.h", "SIOCGIFFLAGS", 0, 0x8913, 0 },
+{ "linux/sockios.h", "SIOCGIFHWADDR", 0, 0x8927, 0 },
+{ "linux/sockios.h", "SIOCGIFINDEX", 0, 0x8933, 0 },
+{ "linux/sockios.h", "SIOCGIFMAP", 0, 0x8970, 0 },
+{ "linux/sockios.h", "SIOCGIFMEM", 0, 0x891f, 0 },
+{ "linux/sockios.h", "SIOCGIFMETRIC", 0, 0x891d, 0 },
+{ "linux/sockios.h", "SIOCGIFMTU", 0, 0x8921, 0 },
+{ "linux/sockios.h", "SIOCGIFNAME", 0, 0x8910, 0 },
+{ "linux/sockios.h", "SIOCGIFNETMASK", 0, 0x891b, 0 },
+{ "linux/sockios.h", "SIOCGIFPFLAGS", 0, 0x8935, 0 },
+{ "linux/sockios.h", "SIOCGIFSLAVE", 0, 0x8929, 0 },
+{ "linux/sockios.h", "SIOCGIFTXQLEN", 0, 0x8942, 0 },
+{ "linux/sockios.h", "SIOCGIFVLAN", 0, 0x8982, 0 },
+{ "linux/sockios.h", "SIOCGMIIPHY", 0, 0x8947, 0 },
+{ "linux/sockios.h", "SIOCGMIIREG", 0, 0x8948, 0 },
+{ "linux/sockios.h", "SIOCGRARP", 0, 0x8961, 0 },
+{ "linux/sockios.h", "SIOCOUTQNSD", 0, 0x894B, 0 },
+{ "linux/sockios.h", "SIOCPROTOPRIVATE", 0, 0x89E0, 0 },
+{ "linux/sockios.h", "SIOCRTMSG", 0, 0x890D, 0 },
+{ "linux/sockios.h", "SIOCSARP", 0, 0x8955, 0 },
+{ "linux/sockios.h", "SIOCSHWTSTAMP", 0, 0x89b0, 0 },
+{ "linux/sockios.h", "SIOCSIFADDR", 0, 0x8916, 0 },
+{ "linux/sockios.h", "SIOCSIFBR", 0, 0x8941, 0 },
+{ "linux/sockios.h", "SIOCSIFBRDADDR", 0, 0x891a, 0 },
+{ "linux/sockios.h", "SIOCSIFDSTADDR", 0, 0x8918, 0 },
+{ "linux/sockios.h", "SIOCSIFENCAP", 0, 0x8926, 0 },
+{ "linux/sockios.h", "SIOCSIFFLAGS", 0, 0x8914, 0 },
+{ "linux/sockios.h", "SIOCSIFHWADDR", 0, 0x8924, 0 },
+{ "linux/sockios.h", "SIOCSIFHWBROADCAST", 0, 0x8937, 0 },
+{ "linux/sockios.h", "SIOCSIFLINK", 0, 0x8911, 0 },
+{ "linux/sockios.h", "SIOCSIFMAP", 0, 0x8971, 0 },
+{ "linux/sockios.h", "SIOCSIFMEM", 0, 0x8920, 0 },
+{ "linux/sockios.h", "SIOCSIFMETRIC", 0, 0x891e, 0 },
+{ "linux/sockios.h", "SIOCSIFMTU", 0, 0x8922, 0 },
+{ "linux/sockios.h", "SIOCSIFNAME", 0, 0x8923, 0 },
+{ "linux/sockios.h", "SIOCSIFNETMASK", 0, 0x891c, 0 },
+{ "linux/sockios.h", "SIOCSIFPFLAGS", 0, 0x8934, 0 },
+{ "linux/sockios.h", "SIOCSIFSLAVE", 0, 0x8930, 0 },
+{ "linux/sockios.h", "SIOCSIFTXQLEN", 0, 0x8943, 0 },
+{ "linux/sockios.h", "SIOCSIFVLAN", 0, 0x8983, 0 },
+{ "linux/sockios.h", "SIOCSMIIREG", 0, 0x8949, 0 },
+{ "linux/sockios.h", "SIOCSRARP", 0, 0x8962, 0 },
+{ "linux/sockios.h", "SIOCWANDEV", 0, 0x894A, 0 },
+{ "linux/sonet.h", "SONET_CLRDIAG", _IOC_READ|_IOC_WRITE, 0x6113, 0x04 },
+{ "linux/sonet.h", "SONET_GETDIAG", _IOC_READ, 0x6114, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRAMING", _IOC_READ, 0x6116, 0x04 },
+{ "linux/sonet.h", "SONET_GETFRSENSE", _IOC_READ, 0x6117, 0x06 },
+{ "linux/sonet.h", "SONET_GETSTAT", _IOC_READ, 0x6110, 0x24 },
+{ "linux/sonet.h", "SONET_GETSTATZ", _IOC_READ, 0x6111, 0x24 },
+{ "linux/sonet.h", "SONET_SETDIAG", _IOC_READ|_IOC_WRITE, 0x6112, 0x04 },
+{ "linux/sonet.h", "SONET_SETFRAMING", _IOC_WRITE, 0x6115, 0x04 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1CAP", _IOC_READ, 0x7602, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT1REM", _IOC_READ, 0x7603, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2CAP", _IOC_READ, 0x7604, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBAT2REM", _IOC_READ, 0x7605, 0x02 },
+{ "linux/sonypi.h", "SONYPI_IOCGBATFLAGS", _IOC_READ, 0x7607, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBLUE", _IOC_READ, 0x7608, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGBRT", _IOC_READ, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGFAN", _IOC_READ, 0x760a, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCGTEMP", _IOC_READ, 0x760c, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBLUE", _IOC_WRITE, 0x7609, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSBRT", _IOC_WRITE, 0x7600, 0x01 },
+{ "linux/sonypi.h", "SONYPI_IOCSFAN", _IOC_WRITE, 0x760b, 0x01 },
+{ "linux/soundcard.h", "OSS_GETVERSION", _IOC_READ, 0x4d76, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_COPR_HALT", _IOC_READ|_IOC_WRITE, 0x4307, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_LOAD", _IOC_READ|_IOC_WRITE, 0x4301, 0xfb0 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCODE", _IOC_READ|_IOC_WRITE, 0x4303, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RCVMSG", _IOC_READ, 0x4309, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RDATA", _IOC_READ|_IOC_WRITE, 0x4302, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RESET", _IOC_NONE, 0x4300, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_COPR_RUN", _IOC_READ|_IOC_WRITE, 0x4306, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_SENDMSG", _IOC_READ|_IOC_WRITE, 0x4308, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WCODE", _IOC_WRITE, 0x4305, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_COPR_WDATA", _IOC_WRITE, 0x4304, 0x14 },
+{ "linux/soundcard.h", "SNDCTL_DSP_BIND_CHANNEL", _IOC_READ|_IOC_WRITE, 0x5041, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_CHANNELS", _IOC_READ|_IOC_WRITE, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETBLKSIZE", _IOC_READ|_IOC_WRITE, 0x5004, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCAPS", _IOC_READ, 0x500f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETCHANNELMASK", _IOC_READ|_IOC_WRITE, 0x5040, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETFMTS", _IOC_READ, 0x500b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETIPTR", _IOC_READ, 0x5011, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETISPACE", _IOC_READ, 0x500d, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETODELAY", _IOC_READ, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOPTR", _IOC_READ, 0x5012, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETOSPACE", _IOC_READ, 0x500c, 0x10 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETSPDIF", _IOC_READ, 0x5043, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_GETTRIGGER", _IOC_READ, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPINBUF", _IOC_READ, 0x5013, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_DSP_MAPOUTBUF", _IOC_READ, 0x5014, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_DSP_NONBLOCK", _IOC_NONE, 0x500e, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_POST", _IOC_NONE, 0x5008, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_PROFILE", _IOC_WRITE, 0x5017, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_RESET", _IOC_NONE, 0x5000, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETDUPLEX", _IOC_NONE, 0x5016, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFMT", _IOC_READ|_IOC_WRITE, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETFRAGMENT", _IOC_READ|_IOC_WRITE, 0x500a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSPDIF", _IOC_WRITE, 0x5042, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETSYNCRO", _IOC_NONE, 0x5015, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SETTRIGGER", _IOC_WRITE, 0x5010, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SPEED", _IOC_READ|_IOC_WRITE, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_STEREO", _IOC_READ|_IOC_WRITE, 0x5003, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SUBDIVIDE", _IOC_READ|_IOC_WRITE, 0x5009, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_DSP_SYNC", _IOC_NONE, 0x5001, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_FM_4OP_ENABLE", _IOC_WRITE, 0x510f, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_FM_LOAD_INSTR", _IOC_WRITE, 0x5107, 0x28 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_INFO", _IOC_READ|_IOC_WRITE, 0x510c, 0x74 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUCMD", _IOC_READ|_IOC_WRITE, 0x6d02, 0x21 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_MPUMODE", _IOC_READ|_IOC_WRITE, 0x6d01, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_MIDI_PRETIME", _IOC_READ|_IOC_WRITE, 0x6d00, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_CTRLRATE", _IOC_READ|_IOC_WRITE, 0x5103, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETINCOUNT", _IOC_READ, 0x5105, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETOUTCOUNT", _IOC_READ, 0x5104, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_GETTIME", _IOC_READ, 0x5113, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRMIDIS", _IOC_READ, 0x510b, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_NRSYNTHS", _IOC_READ, 0x510a, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_OUTOFBAND", _IOC_WRITE, 0x5112, 0x08 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PANIC", _IOC_NONE, 0x5111, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_PERCMODE", _IOC_WRITE, 0x5106, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESET", _IOC_NONE, 0x5100, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_RESETSAMPLES", _IOC_WRITE, 0x5109, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_SYNC", _IOC_NONE, 0x5101, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_TESTMIDI", _IOC_WRITE, 0x5108, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SEQ_THRESHOLD", _IOC_WRITE, 0x510d, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_CONTROL", _IOC_READ|_IOC_WRITE, 0x5115, 0xfa4 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_ID", _IOC_READ|_IOC_WRITE, 0x5114, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_INFO", _IOC_READ|_IOC_WRITE, 0x5102, 0x8c },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_MEMAVL", _IOC_READ|_IOC_WRITE, 0x510e, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_SYNTH_REMOVESAMPLE", _IOC_READ|_IOC_WRITE, 0x5116, 0x0c },
+{ "linux/soundcard.h", "SNDCTL_TMR_CONTINUE", _IOC_NONE, 0x5404, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_METRONOME", _IOC_WRITE, 0x5407, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SELECT", _IOC_WRITE, 0x5408, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_SOURCE", _IOC_READ|_IOC_WRITE, 0x5406, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_START", _IOC_NONE, 0x5402, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_STOP", _IOC_NONE, 0x5403, 0x00 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TEMPO", _IOC_READ|_IOC_WRITE, 0x5405, 0x04 },
+{ "linux/soundcard.h", "SNDCTL_TMR_TIMEBASE", _IOC_READ|_IOC_WRITE, 0x5401, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_3DSE", _IOC_READ|_IOC_WRITE, 0x4d68, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_ACCESS", _IOC_READ|_IOC_WRITE, 0x4d66, 0x80 },
+{ "linux/soundcard.h", "SOUND_MIXER_AGC", _IOC_READ|_IOC_WRITE, 0x4d67, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_GETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d74, 0xa4 },
+{ "linux/soundcard.h", "SOUND_MIXER_INFO", _IOC_READ, 0x4d65, 0x5c },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE1", _IOC_READ|_IOC_WRITE, 0x4d6f, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE2", _IOC_READ|_IOC_WRITE, 0x4d70, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE3", _IOC_READ|_IOC_WRITE, 0x4d71, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE4", _IOC_READ|_IOC_WRITE, 0x4d72, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_PRIVATE5", _IOC_READ|_IOC_WRITE, 0x4d73, 0x04 },
+{ "linux/soundcard.h", "SOUND_MIXER_SETLEVELS", _IOC_READ|_IOC_WRITE, 0x4d75, 0xa4 },
+{ "linux/soundcard.h", "SOUND_OLD_MIXER_INFO", _IOC_READ, 0x4d65, 0x30 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_BITS", _IOC_READ, 0x5005, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_CHANNELS", _IOC_READ, 0x5006, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_FILTER", _IOC_READ, 0x5007, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_READ_RATE", _IOC_READ, 0x5002, 0x04 },
+{ "linux/soundcard.h", "SOUND_PCM_WRITE_FILTER", _IOC_READ|_IOC_WRITE, 0x5007, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_BITS_PER_WORD", _IOC_READ, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_LSB_FIRST", _IOC_READ, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MAX_SPEED_HZ", _IOC_READ, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE", _IOC_READ, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_RD_MODE32", _IOC_READ, 0x6b05, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_BITS_PER_WORD", _IOC_WRITE, 0x6b03, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_LSB_FIRST", _IOC_WRITE, 0x6b02, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MAX_SPEED_HZ", _IOC_WRITE, 0x6b04, 0x04 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE", _IOC_WRITE, 0x6b01, 0x01 },
+{ "linux/spi/spidev.h", "SPI_IOC_WR_MODE32", _IOC_WRITE, 0x6b05, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ALLOC_SWAP_PAGE", _IOC_READ, 0x3314, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_ATOMIC_RESTORE", _IOC_NONE, 0x3304, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_AVAIL_SWAP_SIZE", _IOC_READ, 0x3313, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_CREATE_IMAGE", _IOC_WRITE, 0x3311, 0x04 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE", _IOC_NONE, 0x3305, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREEZE", _IOC_NONE, 0x3301, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_FREE_SWAP_PAGES", _IOC_NONE, 0x3309, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_GET_IMAGE_SIZE", _IOC_READ, 0x330e, 0x08 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PLATFORM_SUPPORT", _IOC_NONE, 0x330f, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_POWER_OFF", _IOC_NONE, 0x3310, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_PREF_IMAGE_SIZE", _IOC_NONE, 0x3312, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_S2RAM", _IOC_NONE, 0x330b, 0x00 },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_SET_SWAP_AREA", _IOC_WRITE, 0x330d, 0x0c },
+{ "linux/suspend_ioctls.h", "SNAPSHOT_UNFREEZE", _IOC_NONE, 0x3302, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCCLRMODCOUNT", _IOC_NONE, 0x6d0f, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGGPIO", _IOC_READ, 0x6d11, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCGIF", _IOC_NONE, 0x6d0b, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGPARAMS", _IOC_READ, 0x6d01, 0x20 },
+{ "linux/synclink.h", "MGSL_IOCGSTATS", _IOC_NONE, 0x6d07, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGTXIDLE", _IOC_NONE, 0x6d03, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXCTRL", _IOC_NONE, 0x6d16, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCGXSYNC", _IOC_NONE, 0x6d14, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCLOOPTXDONE", _IOC_NONE, 0x6d09, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCRXENABLE", _IOC_NONE, 0x6d05, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSGPIO", _IOC_WRITE, 0x6d10, 0x10 },
+{ "linux/synclink.h", "MGSL_IOCSIF", _IOC_NONE, 0x6d0a, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSPARAMS", _IOC_WRITE, 0x6d00, 0x20 },
+{ "linux/synclink.h", "MGSL_IOCSTXIDLE", _IOC_NONE, 0x6d02, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXCTRL", _IOC_NONE, 0x6d15, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCSXSYNC", _IOC_NONE, 0x6d13, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXABORT", _IOC_NONE, 0x6d06, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCTXENABLE", _IOC_NONE, 0x6d04, 0x00 },
+{ "linux/synclink.h", "MGSL_IOCWAITEVENT", _IOC_READ|_IOC_WRITE, 0x6d08, 0x04 },
+{ "linux/synclink.h", "MGSL_IOCWAITGPIO", _IOC_READ|_IOC_WRITE, 0x6d12, 0x10 },
+{ "linux/telephony.h", "OLD_PHONE_RING_START", _IOC_NONE, 0x7187, 0x00 },
+{ "linux/telephony.h", "PHONE_BUSY", _IOC_NONE, 0x71a1, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES", _IOC_NONE, 0x7180, 0x00 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_CHECK", _IOC_WRITE, 0x7182, 0x04 },
+{ "linux/telephony.h", "PHONE_CAPABILITIES_LIST", _IOC_READ, 0x7181, 0x04 },
+{ "linux/telephony.h", "PHONE_CPT_STOP", _IOC_NONE, 0x71a4, 0x00 },
+{ "linux/telephony.h", "PHONE_DIALTONE", _IOC_NONE, 0x71a3, 0x00 },
+{ "linux/telephony.h", "PHONE_DTMF_OOB", _IOC_WRITE, 0x7199, 0x04 },
+{ "linux/telephony.h", "PHONE_DTMF_READY", _IOC_READ, 0x7196, 0x04 },
+{ "linux/telephony.h", "PHONE_EXCEPTION", _IOC_READ, 0x719a, 0x04 },
+{ "linux/telephony.h", "PHONE_FRAME", _IOC_WRITE, 0x718d, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF", _IOC_READ, 0x7197, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_DTMF_ASCII", _IOC_READ, 0x7198, 0x04 },
+{ "linux/telephony.h", "PHONE_GET_TONE_OFF_TIME", _IOC_NONE, 0x719f, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_ON_TIME", _IOC_NONE, 0x719e, 0x00 },
+{ "linux/telephony.h", "PHONE_GET_TONE_STATE", _IOC_NONE, 0x71a0, 0x00 },
+{ "linux/telephony.h", "PHONE_HOOKSTATE", _IOC_NONE, 0x7184, 0x00 },
+{ "linux/telephony.h", "PHONE_MAXRINGS", _IOC_WRITE, 0x7185, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_CODEC", _IOC_WRITE, 0x7190, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_DEPTH", _IOC_WRITE, 0x7193, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_LEVEL", _IOC_NONE, 0x7195, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_START", _IOC_NONE, 0x7191, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_STOP", _IOC_NONE, 0x7192, 0x00 },
+{ "linux/telephony.h", "PHONE_PLAY_TONE", _IOC_WRITE, 0x719b, 0x01 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME", _IOC_WRITE, 0x7194, 0x04 },
+{ "linux/telephony.h", "PHONE_PLAY_VOLUME_LINEAR", _IOC_WRITE, 0x71dc, 0x04 },
+{ "linux/telephony.h", "PHONE_PSTN_GET_STATE", _IOC_NONE, 0x71a5, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_LINETEST", _IOC_NONE, 0x71a8, 0x00 },
+{ "linux/telephony.h", "PHONE_PSTN_SET_STATE", _IOC_WRITE, 0x71a4, 0x04 },
+{ "linux/telephony.h", "PHONE_QUERY_CODEC", _IOC_READ|_IOC_WRITE, 0x71a7, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_CODEC", _IOC_WRITE, 0x7189, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_DEPTH", _IOC_WRITE, 0x718c, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_LEVEL", _IOC_NONE, 0x718f, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_START", _IOC_NONE, 0x718a, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_STOP", _IOC_NONE, 0x718b, 0x00 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME", _IOC_WRITE, 0x718e, 0x04 },
+{ "linux/telephony.h", "PHONE_REC_VOLUME_LINEAR", _IOC_WRITE, 0x71db, 0x04 },
+{ "linux/telephony.h", "PHONE_RING", _IOC_NONE, 0x7183, 0x00 },
+{ "linux/telephony.h", "PHONE_RINGBACK", _IOC_NONE, 0x71a2, 0x00 },
+{ "linux/telephony.h", "PHONE_RING_CADENCE", _IOC_WRITE, 0x7186, 0x02 },
+{ "linux/telephony.h", "PHONE_RING_START", _IOC_WRITE, 0x7187, 0x04 },
+{ "linux/telephony.h", "PHONE_RING_STOP", _IOC_NONE, 0x7188, 0x00 },
+{ "linux/telephony.h", "PHONE_SET_TONE_OFF_TIME", _IOC_WRITE, 0x719d, 0x04 },
+{ "linux/telephony.h", "PHONE_SET_TONE_ON_TIME", _IOC_WRITE, 0x719c, 0x04 },
+{ "linux/telephony.h", "PHONE_VAD", _IOC_WRITE, 0x71a9, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK", _IOC_WRITE, 0x71aa, 0x04 },
+{ "linux/telephony.h", "PHONE_WINK_DURATION", _IOC_WRITE, 0x71a6, 0x04 },
+{ "linux/timerfd.h", "TFD_IOC_SET_TICKS", _IOC_WRITE, 0x5400, 0x08 },
+{ "linux/toshiba.h", "TOSH_SMM", _IOC_READ|_IOC_WRITE, 0x7490, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETEABLOCK", _IOC_READ, 0x6c41, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETEASIZE", _IOC_READ, 0x6c40, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_GETVOLIDENT", _IOC_READ, 0x6c42, 0x04 },
+{ "linux/udf_fs_i.h", "UDF_RELOCATE_BLOCKS", _IOC_READ|_IOC_WRITE, 0x6c43, 0x04 },
+{ "linux/uinput.h", "UI_BEGIN_FF_ERASE", _IOC_READ|_IOC_WRITE, 0x55ca, 0x0c },
+{ "linux/uinput.h", "UI_BEGIN_FF_UPLOAD", _IOC_READ|_IOC_WRITE, 0x55c8, 0x60 },
+{ "linux/uinput.h", "UI_DEV_CREATE", _IOC_NONE, 0x5501, 0x00 },
+{ "linux/uinput.h", "UI_DEV_DESTROY", _IOC_NONE, 0x5502, 0x00 },
+{ "linux/uinput.h", "UI_END_FF_ERASE", _IOC_WRITE, 0x55cb, 0x0c },
+{ "linux/uinput.h", "UI_END_FF_UPLOAD", _IOC_WRITE, 0x55c9, 0x60 },
+{ "linux/uinput.h", "UI_GET_VERSION", _IOC_READ, 0x552d, 0x04 },
+{ "linux/uinput.h", "UI_SET_ABSBIT", _IOC_WRITE, 0x5567, 0x04 },
+{ "linux/uinput.h", "UI_SET_EVBIT", _IOC_WRITE, 0x5564, 0x04 },
+{ "linux/uinput.h", "UI_SET_FFBIT", _IOC_WRITE, 0x556b, 0x04 },
+{ "linux/uinput.h", "UI_SET_KEYBIT", _IOC_WRITE, 0x5565, 0x04 },
+{ "linux/uinput.h", "UI_SET_LEDBIT", _IOC_WRITE, 0x5569, 0x04 },
+{ "linux/uinput.h", "UI_SET_MSCBIT", _IOC_WRITE, 0x5568, 0x04 },
+{ "linux/uinput.h", "UI_SET_PHYS", _IOC_WRITE, 0x556c, 0x04 },
+{ "linux/uinput.h", "UI_SET_PROPBIT", _IOC_WRITE, 0x556e, 0x04 },
+{ "linux/uinput.h", "UI_SET_RELBIT", _IOC_WRITE, 0x5566, 0x04 },
+{ "linux/uinput.h", "UI_SET_SNDBIT", _IOC_WRITE, 0x556a, 0x04 },
+{ "linux/uinput.h", "UI_SET_SWBIT", _IOC_WRITE, 0x556d, 0x04 },
+{ "linux/usb/cdc-wdm.h", "IOCTL_WDM_MAX_COMMAND", _IOC_READ, 0x48a0, 0x02 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_DESC", _IOC_READ, 0x6782, 0x09 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_ENDPOINT_REVMAP", _IOC_NONE, 0x6781, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/functionfs.h", "FUNCTIONFS_INTERFACE_REVMAP", _IOC_NONE, 0x6780, 0x00 },
+{ "linux/usb/g_printer.h", "GADGET_GET_PRINTER_STATUS", _IOC_READ, 0x6721, 0x01 },
+{ "linux/usb/g_printer.h", "GADGET_SET_PRINTER_STATUS", _IOC_READ|_IOC_WRITE, 0x6722, 0x01 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_CLEAR_HALT", _IOC_NONE, 0x6703, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_FLUSH", _IOC_NONE, 0x6702, 0x00 },
+{ "linux/usb/gadgetfs.h", "GADGETFS_FIFO_STATUS", _IOC_NONE, 0x6701, 0x00 },
+{ "linux/usb/iowarrior.h", "IOW_GETINFO", _IOC_READ, 0xc003, 0x28 },
+{ "linux/usb/iowarrior.h", "IOW_READ", _IOC_WRITE, 0xc002, 0x04 },
+{ "linux/usb/iowarrior.h", "IOW_WRITE", _IOC_WRITE, 0xc001, 0x04 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_IN", _IOC_NONE, 0x5b04, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_ABORT_BULK_OUT", _IOC_NONE, 0x5b03, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR", _IOC_NONE, 0x5b02, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_IN_HALT", _IOC_NONE, 0x5b07, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_CLEAR_OUT_HALT", _IOC_NONE, 0x5b06, 0x00 },
+{ "linux/usb/tmc.h", "USBTMC_IOCTL_INDICATOR_PULSE", _IOC_NONE, 0x5b01, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_ALLOC_STREAMS", _IOC_READ, 0x551c, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK", _IOC_READ|_IOC_WRITE, 0x5502, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_BULK32", _IOC_READ|_IOC_WRITE, 0x5502, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIMINTERFACE", _IOC_READ, 0x550f, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLAIM_PORT", _IOC_READ, 0x5518, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CLEAR_HALT", _IOC_READ, 0x5515, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECT", _IOC_NONE, 0x5517, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONNECTINFO", _IOC_WRITE, 0x5511, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL", _IOC_READ|_IOC_WRITE, 0x5500, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_CONTROL32", _IOC_READ|_IOC_WRITE, 0x5500, 0x10 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCARDURB", _IOC_NONE, 0x550b, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT", _IOC_NONE, 0x5516, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCONNECT_CLAIM", _IOC_READ, 0x551b, 0x108 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL", _IOC_READ, 0x550e, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_DISCSIGNAL32", _IOC_READ, 0x550e, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_FREE_STREAMS", _IOC_READ, 0x551d, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GETDRIVER", _IOC_WRITE, 0x5508, 0x104 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_GET_CAPABILITIES", _IOC_READ, 0x551a, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_HUB_PORTINFO", _IOC_READ, 0x5513, 0x80 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL", _IOC_READ|_IOC_WRITE, 0x5512, 0x0c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_IOCTL32", _IOC_READ|_IOC_WRITE, 0x5512, 0x0c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB", _IOC_WRITE, 0x550c, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURB32", _IOC_WRITE, 0x550c, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY", _IOC_WRITE, 0x550d, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_REAPURBNDELAY32", _IOC_WRITE, 0x550d, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASEINTERFACE", _IOC_READ, 0x5510, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RELEASE_PORT", _IOC_READ, 0x5519, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESET", _IOC_NONE, 0x5514, 0x00 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_RESETEP", _IOC_READ, 0x5503, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETCONFIGURATION", _IOC_READ, 0x5505, 0x04 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SETINTERFACE", _IOC_READ, 0x5504, 0x08 },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB", _IOC_READ, 0x550a, 0x2c },
+{ "linux/usbdevice_fs.h", "USBDEVFS_SUBMITURB32", _IOC_READ, 0x550a, 0x2a },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_MAP", _IOC_READ|_IOC_WRITE, 0x7520, 0x58 },
+{ "linux/uvcvideo.h", "UVCIOC_CTRL_QUERY", _IOC_READ|_IOC_WRITE, 0x7521, 0x0c },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x564b, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_FRAME_SIZE", _IOC_READ|_IOC_WRITE, 0x564a, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_ENUM_MBUS_CODE", _IOC_READ|_IOC_WRITE, 0x5602, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x24 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5615, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x563d, 0x40 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_CROP", _IOC_READ|_IOC_WRITE, 0x563c, 0x38 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x24 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0x58 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_FRAME_INTERVAL", _IOC_READ|_IOC_WRITE, 0x5616, 0x30 },
+{ "linux/v4l2-subdev.h", "VIDIOC_SUBDEV_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x563e, 0x40 },
+{ "linux/vfio.h", "VFIO_CHECK_EXTENSION", _IOC_NONE, 0x3b65, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_INFO", _IOC_NONE, 0x3b6b, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_IRQ_INFO", _IOC_NONE, 0x3b6d, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_PCI_HOT_RESET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_GET_REGION_INFO", _IOC_NONE, 0x3b6c, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_PCI_HOT_RESET", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_RESET", _IOC_NONE, 0x3b6f, 0x00 },
+{ "linux/vfio.h", "VFIO_DEVICE_SET_IRQS", _IOC_NONE, 0x3b6e, 0x00 },
+{ "linux/vfio.h", "VFIO_EEH_PE_OP", _IOC_NONE, 0x3b79, 0x00 },
+{ "linux/vfio.h", "VFIO_GET_API_VERSION", _IOC_NONE, 0x3b64, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_DEVICE_FD", _IOC_NONE, 0x3b6a, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_GET_STATUS", _IOC_NONE, 0x3b67, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_SET_CONTAINER", _IOC_NONE, 0x3b68, 0x00 },
+{ "linux/vfio.h", "VFIO_GROUP_UNSET_CONTAINER", _IOC_NONE, 0x3b69, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_DISABLE", _IOC_NONE, 0x3b74, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_ENABLE", _IOC_NONE, 0x3b73, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_MAP_DMA", _IOC_NONE, 0x3b71, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_SPAPR_TCE_GET_INFO", _IOC_NONE, 0x3b70, 0x00 },
+{ "linux/vfio.h", "VFIO_IOMMU_UNMAP_DMA", _IOC_NONE, 0x3b72, 0x00 },
+{ "linux/vfio.h", "VFIO_SET_IOMMU", _IOC_NONE, 0x3b66, 0x00 },
+{ "linux/vhost.h", "VHOST_GET_FEATURES", _IOC_READ, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_GET_VRING_BASE", _IOC_READ|_IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_NET_SET_BACKEND", _IOC_WRITE, 0xaf30, 0x08 },
+{ "linux/vhost.h", "VHOST_RESET_OWNER", _IOC_NONE, 0xaf02, 0x00 },
+{ "linux/vhost.h", "VHOST_SCSI_CLEAR_ENDPOINT", _IOC_WRITE, 0xaf41, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_ABI_VERSION", _IOC_WRITE, 0xaf42, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_GET_EVENTS_MISSED", _IOC_WRITE, 0xaf44, 0x04 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_ENDPOINT", _IOC_WRITE, 0xaf40, 0xe8 },
+{ "linux/vhost.h", "VHOST_SCSI_SET_EVENTS_MISSED", _IOC_WRITE, 0xaf43, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_FEATURES", _IOC_WRITE, 0xaf00, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_BASE", _IOC_WRITE, 0xaf04, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_LOG_FD", _IOC_WRITE, 0xaf07, 0x04 },
+{ "linux/vhost.h", "VHOST_SET_MEM_TABLE", _IOC_WRITE, 0xaf03, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_OWNER", _IOC_NONE, 0xaf01, 0x00 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ADDR", _IOC_WRITE, 0xaf11, 0x28 },
+{ "linux/vhost.h", "VHOST_SET_VRING_BASE", _IOC_WRITE, 0xaf12, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_CALL", _IOC_WRITE, 0xaf21, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_ERR", _IOC_WRITE, 0xaf22, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_KICK", _IOC_WRITE, 0xaf20, 0x08 },
+{ "linux/vhost.h", "VHOST_SET_VRING_NUM", _IOC_WRITE, 0xaf10, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_CREATE_BUFS", _IOC_READ|_IOC_WRITE, 0x565c, 0xf8 },
+{ "linux/videodev2.h", "VIDIOC_CROPCAP", _IOC_READ|_IOC_WRITE, 0x563a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_CHIP_INFO", _IOC_READ|_IOC_WRITE, 0x5666, 0xc8 },
+{ "linux/videodev2.h", "VIDIOC_DBG_G_REGISTER", _IOC_READ|_IOC_WRITE, 0x5650, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DBG_S_REGISTER", _IOC_WRITE, 0x564f, 0x38 },
+{ "linux/videodev2.h", "VIDIOC_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5660, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_DQBUF", _IOC_READ|_IOC_WRITE, 0x5611, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_DQEVENT", _IOC_READ, 0x5659, 0x88 },
+{ "linux/videodev2.h", "VIDIOC_DV_TIMINGS_CAP", _IOC_READ|_IOC_WRITE, 0x5664, 0x90 },
+{ "linux/videodev2.h", "VIDIOC_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564d, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDIO", _IOC_READ|_IOC_WRITE, 0x5641, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMAUDOUT", _IOC_READ|_IOC_WRITE, 0x5642, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUMINPUT", _IOC_READ|_IOC_WRITE, 0x561a, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_ENUMOUTPUT", _IOC_READ|_IOC_WRITE, 0x5630, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_ENUMSTD", _IOC_READ|_IOC_WRITE, 0x5619, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5662, 0x94 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FMT", _IOC_READ|_IOC_WRITE, 0x5602, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMEINTERVALS", _IOC_READ|_IOC_WRITE, 0x564b, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FRAMESIZES", _IOC_READ|_IOC_WRITE, 0x564a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_ENUM_FREQ_BANDS", _IOC_READ|_IOC_WRITE, 0x5665, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_EXPBUF", _IOC_READ|_IOC_WRITE, 0x5610, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDIO", _IOC_READ, 0x5621, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_AUDOUT", _IOC_READ, 0x5631, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_G_CROP", _IOC_READ|_IOC_WRITE, 0x563b, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_G_CTRL", _IOC_READ|_IOC_WRITE, 0x561b, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5658, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_G_EDID", _IOC_READ|_IOC_WRITE, 0x5628, 0x24 },
+{ "linux/videodev2.h", "VIDIOC_G_ENC_INDEX", _IOC_READ, 0x564c, 0x818 },
+{ "linux/videodev2.h", "VIDIOC_G_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5647, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_G_FBUF", _IOC_READ, 0x560a, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_G_FMT", _IOC_READ|_IOC_WRITE, 0x5604, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_G_FREQUENCY", _IOC_READ|_IOC_WRITE, 0x5638, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_G_INPUT", _IOC_READ, 0x5626, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_JPEGCOMP", _IOC_READ, 0x563d, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_G_MODULATOR", _IOC_READ|_IOC_WRITE, 0x5636, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_G_OUTPUT", _IOC_READ, 0x562e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_PARM", _IOC_READ|_IOC_WRITE, 0x5615, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_G_PRIORITY", _IOC_READ, 0x5643, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_G_SELECTION", _IOC_READ|_IOC_WRITE, 0x565e, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_G_SLICED_VBI_CAP", _IOC_READ|_IOC_WRITE, 0x5645, 0x74 },
+{ "linux/videodev2.h", "VIDIOC_G_STD", _IOC_READ, 0x5617, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_G_TUNER", _IOC_READ|_IOC_WRITE, 0x561d, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_LOG_STATUS", _IOC_NONE, 0x5646, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_OVERLAY", _IOC_WRITE, 0x560e, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_PREPARE_BUF", _IOC_READ|_IOC_WRITE, 0x565d, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_QBUF", _IOC_READ|_IOC_WRITE, 0x560f, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_QUERYBUF", _IOC_READ|_IOC_WRITE, 0x5609, 0x50 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCAP", _IOC_READ, 0x5600, 0x68 },
+{ "linux/videodev2.h", "VIDIOC_QUERYCTRL", _IOC_READ|_IOC_WRITE, 0x5624, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_QUERYMENU", _IOC_READ|_IOC_WRITE, 0x5625, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_QUERYSTD", _IOC_READ, 0x563f, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_DV_TIMINGS", _IOC_READ, 0x5663, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_QUERY_EXT_CTRL", _IOC_READ|_IOC_WRITE, 0x5667, 0xe8 },
+{ "linux/videodev2.h", "VIDIOC_REQBUFS", _IOC_READ|_IOC_WRITE, 0x5608, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_RESERVED", _IOC_NONE, 0x5601, 0x00 },
+{ "linux/videodev2.h", "VIDIOC_STREAMOFF", _IOC_WRITE, 0x5613, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_STREAMON", _IOC_WRITE, 0x5612, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_SUBSCRIBE_EVENT", _IOC_WRITE, 0x565a, 0x20 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDIO", _IOC_WRITE, 0x5622, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_AUDOUT", _IOC_WRITE, 0x5632, 0x34 },
+{ "linux/videodev2.h", "VIDIOC_S_CROP", _IOC_WRITE, 0x563c, 0x14 },
+{ "linux/videodev2.h", "VIDIOC_S_CTRL", _IOC_READ|_IOC_WRITE, 0x561c, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_DV_TIMINGS", _IOC_READ|_IOC_WRITE, 0x5657, 0x84 },
+{ "linux/videodev2.h", "VIDIOC_S_EDID", _IOC_READ|_IOC_WRITE, 0x5629, 0x24 },
+{ "linux/videodev2.h", "VIDIOC_S_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5648, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_S_FBUF", _IOC_WRITE, 0x560b, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_S_FMT", _IOC_READ|_IOC_WRITE, 0x5605, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_S_FREQUENCY", _IOC_WRITE, 0x5639, 0x2c },
+{ "linux/videodev2.h", "VIDIOC_S_HW_FREQ_SEEK", _IOC_WRITE, 0x5652, 0x30 },
+{ "linux/videodev2.h", "VIDIOC_S_INPUT", _IOC_READ|_IOC_WRITE, 0x5627, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_JPEGCOMP", _IOC_WRITE, 0x563e, 0x8c },
+{ "linux/videodev2.h", "VIDIOC_S_MODULATOR", _IOC_WRITE, 0x5637, 0x44 },
+{ "linux/videodev2.h", "VIDIOC_S_OUTPUT", _IOC_READ|_IOC_WRITE, 0x562f, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_PARM", _IOC_READ|_IOC_WRITE, 0x5616, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_S_PRIORITY", _IOC_WRITE, 0x5644, 0x04 },
+{ "linux/videodev2.h", "VIDIOC_S_SELECTION", _IOC_READ|_IOC_WRITE, 0x565f, 0x40 },
+{ "linux/videodev2.h", "VIDIOC_S_STD", _IOC_WRITE, 0x5618, 0x08 },
+{ "linux/videodev2.h", "VIDIOC_S_TUNER", _IOC_WRITE, 0x561e, 0x54 },
+{ "linux/videodev2.h", "VIDIOC_TRY_DECODER_CMD", _IOC_READ|_IOC_WRITE, 0x5661, 0x48 },
+{ "linux/videodev2.h", "VIDIOC_TRY_ENCODER_CMD", _IOC_READ|_IOC_WRITE, 0x564e, 0x28 },
+{ "linux/videodev2.h", "VIDIOC_TRY_EXT_CTRLS", _IOC_READ|_IOC_WRITE, 0x5649, 0x18 },
+{ "linux/videodev2.h", "VIDIOC_TRY_FMT", _IOC_READ|_IOC_WRITE, 0x5640, 0xcc },
+{ "linux/videodev2.h", "VIDIOC_UNSUBSCRIBE_EVENT", _IOC_WRITE, 0x565b, 0x20 },
+{ "linux/vm_sockets.h", "IOCTL_VM_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_ADD_NOTIFICATION", _IOC_NONE, 0x07af, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_GET_CPT_STATE", _IOC_NONE, 0x07b1, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_REMOVE_NOTIFICATION", _IOC_NONE, 0x07b0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_CTX_SET_CPT_STATE", _IOC_NONE, 0x07b2, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_RECEIVE", _IOC_NONE, 0x07ac, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_DATAGRAM_SEND", _IOC_NONE, 0x07ab, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_GET_CONTEXT_ID", _IOC_NONE, 0x07b3, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_INIT_CONTEXT", _IOC_NONE, 0x07a0, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFICATIONS_RECEIVE", _IOC_NONE, 0x07a6, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_NOTIFY_RESOURCE", _IOC_NONE, 0x07a5, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_ALLOC", _IOC_NONE, 0x07a8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_DETACH", _IOC_NONE, 0x07aa, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETPAGEFILE", _IOC_NONE, 0x07a9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_QUEUEPAIR_SETVA", _IOC_NONE, 0x07a4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SET_NOTIFY", _IOC_NONE, 0x07cb, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_AF_VALUE", _IOC_NONE, 0x07b8, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_GET_LOCAL_CID", _IOC_NONE, 0x07b9, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_SOCKETS_VERSION", _IOC_NONE, 0x07b4, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION", _IOC_NONE, 0x079f, 0x00 },
+{ "linux/vmw_vmci_defs.h", "IOCTL_VMCI_VERSION2", _IOC_NONE, 0x07a7, 0x00 },
+{ "linux/vsp1.h", "VIDIOC_VSP1_LUT_CONFIG", _IOC_READ|_IOC_WRITE, 0x56c1, 0x400 },
+{ "linux/vt.h", "VT_ACTIVATE", 0, 0x5606, 0 },
+{ "linux/vt.h", "VT_DISALLOCATE", 0, 0x5608, 0 },
+{ "linux/vt.h", "VT_GETHIFONTMASK", 0, 0x560D, 0 },
+{ "linux/vt.h", "VT_GETMODE", 0, 0x5601, 0 },
+{ "linux/vt.h", "VT_GETSTATE", 0, 0x5603, 0 },
+{ "linux/vt.h", "VT_LOCKSWITCH", 0, 0x560B, 0 },
+{ "linux/vt.h", "VT_OPENQRY", 0, 0x5600, 0 },
+{ "linux/vt.h", "VT_RELDISP", 0, 0x5605, 0 },
+{ "linux/vt.h", "VT_RESIZE", 0, 0x5609, 0 },
+{ "linux/vt.h", "VT_RESIZEX", 0, 0x560A, 0 },
+{ "linux/vt.h", "VT_SENDSIG", 0, 0x5604, 0 },
+{ "linux/vt.h", "VT_SETACTIVATE", 0, 0x560F, 0 },
+{ "linux/vt.h", "VT_SETMODE", 0, 0x5602, 0 },
+{ "linux/vt.h", "VT_UNLOCKSWITCH", 0, 0x560C, 0 },
+{ "linux/vt.h", "VT_WAITACTIVE", 0, 0x5607, 0 },
+{ "linux/vt.h", "VT_WAITEVENT", 0, 0x560E, 0 },
+{ "linux/watchdog.h", "WDIOC_GETBOOTSTATUS", _IOC_READ, 0x5702, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETPRETIMEOUT", _IOC_READ, 0x5709, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSTATUS", _IOC_READ, 0x5701, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETSUPPORT", _IOC_READ, 0x5700, 0x28 },
+{ "linux/watchdog.h", "WDIOC_GETTEMP", _IOC_READ, 0x5703, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMELEFT", _IOC_READ, 0x570a, 0x04 },
+{ "linux/watchdog.h", "WDIOC_GETTIMEOUT", _IOC_READ, 0x5707, 0x04 },
+{ "linux/watchdog.h", "WDIOC_KEEPALIVE", _IOC_READ, 0x5705, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETOPTIONS", _IOC_READ, 0x5704, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETPRETIMEOUT", _IOC_READ|_IOC_WRITE, 0x5708, 0x04 },
+{ "linux/watchdog.h", "WDIOC_SETTIMEOUT", _IOC_READ|_IOC_WRITE, 0x5706, 0x04 },
+{ "linux/wireless.h", "SIOCGIWAP", 0, 0x8B15, 0 },
+{ "linux/wireless.h", "SIOCGIWAPLIST", 0, 0x8B17, 0 },
+{ "linux/wireless.h", "SIOCGIWAUTH", 0, 0x8B33, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODE", 0, 0x8B2B, 0 },
+{ "linux/wireless.h", "SIOCGIWENCODEEXT", 0, 0x8B35, 0 },
+{ "linux/wireless.h", "SIOCGIWESSID", 0, 0x8B1B, 0 },
+{ "linux/wireless.h", "SIOCGIWFRAG", 0, 0x8B25, 0 },
+{ "linux/wireless.h", "SIOCGIWFREQ", 0, 0x8B05, 0 },
+{ "linux/wireless.h", "SIOCGIWGENIE", 0, 0x8B31, 0 },
+{ "linux/wireless.h", "SIOCGIWMODE", 0, 0x8B07, 0 },
+{ "linux/wireless.h", "SIOCGIWNAME", 0, 0x8B01, 0 },
+{ "linux/wireless.h", "SIOCGIWNICKN", 0, 0x8B1D, 0 },
+{ "linux/wireless.h", "SIOCGIWNWID", 0, 0x8B03, 0 },
+{ "linux/wireless.h", "SIOCGIWPOWER", 0, 0x8B2D, 0 },
+{ "linux/wireless.h", "SIOCGIWPRIV", 0, 0x8B0D, 0 },
+{ "linux/wireless.h", "SIOCGIWRANGE", 0, 0x8B0B, 0 },
+{ "linux/wireless.h", "SIOCGIWRATE", 0, 0x8B21, 0 },
+{ "linux/wireless.h", "SIOCGIWRETRY", 0, 0x8B29, 0 },
+{ "linux/wireless.h", "SIOCGIWRTS", 0, 0x8B23, 0 },
+{ "linux/wireless.h", "SIOCGIWSCAN", 0, 0x8B19, 0 },
+{ "linux/wireless.h", "SIOCGIWSENS", 0, 0x8B09, 0 },
+{ "linux/wireless.h", "SIOCGIWSPY", 0, 0x8B11, 0 },
+{ "linux/wireless.h", "SIOCGIWSTATS", 0, 0x8B0F, 0 },
+{ "linux/wireless.h", "SIOCGIWTHRSPY", 0, 0x8B13, 0 },
+{ "linux/wireless.h", "SIOCGIWTXPOW", 0, 0x8B27, 0 },
+{ "linux/wireless.h", "SIOCIWFIRST", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCIWFIRSTPRIV", 0, 0x8BE0, 0 },
+{ "linux/wireless.h", "SIOCIWLASTPRIV", 0, 0x8BFF, 0 },
+{ "linux/wireless.h", "SIOCSIWAP", 0, 0x8B14, 0 },
+{ "linux/wireless.h", "SIOCSIWAUTH", 0, 0x8B32, 0 },
+{ "linux/wireless.h", "SIOCSIWCOMMIT", 0, 0x8B00, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODE", 0, 0x8B2A, 0 },
+{ "linux/wireless.h", "SIOCSIWENCODEEXT", 0, 0x8B34, 0 },
+{ "linux/wireless.h", "SIOCSIWESSID", 0, 0x8B1A, 0 },
+{ "linux/wireless.h", "SIOCSIWFRAG", 0, 0x8B24, 0 },
+{ "linux/wireless.h", "SIOCSIWFREQ", 0, 0x8B04, 0 },
+{ "linux/wireless.h", "SIOCSIWGENIE", 0, 0x8B30, 0 },
+{ "linux/wireless.h", "SIOCSIWMLME", 0, 0x8B16, 0 },
+{ "linux/wireless.h", "SIOCSIWMODE", 0, 0x8B06, 0 },
+{ "linux/wireless.h", "SIOCSIWNICKN", 0, 0x8B1C, 0 },
+{ "linux/wireless.h", "SIOCSIWNWID", 0, 0x8B02, 0 },
+{ "linux/wireless.h", "SIOCSIWPMKSA", 0, 0x8B36, 0 },
+{ "linux/wireless.h", "SIOCSIWPOWER", 0, 0x8B2C, 0 },
+{ "linux/wireless.h", "SIOCSIWPRIV", 0, 0x8B0C, 0 },
+{ "linux/wireless.h", "SIOCSIWRANGE", 0, 0x8B0A, 0 },
+{ "linux/wireless.h", "SIOCSIWRATE", 0, 0x8B20, 0 },
+{ "linux/wireless.h", "SIOCSIWRETRY", 0, 0x8B28, 0 },
+{ "linux/wireless.h", "SIOCSIWRTS", 0, 0x8B22, 0 },
+{ "linux/wireless.h", "SIOCSIWSCAN", 0, 0x8B18, 0 },
+{ "linux/wireless.h", "SIOCSIWSENS", 0, 0x8B08, 0 },
+{ "linux/wireless.h", "SIOCSIWSPY", 0, 0x8B10, 0 },
+{ "linux/wireless.h", "SIOCSIWSTATS", 0, 0x8B0E, 0 },
+{ "linux/wireless.h", "SIOCSIWTHRSPY", 0, 0x8B12, 0 },
+{ "linux/wireless.h", "SIOCSIWTXPOW", 0, 0x8B26, 0 },
+{ "media/adv7842.h", "ADV7842_CMD_RAM_TEST", _IOC_NONE, 0x56c0, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_HIGH", _IOC_NONE, 0x6201, 0x00 },
+{ "media/bt819.h", "BT819_FIFO_RESET_LOW", _IOC_NONE, 0x6200, 0x00 },
+{ "media/davinci/vpfe_capture.h", "VPFE_CMD_S_CCDC_RAW_PARAMS", _IOC_WRITE, 0x56c1, 0x04 },
+{ "media/exynos-fimc.h", "S5P_FIMC_TX_END_NOTIFY", _IOC_NONE, 0x6500, 0x00 },
+{ "media/lirc.h", "LIRC_GET_FEATURES", _IOC_READ, 0x6900, 0x04 },
+{ "media/lirc.h", "LIRC_GET_LENGTH", _IOC_READ, 0x690f, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_PULSE", _IOC_READ, 0x690b, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_FILTER_SPACE", _IOC_READ, 0x690d, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MAX_TIMEOUT", _IOC_READ, 0x6909, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_PULSE", _IOC_READ, 0x690a, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_FILTER_SPACE", _IOC_READ, 0x690c, 0x04 },
+{ "media/lirc.h", "LIRC_GET_MIN_TIMEOUT", _IOC_READ, 0x6908, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_CARRIER", _IOC_READ, 0x6904, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_DUTY_CYCLE", _IOC_READ, 0x6906, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_MODE", _IOC_READ, 0x6902, 0x04 },
+{ "media/lirc.h", "LIRC_GET_REC_RESOLUTION", _IOC_READ, 0x6907, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_CARRIER", _IOC_READ, 0x6903, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_DUTY_CYCLE", _IOC_READ, 0x6905, 0x04 },
+{ "media/lirc.h", "LIRC_GET_SEND_MODE", _IOC_READ, 0x6901, 0x04 },
+{ "media/lirc.h", "LIRC_NOTIFY_DECODE", _IOC_NONE, 0x6920, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_END", _IOC_NONE, 0x6922, 0x00 },
+{ "media/lirc.h", "LIRC_SETUP_START", _IOC_NONE, 0x6921, 0x00 },
+{ "media/lirc.h", "LIRC_SET_MEASURE_CARRIER_MODE", _IOC_WRITE, 0x691d, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER", _IOC_WRITE, 0x6914, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_CARRIER_RANGE", _IOC_WRITE, 0x691f, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE", _IOC_WRITE, 0x6916, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_DUTY_CYCLE_RANGE", _IOC_WRITE, 0x691e, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER", _IOC_WRITE, 0x691c, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_PULSE", _IOC_WRITE, 0x691a, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_FILTER_SPACE", _IOC_WRITE, 0x691b, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_MODE", _IOC_WRITE, 0x6912, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT", _IOC_WRITE, 0x6918, 0x04 },
+{ "media/lirc.h", "LIRC_SET_REC_TIMEOUT_REPORTS", _IOC_WRITE, 0x6919, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_CARRIER", _IOC_WRITE, 0x6913, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_DUTY_CYCLE", _IOC_WRITE, 0x6915, 0x04 },
+{ "media/lirc.h", "LIRC_SET_SEND_MODE", _IOC_WRITE, 0x6911, 0x04 },
+{ "media/lirc.h", "LIRC_SET_TRANSMITTER_MASK", _IOC_WRITE, 0x6917, 0x04 },
+{ "media/lirc.h", "LIRC_SET_WIDEBAND_RECEIVER", _IOC_WRITE, 0x6923, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_CLOSE", _IOC_WRITE, 0x5202, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_POLL", _IOC_READ, 0x5204, 0x04 },
+{ "media/saa6588.h", "SAA6588_CMD_READ", _IOC_READ, 0x5203, 0x04 },
+{ "media/si4713.h", "SI4713_IOC_MEASURE_RNL", _IOC_READ|_IOC_WRITE, 0x56c0, 0x1c },
+{ "media/v4l2-common.h", "TUNER_SET_CONFIG", _IOC_WRITE, 0x645c, 0x08 },
+{ "media/v4l2-common.h", "VIDIOC_INT_RESET", _IOC_WRITE, 0x6466, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_RX_NOTIFY", _IOC_WRITE, 0x7600, 0x04 },
+{ "media/v4l2-subdev.h", "V4L2_SUBDEV_IR_TX_NOTIFY", _IOC_WRITE, 0x7601, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_GET_PROCESS_ELEMENT", _IOC_READ, 0xca01, 0x04 },
+{ "misc/cxl.h", "CXL_IOCTL_START_WORK", _IOC_WRITE, 0xca00, 0x40 },
+{ "mtd/mtd-abi.h", "ECCGETLAYOUT", _IOC_READ, 0x4d11, 0x148 },
+{ "mtd/mtd-abi.h", "ECCGETSTATS", _IOC_READ, 0x4d12, 0x10 },
+{ "mtd/mtd-abi.h", "MEMERASE", _IOC_WRITE, 0x4d02, 0x08 },
+{ "mtd/mtd-abi.h", "MEMERASE64", _IOC_WRITE, 0x4d14, 0x10 },
+{ "mtd/mtd-abi.h", "MEMGETBADBLOCK", _IOC_WRITE, 0x4d0b, 0x08 },
+{ "mtd/mtd-abi.h", "MEMGETINFO", _IOC_READ, 0x4d01, 0x20 },
+{ "mtd/mtd-abi.h", "MEMGETOOBSEL", _IOC_READ, 0x4d0a, 0xc8 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONCOUNT", _IOC_READ, 0x4d07, 0x04 },
+{ "mtd/mtd-abi.h", "MEMGETREGIONINFO", _IOC_READ|_IOC_WRITE, 0x4d08, 0x10 },
+{ "mtd/mtd-abi.h", "MEMISLOCKED", _IOC_READ, 0x4d17, 0x08 },
+{ "mtd/mtd-abi.h", "MEMLOCK", _IOC_WRITE, 0x4d05, 0x08 },
+{ "mtd/mtd-abi.h", "MEMREADOOB", _IOC_READ|_IOC_WRITE, 0x4d04, 0x0c },
+{ "mtd/mtd-abi.h", "MEMREADOOB64", _IOC_READ|_IOC_WRITE, 0x4d16, 0x18 },
+{ "mtd/mtd-abi.h", "MEMSETBADBLOCK", _IOC_WRITE, 0x4d0c, 0x08 },
+{ "mtd/mtd-abi.h", "MEMUNLOCK", _IOC_WRITE, 0x4d06, 0x08 },
+{ "mtd/mtd-abi.h", "MEMWRITE", _IOC_READ|_IOC_WRITE, 0x4d18, 0x30 },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB", _IOC_READ|_IOC_WRITE, 0x4d03, 0x0c },
+{ "mtd/mtd-abi.h", "MEMWRITEOOB64", _IOC_READ|_IOC_WRITE, 0x4d15, 0x18 },
+{ "mtd/mtd-abi.h", "MTDFILEMODE", _IOC_NONE, 0x4d13, 0x00 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONCOUNT", _IOC_WRITE, 0x4d0e, 0x04 },
+{ "mtd/mtd-abi.h", "OTPGETREGIONINFO", _IOC_WRITE, 0x4d0f, 0x0c },
+{ "mtd/mtd-abi.h", "OTPLOCK", _IOC_READ, 0x4d10, 0x0c },
+{ "mtd/mtd-abi.h", "OTPSELECT", _IOC_READ, 0x4d0d, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCATT", _IOC_WRITE, 0x6f40, 0x18 },
+{ "mtd/ubi-user.h", "UBI_IOCDET", _IOC_WRITE, 0x6f41, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBCH", _IOC_WRITE, 0x4f02, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBER", _IOC_WRITE, 0x4f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBISMAP", _IOC_READ, 0x4f05, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCEBMAP", _IOC_WRITE, 0x4f03, 0x08 },
+{ "mtd/ubi-user.h", "UBI_IOCEBUNMAP", _IOC_WRITE, 0x4f04, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCMKVOL", _IOC_WRITE, 0x6f00, 0x98 },
+{ "mtd/ubi-user.h", "UBI_IOCRMVOL", _IOC_WRITE, 0x6f01, 0x04 },
+{ "mtd/ubi-user.h", "UBI_IOCRNVOL", _IOC_WRITE, 0x6f03, 0x1110 },
+{ "mtd/ubi-user.h", "UBI_IOCRSVOL", _IOC_WRITE, 0x6f02, 0x0c },
+{ "mtd/ubi-user.h", "UBI_IOCSETVOLPROP", _IOC_WRITE, 0x4f06, 0x10 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLCRBLK", _IOC_WRITE, 0x4f07, 0x80 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLRMBLK", _IOC_NONE, 0x4f08, 0x00 },
+{ "mtd/ubi-user.h", "UBI_IOCVOLUP", _IOC_WRITE, 0x4f00, 0x08 },
+{ "net/bluetooth/hci_sock.h", "HCIBLOCKADDR", _IOC_WRITE, 0x48e6, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVDOWN", _IOC_WRITE, 0x48ca, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESET", _IOC_WRITE, 0x48cb, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVRESTAT", _IOC_WRITE, 0x48cc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIDEVUP", _IOC_WRITE, 0x48c9, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETAUTHINFO", _IOC_READ, 0x48d7, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNINFO", _IOC_READ, 0x48d5, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETCONNLIST", _IOC_READ, 0x48d4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVINFO", _IOC_READ, 0x48d3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIGETDEVLIST", _IOC_READ, 0x48d2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIINQUIRY", _IOC_READ, 0x48f0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETACLMTU", _IOC_WRITE, 0x48e3, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETAUTH", _IOC_WRITE, 0x48de, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETENCRYPT", _IOC_WRITE, 0x48df, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKMODE", _IOC_WRITE, 0x48e2, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETLINKPOL", _IOC_WRITE, 0x48e1, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETPTYPE", _IOC_WRITE, 0x48e0, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETRAW", _IOC_WRITE, 0x48dc, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCAN", _IOC_WRITE, 0x48dd, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCISETSCOMTU", _IOC_WRITE, 0x48e4, 0x04 },
+{ "net/bluetooth/hci_sock.h", "HCIUNBLOCKADDR", _IOC_WRITE, 0x48e7, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMCREATEDEV", _IOC_WRITE, 0x52c8, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVINFO", _IOC_READ, 0x52d3, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMGETDEVLIST", _IOC_READ, 0x52d2, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMRELEASEDEV", _IOC_WRITE, 0x52c9, 0x04 },
+{ "net/bluetooth/rfcomm.h", "RFCOMMSTEALDLC", _IOC_WRITE, 0x52dc, 0x04 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_ENABLE_PKEY", _IOC_NONE, 0x1b03, 0x00 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT", _IOC_READ|_IOC_WRITE, 0x1b01, 0x1c },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_REGISTER_AGENT2", _IOC_READ|_IOC_WRITE, 0x1b04, 0x28 },
+{ "rdma/ib_user_mad.h", "IB_USER_MAD_UNREGISTER_AGENT", _IOC_WRITE, 0x1b02, 0x04 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_BUS_NUMBER", 0, 0x5386, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_IDLUN", 0, 0x5382, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_GET_PCI", 0, 0x5387, 0 },
+{ "scsi/scsi.h", "SCSI_IOCTL_PROBE_HOST", 0, 0x5385, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORLOCK", 0, 0x5380, 0 },
+{ "scsi/scsi_ioctl.h", "SCSI_IOCTL_DOORUNLOCK", 0, 0x5381, 0 },
+{ "scsi/sg.h", "SG_EMULATED_HOST", 0, 0x2203, 0 },
+{ "scsi/sg.h", "SG_GET_ACCESS_COUNT", 0, 0x2289, 0 },
+{ "scsi/sg.h", "SG_GET_COMMAND_Q", 0, 0x2270, 0 },
+{ "scsi/sg.h", "SG_GET_KEEP_ORPHAN", 0, 0x2288, 0 },
+{ "scsi/sg.h", "SG_GET_LOW_DMA", 0, 0x227a, 0 },
+{ "scsi/sg.h", "SG_GET_NUM_WAITING", 0, 0x227d, 0 },
+{ "scsi/sg.h", "SG_GET_PACK_ID", 0, 0x227c, 0 },
+{ "scsi/sg.h", "SG_GET_REQUEST_TABLE", 0, 0x2286, 0 },
+{ "scsi/sg.h", "SG_GET_RESERVED_SIZE", 0, 0x2272, 0 },
+{ "scsi/sg.h", "SG_GET_SCSI_ID", 0, 0x2276, 0 },
+{ "scsi/sg.h", "SG_GET_SG_TABLESIZE", 0, 0x227F, 0 },
+{ "scsi/sg.h", "SG_GET_TIMEOUT", 0, 0x2202, 0 },
+{ "scsi/sg.h", "SG_GET_TRANSFORM", 0, 0x2205, 0 },
+{ "scsi/sg.h", "SG_GET_VERSION_NUM", 0, 0x2282, 0 },
+{ "scsi/sg.h", "SG_IO", 0, 0x2285, 0 },
+{ "scsi/sg.h", "SG_NEXT_CMD_LEN", 0, 0x2283, 0 },
+{ "scsi/sg.h", "SG_SCSI_RESET", 0, 0x2284, 0 },
+{ "scsi/sg.h", "SG_SET_COMMAND_Q", 0, 0x2271, 0 },
+{ "scsi/sg.h", "SG_SET_DEBUG", 0, 0x227e, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_LOW_DMA", 0, 0x2279, 0 },
+{ "scsi/sg.h", "SG_SET_FORCE_PACK_ID", 0, 0x227b, 0 },
+{ "scsi/sg.h", "SG_SET_KEEP_ORPHAN", 0, 0x2287, 0 },
+{ "scsi/sg.h", "SG_SET_RESERVED_SIZE", 0, 0x2275, 0 },
+{ "scsi/sg.h", "SG_SET_TIMEOUT", 0, 0x2201, 0 },
+{ "scsi/sg.h", "SG_SET_TRANSFORM", 0, 0x2204, 0 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CLIENT_ID", _IOC_READ, 0x5301, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_PORT", _IOC_READ|_IOC_WRITE, 0x5320, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_CREATE_QUEUE", _IOC_READ|_IOC_WRITE, 0x5332, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_PORT", _IOC_WRITE, 0x5321, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_DELETE_QUEUE", _IOC_WRITE, 0x5333, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_INFO", _IOC_READ|_IOC_WRITE, 0x5310, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_CLIENT_POOL", _IOC_READ|_IOC_WRITE, 0x534b, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_NAMED_QUEUE", _IOC_READ|_IOC_WRITE, 0x5336, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_PORT_INFO", _IOC_READ|_IOC_WRITE, 0x5322, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_CLIENT", _IOC_READ|_IOC_WRITE, 0x5349, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5334, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_OWNER", _IOC_READ|_IOC_WRITE, 0x5343, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_STATUS", _IOC_READ|_IOC_WRITE, 0x5340, 0x5c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TEMPO", _IOC_READ|_IOC_WRITE, 0x5341, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_QUEUE_TIMER", _IOC_READ|_IOC_WRITE, 0x5345, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_GET_SUBSCRIPTION", _IOC_READ|_IOC_WRITE, 0x5350, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_PVERSION", _IOC_READ, 0x5300, 0x04 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_CLIENT", _IOC_READ|_IOC_WRITE, 0x5351, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_NEXT_PORT", _IOC_READ|_IOC_WRITE, 0x5352, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_QUERY_SUBS", _IOC_READ|_IOC_WRITE, 0x534f, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_REMOVE_EVENTS", _IOC_WRITE, 0x534e, 0x40 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_RUNNING_MODE", _IOC_READ|_IOC_WRITE, 0x5303, 0x10 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_INFO", _IOC_WRITE, 0x5311, 0xbc },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_CLIENT_POOL", _IOC_WRITE, 0x534c, 0x58 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_PORT_INFO", _IOC_WRITE, 0x5323, 0xa4 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_CLIENT", _IOC_WRITE, 0x534a, 0x4c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_INFO", _IOC_READ|_IOC_WRITE, 0x5335, 0x8c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_OWNER", _IOC_WRITE, 0x5344, 0x00 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TEMPO", _IOC_WRITE, 0x5342, 0x2c },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SET_QUEUE_TIMER", _IOC_WRITE, 0x5346, 0x60 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SUBSCRIBE_PORT", _IOC_WRITE, 0x5330, 0x50 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_SYSTEM_INFO", _IOC_READ|_IOC_WRITE, 0x5302, 0x30 },
+{ "sound/asequencer.h", "SNDRV_SEQ_IOCTL_UNSUBSCRIBE_PORT", _IOC_WRITE, 0x5331, 0x50 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_CARD_INFO", _IOC_READ, 0x5501, 0x178 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_ADD", _IOC_READ|_IOC_WRITE, 0x5517, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_INFO", _IOC_READ|_IOC_WRITE, 0x5511, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LIST", _IOC_READ|_IOC_WRITE, 0x5510, 0x48 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_LOCK", _IOC_WRITE, 0x5514, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_READ", _IOC_READ|_IOC_WRITE, 0x5512, 0x2c8 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REMOVE", _IOC_READ|_IOC_WRITE, 0x5519, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_REPLACE", _IOC_READ|_IOC_WRITE, 0x5518, 0x110 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_UNLOCK", _IOC_WRITE, 0x5515, 0x40 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_ELEM_WRITE", _IOC_READ|_IOC_WRITE, 0x5513, 0x2c8 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_INFO", _IOC_READ, 0x5521, 0xdc },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5520, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_INFO", _IOC_READ|_IOC_WRITE, 0x5531, 0x120 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE", _IOC_READ, 0x5530, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE", _IOC_WRITE, 0x5532, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER", _IOC_READ|_IOC_WRITE, 0x55d0, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_POWER_STATE", _IOC_READ, 0x55d1, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_PVERSION", _IOC_READ, 0x5500, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_INFO", _IOC_READ|_IOC_WRITE, 0x5541, 0x10c },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5540, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE", _IOC_WRITE, 0x5542, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS", _IOC_READ|_IOC_WRITE, 0x5516, 0x04 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_COMMAND", _IOC_READ|_IOC_WRITE, 0x551c, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_READ", _IOC_READ|_IOC_WRITE, 0x551a, 0x08 },
+{ "sound/asound.h", "SNDRV_CTL_IOCTL_TLV_WRITE", _IOC_READ|_IOC_WRITE, 0x551b, 0x08 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_LOAD", _IOC_WRITE, 0x4803, 0x50 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_DSP_STATUS", _IOC_READ, 0x4802, 0x40 },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_INFO", _IOC_READ, 0x4801, 0xdc },
+{ "sound/asound.h", "SNDRV_HWDEP_IOCTL_PVERSION", _IOC_READ, 0x4800, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_CHANNEL_INFO", _IOC_READ, 0x4132, 0x18 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DELAY", _IOC_READ, 0x4121, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DRAIN", _IOC_NONE, 0x4144, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_DROP", _IOC_NONE, 0x4143, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_FORWARD", _IOC_WRITE, 0x4149, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HWSYNC", _IOC_NONE, 0x4122, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_FREE", _IOC_NONE, 0x4112, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4111, 0x25c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_HW_REFINE", _IOC_READ|_IOC_WRITE, 0x4110, 0x25c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_INFO", _IOC_READ, 0x4101, 0x120 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_LINK", _IOC_WRITE, 0x4160, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PAUSE", _IOC_WRITE, 0x4145, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PREPARE", _IOC_NONE, 0x4140, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_PVERSION", _IOC_READ, 0x4100, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READI_FRAMES", _IOC_READ, 0x4151, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_READN_FRAMES", _IOC_READ, 0x4153, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESET", _IOC_NONE, 0x4141, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_RESUME", _IOC_NONE, 0x4147, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_REWIND", _IOC_WRITE, 0x4146, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_START", _IOC_NONE, 0x4142, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_STATUS", _IOC_READ, 0x4120, 0x80 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SW_PARAMS", _IOC_READ|_IOC_WRITE, 0x4113, 0x68 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_SYNC_PTR", _IOC_READ|_IOC_WRITE, 0x4123, 0x88 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TSTAMP", _IOC_WRITE, 0x4102, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_TTSTAMP", _IOC_WRITE, 0x4103, 0x04 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_UNLINK", _IOC_NONE, 0x4161, 0x00 },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEI_FRAMES", _IOC_WRITE, 0x4150, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_WRITEN_FRAMES", _IOC_WRITE, 0x4152, 0x0c },
+{ "sound/asound.h", "SNDRV_PCM_IOCTL_XRUN", _IOC_NONE, 0x4148, 0x00 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DRAIN", _IOC_WRITE, 0x5731, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_DROP", _IOC_WRITE, 0x5730, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_INFO", _IOC_READ, 0x5701, 0x10c },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PARAMS", _IOC_READ|_IOC_WRITE, 0x5710, 0x20 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_PVERSION", _IOC_READ, 0x5700, 0x04 },
+{ "sound/asound.h", "SNDRV_RAWMIDI_IOCTL_STATUS", _IOC_READ|_IOC_WRITE, 0x5720, 0x30 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_CONTINUE", _IOC_NONE, 0x54a2, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GINFO", _IOC_READ|_IOC_WRITE, 0x5403, 0xe0 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GPARAMS", _IOC_WRITE, 0x5404, 0x3c },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_GSTATUS", _IOC_READ|_IOC_WRITE, 0x5405, 0x40 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_INFO", _IOC_READ, 0x5411, 0xe0 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_NEXT_DEVICE", _IOC_READ|_IOC_WRITE, 0x5401, 0x14 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PARAMS", _IOC_WRITE, 0x5412, 0x50 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PAUSE", _IOC_NONE, 0x54a3, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_PVERSION", _IOC_READ, 0x5400, 0x04 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_SELECT", _IOC_WRITE, 0x5410, 0x34 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_START", _IOC_NONE, 0x54a0, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STATUS", _IOC_READ, 0x5414, 0x60 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_STOP", _IOC_NONE, 0x54a1, 0x00 },
+{ "sound/asound.h", "SNDRV_TIMER_IOCTL_TREAD", _IOC_WRITE, 0x5402, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_CLEAR_PATCHES", _IOC_NONE, 0x4840, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_INFO", _IOC_READ, 0x4820, 0x02 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_PLAY_NOTE", _IOC_WRITE, 0x4822, 0x0c },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_RESET", _IOC_NONE, 0x4821, 0x00 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_CONNECTION", _IOC_WRITE, 0x4826, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_MODE", _IOC_WRITE, 0x4825, 0x04 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_PARAMS", _IOC_WRITE, 0x4824, 0x09 },
+{ "sound/asound_fm.h", "SNDRV_DM_FM_IOCTL_SET_VOICE", _IOC_WRITE, 0x4823, 0x12 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_AVAIL", _IOC_READ, 0x4321, 0x1c },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_DRAIN", _IOC_NONE, 0x4334, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CAPS", _IOC_READ|_IOC_WRITE, 0x4310, 0xc4 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_CODEC_CAPS", _IOC_READ|_IOC_WRITE, 0x4311, 0x2b88 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_METADATA", _IOC_READ|_IOC_WRITE, 0x4315, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_GET_PARAMS", _IOC_READ, 0x4313, 0x78 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_IOCTL_VERSION", _IOC_READ, 0x4300, 0x04 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_NEXT_TRACK", _IOC_NONE, 0x4335, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PARTIAL_DRAIN", _IOC_NONE, 0x4336, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_PAUSE", _IOC_NONE, 0x4330, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_RESUME", _IOC_NONE, 0x4331, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_METADATA", _IOC_WRITE, 0x4314, 0x24 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_SET_PARAMS", _IOC_WRITE, 0x4312, 0x84 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_START", _IOC_NONE, 0x4332, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_STOP", _IOC_NONE, 0x4333, 0x00 },
+{ "sound/compress_offload.h", "SNDRV_COMPRESS_TSTAMP", _IOC_READ, 0x4320, 0x14 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_PEEK", _IOC_READ|_IOC_WRITE, 0x4812, 0x18c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CODE_POKE", _IOC_WRITE, 0x4811, 0x18c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_CONTINUE", _IOC_NONE, 0x4881, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_DBG_READ", _IOC_READ, 0x4884, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_INFO", _IOC_READ, 0x4810, 0x80c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_PEEK", _IOC_READ|_IOC_WRITE, 0x4831, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PCM_POKE", _IOC_WRITE, 0x4830, 0x48 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_PVERSION", _IOC_READ, 0x4840, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_SINGLE_STEP", _IOC_WRITE, 0x4883, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_STOP", _IOC_NONE, 0x4880, 0x00 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_PEEK", _IOC_READ|_IOC_WRITE, 0x4822, 0x0c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_POKE", _IOC_WRITE, 0x4821, 0x0c },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_TRAM_SETUP", _IOC_WRITE, 0x4820, 0x04 },
+{ "sound/emu10k1.h", "SNDRV_EMU10K1_IOCTL_ZERO_TRAM_COUNTER", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_GET_INFO", _IOC_READ, 0x48f8, 0x20 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_LOCK", _IOC_NONE, 0x48f9, 0x00 },
+{ "sound/firewire.h", "SNDRV_FIREWIRE_IOCTL_UNLOCK", _IOC_NONE, 0x48fa, 0x00 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_GET_WCAP", _IOC_READ|_IOC_WRITE, 0x4812, 0x08 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_PVERSION", _IOC_READ, 0x4810, 0x04 },
+{ "sound/hda_hwdep.h", "HDA_IOCTL_VERB_WRITE", _IOC_READ|_IOC_WRITE, 0x4811, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_9632_AEB", _IOC_READ, 0x4845, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_CONFIG_INFO", _IOC_READ, 0x4841, 0x24 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x1000 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4840, 0x3b0 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_GET_VERSION", _IOC_READ, 0x4843, 0x08 },
+{ "sound/hdsp.h", "SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE", _IOC_WRITE, 0x4842, 0x04 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_CONFIG", _IOC_READ, 0x4841, 0x18 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_LTC", _IOC_READ, 0x4846, 0x10 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_MIXER", _IOC_READ, 0x4844, 0x04 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_PEAK_RMS", _IOC_READ, 0x4842, 0x908 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_STATUS", _IOC_READ, 0x4847, 0x20 },
+{ "sound/hdspm.h", "SNDRV_HDSPM_IOCTL_GET_VERSION", _IOC_READ, 0x4848, 0x24 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_INFO", _IOC_READ, 0x4810, 0x28 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_LOAD_CODE", _IOC_WRITE, 0x4811, 0x3012 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_PAUSE", _IOC_NONE, 0x4815, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_RESTART", _IOC_NONE, 0x4816, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_START", _IOC_WRITE, 0x4813, 0x08 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_STOP", _IOC_NONE, 0x4814, 0x00 },
+{ "sound/sb16_csp.h", "SNDRV_SB_CSP_IOCTL_UNLOAD_CODE", _IOC_NONE, 0x4812, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_LOAD_PATCH", _IOC_READ|_IOC_WRITE, 0x4881, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MEM_AVAIL", _IOC_WRITE, 0x4884, 0x04 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_MISC_MODE", _IOC_READ|_IOC_WRITE, 0x4884, 0x10 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_REMOVE_LAST_SAMPLES", _IOC_NONE, 0x4883, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_RESET_SAMPLES", _IOC_NONE, 0x4882, 0x00 },
+{ "sound/sfnt_info.h", "SNDRV_EMUX_IOCTL_VERSION", _IOC_READ, 0x4880, 0x04 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_SET_RTC", _IOC_WRITE, 0x6105, 0x10 },
+{ "staging/android/android_alarm.h", "ANDROID_ALARM_WAIT", _IOC_NONE, 0x6101, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_NAME", _IOC_READ, 0x7702, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PIN_STATUS", _IOC_NONE, 0x7709, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_PROT_MASK", _IOC_NONE, 0x7706, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_GET_SIZE", _IOC_NONE, 0x7704, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_PIN", _IOC_WRITE, 0x7707, 0x08 },
+{ "staging/android/ashmem.h", "ASHMEM_PURGE_ALL_CACHES", _IOC_NONE, 0x770a, 0x00 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_NAME", _IOC_WRITE, 0x7701, 0x100 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_PROT_MASK", _IOC_WRITE, 0x7705, 0x04 },
+{ "staging/android/ashmem.h", "ASHMEM_SET_SIZE", _IOC_WRITE, 0x7703, 0x04 },
+{ "staging/android/ashmem.h", "ASHMEM_UNPIN", _IOC_WRITE, 0x7708, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_ALLOC", _IOC_READ|_IOC_WRITE, 0x4900, 0x14 },
+{ "staging/android/ion.h", "ION_IOC_CUSTOM", _IOC_READ|_IOC_WRITE, 0x4906, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_FREE", _IOC_READ|_IOC_WRITE, 0x4901, 0x04 },
+{ "staging/android/ion.h", "ION_IOC_IMPORT", _IOC_READ|_IOC_WRITE, 0x4905, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_MAP", _IOC_READ|_IOC_WRITE, 0x4902, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SHARE", _IOC_READ|_IOC_WRITE, 0x4904, 0x08 },
+{ "staging/android/ion.h", "ION_IOC_SYNC", _IOC_READ|_IOC_WRITE, 0x4907, 0x08 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_DMA_MAPPING", _IOC_WRITE, 0x49f1, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_KERNEL_MAPPING", _IOC_WRITE, 0x49f2, 0x20 },
+{ "staging/android/ion_test.h", "ION_IOC_TEST_SET_FD", _IOC_NONE, 0x49f0, 0x00 },
+{ "staging/android/logger.h", "LOGGER_FLUSH_LOG", _IOC_NONE, 0xae04, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_BUF_SIZE", _IOC_NONE, 0xae01, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_LOG_LEN", _IOC_NONE, 0xae02, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_NEXT_ENTRY_LEN", _IOC_NONE, 0xae03, 0x00 },
+{ "staging/android/logger.h", "LOGGER_GET_VERSION", _IOC_NONE, 0xae05, 0x00 },
+{ "staging/android/logger.h", "LOGGER_SET_VERSION", _IOC_NONE, 0xae06, 0x00 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_CREATE_FENCE", _IOC_READ|_IOC_WRITE, 0x5700, 0x28 },
+{ "staging/android/sw_sync.h", "SW_SYNC_IOC_INC", _IOC_WRITE, 0x5701, 0x04 },
+{ "staging/android/sync.h", "SYNC_IOC_FENCE_INFO", _IOC_READ|_IOC_WRITE, 0x3e02, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_MERGE", _IOC_READ|_IOC_WRITE, 0x3e01, 0x28 },
+{ "staging/android/sync.h", "SYNC_IOC_WAIT", _IOC_WRITE, 0x3e00, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_BRIGHTNESS", _IOC_READ, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIGET_COLOR", _IOC_READ, 0x4605, 0x04 },
+{ "video/da8xx-fb.h", "FBIOGET_CONTRAST", _IOC_READ, 0x4601, 0x04 },
+{ "video/da8xx-fb.h", "FBIOPUT_CONTRAST", _IOC_WRITE, 0x4602, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_BRIGHTNESS", _IOC_WRITE, 0x4603, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_COLOR", _IOC_WRITE, 0x4606, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_HSYNC", _IOC_WRITE, 0x4609, 0x04 },
+{ "video/da8xx-fb.h", "FBIPUT_VSYNC", _IOC_WRITE, 0x460a, 0x04 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_CREATE", _IOC_NONE, 0x6b00, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_OFFSET", _IOC_NONE, 0x6b04, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_OVERLAY_VIEWPORT_SET", _IOC_NONE, 0x6b01, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_SET_VIDEO_MODE", _IOC_NONE, 0x6b02, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_STRIDE", _IOC_NONE, 0x6b05, 0x00 },
+{ "video/kyro.h", "KYRO_IOCTL_UVSTRIDE", _IOC_NONE, 0x6b03, 0x00 },
+{ "video/mbxfb.h", "MBXFB_IOCG_ALPHA", _IOC_READ, 0xf401, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_ALPHA", _IOC_WRITE, 0xf402, 0x18 },
+{ "video/mbxfb.h", "MBXFB_IOCS_PLANEORDER", _IOC_READ, 0xf403, 0x02 },
+{ "video/mbxfb.h", "MBXFB_IOCS_REG", _IOC_WRITE, 0xf404, 0x0c },
+{ "video/mbxfb.h", "MBXFB_IOCX_OVERLAY", _IOC_READ|_IOC_WRITE, 0xf400, 0x30 },
+{ "video/mbxfb.h", "MBXFB_IOCX_REG", _IOC_READ|_IOC_WRITE, 0xf405, 0x0c },
+{ "video/sisfb.h", "SISFB_COMMAND", _IOC_READ|_IOC_WRITE, 0xf305, 0x54 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE", _IOC_READ, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_AUTOMAXIMIZE_OLD", _IOC_READ, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO", _IOC_READ, 0xf301, 0x11c },
+{ "video/sisfb.h", "SISFB_GET_INFO_OLD", _IOC_READ, 0x6ef8, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_INFO_SIZE", _IOC_READ, 0xf300, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_TVPOSOFFSET", _IOC_READ, 0xf304, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS", _IOC_READ, 0xf302, 0x04 },
+{ "video/sisfb.h", "SISFB_GET_VBRSTATUS_OLD", _IOC_READ, 0x6ef9, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE", _IOC_WRITE, 0xf303, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_AUTOMAXIMIZE_OLD", _IOC_WRITE, 0x6efa, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_LOCK", _IOC_WRITE, 0xf306, 0x04 },
+{ "video/sisfb.h", "SISFB_SET_TVPOSOFFSET", _IOC_WRITE, 0xf304, 0x04 },
+{ "video/sstfb.h", "SSTFB_GET_VGAPASS", _IOC_READ, 0x46dd, 0x04 },
+{ "video/sstfb.h", "SSTFB_SET_VGAPASS", _IOC_WRITE, 0x46dd, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_INTERDOMAIN", _IOC_NONE, 0x4501, 0x08 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_UNBOUND_PORT", _IOC_NONE, 0x4502, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_BIND_VIRQ", _IOC_NONE, 0x4500, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_NOTIFY", _IOC_NONE, 0x4504, 0x04 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_RESET", _IOC_NONE, 0x4505, 0x00 },
+{ "xen/evtchn.h", "IOCTL_EVTCHN_UNBIND", _IOC_NONE, 0x4503, 0x04 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_EVTCHN", _IOC_NONE, 0x4200, 0x00 },
+{ "xen/xenbus_dev.h", "IOCTL_XENBUS_BACKEND_SETUP", _IOC_NONE, 0x4201, 0x00 },
diff --git a/linux/x32/ioctls_inc1.h b/linux/x32/ioctls_inc1.h
new file mode 100644
index 0000000..c9fcdf8
--- /dev/null
+++ b/linux/x32/ioctls_inc1.h
@@ -0,0 +1 @@
+#include "i386/ioctls_inc0.h"
diff --git a/linux/x32/signalent.h b/linux/x32/signalent.h
deleted file mode 100644
index d31e6a4..0000000
--- a/linux/x32/signalent.h
+++ /dev/null
@@ -1 +0,0 @@
-#include "../signalent.h"
diff --git a/linux/x32/signalent1.h b/linux/x32/signalent1.h
index c927d72..fdae15f 100644
--- a/linux/x32/signalent1.h
+++ b/linux/x32/signalent1.h
@@ -1,2 +1,2 @@
/* i386 personality */
-#include "../signalent.h"
+#include "signalent.h"
diff --git a/linux/x32/syscallent.h b/linux/x32/syscallent.h
index 2000113..3996b42 100644
--- a/linux/x32/syscallent.h
+++ b/linux/x32/syscallent.h
@@ -1,353 +1,362 @@
- { 3, TD, sys_read, "read" }, /* 0 */
- { 3, TD, sys_write, "write" }, /* 1 */
- { 3, TD|TF, sys_open, "open" }, /* 2 */
- { 1, TD, sys_close, "close" }, /* 3 */
- { 2, TF, sys_stat, "stat" }, /* 4 */
- { 2, TD, sys_fstat, "fstat" }, /* 5 */
- { 2, TF, sys_lstat, "lstat" }, /* 6 */
- { 3, TD, sys_poll, "poll" }, /* 7 */
- { 3, TD, sys_lseek, "lseek" }, /* 8 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 9 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 10 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 11 */
- { 1, TM|SI, sys_brk, "brk" }, /* 12 */
- { 4, TS, printargs, "64:rt_sigaction" }, /* 13 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 14 */
- { 0, TS, printargs, "64:rt_sigreturn" }, /* 15 */
- { 3, TD, printargs, "64:ioctl" }, /* 16 */
- { 4, TD, sys_pread, "pread" }, /* 17 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 18 */
- { 3, TD, printargs, "64:readv" }, /* 19 */
- { 3, TD, printargs, "64:writev" }, /* 20 */
- { 2, TF, sys_access, "access" }, /* 21 */
- { 1, TD, sys_pipe, "pipe" }, /* 22 */
- { 5, TD, sys_select, "select" }, /* 23 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 24 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 25 */
- { 3, TM, sys_msync, "msync" }, /* 26 */
- { 3, TM, sys_mincore, "mincore" }, /* 27 */
- { 3, TM, sys_madvise, "madvise" }, /* 28 */
- { 4, TI, sys_shmget, "shmget" }, /* 29 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 30 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 31 */
- { 1, TD, sys_dup, "dup" }, /* 32 */
- { 2, TD, sys_dup2, "dup2" }, /* 33 */
- { 0, TS, sys_pause, "pause" }, /* 34 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 35 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 36 */
- { 1, 0, sys_alarm, "alarm" }, /* 37 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 38 */
- { 0, 0, sys_getpid, "getpid" }, /* 39 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 40 */
- { 3, TN, sys_socket, "socket" }, /* 41 */
- { 3, TN, sys_connect, "connect" }, /* 42 */
- { 3, TN, sys_accept, "accept" }, /* 43 */
- { 6, TN, sys_sendto, "sendto" }, /* 44 */
- { 6, TN, printargs, "64:recvfrom" }, /* 45 */
- { 3, TN, printargs, "64:sendmsg" }, /* 46 */
- { 5, TN, printargs, "64:recvmsg" }, /* 47 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 48 */
- { 3, TN, sys_bind, "bind" }, /* 49 */
- { 2, TN, sys_listen, "listen" }, /* 50 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 51 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 52 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 53 */
- { 5, TN, printargs, "64:setsockopt" }, /* 54 */
- { 5, TN, printargs, "64:getsockopt" }, /* 55 */
- { 5, TP, sys_clone, "clone" }, /* 56 */
- { 0, TP, sys_fork, "fork" }, /* 57 */
- { 0, TP, sys_vfork, "vfork" }, /* 58 */
- { 3, TF|TP|SE|SI, printargs, "64:execve" }, /* 59 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 60 */
- { 4, TP, sys_wait4, "wait4" }, /* 61 */
- { 2, TS, sys_kill, "kill" }, /* 62 */
- { 1, 0, sys_uname, "uname" }, /* 63 */
- { 4, TI, sys_semget, "semget" }, /* 64 */
- { 4, TI, sys_semop, "semop" }, /* 65 */
- { 4, TI, sys_semctl, "semctl" }, /* 66 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 67 */
- { 4, TI, sys_msgget, "msgget" }, /* 68 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 69 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 70 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 71 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 72 */
- { 2, TD, sys_flock, "flock" }, /* 73 */
- { 1, TD, sys_fsync, "fsync" }, /* 74 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 75 */
- { 2, TF, sys_truncate64, "truncate" }, /* 76 */
- { 2, TD, sys_ftruncate64, "ftruncate" }, /* 77 */
- { 3, TD, sys_getdents, "getdents" }, /* 78 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 79 */
- { 1, TF, sys_chdir, "chdir" }, /* 80 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 81 */
- { 2, TF, sys_rename, "rename" }, /* 82 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 83 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 84 */
- { 2, TD|TF, sys_creat, "creat" }, /* 85 */
- { 2, TF, sys_link, "link" }, /* 86 */
- { 1, TF, sys_unlink, "unlink" }, /* 87 */
- { 2, TF, sys_symlink, "symlink" }, /* 88 */
- { 3, TF, sys_readlink, "readlink" }, /* 89 */
- { 2, TF, sys_chmod, "chmod" }, /* 90 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 91 */
- { 3, TF, sys_chown, "chown" }, /* 92 */
- { 3, TD, sys_fchown, "fchown" }, /* 93 */
- { 3, TF, sys_chown, "lchown" }, /* 94 */
- { 1, 0, sys_umask, "umask" }, /* 95 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 96 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 97 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 98 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 99 */
- { 1, 0, sys_times, "times" }, /* 100 */
- { 4, 0, printargs, "64:ptrace" }, /* 101 */
- { 0, NF, sys_getuid, "getuid" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 0, NF, sys_getgid, "getgid" }, /* 104 */
- { 1, 0, sys_setuid, "setuid" }, /* 105 */
- { 1, 0, sys_setgid, "setgid" }, /* 106 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 107 */
- { 0, NF, sys_getegid, "getegid" }, /* 108 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 109 */
- { 0, 0, sys_getppid, "getppid" }, /* 110 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 111 */
- { 0, 0, sys_setsid, "setsid" }, /* 112 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 113 */
- { 2, 0, sys_setregid, "setregid" }, /* 114 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 115 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 116 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 117 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 118 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 119 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 120 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 121 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 122 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 123 */
- { 1, 0, sys_getsid, "getsid" }, /* 124 */
- { 2, 0, sys_capget, "capget" }, /* 125 */
- { 2, 0, sys_capset, "capset" }, /* 126 */
- { 2, TS, printargs, "64:rt_sigpending" }, /* 127 */
- { 4, TS, printargs, "64:rt_sigtimedwait" }, /* 128 */
- { 3, TS, printargs, "64:rt_sigqueueinfo" }, /* 129 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 130 */
- { 2, TS, printargs, "64:sigaltstack"}, /* 131 */
- { 2, TF, sys_utime, "utime" }, /* 132 */
- { 3, TF, sys_mknod, "mknod" }, /* 133 */
- { 1, TF, printargs, "64:uselib" }, /* 134 */
- { 1, 0, sys_personality, "personality" }, /* 135 */
- { 2, 0, sys_ustat, "ustat" }, /* 136 */
- { 2, TF, sys_statfs, "statfs" }, /* 137 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 138 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 139 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 140 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 141 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 142 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 143 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 144 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 145 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 146 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 147 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 148 */
- { 2, TM, sys_mlock, "mlock" }, /* 149 */
- { 2, TM, sys_munlock, "munlock" }, /* 150 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 151 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 152 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 153 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 154 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 155 */
- { 1, 0, printargs, "64:_sysctl" }, /* 156 */
- { 5, 0, sys_prctl, "prctl" }, /* 157 */
- { 2, TP, sys_arch_prctl, "arch_prctl" }, /* 158 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 159 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 160 */
- { 1, TF, sys_chroot, "chroot" }, /* 161 */
- { 0, 0, sys_sync, "sync" }, /* 162 */
- { 1, TF, sys_acct, "acct" }, /* 163 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 164 */
- { 5, TF, sys_mount, "mount" }, /* 165 */
- { 2, TF, sys_umount2, "umount" }, /* 166 */
- { 2, TF, sys_swapon, "swapon" }, /* 167 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 168 */
- { 4, 0, sys_reboot, "reboot" }, /* 169 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 170 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 171 */
- { 1, 0, sys_iopl, "iopl" }, /* 172 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 173 */
- { 2, 0, printargs, "64:create_module" }, /* 174 */
- { 3, 0, sys_init_module, "init_module" }, /* 175 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 176 */
- { 1, 0, printargs, "64:get_kernel_syms" }, /* 177 */
- { 5, 0, printargs, "64:query_module" }, /* 178 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 179 */
- { 3, 0, printargs, "64:nfsservctl" }, /* 180 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 181 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 182 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 183 */
- { 3, 0, sys_tuxcall, "tuxcall" }, /* 184 */
- { 3, 0, sys_security, "security" }, /* 185 */
- { 0, 0, sys_gettid, "gettid" }, /* 186 */
- { 3, TD, sys_readahead, "readahead" }, /* 187 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 188 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 189 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 190 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 191 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 192 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 193 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 194 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 195 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 196 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 197 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 198 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 199 */
- { 2, TS, sys_kill, "tkill" }, /* 200 */
- { 1, 0, sys_time, "time" }, /* 201 */
- { 6, 0, sys_futex, "futex" }, /* 202 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 203 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 204 */
- { 1, 0, printargs, "64:set_thread_area" }, /* 205 */
- { 2, 0, sys_io_setup, "64:io_setup" }, /* 206 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 207 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 208 */
- { 3, 0, sys_io_submit, "64:io_submit" }, /* 209 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 210 */
- { 1, 0, printargs, "64:get_thread_area" }, /* 211 */
- { 4, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 212 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 213 */
- { 4, 0, printargs, "64:epoll_ctl_old" }, /* 214 */
- { 4, 0, printargs, "64:epoll_wait_old" }, /* 215 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 216 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 217 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 218 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 219 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 220 */
- { 4, TD, sys_fadvise64_64, "fadvise64" }, /* 221 */
- { 3, 0, printargs, "64:timer_create"}, /* 222 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 223 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 224 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 225 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 226 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 227 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 228 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 229 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 230 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 231 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 232 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 233 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 234 */
- { 2, TF, sys_utimes, "utimes" }, /* 235 */
- { 5, 0, printargs, "64:vserver" }, /* 236 */
- { 6, TM, sys_mbind, "mbind" }, /* 237 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 238 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 239 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 240 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 241 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 242 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 243 */
- { 2, 0, printargs, "64:mq_notify" }, /* 244 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 245 */
- { 4, 0, printargs, "64:kexec_load" }, /* 246 */
- { 5, TP, printargs, "64:waitid" }, /* 247 */
- { 5, 0, sys_add_key, "add_key" }, /* 248 */
- { 4, 0, sys_request_key, "request_key" }, /* 249 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 250 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 251 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 252 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 253 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 254 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 255 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 256 */
- { 4, TD|TF, sys_openat, "openat" }, /* 257 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 258 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 259 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 260 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 261 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 262 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 263 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 264 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 265 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 266 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 267 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 268 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 269 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 270 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 271 */
- { 1, TP, sys_unshare, "unshare" }, /* 272 */
- { 2, 0, printargs, "64:set_robust_list" }, /* 273 */
- { 3, 0, printargs, "64:get_robust_list" }, /* 274 */
- { 6, TD, sys_splice, "splice" }, /* 275 */
- { 4, TD, sys_tee, "tee" }, /* 276 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 277 */
- { 4, TD, printargs, "64:vmsplice" }, /* 278 */
- { 6, TM, printargs, "64:move_pages" }, /* 279 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 280 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 281 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 282 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 283 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 284 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 285 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 286 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 287 */
- { 4, TN, sys_accept4, "accept4" }, /* 288 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 289 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 290 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 291 */
- { 3, TD, sys_dup3, "dup3" }, /* 292 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 293 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 294 */
- { 4, TD, printargs, "64:preadv" }, /* 295 */
- { 4, TD, printargs, "64:pwritev" }, /* 296 */
- { 4, TP|TS, printargs, "64:rt_tgsigqueueinfo"}, /* 297 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 298 */
- { 5, TN, printargs, "64:recvmmsg" }, /* 299 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 300 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 301 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 302 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 303 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 304 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 305 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 306 */
- { 4, TN, printargs, "64:sendmmsg" }, /* 307 */
- { 2, TD, sys_setns, "setns" }, /* 308 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 309 */
- { 6, 0, printargs, "64:process_vm_readv" }, /* 310 */
- { 6, 0, printargs, "64:process_vm_writev" }, /* 311 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 312 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 313 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 314 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 315 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 316 */
-
- [317 ... 511] = {},
-
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 512 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 513 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 514 */
- { 3, TD, sys_readv, "readv" }, /* 515 */
- { 3, TD, sys_writev, "writev" }, /* 516 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 517 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 518 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 519 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 520 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 521 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 522 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 523 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 524 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 525 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 526 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 527 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 528 */
- { 5, TP, sys_waitid, "waitid" }, /* 529 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 530 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 531 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 532 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 533 */
- { 4, TD, sys_preadv, "preadv" }, /* 534 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 535 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 536 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 537 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 538 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 539 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 540 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 541 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 542 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 543 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 544 */
+[ 0] = { 3, TD, sys_read, "read" },
+[ 1] = { 3, TD, sys_write, "write" },
+[ 2] = { 3, TD|TF, sys_open, "open" },
+[ 3] = { 1, TD, sys_close, "close" },
+[ 4] = { 2, TF, sys_stat, "stat" },
+[ 5] = { 2, TD, sys_fstat, "fstat" },
+[ 6] = { 2, TF, sys_lstat, "lstat" },
+[ 7] = { 3, TD, sys_poll, "poll" },
+[ 8] = { 3, TD, sys_lseek, "lseek" },
+[ 9] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 10] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[ 11] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 12] = { 1, TM|SI, sys_brk, "brk" },
+[ 13] = { 4, TS, printargs, "64:rt_sigaction" },
+[ 14] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[ 15] = { 0, TS, printargs, "64:rt_sigreturn" },
+[ 16] = { 3, TD, printargs, "64:ioctl" },
+[ 17] = { 4, TD, sys_pread, "pread" },
+[ 18] = { 4, TD, sys_pwrite, "pwrite" },
+[ 19] = { 3, TD, printargs, "64:readv" },
+[ 20] = { 3, TD, printargs, "64:writev" },
+[ 21] = { 2, TF, sys_access, "access" },
+[ 22] = { 1, TD, sys_pipe, "pipe" },
+[ 23] = { 5, TD, sys_select, "select" },
+[ 24] = { 0, 0, sys_sched_yield, "sched_yield" },
+[ 25] = { 5, TM|SI, sys_mremap, "mremap" },
+[ 26] = { 3, TM, sys_msync, "msync" },
+[ 27] = { 3, TM, sys_mincore, "mincore" },
+[ 28] = { 3, TM, sys_madvise, "madvise" },
+[ 29] = { 3, TI, sys_shmget, "shmget" },
+[ 30] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[ 31] = { 3, TI, sys_shmctl, "shmctl" },
+[ 32] = { 1, TD, sys_dup, "dup" },
+[ 33] = { 2, TD, sys_dup2, "dup2" },
+[ 34] = { 0, TS, sys_pause, "pause" },
+[ 35] = { 2, 0, sys_nanosleep, "nanosleep" },
+[ 36] = { 2, 0, sys_getitimer, "getitimer" },
+[ 37] = { 1, 0, sys_alarm, "alarm" },
+[ 38] = { 3, 0, sys_setitimer, "setitimer" },
+[ 39] = { 0, 0, sys_getpid, "getpid" },
+[ 40] = { 4, TD|TN, sys_sendfile64, "sendfile" },
+[ 41] = { 3, TN, sys_socket, "socket" },
+[ 42] = { 3, TN, sys_connect, "connect" },
+[ 43] = { 3, TN, sys_accept, "accept" },
+[ 44] = { 6, TN, sys_sendto, "sendto" },
+[ 45] = { 6, TN, printargs, "64:recvfrom" },
+[ 46] = { 3, TN, printargs, "64:sendmsg" },
+[ 47] = { 5, TN, printargs, "64:recvmsg" },
+[ 48] = { 2, TN, sys_shutdown, "shutdown" },
+[ 49] = { 3, TN, sys_bind, "bind" },
+[ 50] = { 2, TN, sys_listen, "listen" },
+[ 51] = { 3, TN, sys_getsockname, "getsockname" },
+[ 52] = { 3, TN, sys_getpeername, "getpeername" },
+[ 53] = { 4, TN, sys_socketpair, "socketpair" },
+[ 54] = { 5, TN, printargs, "64:setsockopt" },
+[ 55] = { 5, TN, printargs, "64:getsockopt" },
+[ 56] = { 5, TP, sys_clone, "clone" },
+[ 57] = { 0, TP, sys_fork, "fork" },
+[ 58] = { 0, TP, sys_vfork, "vfork" },
+[ 59] = { 3, TF|TP|SE|SI, printargs, "64:execve" },
+[ 60] = { 1, TP|SE, sys_exit, "_exit" },
+[ 61] = { 4, TP, sys_wait4, "wait4" },
+[ 62] = { 2, TS, sys_kill, "kill" },
+[ 63] = { 1, 0, sys_uname, "uname" },
+[ 64] = { 3, TI, sys_semget, "semget" },
+[ 65] = { 3, TI, sys_semop, "semop" },
+[ 66] = { 4, TI, sys_semctl, "semctl" },
+[ 67] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[ 68] = { 2, TI, sys_msgget, "msgget" },
+[ 69] = { 4, TI, sys_msgsnd, "msgsnd" },
+[ 70] = { 5, TI, sys_msgrcv, "msgrcv" },
+[ 71] = { 3, TI, sys_msgctl, "msgctl" },
+[ 72] = { 3, TD, sys_fcntl, "fcntl" },
+[ 73] = { 2, TD, sys_flock, "flock" },
+[ 74] = { 1, TD, sys_fsync, "fsync" },
+[ 75] = { 1, TD, sys_fdatasync, "fdatasync" },
+[ 76] = { 2, TF, sys_truncate64, "truncate" },
+[ 77] = { 2, TD, sys_ftruncate64, "ftruncate" },
+[ 78] = { 3, TD, sys_getdents, "getdents" },
+[ 79] = { 2, TF, sys_getcwd, "getcwd" },
+[ 80] = { 1, TF, sys_chdir, "chdir" },
+[ 81] = { 1, TD, sys_fchdir, "fchdir" },
+[ 82] = { 2, TF, sys_rename, "rename" },
+[ 83] = { 2, TF, sys_mkdir, "mkdir" },
+[ 84] = { 1, TF, sys_rmdir, "rmdir" },
+[ 85] = { 2, TD|TF, sys_creat, "creat" },
+[ 86] = { 2, TF, sys_link, "link" },
+[ 87] = { 1, TF, sys_unlink, "unlink" },
+[ 88] = { 2, TF, sys_symlink, "symlink" },
+[ 89] = { 3, TF, sys_readlink, "readlink" },
+[ 90] = { 2, TF, sys_chmod, "chmod" },
+[ 91] = { 2, TD, sys_fchmod, "fchmod" },
+[ 92] = { 3, TF, sys_chown, "chown" },
+[ 93] = { 3, TD, sys_fchown, "fchown" },
+[ 94] = { 3, TF, sys_chown, "lchown" },
+[ 95] = { 1, 0, sys_umask, "umask" },
+[ 96] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 97] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 98] = { 2, 0, sys_getrusage, "getrusage" },
+[ 99] = { 1, 0, sys_sysinfo, "sysinfo" },
+[100] = { 1, 0, sys_times, "times" },
+[101] = { 4, 0, printargs, "64:ptrace" },
+[102] = { 0, NF, sys_getuid, "getuid" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 0, NF, sys_getgid, "getgid" },
+[105] = { 1, 0, sys_setuid, "setuid" },
+[106] = { 1, 0, sys_setgid, "setgid" },
+[107] = { 0, NF, sys_geteuid, "geteuid" },
+[108] = { 0, NF, sys_getegid, "getegid" },
+[109] = { 2, 0, sys_setpgid, "setpgid" },
+[110] = { 0, 0, sys_getppid, "getppid" },
+[111] = { 0, 0, sys_getpgrp, "getpgrp" },
+[112] = { 0, 0, sys_setsid, "setsid" },
+[113] = { 2, 0, sys_setreuid, "setreuid" },
+[114] = { 2, 0, sys_setregid, "setregid" },
+[115] = { 2, 0, sys_getgroups, "getgroups" },
+[116] = { 2, 0, sys_setgroups, "setgroups" },
+[117] = { 3, 0, sys_setresuid, "setresuid" },
+[118] = { 3, 0, sys_getresuid, "getresuid" },
+[119] = { 3, 0, sys_setresgid, "setresgid" },
+[120] = { 3, 0, sys_getresgid, "getresgid" },
+[121] = { 1, 0, sys_getpgid, "getpgid" },
+[122] = { 1, NF, sys_setfsuid, "setfsuid" },
+[123] = { 1, NF, sys_setfsgid, "setfsgid" },
+[124] = { 1, 0, sys_getsid, "getsid" },
+[125] = { 2, 0, sys_capget, "capget" },
+[126] = { 2, 0, sys_capset, "capset" },
+[127] = { 2, TS, printargs, "64:rt_sigpending" },
+[128] = { 4, TS, printargs, "64:rt_sigtimedwait" },
+[129] = { 3, TS, printargs, "64:rt_sigqueueinfo" },
+[130] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[131] = { 2, TS, printargs, "64:sigaltstack" },
+[132] = { 2, TF, sys_utime, "utime" },
+[133] = { 3, TF, sys_mknod, "mknod" },
+[134] = { 1, TF, printargs, "64:uselib" },
+[135] = { 1, 0, sys_personality, "personality" },
+[136] = { 2, 0, sys_ustat, "ustat" },
+[137] = { 2, TF, sys_statfs, "statfs" },
+[138] = { 2, TD, sys_fstatfs, "fstatfs" },
+[139] = { 3, 0, sys_sysfs, "sysfs" },
+[140] = { 2, 0, sys_getpriority, "getpriority" },
+[141] = { 3, 0, sys_setpriority, "setpriority" },
+[142] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[143] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[144] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[145] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[146] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[147] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[148] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[149] = { 2, TM, sys_mlock, "mlock" },
+[150] = { 2, TM, sys_munlock, "munlock" },
+[151] = { 1, TM, sys_mlockall, "mlockall" },
+[152] = { 0, TM, sys_munlockall, "munlockall" },
+[153] = { 0, 0, sys_vhangup, "vhangup" },
+[154] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[155] = { 2, TF, sys_pivotroot, "pivot_root" },
+[156] = { 1, 0, printargs, "64:_sysctl" },
+[157] = { 5, 0, sys_prctl, "prctl" },
+[158] = { 2, TP, sys_arch_prctl, "arch_prctl" },
+[159] = { 1, 0, sys_adjtimex, "adjtimex" },
+[160] = { 2, 0, sys_setrlimit, "setrlimit" },
+[161] = { 1, TF, sys_chroot, "chroot" },
+[162] = { 0, 0, sys_sync, "sync" },
+[163] = { 1, TF, sys_acct, "acct" },
+[164] = { 2, 0, sys_settimeofday, "settimeofday" },
+[165] = { 5, TF, sys_mount, "mount" },
+[166] = { 2, TF, sys_umount2, "umount2" },
+[167] = { 2, TF, sys_swapon, "swapon" },
+[168] = { 1, TF, sys_swapoff, "swapoff" },
+[169] = { 4, 0, sys_reboot, "reboot" },
+[170] = { 2, 0, sys_sethostname, "sethostname" },
+[171] = { 2, 0, sys_setdomainname, "setdomainname" },
+[172] = { 1, 0, sys_iopl, "iopl" },
+[173] = { 3, 0, sys_ioperm, "ioperm" },
+[174] = { 2, 0, printargs, "64:create_module" },
+[175] = { 3, 0, sys_init_module, "init_module" },
+[176] = { 2, 0, sys_delete_module, "delete_module" },
+[177] = { 1, 0, printargs, "64:get_kernel_syms" },
+[178] = { 5, 0, printargs, "64:query_module" },
+[179] = { 4, TF, sys_quotactl, "quotactl" },
+[180] = { 3, 0, printargs, "64:nfsservctl" },
+[181] = { 5, 0, sys_getpmsg, "getpmsg" },
+[182] = { 5, 0, sys_putpmsg, "putpmsg" },
+[183] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[184] = { 3, 0, sys_tuxcall, "tuxcall" },
+[185] = { 3, 0, sys_security, "security" },
+[186] = { 0, 0, sys_gettid, "gettid" },
+[187] = { 3, TD, sys_readahead, "readahead" },
+[188] = { 5, TF, sys_setxattr, "setxattr" },
+[189] = { 5, TF, sys_setxattr, "lsetxattr" },
+[190] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[191] = { 4, TF, sys_getxattr, "getxattr" },
+[192] = { 4, TF, sys_getxattr, "lgetxattr" },
+[193] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[194] = { 3, TF, sys_listxattr, "listxattr" },
+[195] = { 3, TF, sys_listxattr, "llistxattr" },
+[196] = { 3, TD, sys_flistxattr, "flistxattr" },
+[197] = { 2, TF, sys_removexattr, "removexattr" },
+[198] = { 2, TF, sys_removexattr, "lremovexattr" },
+[199] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[200] = { 2, TS, sys_kill, "tkill" },
+[201] = { 1, 0, sys_time, "time" },
+[202] = { 6, 0, sys_futex, "futex" },
+[203] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[204] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[205] = { 1, 0, printargs, "64:set_thread_area" },
+[206] = { 2, 0, sys_io_setup, "64:io_setup" },
+[207] = { 1, 0, sys_io_destroy, "io_destroy" },
+[208] = { 5, 0, sys_io_getevents, "io_getevents" },
+[209] = { 3, 0, sys_io_submit, "64:io_submit" },
+[210] = { 3, 0, sys_io_cancel, "io_cancel" },
+[211] = { 1, 0, printargs, "64:get_thread_area" },
+[212] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[213] = { 1, TD, sys_epoll_create, "epoll_create" },
+[214] = { 4, 0, printargs, "64:epoll_ctl_old" },
+[215] = { 4, 0, printargs, "64:epoll_wait_old" },
+[216] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[217] = { 3, TD, sys_getdents64, "getdents64" },
+[218] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[219] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[220] = { 4, TI, sys_semtimedop, "semtimedop" },
+[221] = { 4, TD, sys_fadvise64_64, "fadvise64" },
+[222] = { 3, 0, printargs, "64:timer_create" },
+[223] = { 4, 0, sys_timer_settime, "timer_settime" },
+[224] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[225] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[226] = { 1, 0, sys_timer_delete, "timer_delete" },
+[227] = { 2, 0, sys_clock_settime, "clock_settime" },
+[228] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[229] = { 2, 0, sys_clock_getres, "clock_getres" },
+[230] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[231] = { 1, TP|SE, sys_exit, "exit_group" },
+[232] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[233] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[234] = { 3, TS, sys_tgkill, "tgkill" },
+[235] = { 2, TF, sys_utimes, "utimes" },
+[236] = { 5, 0, printargs, "64:vserver" },
+[237] = { 6, TM, sys_mbind, "mbind" },
+[238] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[239] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[240] = { 4, 0, sys_mq_open, "mq_open" },
+[241] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[242] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[243] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[244] = { 2, 0, printargs, "64:mq_notify" },
+[245] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[246] = { 4, 0, printargs, "64:kexec_load" },
+[247] = { 5, TP, printargs, "64:waitid" },
+[248] = { 5, 0, sys_add_key, "add_key" },
+[249] = { 4, 0, sys_request_key, "request_key" },
+[250] = { 5, 0, sys_keyctl, "keyctl" },
+[251] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[252] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[253] = { 0, TD, sys_inotify_init, "inotify_init" },
+[254] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[255] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[256] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[257] = { 4, TD|TF, sys_openat, "openat" },
+[258] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[259] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[260] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[261] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[262] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[263] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[264] = { 4, TD|TF, sys_renameat, "renameat" },
+[265] = { 5, TD|TF, sys_linkat, "linkat" },
+[266] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[267] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[268] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[269] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[270] = { 6, TD, sys_pselect6, "pselect6" },
+[271] = { 5, TD, sys_ppoll, "ppoll" },
+[272] = { 1, TP, sys_unshare, "unshare" },
+[273] = { 2, 0, printargs, "64:set_robust_list" },
+[274] = { 3, 0, printargs, "64:get_robust_list" },
+[275] = { 6, TD, sys_splice, "splice" },
+[276] = { 4, TD, sys_tee, "tee" },
+[277] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[278] = { 4, TD, printargs, "64:vmsplice" },
+[279] = { 6, TM, printargs, "64:move_pages" },
+[280] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[281] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[282] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[283] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[284] = { 1, TD, sys_eventfd, "eventfd" },
+[285] = { 4, TD, sys_fallocate, "fallocate" },
+[286] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[287] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[288] = { 4, TN, sys_accept4, "accept4" },
+[289] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[290] = { 2, TD, sys_eventfd2, "eventfd2" },
+[291] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[292] = { 3, TD, sys_dup3, "dup3" },
+[293] = { 2, TD, sys_pipe2, "pipe2" },
+[294] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[295] = { 4, TD, printargs, "64:preadv" },
+[296] = { 4, TD, printargs, "64:pwritev" },
+[297] = { 4, TP|TS, printargs, "64:rt_tgsigqueueinfo" },
+[298] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[299] = { 5, TN, printargs, "64:recvmmsg" },
+[300] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[301] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[302] = { 4, 0, sys_prlimit64, "prlimit64" },
+[303] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[304] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[305] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[306] = { 1, TD, sys_syncfs, "syncfs" },
+[307] = { 4, TN, printargs, "64:sendmmsg" },
+[308] = { 2, TD, sys_setns, "setns" },
+[309] = { 3, 0, sys_getcpu, "getcpu" },
+[310] = { 6, 0, printargs, "64:process_vm_readv" },
+[311] = { 6, 0, printargs, "64:process_vm_writev" },
+[312] = { 5, 0, sys_kcmp, "kcmp" },
+[313] = { 3, TD, sys_finit_module, "finit_module" },
+[314] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[315] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[316] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[317] = { 3, 0, sys_seccomp, "seccomp", },
+[318] = { 3, 0, sys_getrandom, "getrandom", },
+[319] = { 2, TD, sys_memfd_create, "memfd_create", },
+[320] = { 5, TD, sys_kexec_file_load, "kexec_file_load", },
+[321] = { 3, TD, sys_bpf, "bpf", },
+[322] = { 5, TD|TF|TP|SE|SI, printargs, "64:execveat", },
+[323 ... 511] = { },
+/*
+ * x32-specific system call numbers start at 512 to avoid cache impact
+ * for native 64-bit operation.
+ */
+[512] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[513] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[514] = { 3, TD, sys_ioctl, "ioctl" },
+[515] = { 3, TD, sys_readv, "readv" },
+[516] = { 3, TD, sys_writev, "writev" },
+[517] = { 6, TN, sys_recvfrom, "recvfrom" },
+[518] = { 3, TN, sys_sendmsg, "sendmsg" },
+[519] = { 3, TN, sys_recvmsg, "recvmsg" },
+[520] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[521] = { 4, 0, sys_ptrace, "ptrace" },
+[522] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[523] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[524] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[525] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[526] = { 3, 0, sys_timer_create, "timer_create" },
+[527] = { 2, 0, sys_mq_notify, "mq_notify" },
+[528] = { 4, 0, sys_kexec_load, "kexec_load" },
+[529] = { 5, TP, sys_waitid, "waitid" },
+[530] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[531] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[532] = { 4, TD, sys_vmsplice, "vmsplice" },
+[533] = { 6, TM, sys_move_pages, "move_pages" },
+[534] = { 4, TD, sys_preadv, "preadv" },
+[535] = { 4, TD, sys_pwritev, "pwritev" },
+[536] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[537] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[538] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[539] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[540] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[541] = { 5, TN, sys_setsockopt, "setsockopt" },
+[542] = { 5, TN, sys_getsockopt, "getsockopt" },
+[543] = { 2, 0, sys_io_setup, "io_setup" },
+[544] = { 3, 0, sys_io_submit, "io_submit" },
+[545] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/x86_64/arch_regs.h b/linux/x86_64/arch_regs.h
new file mode 100644
index 0000000..c2ccee6
--- /dev/null
+++ b/linux/x86_64/arch_regs.h
@@ -0,0 +1,2 @@
+extern uint32_t *const i386_esp_ptr;
+extern uint64_t *const x86_64_rsp_ptr;
diff --git a/linux/x86_64/errnoent1.h b/linux/x86_64/errnoent1.h
index de1136c..d32435a 100644
--- a/linux/x86_64/errnoent1.h
+++ b/linux/x86_64/errnoent1.h
@@ -1,2 +1,2 @@
/* i386 personality */
-#include "../errnoent.h"
+#include "errnoent.h"
diff --git a/linux/x86_64/errnoent2.h b/linux/x86_64/errnoent2.h
index 0630919..2192ec8 100644
--- a/linux/x86_64/errnoent2.h
+++ b/linux/x86_64/errnoent2.h
@@ -1,2 +1,2 @@
/* x32 personality */
-#include "../errnoent.h"
+#include "errnoent.h"
diff --git a/linux/x86_64/ioctlent.h.in b/linux/x86_64/ioctlent.h.in
deleted file mode 100644
index 52ac99b..0000000
--- a/linux/x86_64/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-#include "../i386/ioctlent.h.in"
diff --git a/linux/x86_64/ioctlent1.h b/linux/x86_64/ioctlent1.h
deleted file mode 100644
index 4750671..0000000
--- a/linux/x86_64/ioctlent1.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* i386 personality */
-#include "ioctlent.h"
diff --git a/linux/x86_64/ioctlent2.h b/linux/x86_64/ioctlent2.h
deleted file mode 100644
index fd4b94d..0000000
--- a/linux/x86_64/ioctlent2.h
+++ /dev/null
@@ -1,2 +0,0 @@
-/* x32 personality */
-#include "ioctlent.h"
diff --git a/linux/x86_64/ioctls_arch0.h b/linux/x86_64/ioctls_arch0.h
new file mode 100644
index 0000000..3a978f0
--- /dev/null
+++ b/linux/x86_64/ioctls_arch0.h
@@ -0,0 +1,16 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/x86/include/ tree. */
+{ "asm/mce.h", "MCE_GETCLEAR_FLAGS", _IOC_READ, 0x4d03, 0x04 },
+{ "asm/mce.h", "MCE_GET_LOG_LEN", _IOC_READ, 0x4d02, 0x04 },
+{ "asm/mce.h", "MCE_GET_RECORD_LEN", _IOC_READ, 0x4d01, 0x04 },
+{ "asm/msr.h", "X86_IOC_RDMSR_REGS", _IOC_READ|_IOC_WRITE, 0x63a0, 0x20 },
+{ "asm/msr.h", "X86_IOC_WRMSR_REGS", _IOC_READ|_IOC_WRITE, 0x63a1, 0x20 },
+{ "asm/mtrr.h", "MTRRIOC_ADD_ENTRY", _IOC_WRITE, 0x4d00, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_ADD_PAGE_ENTRY", _IOC_WRITE, 0x4d05, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_DEL_ENTRY", _IOC_WRITE, 0x4d02, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_DEL_PAGE_ENTRY", _IOC_WRITE, 0x4d07, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_GET_ENTRY", _IOC_READ|_IOC_WRITE, 0x4d03, 0x18 },
+{ "asm/mtrr.h", "MTRRIOC_GET_PAGE_ENTRY", _IOC_READ|_IOC_WRITE, 0x4d08, 0x18 },
+{ "asm/mtrr.h", "MTRRIOC_KILL_ENTRY", _IOC_WRITE, 0x4d04, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_KILL_PAGE_ENTRY", _IOC_WRITE, 0x4d09, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_SET_ENTRY", _IOC_WRITE, 0x4d01, 0x10 },
+{ "asm/mtrr.h", "MTRRIOC_SET_PAGE_ENTRY", _IOC_WRITE, 0x4d06, 0x10 },
diff --git a/linux/x86_64/ioctls_arch1.h b/linux/x86_64/ioctls_arch1.h
new file mode 100644
index 0000000..58a5706
--- /dev/null
+++ b/linux/x86_64/ioctls_arch1.h
@@ -0,0 +1 @@
+#include "i386/ioctls_arch0.h"
diff --git a/linux/x86_64/ioctls_arch2.h b/linux/x86_64/ioctls_arch2.h
new file mode 100644
index 0000000..41d00f9
--- /dev/null
+++ b/linux/x86_64/ioctls_arch2.h
@@ -0,0 +1 @@
+#include "ioctls_arch0.h"
diff --git a/linux/x86_64/ioctls_inc0.h b/linux/x86_64/ioctls_inc0.h
new file mode 100644
index 0000000..f9939fa
--- /dev/null
+++ b/linux/x86_64/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "64/ioctls_inc.h"
diff --git a/linux/x86_64/ioctls_inc1.h b/linux/x86_64/ioctls_inc1.h
new file mode 100644
index 0000000..c9fcdf8
--- /dev/null
+++ b/linux/x86_64/ioctls_inc1.h
@@ -0,0 +1 @@
+#include "i386/ioctls_inc0.h"
diff --git a/linux/x86_64/ioctls_inc2.h b/linux/x86_64/ioctls_inc2.h
new file mode 100644
index 0000000..9749664
--- /dev/null
+++ b/linux/x86_64/ioctls_inc2.h
@@ -0,0 +1 @@
+#include "x32/ioctls_inc0.h"
diff --git a/linux/x86_64/signalent1.h b/linux/x86_64/signalent1.h
index c927d72..fdae15f 100644
--- a/linux/x86_64/signalent1.h
+++ b/linux/x86_64/signalent1.h
@@ -1,2 +1,2 @@
/* i386 personality */
-#include "../signalent.h"
+#include "signalent.h"
diff --git a/linux/x86_64/signalent2.h b/linux/x86_64/signalent2.h
index c8f6824..6b32d62 100644
--- a/linux/x86_64/signalent2.h
+++ b/linux/x86_64/signalent2.h
@@ -1,2 +1,2 @@
/* x32 personality */
-#include "../signalent.h"
+#include "signalent.h"
diff --git a/linux/x86_64/syscallent.h b/linux/x86_64/syscallent.h
index ed0f4fb..f484402 100644
--- a/linux/x86_64/syscallent.h
+++ b/linux/x86_64/syscallent.h
@@ -1,317 +1,323 @@
- { 3, TD, sys_read, "read" }, /* 0 */
- { 3, TD, sys_write, "write" }, /* 1 */
- { 3, TD|TF, sys_open, "open" }, /* 2 */
- { 1, TD, sys_close, "close" }, /* 3 */
- { 2, TF, sys_stat, "stat" }, /* 4 */
- { 2, TD, sys_fstat, "fstat" }, /* 5 */
- { 2, TF, sys_lstat, "lstat" }, /* 6 */
- { 3, TD, sys_poll, "poll" }, /* 7 */
- { 3, TD, sys_lseek, "lseek" }, /* 8 */
- { 6, TD|TM|SI, sys_mmap, "mmap" }, /* 9 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 10 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 11 */
- { 1, TM|SI, sys_brk, "brk" }, /* 12 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 13 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 14 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 15 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 16 */
- { 4, TD, sys_pread, "pread" }, /* 17 */
- { 4, TD, sys_pwrite, "pwrite" }, /* 18 */
- { 3, TD, sys_readv, "readv" }, /* 19 */
- { 3, TD, sys_writev, "writev" }, /* 20 */
- { 2, TF, sys_access, "access" }, /* 21 */
- { 1, TD, sys_pipe, "pipe" }, /* 22 */
- { 5, TD, sys_select, "select" }, /* 23 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 24 */
- { 5, TM|SI, sys_mremap, "mremap" }, /* 25 */
- { 3, TM, sys_msync, "msync" }, /* 26 */
- { 3, TM, sys_mincore, "mincore" }, /* 27 */
- { 3, TM, sys_madvise, "madvise" }, /* 28 */
- { 4, TI, sys_shmget, "shmget" }, /* 29 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 30 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 31 */
- { 1, TD, sys_dup, "dup" }, /* 32 */
- { 2, TD, sys_dup2, "dup2" }, /* 33 */
- { 0, TS, sys_pause, "pause" }, /* 34 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 35 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 36 */
- { 1, 0, sys_alarm, "alarm" }, /* 37 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 38 */
- { 0, 0, sys_getpid, "getpid" }, /* 39 */
- { 4, TD|TN, sys_sendfile64, "sendfile" }, /* 40 */
- { 3, TN, sys_socket, "socket" }, /* 41 */
- { 3, TN, sys_connect, "connect" }, /* 42 */
- { 3, TN, sys_accept, "accept" }, /* 43 */
- { 6, TN, sys_sendto, "sendto" }, /* 44 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 45 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 46 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 47 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 48 */
- { 3, TN, sys_bind, "bind" }, /* 49 */
- { 2, TN, sys_listen, "listen" }, /* 50 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 51 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 52 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 53 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 54 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 55 */
- { 5, TP, sys_clone, "clone" }, /* 56 */
- { 0, TP, sys_fork, "fork" }, /* 57 */
- { 0, TP, sys_vfork, "vfork" }, /* 58 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 59 */
- { 1, TP|SE, sys_exit, "_exit" }, /* 60 */
- { 4, TP, sys_wait4, "wait4" }, /* 61 */
- { 2, TS, sys_kill, "kill" }, /* 62 */
- { 1, 0, sys_uname, "uname" }, /* 63 */
- { 4, TI, sys_semget, "semget" }, /* 64 */
- { 4, TI, sys_semop, "semop" }, /* 65 */
- { 4, TI, sys_semctl, "semctl" }, /* 66 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 67 */
- { 4, TI, sys_msgget, "msgget" }, /* 68 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 69 */
- { 5, TI, sys_msgrcv, "msgrcv" }, /* 70 */
- { 3, TI, sys_msgctl, "msgctl" }, /* 71 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 72 */
- { 2, TD, sys_flock, "flock" }, /* 73 */
- { 1, TD, sys_fsync, "fsync" }, /* 74 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 75 */
- { 2, TF, sys_truncate, "truncate" }, /* 76 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 77 */
- { 3, TD, sys_getdents, "getdents" }, /* 78 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 79 */
- { 1, TF, sys_chdir, "chdir" }, /* 80 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 81 */
- { 2, TF, sys_rename, "rename" }, /* 82 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 83 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 84 */
- { 2, TD|TF, sys_creat, "creat" }, /* 85 */
- { 2, TF, sys_link, "link" }, /* 86 */
- { 1, TF, sys_unlink, "unlink" }, /* 87 */
- { 2, TF, sys_symlink, "symlink" }, /* 88 */
- { 3, TF, sys_readlink, "readlink" }, /* 89 */
- { 2, TF, sys_chmod, "chmod" }, /* 90 */
- { 2, TD, sys_fchmod, "fchmod" }, /* 91 */
- { 3, TF, sys_chown, "chown" }, /* 92 */
- { 3, TD, sys_fchown, "fchown" }, /* 93 */
- { 3, TF, sys_chown, "lchown" }, /* 94 */
- { 1, 0, sys_umask, "umask" }, /* 95 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 96 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 97 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 98 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 99 */
- { 1, 0, sys_times, "times" }, /* 100 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 101 */
- { 0, NF, sys_getuid, "getuid" }, /* 102 */
- { 3, 0, sys_syslog, "syslog" }, /* 103 */
- { 0, NF, sys_getgid, "getgid" }, /* 104 */
- { 1, 0, sys_setuid, "setuid" }, /* 105 */
- { 1, 0, sys_setgid, "setgid" }, /* 106 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 107 */
- { 0, NF, sys_getegid, "getegid" }, /* 108 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 109 */
- { 0, 0, sys_getppid, "getppid" }, /* 110 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 111 */
- { 0, 0, sys_setsid, "setsid" }, /* 112 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 113 */
- { 2, 0, sys_setregid, "setregid" }, /* 114 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 115 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 116 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 117 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 118 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 119 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 120 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 121 */
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 122 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 123 */
- { 1, 0, sys_getsid, "getsid" }, /* 124 */
- { 2, 0, sys_capget, "capget" }, /* 125 */
- { 2, 0, sys_capset, "capset" }, /* 126 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 127 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 128 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 129 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 130 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 131 */
- { 2, TF, sys_utime, "utime" }, /* 132 */
- { 3, TF, sys_mknod, "mknod" }, /* 133 */
- { 1, TF, sys_uselib, "uselib" }, /* 134 */
- { 1, 0, sys_personality, "personality" }, /* 135 */
- { 2, 0, sys_ustat, "ustat" }, /* 136 */
- { 2, TF, sys_statfs, "statfs" }, /* 137 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 138 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 139 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 140 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 141 */
- { 0, 0, sys_sched_setparam, "sched_setparam" }, /* 142 */
- { 2, 0, sys_sched_getparam, "sched_getparam" }, /* 143 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler" }, /* 144 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler" }, /* 145 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max" }, /* 146 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min" }, /* 147 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" }, /* 148 */
- { 2, TM, sys_mlock, "mlock" }, /* 149 */
- { 2, TM, sys_munlock, "munlock" }, /* 150 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 151 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 152 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 153 */
- { 3, 0, sys_modify_ldt, "modify_ldt" }, /* 154 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 155 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 156 */
- { 5, 0, sys_prctl, "prctl" }, /* 157 */
- { 2, TP, sys_arch_prctl, "arch_prctl" }, /* 158 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 159 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 160 */
- { 1, TF, sys_chroot, "chroot" }, /* 161 */
- { 0, 0, sys_sync, "sync" }, /* 162 */
- { 1, TF, sys_acct, "acct" }, /* 163 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 164 */
- { 5, TF, sys_mount, "mount" }, /* 165 */
- { 2, TF, sys_umount2, "umount" }, /* 166 */
- { 2, TF, sys_swapon, "swapon" }, /* 167 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 168 */
- { 4, 0, sys_reboot, "reboot" }, /* 169 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 170 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 171 */
- { 1, 0, sys_iopl, "iopl" }, /* 172 */
- { 3, 0, sys_ioperm, "ioperm" }, /* 173 */
- { 2, 0, sys_create_module, "create_module" }, /* 174 */
- { 3, 0, sys_init_module, "init_module" }, /* 175 */
- { 2, 0, sys_delete_module, "delete_module" }, /* 176 */
- { 1, 0, sys_get_kernel_syms, "get_kernel_syms"}, /* 177 */
- { 5, 0, sys_query_module, "query_module" }, /* 178 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 179 */
- { 3, 0, sys_nfsservctl, "nfsservctl" }, /* 180 */
- { 5, 0, sys_getpmsg, "getpmsg" }, /* 181 */
- { 5, 0, sys_putpmsg, "putpmsg" }, /* 182 */
- { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 183 */
- { 3, 0, sys_tuxcall, "tuxcall" }, /* 184 */
- { 3, 0, sys_security, "security" }, /* 185 */
- { 0, 0, sys_gettid, "gettid" }, /* 186 */
- { 3, TD, sys_readahead, "readahead" }, /* 187 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 188 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 189 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 190 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 191 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 192 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 193 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 194 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 195 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 196 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 197 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 198 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 199 */
- { 2, TS, sys_kill, "tkill" }, /* 200 */
- { 1, 0, sys_time, "time" }, /* 201 */
- { 6, 0, sys_futex, "futex" }, /* 202 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },/* 203 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },/* 204 */
- { 1, 0, sys_set_thread_area, "set_thread_area" }, /* 205 */
- { 2, 0, sys_io_setup, "io_setup" }, /* 206 */
- { 1, 0, sys_io_destroy, "io_destroy" }, /* 207 */
- { 5, 0, sys_io_getevents, "io_getevents" }, /* 208 */
- { 3, 0, sys_io_submit, "io_submit" }, /* 209 */
- { 3, 0, sys_io_cancel, "io_cancel" }, /* 210 */
- { 1, 0, sys_get_thread_area, "get_thread_area" }, /* 211 */
- { 3, 0, sys_lookup_dcookie, "lookup_dcookie"}, /* 212 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 213 */
- { 4, 0, printargs, "epoll_ctl_old" }, /* 214 */
- { 4, 0, printargs, "epoll_wait_old"}, /* 215 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 216 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 217 */
- { 1, 0, sys_set_tid_address, "set_tid_address"}, /* 218 */
- { 0, 0, sys_restart_syscall, "restart_syscall"}, /* 219 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 220 */
- { 4, TD, sys_fadvise64, "fadvise64" }, /* 221 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 222 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 223 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 224 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 225 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 226 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 227 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 228 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 229 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 230 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 231 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 232 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 233 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 234 */
- { 2, TF, sys_utimes, "utimes" }, /* 235 */
- { 5, 0, sys_vserver, "vserver" }, /* 236 */
- { 6, TM, sys_mbind, "mbind" }, /* 237 */
- { 3, TM, sys_set_mempolicy, "set_mempolicy" }, /* 238 */
- { 5, TM, sys_get_mempolicy, "get_mempolicy" }, /* 239 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 240 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 241 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 242 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive" }, /* 243 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 244 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 245 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 246 */
- { 5, TP, sys_waitid, "waitid" }, /* 247 */
- { 5, 0, sys_add_key, "add_key" }, /* 248 */
- { 4, 0, sys_request_key, "request_key" }, /* 249 */
- { 5, 0, sys_keyctl, "keyctl" }, /* 250 */
- { 3, 0, sys_ioprio_set, "ioprio_set" }, /* 251 */
- { 2, 0, sys_ioprio_get, "ioprio_get" }, /* 252 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 253 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch" }, /* 254 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" }, /* 255 */
- { 4, TM, sys_migrate_pages, "migrate_pages" }, /* 256 */
- { 4, TD|TF, sys_openat, "openat" }, /* 257 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 258 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 259 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 260 */
- { 3, TD|TF, sys_futimesat, "futimesat" }, /* 261 */
- { 4, TD|TF, sys_newfstatat, "newfstatat" }, /* 262 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 263 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 264 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 265 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 266 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 267 */
- { 3, TD|TF, sys_fchmodat, "fchmodat" }, /* 268 */
- { 3, TD|TF, sys_faccessat, "faccessat" }, /* 269 */
- { 6, TD, sys_pselect6, "pselect6" }, /* 270 */
- { 5, TD, sys_ppoll, "ppoll" }, /* 271 */
- { 1, TP, sys_unshare, "unshare" }, /* 272 */
- { 2, 0, sys_set_robust_list, "set_robust_list" }, /* 273 */
- { 3, 0, sys_get_robust_list, "get_robust_list" }, /* 274 */
- { 6, TD, sys_splice, "splice" }, /* 275 */
- { 4, TD, sys_tee, "tee" }, /* 276 */
- { 4, TD, sys_sync_file_range, "sync_file_range" }, /* 277 */
- { 4, TD, sys_vmsplice, "vmsplice" }, /* 278 */
- { 6, TM, sys_move_pages, "move_pages" }, /* 279 */
- { 4, TD|TF, sys_utimensat, "utimensat" }, /* 280 */
- { 6, TD, sys_epoll_pwait, "epoll_pwait" }, /* 281 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 282 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 283 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 284 */
- { 4, TD, sys_fallocate, "fallocate" }, /* 285 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 286 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 287 */
- { 4, TN, sys_accept4, "accept4" }, /* 288 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 289 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 290 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 291 */
- { 3, TD, sys_dup3, "dup3" }, /* 292 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 293 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 294 */
- { 4, TD, sys_preadv, "preadv" }, /* 295 */
- { 4, TD, sys_pwritev, "pwritev" }, /* 296 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 297 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 298 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 299 */
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 300 */
- { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 301 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 302 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 303 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 304 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 305 */
- { 1, TD, sys_syncfs, "syncfs" }, /* 306 */
- { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 307 */
- { 2, TD, sys_setns, "setns" }, /* 308 */
- { 3, 0, sys_getcpu, "getcpu" }, /* 309 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 310 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 311 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 312 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 313 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 314 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 315 */
- { 5, TD|TF, sys_renameat2, "renameat2" }, /* 316 */
+[ 0] = { 3, TD, sys_read, "read" },
+[ 1] = { 3, TD, sys_write, "write" },
+[ 2] = { 3, TD|TF, sys_open, "open" },
+[ 3] = { 1, TD, sys_close, "close" },
+[ 4] = { 2, TF, sys_stat, "stat" },
+[ 5] = { 2, TD, sys_fstat, "fstat" },
+[ 6] = { 2, TF, sys_lstat, "lstat" },
+[ 7] = { 3, TD, sys_poll, "poll" },
+[ 8] = { 3, TD, sys_lseek, "lseek" },
+[ 9] = { 6, TD|TM|SI, sys_mmap, "mmap" },
+[ 10] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[ 11] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 12] = { 1, TM|SI, sys_brk, "brk" },
+[ 13] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[ 14] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[ 15] = { 0, TS, sys_sigreturn, "rt_sigreturn" },
+[ 16] = { 3, TD, sys_ioctl, "ioctl" },
+[ 17] = { 4, TD, sys_pread, "pread" },
+[ 18] = { 4, TD, sys_pwrite, "pwrite" },
+[ 19] = { 3, TD, sys_readv, "readv" },
+[ 20] = { 3, TD, sys_writev, "writev" },
+[ 21] = { 2, TF, sys_access, "access" },
+[ 22] = { 1, TD, sys_pipe, "pipe" },
+[ 23] = { 5, TD, sys_select, "select" },
+[ 24] = { 0, 0, sys_sched_yield, "sched_yield" },
+[ 25] = { 5, TM|SI, sys_mremap, "mremap" },
+[ 26] = { 3, TM, sys_msync, "msync" },
+[ 27] = { 3, TM, sys_mincore, "mincore" },
+[ 28] = { 3, TM, sys_madvise, "madvise" },
+[ 29] = { 3, TI, sys_shmget, "shmget" },
+[ 30] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[ 31] = { 3, TI, sys_shmctl, "shmctl" },
+[ 32] = { 1, TD, sys_dup, "dup" },
+[ 33] = { 2, TD, sys_dup2, "dup2" },
+[ 34] = { 0, TS, sys_pause, "pause" },
+[ 35] = { 2, 0, sys_nanosleep, "nanosleep" },
+[ 36] = { 2, 0, sys_getitimer, "getitimer" },
+[ 37] = { 1, 0, sys_alarm, "alarm" },
+[ 38] = { 3, 0, sys_setitimer, "setitimer" },
+[ 39] = { 0, 0, sys_getpid, "getpid" },
+[ 40] = { 4, TD|TN, sys_sendfile64, "sendfile" },
+[ 41] = { 3, TN, sys_socket, "socket" },
+[ 42] = { 3, TN, sys_connect, "connect" },
+[ 43] = { 3, TN, sys_accept, "accept" },
+[ 44] = { 6, TN, sys_sendto, "sendto" },
+[ 45] = { 6, TN, sys_recvfrom, "recvfrom" },
+[ 46] = { 3, TN, sys_sendmsg, "sendmsg" },
+[ 47] = { 3, TN, sys_recvmsg, "recvmsg" },
+[ 48] = { 2, TN, sys_shutdown, "shutdown" },
+[ 49] = { 3, TN, sys_bind, "bind" },
+[ 50] = { 2, TN, sys_listen, "listen" },
+[ 51] = { 3, TN, sys_getsockname, "getsockname" },
+[ 52] = { 3, TN, sys_getpeername, "getpeername" },
+[ 53] = { 4, TN, sys_socketpair, "socketpair" },
+[ 54] = { 5, TN, sys_setsockopt, "setsockopt" },
+[ 55] = { 5, TN, sys_getsockopt, "getsockopt" },
+[ 56] = { 5, TP, sys_clone, "clone" },
+[ 57] = { 0, TP, sys_fork, "fork" },
+[ 58] = { 0, TP, sys_vfork, "vfork" },
+[ 59] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[ 60] = { 1, TP|SE, sys_exit, "_exit" },
+[ 61] = { 4, TP, sys_wait4, "wait4" },
+[ 62] = { 2, TS, sys_kill, "kill" },
+[ 63] = { 1, 0, sys_uname, "uname" },
+[ 64] = { 3, TI, sys_semget, "semget" },
+[ 65] = { 3, TI, sys_semop, "semop" },
+[ 66] = { 4, TI, sys_semctl, "semctl" },
+[ 67] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[ 68] = { 2, TI, sys_msgget, "msgget" },
+[ 69] = { 4, TI, sys_msgsnd, "msgsnd" },
+[ 70] = { 5, TI, sys_msgrcv, "msgrcv" },
+[ 71] = { 3, TI, sys_msgctl, "msgctl" },
+[ 72] = { 3, TD, sys_fcntl, "fcntl" },
+[ 73] = { 2, TD, sys_flock, "flock" },
+[ 74] = { 1, TD, sys_fsync, "fsync" },
+[ 75] = { 1, TD, sys_fdatasync, "fdatasync" },
+[ 76] = { 2, TF, sys_truncate, "truncate" },
+[ 77] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 78] = { 3, TD, sys_getdents, "getdents" },
+[ 79] = { 2, TF, sys_getcwd, "getcwd" },
+[ 80] = { 1, TF, sys_chdir, "chdir" },
+[ 81] = { 1, TD, sys_fchdir, "fchdir" },
+[ 82] = { 2, TF, sys_rename, "rename" },
+[ 83] = { 2, TF, sys_mkdir, "mkdir" },
+[ 84] = { 1, TF, sys_rmdir, "rmdir" },
+[ 85] = { 2, TD|TF, sys_creat, "creat" },
+[ 86] = { 2, TF, sys_link, "link" },
+[ 87] = { 1, TF, sys_unlink, "unlink" },
+[ 88] = { 2, TF, sys_symlink, "symlink" },
+[ 89] = { 3, TF, sys_readlink, "readlink" },
+[ 90] = { 2, TF, sys_chmod, "chmod" },
+[ 91] = { 2, TD, sys_fchmod, "fchmod" },
+[ 92] = { 3, TF, sys_chown, "chown" },
+[ 93] = { 3, TD, sys_fchown, "fchown" },
+[ 94] = { 3, TF, sys_chown, "lchown" },
+[ 95] = { 1, 0, sys_umask, "umask" },
+[ 96] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[ 97] = { 2, 0, sys_getrlimit, "getrlimit" },
+[ 98] = { 2, 0, sys_getrusage, "getrusage" },
+[ 99] = { 1, 0, sys_sysinfo, "sysinfo" },
+[100] = { 1, 0, sys_times, "times" },
+[101] = { 4, 0, sys_ptrace, "ptrace" },
+[102] = { 0, NF, sys_getuid, "getuid" },
+[103] = { 3, 0, sys_syslog, "syslog" },
+[104] = { 0, NF, sys_getgid, "getgid" },
+[105] = { 1, 0, sys_setuid, "setuid" },
+[106] = { 1, 0, sys_setgid, "setgid" },
+[107] = { 0, NF, sys_geteuid, "geteuid" },
+[108] = { 0, NF, sys_getegid, "getegid" },
+[109] = { 2, 0, sys_setpgid, "setpgid" },
+[110] = { 0, 0, sys_getppid, "getppid" },
+[111] = { 0, 0, sys_getpgrp, "getpgrp" },
+[112] = { 0, 0, sys_setsid, "setsid" },
+[113] = { 2, 0, sys_setreuid, "setreuid" },
+[114] = { 2, 0, sys_setregid, "setregid" },
+[115] = { 2, 0, sys_getgroups, "getgroups" },
+[116] = { 2, 0, sys_setgroups, "setgroups" },
+[117] = { 3, 0, sys_setresuid, "setresuid" },
+[118] = { 3, 0, sys_getresuid, "getresuid" },
+[119] = { 3, 0, sys_setresgid, "setresgid" },
+[120] = { 3, 0, sys_getresgid, "getresgid" },
+[121] = { 1, 0, sys_getpgid, "getpgid" },
+[122] = { 1, NF, sys_setfsuid, "setfsuid" },
+[123] = { 1, NF, sys_setfsgid, "setfsgid" },
+[124] = { 1, 0, sys_getsid, "getsid" },
+[125] = { 2, 0, sys_capget, "capget" },
+[126] = { 2, 0, sys_capset, "capset" },
+[127] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[128] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[129] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[130] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[131] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[132] = { 2, TF, sys_utime, "utime" },
+[133] = { 3, TF, sys_mknod, "mknod" },
+[134] = { 1, TF, sys_uselib, "uselib" },
+[135] = { 1, 0, sys_personality, "personality" },
+[136] = { 2, 0, sys_ustat, "ustat" },
+[137] = { 2, TF, sys_statfs, "statfs" },
+[138] = { 2, TD, sys_fstatfs, "fstatfs" },
+[139] = { 3, 0, sys_sysfs, "sysfs" },
+[140] = { 2, 0, sys_getpriority, "getpriority" },
+[141] = { 3, 0, sys_setpriority, "setpriority" },
+[142] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[143] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[144] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[145] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[146] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[147] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[148] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[149] = { 2, TM, sys_mlock, "mlock" },
+[150] = { 2, TM, sys_munlock, "munlock" },
+[151] = { 1, TM, sys_mlockall, "mlockall" },
+[152] = { 0, TM, sys_munlockall, "munlockall" },
+[153] = { 0, 0, sys_vhangup, "vhangup" },
+[154] = { 3, 0, sys_modify_ldt, "modify_ldt" },
+[155] = { 2, TF, sys_pivotroot, "pivot_root" },
+[156] = { 1, 0, sys_sysctl, "_sysctl" },
+[157] = { 5, 0, sys_prctl, "prctl" },
+[158] = { 2, TP, sys_arch_prctl, "arch_prctl" },
+[159] = { 1, 0, sys_adjtimex, "adjtimex" },
+[160] = { 2, 0, sys_setrlimit, "setrlimit" },
+[161] = { 1, TF, sys_chroot, "chroot" },
+[162] = { 0, 0, sys_sync, "sync" },
+[163] = { 1, TF, sys_acct, "acct" },
+[164] = { 2, 0, sys_settimeofday, "settimeofday" },
+[165] = { 5, TF, sys_mount, "mount" },
+[166] = { 2, TF, sys_umount2, "umount2" },
+[167] = { 2, TF, sys_swapon, "swapon" },
+[168] = { 1, TF, sys_swapoff, "swapoff" },
+[169] = { 4, 0, sys_reboot, "reboot" },
+[170] = { 2, 0, sys_sethostname, "sethostname" },
+[171] = { 2, 0, sys_setdomainname, "setdomainname" },
+[172] = { 1, 0, sys_iopl, "iopl" },
+[173] = { 3, 0, sys_ioperm, "ioperm" },
+[174] = { 2, 0, sys_create_module, "create_module" },
+[175] = { 3, 0, sys_init_module, "init_module" },
+[176] = { 2, 0, sys_delete_module, "delete_module" },
+[177] = { 1, 0, sys_get_kernel_syms, "get_kernel_syms" },
+[178] = { 5, 0, sys_query_module, "query_module" },
+[179] = { 4, TF, sys_quotactl, "quotactl" },
+[180] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[181] = { 5, 0, sys_getpmsg, "getpmsg" },
+[182] = { 5, 0, sys_putpmsg, "putpmsg" },
+[183] = { 5, 0, sys_afs_syscall, "afs_syscall" },
+[184] = { 3, 0, sys_tuxcall, "tuxcall" },
+[185] = { 3, 0, sys_security, "security" },
+[186] = { 0, 0, sys_gettid, "gettid" },
+[187] = { 3, TD, sys_readahead, "readahead" },
+[188] = { 5, TF, sys_setxattr, "setxattr" },
+[189] = { 5, TF, sys_setxattr, "lsetxattr" },
+[190] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[191] = { 4, TF, sys_getxattr, "getxattr" },
+[192] = { 4, TF, sys_getxattr, "lgetxattr" },
+[193] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[194] = { 3, TF, sys_listxattr, "listxattr" },
+[195] = { 3, TF, sys_listxattr, "llistxattr" },
+[196] = { 3, TD, sys_flistxattr, "flistxattr" },
+[197] = { 2, TF, sys_removexattr, "removexattr" },
+[198] = { 2, TF, sys_removexattr, "lremovexattr" },
+[199] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[200] = { 2, TS, sys_kill, "tkill" },
+[201] = { 1, 0, sys_time, "time" },
+[202] = { 6, 0, sys_futex, "futex" },
+[203] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[204] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[205] = { 1, 0, sys_set_thread_area, "set_thread_area" },
+[206] = { 2, 0, sys_io_setup, "io_setup" },
+[207] = { 1, 0, sys_io_destroy, "io_destroy" },
+[208] = { 5, 0, sys_io_getevents, "io_getevents" },
+[209] = { 3, 0, sys_io_submit, "io_submit" },
+[210] = { 3, 0, sys_io_cancel, "io_cancel" },
+[211] = { 1, 0, sys_get_thread_area, "get_thread_area" },
+[212] = { 3, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[213] = { 1, TD, sys_epoll_create, "epoll_create" },
+[214] = { 4, 0, printargs, "epoll_ctl_old" },
+[215] = { 4, 0, printargs, "epoll_wait_old" },
+[216] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[217] = { 3, TD, sys_getdents64, "getdents64" },
+[218] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[219] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[220] = { 4, TI, sys_semtimedop, "semtimedop" },
+[221] = { 4, TD, sys_fadvise64, "fadvise64" },
+[222] = { 3, 0, sys_timer_create, "timer_create" },
+[223] = { 4, 0, sys_timer_settime, "timer_settime" },
+[224] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[225] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[226] = { 1, 0, sys_timer_delete, "timer_delete" },
+[227] = { 2, 0, sys_clock_settime, "clock_settime" },
+[228] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[229] = { 2, 0, sys_clock_getres, "clock_getres" },
+[230] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[231] = { 1, TP|SE, sys_exit, "exit_group" },
+[232] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[233] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[234] = { 3, TS, sys_tgkill, "tgkill" },
+[235] = { 2, TF, sys_utimes, "utimes" },
+[236] = { 5, 0, sys_vserver, "vserver" },
+[237] = { 6, TM, sys_mbind, "mbind" },
+[238] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[239] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[240] = { 4, 0, sys_mq_open, "mq_open" },
+[241] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[242] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[243] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[244] = { 2, 0, sys_mq_notify, "mq_notify" },
+[245] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[246] = { 4, 0, sys_kexec_load, "kexec_load" },
+[247] = { 5, TP, sys_waitid, "waitid" },
+[248] = { 5, 0, sys_add_key, "add_key" },
+[249] = { 4, 0, sys_request_key, "request_key" },
+[250] = { 5, 0, sys_keyctl, "keyctl" },
+[251] = { 3, 0, sys_ioprio_set, "ioprio_set" },
+[252] = { 2, 0, sys_ioprio_get, "ioprio_get" },
+[253] = { 0, TD, sys_inotify_init, "inotify_init" },
+[254] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[255] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[256] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[257] = { 4, TD|TF, sys_openat, "openat" },
+[258] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[259] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[260] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[261] = { 3, TD|TF, sys_futimesat, "futimesat" },
+[262] = { 4, TD|TF, sys_newfstatat, "newfstatat" },
+[263] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[264] = { 4, TD|TF, sys_renameat, "renameat" },
+[265] = { 5, TD|TF, sys_linkat, "linkat" },
+[266] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[267] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[268] = { 3, TD|TF, sys_fchmodat, "fchmodat" },
+[269] = { 3, TD|TF, sys_faccessat, "faccessat" },
+[270] = { 6, TD, sys_pselect6, "pselect6" },
+[271] = { 5, TD, sys_ppoll, "ppoll" },
+[272] = { 1, TP, sys_unshare, "unshare" },
+[273] = { 2, 0, sys_set_robust_list, "set_robust_list" },
+[274] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[275] = { 6, TD, sys_splice, "splice" },
+[276] = { 4, TD, sys_tee, "tee" },
+[277] = { 4, TD, sys_sync_file_range, "sync_file_range" },
+[278] = { 4, TD, sys_vmsplice, "vmsplice" },
+[279] = { 6, TM, sys_move_pages, "move_pages" },
+[280] = { 4, TD|TF, sys_utimensat, "utimensat" },
+[281] = { 6, TD, sys_epoll_pwait, "epoll_pwait" },
+[282] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[283] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[284] = { 1, TD, sys_eventfd, "eventfd" },
+[285] = { 4, TD, sys_fallocate, "fallocate" },
+[286] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[287] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[288] = { 4, TN, sys_accept4, "accept4" },
+[289] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[290] = { 2, TD, sys_eventfd2, "eventfd2" },
+[291] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[292] = { 3, TD, sys_dup3, "dup3" },
+[293] = { 2, TD, sys_pipe2, "pipe2" },
+[294] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[295] = { 4, TD, sys_preadv, "preadv" },
+[296] = { 4, TD, sys_pwritev, "pwritev" },
+[297] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[298] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[299] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[300] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[301] = { 5, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[302] = { 4, 0, sys_prlimit64, "prlimit64" },
+[303] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[304] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[305] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[306] = { 1, TD, sys_syncfs, "syncfs" },
+[307] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[308] = { 2, TD, sys_setns, "setns" },
+[309] = { 3, 0, sys_getcpu, "getcpu" },
+[310] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[311] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[312] = { 5, 0, sys_kcmp, "kcmp" },
+[313] = { 3, TD, sys_finit_module, "finit_module" },
+[314] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[315] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[316] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[317] = { 3, 0, sys_seccomp, "seccomp", },
+[318] = { 3, 0, sys_getrandom, "getrandom", },
+[319] = { 2, TD, sys_memfd_create, "memfd_create", },
+[320] = { 5, TD, sys_kexec_file_load, "kexec_file_load", },
+[321] = { 3, TD, sys_bpf, "bpf", },
+[322] = { 5, TD|TF|TP|SE|SI, sys_execveat, "execveat", },
diff --git a/linux/xtensa/ioctlent.h.in b/linux/xtensa/ioctlent.h.in
deleted file mode 100644
index a9eae81..0000000
--- a/linux/xtensa/ioctlent.h.in
+++ /dev/null
@@ -1 +0,0 @@
-/* intentionally empty */
diff --git a/linux/xtensa/ioctls_arch0.h b/linux/xtensa/ioctls_arch0.h
new file mode 100644
index 0000000..054048a
--- /dev/null
+++ b/linux/xtensa/ioctls_arch0.h
@@ -0,0 +1,69 @@
+/* Generated by ioctls_gen.sh from definitions found in $linux/arch/xtensa/include/ tree. */
+{ "asm/ioctls.h", "FIOASYNC", _IOC_WRITE, 0x667d, 0x04 },
+{ "asm/ioctls.h", "FIOCLEX", _IOC_NONE, 0x6601, 0x00 },
+{ "asm/ioctls.h", "FIONBIO", _IOC_WRITE, 0x667e, 0x04 },
+{ "asm/ioctls.h", "FIONCLEX", _IOC_NONE, 0x6602, 0x00 },
+{ "asm/ioctls.h", "FIONREAD", _IOC_READ, 0x667f, 0x04 },
+{ "asm/ioctls.h", "FIOQSIZE", _IOC_READ, 0x6680, 0x08 },
+{ "asm/ioctls.h", "TCFLSH", _IOC_NONE, 0x741f, 0x00 },
+{ "asm/ioctls.h", "TCGETS", 0, 0x5401, 0 },
+{ "asm/ioctls.h", "TCGETS2", _IOC_READ, 0x542a, 0x2c },
+{ "asm/ioctls.h", "TCSBRK", _IOC_NONE, 0x741d, 0x00 },
+{ "asm/ioctls.h", "TCSBRKP", _IOC_WRITE, 0x5425, 0x04 },
+{ "asm/ioctls.h", "TCSETS", 0, 0x5402, 0 },
+{ "asm/ioctls.h", "TCSETS2", _IOC_WRITE, 0x542b, 0x2c },
+{ "asm/ioctls.h", "TCSETSF", 0, 0x5404, 0 },
+{ "asm/ioctls.h", "TCSETSF2", _IOC_WRITE, 0x542d, 0x2c },
+{ "asm/ioctls.h", "TCSETSW", 0, 0x5403, 0 },
+{ "asm/ioctls.h", "TCSETSW2", _IOC_WRITE, 0x542c, 0x2c },
+{ "asm/ioctls.h", "TCXONC", _IOC_NONE, 0x741e, 0x00 },
+{ "asm/ioctls.h", "TIOCCBRK", _IOC_NONE, 0x5428, 0x00 },
+{ "asm/ioctls.h", "TIOCCONS", _IOC_NONE, 0x541d, 0x00 },
+{ "asm/ioctls.h", "TIOCEXCL", _IOC_NONE, 0x540c, 0x00 },
+{ "asm/ioctls.h", "TIOCGDEV", _IOC_READ, 0x5432, 0x04 },
+{ "asm/ioctls.h", "TIOCGETD", _IOC_READ, 0x5424, 0x04 },
+{ "asm/ioctls.h", "TIOCGEXCL", _IOC_READ, 0x5440, 0x04 },
+{ "asm/ioctls.h", "TIOCGICOUNT", 0, 0x545D, 0 },
+{ "asm/ioctls.h", "TIOCGLCKTRMIOS", 0, 0x5456, 0 },
+{ "asm/ioctls.h", "TIOCGPGRP", _IOC_READ, 0x7477, 0x04 },
+{ "asm/ioctls.h", "TIOCGPKT", _IOC_READ, 0x5438, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTLCK", _IOC_READ, 0x5439, 0x04 },
+{ "asm/ioctls.h", "TIOCGPTN", _IOC_READ, 0x5430, 0x04 },
+{ "asm/ioctls.h", "TIOCGRS485", _IOC_READ, 0x542e, 0x20 },
+{ "asm/ioctls.h", "TIOCGSID", _IOC_READ, 0x5429, 0x04 },
+{ "asm/ioctls.h", "TIOCGSOFTCAR", _IOC_READ, 0x5419, 0x04 },
+{ "asm/ioctls.h", "TIOCLINUX", _IOC_WRITE, 0x541c, 0x01 },
+{ "asm/ioctls.h", "TIOCMBIC", _IOC_WRITE, 0x5417, 0x04 },
+{ "asm/ioctls.h", "TIOCMBIS", _IOC_WRITE, 0x5416, 0x04 },
+{ "asm/ioctls.h", "TIOCMGET", _IOC_READ, 0x5415, 0x04 },
+{ "asm/ioctls.h", "TIOCMIWAIT", _IOC_NONE, 0x545c, 0x00 },
+{ "asm/ioctls.h", "TIOCMSET", _IOC_WRITE, 0x5418, 0x04 },
+{ "asm/ioctls.h", "TIOCNOTTY", _IOC_NONE, 0x5422, 0x00 },
+{ "asm/ioctls.h", "TIOCNXCL", _IOC_NONE, 0x540d, 0x00 },
+{ "asm/ioctls.h", "TIOCOUTQ", _IOC_READ, 0x7473, 0x04 },
+{ "asm/ioctls.h", "TIOCPKT", _IOC_WRITE, 0x5420, 0x04 },
+{ "asm/ioctls.h", "TIOCSBRK", _IOC_NONE, 0x5427, 0x00 },
+{ "asm/ioctls.h", "TIOCSCTTY", _IOC_NONE, 0x540e, 0x00 },
+{ "asm/ioctls.h", "TIOCSERCONFIG", _IOC_NONE, 0x5453, 0x00 },
+{ "asm/ioctls.h", "TIOCSERGETLSR", _IOC_READ, 0x5459, 0x04 },
+{ "asm/ioctls.h", "TIOCSERGSTRUCT", 0, 0x5458, 0 },
+{ "asm/ioctls.h", "TIOCSERGWILD", _IOC_READ, 0x5454, 0x04 },
+{ "asm/ioctls.h", "TIOCSERSWILD", _IOC_WRITE, 0x5455, 0x04 },
+{ "asm/ioctls.h", "TIOCSETD", _IOC_WRITE, 0x5423, 0x04 },
+{ "asm/ioctls.h", "TIOCSIG", _IOC_WRITE, 0x5436, 0x04 },
+{ "asm/ioctls.h", "TIOCSLCKTRMIOS", 0, 0x5457, 0 },
+{ "asm/ioctls.h", "TIOCSPGRP", _IOC_WRITE, 0x7476, 0x04 },
+{ "asm/ioctls.h", "TIOCSPTLCK", _IOC_WRITE, 0x5431, 0x04 },
+{ "asm/ioctls.h", "TIOCSRS485", _IOC_READ|_IOC_WRITE, 0x542f, 0x20 },
+{ "asm/ioctls.h", "TIOCSSOFTCAR", _IOC_WRITE, 0x541a, 0x04 },
+{ "asm/ioctls.h", "TIOCSTART", _IOC_NONE, 0x746e, 0x00 },
+{ "asm/ioctls.h", "TIOCSTI", _IOC_WRITE, 0x5412, 0x01 },
+{ "asm/ioctls.h", "TIOCSTOP", _IOC_NONE, 0x746f, 0x00 },
+{ "asm/ioctls.h", "TIOCVHANGUP", _IOC_NONE, 0x5437, 0x00 },
+{ "asm/sockios.h", "FIOGETOWN", _IOC_READ, 0x667b, 0x04 },
+{ "asm/sockios.h", "FIOSETOWN", _IOC_WRITE, 0x667c, 0x04 },
+{ "asm/sockios.h", "SIOCATMARK", _IOC_READ, 0x7307, 0x04 },
+{ "asm/sockios.h", "SIOCGPGRP", _IOC_READ, 0x7309, 0x04 },
+{ "asm/sockios.h", "SIOCGSTAMP", 0, 0x8906, 0 },
+{ "asm/sockios.h", "SIOCGSTAMPNS", 0, 0x8907, 0 },
+{ "asm/sockios.h", "SIOCSPGRP", _IOC_WRITE, 0x7308, 0x04 },
diff --git a/linux/xtensa/ioctls_inc0.h b/linux/xtensa/ioctls_inc0.h
new file mode 100644
index 0000000..4aecf98
--- /dev/null
+++ b/linux/xtensa/ioctls_inc0.h
@@ -0,0 +1 @@
+#include "32/ioctls_inc.h"
diff --git a/linux/xtensa/syscallent.h b/linux/xtensa/syscallent.h
index 76e3bbf..76c0439 100644
--- a/linux/xtensa/syscallent.h
+++ b/linux/xtensa/syscallent.h
@@ -1,328 +1,330 @@
- { 0, 0, printargs, "spill" }, /* 0 */
- { 0, 0, printargs, "xtensa" }, /* 1 */
- [2 ... 7] = { },
- { 3, TD|TF, sys_open, "open" }, /* 8 */
- { 1, TD, sys_close, "close" }, /* 9 */
- { 1, TD, sys_dup, "dup" }, /* 10 */
- { 2, TD, sys_dup2, "dup2" }, /* 11 */
- { 3, TD, sys_read, "read" }, /* 12 */
- { 3, TD, sys_write, "write" }, /* 13 */
- { 5, TD, sys_select, "select" }, /* 14 */
- { 3, TD, sys_lseek, "lseek" }, /* 15 */
- { 3, TD, sys_poll, "poll" }, /* 16 */
- { 5, TD, sys_llseek, "_llseek" }, /* 17 */
- { 4, TD, sys_epoll_wait, "epoll_wait" }, /* 18 */
- { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 19 */
- { 1, TD, sys_epoll_create, "epoll_create" }, /* 20 */
- { 2, TD|TF, sys_creat, "creat" }, /* 21 */
- { 2, TF, sys_truncate, "truncate" }, /* 22 */
- { 2, TD, sys_ftruncate, "ftruncate" }, /* 23 */
- { 3, TD, sys_readv, "readv" }, /* 24 */
- { 3, TD, sys_writev, "writev" }, /* 25 */
- { 1, TD, sys_fsync, "fsync" }, /* 26 */
- { 1, TD, sys_fdatasync, "fdatasync" }, /* 27 */
- { 4, TF, sys_truncate64, "truncate64" }, /* 28 */
- { 4, TD, sys_ftruncate64, "ftruncate64" }, /* 29 */
- { 6, TD, sys_pread, "pread64" }, /* 30 */
- { 6, TD, sys_pwrite, "pwrite64" }, /* 31 */
- { 2, TF, sys_link, "link" }, /* 32 */
- { 2, TF, sys_rename, "rename" }, /* 33 */
- { 2, TF, sys_symlink, "symlink" }, /* 34 */
- { 3, TF, sys_readlink, "readlink" }, /* 35 */
- { 3, TF, sys_mknod, "mknod" }, /* 36 */
- { 1, TD, sys_pipe, "pipe" }, /* 37 */
- { 1, TF, sys_unlink, "unlink" }, /* 38 */
- { 1, TF, sys_rmdir, "rmdir" }, /* 39 */
- { 2, TF, sys_mkdir, "mkdir" }, /* 40 */
- { 1, TF, sys_chdir, "chdir" }, /* 41 */
- { 1, TD, sys_fchdir, "fchdir" }, /* 42 */
- { 2, TF, sys_getcwd, "getcwd" }, /* 43 */
- { 2, TF, sys_chmod, "chmod" }, /* 44 */
- { 3, TF, sys_chown, "chown" }, /* 45 */
- { 2, TF, sys_stat, "stat" }, /* 46 */
- { 2, TF, sys_stat64, "stat64" }, /* 47 */
- { 3, TF, sys_chown, "lchown" }, /* 48 */
- { 2, TF, sys_lstat, "lstat" }, /* 49 */
- { 2, TF, sys_lstat64, "lstat64" }, /* 50 */
- [51] = { },
- { 2, TD, sys_fchmod, "fchmod" }, /* 52 */
- { 3, TD, sys_fchown, "fchown" }, /* 53 */
- { 2, TD, sys_fstat, "fstat" }, /* 54 */
- { 2, TD, sys_fstat64, "fstat64" }, /* 55 */
- { 2, TD, sys_flock, "flock" }, /* 56 */
- { 2, TF, sys_access, "access" }, /* 57 */
- { 1, 0, sys_umask, "umask" }, /* 58 */
- { 3, TD, sys_getdents, "getdents" }, /* 59 */
- { 3, TD, sys_getdents64, "getdents64" }, /* 60 */
- { 3, TD, sys_fcntl, "fcntl64" }, /* 61 */
- { 6, TD, sys_fallocate, "fallocate" }, /* 62 */
- { 6, TD, sys_fadvise64_64, "fadvise64_64" }, /* 63 */
- { 2, TF, sys_utime, "utime" }, /* 64 */
- { 2, TF, sys_utimes, "utimes" }, /* 65 */
- { 3, TD, sys_ioctl, "ioctl" }, /* 66 */
- { 3, TD, sys_fcntl, "fcntl" }, /* 67 */
- { 5, TF, sys_setxattr, "setxattr" }, /* 68 */
- { 4, TF, sys_getxattr, "getxattr" }, /* 69 */
- { 3, TF, sys_listxattr, "listxattr" }, /* 70 */
- { 2, TF, sys_removexattr, "removexattr" }, /* 71 */
- { 5, TF, sys_setxattr, "lsetxattr" }, /* 72 */
- { 4, TF, sys_getxattr, "lgetxattr" }, /* 73 */
- { 3, TF, sys_listxattr, "llistxattr" }, /* 74 */
- { 2, TF, sys_removexattr, "lremovexattr" }, /* 75 */
- { 5, TD, sys_fsetxattr, "fsetxattr" }, /* 76 */
- { 4, TD, sys_fgetxattr, "fgetxattr" }, /* 77 */
- { 3, TD, sys_flistxattr, "flistxattr" }, /* 78 */
- { 2, TD, sys_fremovexattr, "fremovexattr" }, /* 79 */
- { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" }, /* 80 */
- { 2, TM|SI, sys_munmap, "munmap" }, /* 81 */
- { 3, TM|SI, sys_mprotect, "mprotect" }, /* 82 */
- { 1, TM|SI, sys_brk, "brk" }, /* 83 */
- { 2, TM, sys_mlock, "mlock" }, /* 84 */
- { 2, TM, sys_munlock, "munlock" }, /* 85 */
- { 1, TM, sys_mlockall, "mlockall" }, /* 86 */
- { 0, TM, sys_munlockall, "munlockall" }, /* 87 */
- { 4, TM|SI, sys_mremap, "mremap" }, /* 88 */
- { 3, TM, sys_msync, "msync" }, /* 89 */
- { 3, TM, sys_mincore, "mincore" }, /* 90 */
- { 3, TM, sys_madvise, "madvise" }, /* 91 */
- { 4, TI, sys_shmget, "shmget" }, /* 92 */
- { 4, TI|TM|SI, sys_shmat, "shmat" }, /* 93 */
- { 4, TI, sys_shmctl, "shmctl" }, /* 94 */
- { 4, TI|TM|SI, sys_shmdt, "shmdt" }, /* 95 */
- { 3, TN, sys_socket, "socket" }, /* 96 */
- { 5, TN, sys_setsockopt, "setsockopt" }, /* 97 */
- { 5, TN, sys_getsockopt, "getsockopt" }, /* 98 */
- { 2, TN, sys_shutdown, "shutdown" }, /* 99 */
- { 3, TN, sys_bind, "bind" }, /* 100 */
- { 3, TN, sys_connect, "connect" }, /* 101 */
- { 2, TN, sys_listen, "listen" }, /* 102 */
- { 3, TN, sys_accept, "accept" }, /* 103 */
- { 3, TN, sys_getsockname, "getsockname" }, /* 104 */
- { 3, TN, sys_getpeername, "getpeername" }, /* 105 */
- { 3, TN, sys_sendmsg, "sendmsg" }, /* 106 */
- { 3, TN, sys_recvmsg, "recvmsg" }, /* 107 */
- { 4, TN, sys_send, "send" }, /* 108 */
- { 4, TN, sys_recv, "recv" }, /* 109 */
- { 6, TN, sys_sendto, "sendto" }, /* 110 */
- { 6, TN, sys_recvfrom, "recvfrom" }, /* 111 */
- { 4, TN, sys_socketpair, "socketpair" }, /* 112 */
- { 4, TD|TN, sys_sendfile, "sendfile" }, /* 113 */
- { 4, TD|TN, sys_sendfile64, "sendfile64" }, /* 114 */
- { 4, TN, sys_sendmsg, "sendmsg" }, /* 115 */
- { 5, TP, sys_clone, "clone" }, /* 116 */
- { 3, TF|TP|SE|SI, sys_execve, "execve" }, /* 117 */
- { 1, TP|SE, sys_exit, "exit" }, /* 118 */
- { 1, TP|SE, sys_exit, "exit_group" }, /* 119 */
- { 0, 0, sys_getpid, "getpid" }, /* 120 */
- { 4, TP, sys_wait4, "wait4" }, /* 121 */
- { 5, TP, sys_waitid, "waitid" }, /* 122 */
- { 2, TS, sys_kill, "kill" }, /* 123 */
- { 2, TS, sys_kill, "tkill" }, /* 124 */
- { 3, TS, sys_tgkill, "tgkill" }, /* 125 */
- { 1, 0, printargs, "set_tid_address"}, /* 126 */
- { 0, 0, printargs, "gettid" }, /* 127 */
- { 0, 0, sys_setsid, "setsid" }, /* 128 */
- { 1, 0, sys_getsid, "getsid" }, /* 129 */
- { 5, 0, sys_prctl, "prctl" }, /* 130 */
- { 1, 0, sys_personality, "personality" }, /* 131 */
- { 2, 0, sys_getpriority, "getpriority" }, /* 132 */
- { 3, 0, sys_setpriority, "setpriority" }, /* 133 */
- { 3, 0, sys_setitimer, "setitimer" }, /* 134 */
- { 2, 0, sys_getitimer, "getitimer" }, /* 135 */
- { 1, 0, sys_setuid, "setuid" }, /* 136 */
- { 0, NF, sys_getuid, "getuid" }, /* 137 */
- { 1, 0, sys_setgid, "setgid" }, /* 138 */
- { 0, NF, sys_getgid, "getgid" }, /* 139 */
- { 0, NF, sys_geteuid, "geteuid" }, /* 140 */
- { 0, NF, sys_getegid, "getegid" }, /* 141 */
- { 2, 0, sys_setreuid, "setreuid" }, /* 142 */
- { 2, 0, sys_setregid, "setregid" }, /* 143 */
- { 3, 0, sys_setresuid, "setresuid" }, /* 144 */
- { 3, 0, sys_getresuid, "getresuid" }, /* 145 */
- { 3, 0, sys_setresgid, "setresgid" }, /* 146 */
- { 3, 0, sys_getresgid, "getresgid" }, /* 147 */
- { 2, 0, sys_setpgid, "setpgid" }, /* 148 */
- { 1, 0, sys_getpgid, "getpgid" }, /* 149 */
- { 0, 0, sys_getppid, "getppid" }, /* 150 */
- { 0, 0, sys_getpgrp, "getpgrp" }, /* 151 */
- [152 ... 153] = { },
- { 1, 0, sys_times, "times" }, /* 154 */
- { 1, TF, sys_acct, "acct" }, /* 155 */
- { 3, 0, sys_sched_setaffinity, "sched_setaffinity"}, /* 156 */
- { 3, 0, sys_sched_getaffinity, "sched_getaffinity"}, /* 157 */
- { 2, 0, sys_capget, "capget" }, /* 158 */
- { 2, 0, sys_capset, "capset" }, /* 159 */
- { 4, 0, sys_ptrace, "ptrace" }, /* 160 */
- { 5, TI, sys_semtimedop, "semtimedop" }, /* 161 */
- { 4, TI, sys_semget, "semget" }, /* 162 */
- { 4, TI, sys_semop, "semop" }, /* 163 */
- { 4, TI, sys_semctl, "semctl" }, /* 164 */
- [165] = { },
- { 4, TI, sys_msgget, "msgget" }, /* 166 */
- { 4, TI, sys_msgsnd, "msgsnd" }, /* 167 */
- { 4, TI, sys_msgrcv, "msgrcv" }, /* 168 */
- { 4, TI, sys_msgctl, "msgctl" }, /* 169 */
- [170] = { },
- { 2, TF, sys_umount2, "umount2" }, /* 171 */
- { 5, TF, sys_mount, "mount" }, /* 172 */
- { 2, TF, sys_swapon, "swapon" }, /* 173 */
- { 1, TF, sys_chroot, "chroot" }, /* 174 */
- { 2, TF, sys_pivotroot, "pivot_root" }, /* 175 */
- { 2, TF, sys_umount, "umount" }, /* 176 */
- { 1, TF, sys_swapoff, "swapoff" }, /* 177 */
- { 0, 0, sys_sync, "sync" }, /* 178 */
- [179] = { },
- { 1, NF, sys_setfsuid, "setfsuid" }, /* 180 */
- { 1, NF, sys_setfsgid, "setfsgid" }, /* 181 */
- { 3, 0, sys_sysfs, "sysfs" }, /* 182 */
- { 2, 0, sys_ustat, "ustat" }, /* 183 */
- { 2, TF, sys_statfs, "statfs" }, /* 184 */
- { 2, TD, sys_fstatfs, "fstatfs" }, /* 185 */
- { 3, TF, sys_statfs64, "statfs64" }, /* 186 */
- { 3, TD, sys_fstatfs64, "fstatfs64" }, /* 187 */
- { 2, 0, sys_setrlimit, "setrlimit" }, /* 188 */
- { 2, 0, sys_getrlimit, "getrlimit" }, /* 189 */
- { 2, 0, sys_getrusage, "getrusage" }, /* 190 */
- { 5, 0, sys_futex, "futex" }, /* 191 */
- { 2, 0, sys_gettimeofday, "gettimeofday" }, /* 192 */
- { 2, 0, sys_settimeofday, "settimeofday" }, /* 193 */
- { 1, 0, sys_adjtimex, "adjtimex" }, /* 194 */
- { 2, 0, sys_nanosleep, "nanosleep" }, /* 195 */
- { 2, 0, sys_getgroups, "getgroups" }, /* 196 */
- { 2, 0, sys_setgroups, "setgroups" }, /* 197 */
- { 2, 0, sys_sethostname, "sethostname" }, /* 198 */
- { 2, 0, sys_setdomainname, "setdomainname" }, /* 199 */
- { 3, 0, sys_syslog, "syslog" }, /* 200 */
- { 0, 0, sys_vhangup, "vhangup" }, /* 201 */
- { 1, TF, sys_uselib, "uselib" }, /* 202 */
- { 3, 0, sys_reboot, "reboot" }, /* 203 */
- { 4, TF, sys_quotactl, "quotactl" }, /* 204 */
- { 0, 0, printargs, "nfsservctl" }, /* 205 */
- { 1, 0, sys_sysctl, "_sysctl" }, /* 206 */
- { 2, 0, sys_bdflush, "bdflush" }, /* 207 */
- { 1, 0, sys_uname, "uname" }, /* 208 */
- { 1, 0, sys_sysinfo, "sysinfo" }, /* 209 */
- { 2, 0, sys_init_module, "init_module" }, /* 210 */
- { 1, 0, sys_delete_module, "delete_module" }, /* 211 */
- { 2, 0, sys_sched_setparam, "sched_setparam"}, /* 212 */
- { 2, 0, sys_sched_getparam, "sched_getparam"}, /* 213 */
- { 3, 0, sys_sched_setscheduler, "sched_setscheduler"}, /* 214 */
- { 1, 0, sys_sched_getscheduler, "sched_getscheduler"}, /* 215 */
- { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"}, /* 216 */
- { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"}, /* 217 */
- { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval"}, /* 218 */
- { 0, 0, sys_sched_yield, "sched_yield" }, /* 219 */
- [220 ... 222] = { },
- { 0, 0, printargs, "restart_syscall"}, /* 223 */
- { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 224 */
- { 0, TS, sys_rt_sigreturn, "rt_sigreturn" }, /* 225 */
- { 4, TS, sys_rt_sigaction, "rt_sigaction" }, /* 226 */
- { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask"}, /* 227 */
- { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 228 */
- { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait"}, /* 229 */
- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo"}, /* 230 */
- { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" }, /* 231 */
- { 4, 0, sys_mq_open, "mq_open" }, /* 232 */
- { 1, 0, sys_mq_unlink, "mq_unlink" }, /* 233 */
- { 5, 0, sys_mq_timedsend, "mq_timedsend" }, /* 234 */
- { 5, 0, sys_mq_timedreceive, "mq_timedreceive"}, /* 235 */
- { 2, 0, sys_mq_notify, "mq_notify" }, /* 236 */
- { 3, 0, sys_mq_getsetattr, "mq_getsetattr" }, /* 237 */
- [238] = { },
- { 2, 0, printargs, "io_setup" }, /* 239 */
- { 1, 0, printargs, "io_destroy" }, /* 240 */
- { 3, 0, printargs, "io_submit" }, /* 241 */
- { 5, 0, printargs, "io_getevents" }, /* 242 */
- { 3, 0, printargs, "io_cancel" }, /* 243 */
- { 2, 0, sys_clock_settime, "clock_settime" }, /* 244 */
- { 2, 0, sys_clock_gettime, "clock_gettime" }, /* 245 */
- { 2, 0, sys_clock_getres, "clock_getres" }, /* 246 */
- { 4, 0, sys_clock_nanosleep, "clock_nanosleep"}, /* 247 */
- { 3, 0, sys_timer_create, "timer_create" }, /* 248 */
- { 1, 0, sys_timer_delete, "timer_delete" }, /* 249 */
- { 4, 0, sys_timer_settime, "timer_settime" }, /* 250 */
- { 2, 0, sys_timer_gettime, "timer_gettime" }, /* 251 */
- { 1, 0, sys_timer_getoverrun, "timer_getoverrun"}, /* 252 */
- [253] = { },
- { 4, 0, printargs, "lookup_dcookie"}, /* 254 */
- [255] = { },
- { 5, 0, printargs, "add_key" }, /* 256 */
- { 5, 0, printargs, "request_key" }, /* 257 */
- { 5, 0, printargs, "keyctl" }, /* 258 */
- [259] = { },
- { 5, TD, sys_readahead, "readahead" }, /* 260 */
- { 5, TM|SI, sys_remap_file_pages, "remap_file_pages"}, /* 261 */
- { 5, TM, sys_migrate_pages, "migrate_pages" }, /* 262 */
- { 0, TM, sys_mbind, "mbind" }, /* 263 */
- { 6, TM, sys_get_mempolicy, "get_mempolicy" }, /* 264 */
- { 5, TM, sys_set_mempolicy, "set_mempolicy" }, /* 265 */
- { 1, TP, sys_unshare, "unshare" }, /* 266 */
- { 1, TM, sys_move_pages, "move_pages" }, /* 267 */
- { 0, TD, sys_splice, "splice" }, /* 268 */
- { 0, TD, sys_tee, "tee" }, /* 269 */
- { 0, TD, sys_vmsplice, "vmsplice" }, /* 270 */
- { 0, 0, printargs, "SYS_271" }, /* 271 */
- { 0, TD, sys_pselect6, "pselect6" }, /* 272 */
- { 0, TD, sys_ppoll, "ppoll" }, /* 273 */
- { 0, TD, sys_epoll_pwait, "epoll_pwait" }, /* 274 */
- { 1, TD, sys_epoll_create1, "epoll_create1" }, /* 275 */
- { 0, TD, sys_inotify_init, "inotify_init" }, /* 276 */
- { 3, TD, sys_inotify_add_watch, "inotify_add_watch"}, /* 277 */
- { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch"}, /* 278 */
- { 1, TD, sys_inotify_init1, "inotify_init1" }, /* 279 */
- { 0, 0, sys_getcpu, "getcpu" }, /* 280 */
- { 4, 0, sys_kexec_load, "kexec_load" }, /* 281 */
- { 2, 0, sys_ioprio_set, "ioprio_set" }, /* 282 */
- { 3, 0, sys_ioprio_get, "ioprio_get" }, /* 283 */
- { 3, 0, sys_set_robust_list, "set_robust_list"}, /* 284 */
- { 3, 0, sys_get_robust_list, "get_robust_list"}, /* 285 */
- { 0, 0, printargs, "SYS_286" }, /* 286 */
- { 0, 0, printargs, "SYS_287" }, /* 287 */
- { 4, TD|TF, sys_openat, "openat" }, /* 288 */
- { 3, TD|TF, sys_mkdirat, "mkdirat" }, /* 289 */
- { 4, TD|TF, sys_mknodat, "mknodat" }, /* 290 */
- { 3, TD|TF, sys_unlinkat, "unlinkat" }, /* 291 */
- { 4, TD|TF, sys_renameat, "renameat" }, /* 292 */
- { 5, TD|TF, sys_linkat, "linkat" }, /* 293 */
- { 3, TD|TF, sys_symlinkat, "symlinkat" }, /* 294 */
- { 4, TD|TF, sys_readlinkat, "readlinkat" }, /* 295 */
- { 0, TD|TF, sys_utimensat, "utimensat" }, /* 296 */
- { 5, TD|TF, sys_fchownat, "fchownat" }, /* 297 */
- { 4, TD|TF, sys_futimesat, "futimesat" }, /* 298 */
- { 0, TD|TF, sys_newfstatat, "fstatat64" }, /* 299 */
- { 4, TD|TF, sys_fchmodat, "fchmodat" }, /* 300 */
- { 4, TD|TF, sys_faccessat, "faccessat" }, /* 301 */
- { 0, 0, printargs, "SYS_302" }, /* 302 */
- { 0, 0, printargs, "SYS_303" }, /* 303 */
- { 3, TD|TS, sys_signalfd, "signalfd" }, /* 304 */
- { 0, 0, printargs, "SYS_305" }, /* 305 */
- { 1, TD, sys_eventfd, "eventfd" }, /* 306 */
- { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 307 */
- { 2, TD, sys_setns, "setns" }, /* 308 */
- { 4, TD|TS, sys_signalfd4, "signalfd4" }, /* 309 */
- { 3, TD, sys_dup3, "dup3" }, /* 310 */
- { 2, TD, sys_pipe2, "pipe2" }, /* 311 */
- { 2, TD, sys_timerfd_create, "timerfd_create"}, /* 312 */
- { 4, TD, sys_timerfd_settime, "timerfd_settime"}, /* 313 */
- { 2, TD, sys_timerfd_gettime, "timerfd_gettime"}, /* 314 */
- { 0, 0, printargs, "SYS_315" }, /* 315 */
- { 2, TD, sys_eventfd2, "eventfd2" }, /* 316 */
- { 5, TD, sys_preadv, "preadv" }, /* 317 */
- { 5, TD, sys_pwritev, "pwritev" }, /* 318 */
- [319] = { },
- { 2, TD, sys_fanotify_init, "fanotify_init" }, /* 320 */
- { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" }, /* 321 */
- { 6, 0, sys_process_vm_readv, "process_vm_readv"}, /* 322 */
- { 6, 0, sys_process_vm_writev, "process_vm_writev"}, /* 323 */
- { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at"}, /* 324 */
- { 3, TD, sys_open_by_handle_at, "open_by_handle_at"}, /* 325 */
- { 6, TD, sys_sync_file_range2, "sync_file_range2"}, /* 326 */
- { 5, TD, sys_perf_event_open, "perf_event_open"}, /* 327 */
- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 328 */
- { 2, 0, sys_clock_adjtime, "clock_adjtime" }, /* 329 */
- { 4, 0, sys_prlimit64, "prlimit64" }, /* 330 */
- { 5, 0, sys_kcmp, "kcmp" }, /* 331 */
- { 3, TD, sys_finit_module, "finit_module" }, /* 332 */
- { 4, TN, sys_accept4, "accept4" }, /* 333 */
- { 3, 0, sys_sched_setattr, "sched_setattr" }, /* 334 */
- { 4, 0, sys_sched_getattr, "sched_getattr" }, /* 335 */
+[ 0] = { 0, 0, printargs, "spill" },
+[ 1] = { 0, 0, printargs, "xtensa" },
+[ 2 ... 7] = { },
+[ 8] = { 3, TD|TF, sys_open, "open" },
+[ 9] = { 1, TD, sys_close, "close" },
+[ 10] = { 1, TD, sys_dup, "dup" },
+[ 11] = { 2, TD, sys_dup2, "dup2" },
+[ 12] = { 3, TD, sys_read, "read" },
+[ 13] = { 3, TD, sys_write, "write" },
+[ 14] = { 5, TD, sys_select, "select" },
+[ 15] = { 3, TD, sys_lseek, "lseek" },
+[ 16] = { 3, TD, sys_poll, "poll" },
+[ 17] = { 5, TD, sys_llseek, "_llseek" },
+[ 18] = { 4, TD, sys_epoll_wait, "epoll_wait" },
+[ 19] = { 4, TD, sys_epoll_ctl, "epoll_ctl" },
+[ 20] = { 1, TD, sys_epoll_create, "epoll_create" },
+[ 21] = { 2, TD|TF, sys_creat, "creat" },
+[ 22] = { 2, TF, sys_truncate, "truncate" },
+[ 23] = { 2, TD, sys_ftruncate, "ftruncate" },
+[ 24] = { 3, TD, sys_readv, "readv" },
+[ 25] = { 3, TD, sys_writev, "writev" },
+[ 26] = { 1, TD, sys_fsync, "fsync" },
+[ 27] = { 1, TD, sys_fdatasync, "fdatasync" },
+[ 28] = { 4, TF, sys_truncate64, "truncate64" },
+[ 29] = { 4, TD, sys_ftruncate64, "ftruncate64" },
+[ 30] = { 6, TD, sys_pread, "pread64" },
+[ 31] = { 6, TD, sys_pwrite, "pwrite64" },
+[ 32] = { 2, TF, sys_link, "link" },
+[ 33] = { 2, TF, sys_rename, "rename" },
+[ 34] = { 2, TF, sys_symlink, "symlink" },
+[ 35] = { 3, TF, sys_readlink, "readlink" },
+[ 36] = { 3, TF, sys_mknod, "mknod" },
+[ 37] = { 1, TD, sys_pipe, "pipe" },
+[ 38] = { 1, TF, sys_unlink, "unlink" },
+[ 39] = { 1, TF, sys_rmdir, "rmdir" },
+[ 40] = { 2, TF, sys_mkdir, "mkdir" },
+[ 41] = { 1, TF, sys_chdir, "chdir" },
+[ 42] = { 1, TD, sys_fchdir, "fchdir" },
+[ 43] = { 2, TF, sys_getcwd, "getcwd" },
+[ 44] = { 2, TF, sys_chmod, "chmod" },
+[ 45] = { 3, TF, sys_chown, "chown" },
+[ 46] = { 2, TF, sys_stat, "stat" },
+[ 47] = { 2, TF, sys_stat64, "stat64" },
+[ 48] = { 3, TF, sys_chown, "lchown" },
+[ 49] = { 2, TF, sys_lstat, "lstat" },
+[ 50] = { 2, TF, sys_lstat64, "lstat64" },
+[ 51] = { },
+[ 52] = { 2, TD, sys_fchmod, "fchmod" },
+[ 53] = { 3, TD, sys_fchown, "fchown" },
+[ 54] = { 2, TD, sys_fstat, "fstat" },
+[ 55] = { 2, TD, sys_fstat64, "fstat64" },
+[ 56] = { 2, TD, sys_flock, "flock" },
+[ 57] = { 2, TF, sys_access, "access" },
+[ 58] = { 1, 0, sys_umask, "umask" },
+[ 59] = { 3, TD, sys_getdents, "getdents" },
+[ 60] = { 3, TD, sys_getdents64, "getdents64" },
+[ 61] = { 3, TD, sys_fcntl, "fcntl64" },
+[ 62] = { 6, TD, sys_fallocate, "fallocate" },
+[ 63] = { 6, TD, sys_fadvise64_64, "fadvise64_64" },
+[ 64] = { 2, TF, sys_utime, "utime" },
+[ 65] = { 2, TF, sys_utimes, "utimes" },
+[ 66] = { 3, TD, sys_ioctl, "ioctl" },
+[ 67] = { 3, TD, sys_fcntl, "fcntl" },
+[ 68] = { 5, TF, sys_setxattr, "setxattr" },
+[ 69] = { 4, TF, sys_getxattr, "getxattr" },
+[ 70] = { 3, TF, sys_listxattr, "listxattr" },
+[ 71] = { 2, TF, sys_removexattr, "removexattr" },
+[ 72] = { 5, TF, sys_setxattr, "lsetxattr" },
+[ 73] = { 4, TF, sys_getxattr, "lgetxattr" },
+[ 74] = { 3, TF, sys_listxattr, "llistxattr" },
+[ 75] = { 2, TF, sys_removexattr, "lremovexattr" },
+[ 76] = { 5, TD, sys_fsetxattr, "fsetxattr" },
+[ 77] = { 4, TD, sys_fgetxattr, "fgetxattr" },
+[ 78] = { 3, TD, sys_flistxattr, "flistxattr" },
+[ 79] = { 2, TD, sys_fremovexattr, "fremovexattr" },
+[ 80] = { 6, TD|TM|SI, sys_mmap_pgoff, "mmap2" },
+[ 81] = { 2, TM|SI, sys_munmap, "munmap" },
+[ 82] = { 3, TM|SI, sys_mprotect, "mprotect" },
+[ 83] = { 1, TM|SI, sys_brk, "brk" },
+[ 84] = { 2, TM, sys_mlock, "mlock" },
+[ 85] = { 2, TM, sys_munlock, "munlock" },
+[ 86] = { 1, TM, sys_mlockall, "mlockall" },
+[ 87] = { 0, TM, sys_munlockall, "munlockall" },
+[ 88] = { 4, TM|SI, sys_mremap, "mremap" },
+[ 89] = { 3, TM, sys_msync, "msync" },
+[ 90] = { 3, TM, sys_mincore, "mincore" },
+[ 91] = { 3, TM, sys_madvise, "madvise" },
+[ 92] = { 3, TI, sys_shmget, "shmget" },
+[ 93] = { 3, TI|TM|SI, sys_shmat, "shmat" },
+[ 94] = { 3, TI, sys_shmctl, "shmctl" },
+[ 95] = { 1, TI|TM|SI, sys_shmdt, "shmdt" },
+[ 96] = { 3, TN, sys_socket, "socket" },
+[ 97] = { 5, TN, sys_setsockopt, "setsockopt" },
+[ 98] = { 5, TN, sys_getsockopt, "getsockopt" },
+[ 99] = { 2, TN, sys_shutdown, "shutdown" },
+[100] = { 3, TN, sys_bind, "bind" },
+[101] = { 3, TN, sys_connect, "connect" },
+[102] = { 2, TN, sys_listen, "listen" },
+[103] = { 3, TN, sys_accept, "accept" },
+[104] = { 3, TN, sys_getsockname, "getsockname" },
+[105] = { 3, TN, sys_getpeername, "getpeername" },
+[106] = { 3, TN, sys_sendmsg, "sendmsg" },
+[107] = { 3, TN, sys_recvmsg, "recvmsg" },
+[108] = { 4, TN, sys_send, "send" },
+[109] = { 4, TN, sys_recv, "recv" },
+[110] = { 6, TN, sys_sendto, "sendto" },
+[111] = { 6, TN, sys_recvfrom, "recvfrom" },
+[112] = { 4, TN, sys_socketpair, "socketpair" },
+[113] = { 4, TD|TN, sys_sendfile, "sendfile" },
+[114] = { 4, TD|TN, sys_sendfile64, "sendfile64" },
+[115] = { 4, TN, sys_sendmmsg, "sendmmsg" },
+[116] = { 5, TP, sys_clone, "clone" },
+[117] = { 3, TF|TP|SE|SI, sys_execve, "execve" },
+[118] = { 1, TP|SE, sys_exit, "exit" },
+[119] = { 1, TP|SE, sys_exit, "exit_group" },
+[120] = { 0, 0, sys_getpid, "getpid" },
+[121] = { 4, TP, sys_wait4, "wait4" },
+[122] = { 5, TP, sys_waitid, "waitid" },
+[123] = { 2, TS, sys_kill, "kill" },
+[124] = { 2, TS, sys_kill, "tkill" },
+[125] = { 3, TS, sys_tgkill, "tgkill" },
+[126] = { 1, 0, sys_set_tid_address, "set_tid_address" },
+[127] = { 0, 0, sys_gettid, "gettid" },
+[128] = { 0, 0, sys_setsid, "setsid" },
+[129] = { 1, 0, sys_getsid, "getsid" },
+[130] = { 5, 0, sys_prctl, "prctl" },
+[131] = { 1, 0, sys_personality, "personality" },
+[132] = { 2, 0, sys_getpriority, "getpriority" },
+[133] = { 3, 0, sys_setpriority, "setpriority" },
+[134] = { 3, 0, sys_setitimer, "setitimer" },
+[135] = { 2, 0, sys_getitimer, "getitimer" },
+[136] = { 1, 0, sys_setuid, "setuid" },
+[137] = { 0, NF, sys_getuid, "getuid" },
+[138] = { 1, 0, sys_setgid, "setgid" },
+[139] = { 0, NF, sys_getgid, "getgid" },
+[140] = { 0, NF, sys_geteuid, "geteuid" },
+[141] = { 0, NF, sys_getegid, "getegid" },
+[142] = { 2, 0, sys_setreuid, "setreuid" },
+[143] = { 2, 0, sys_setregid, "setregid" },
+[144] = { 3, 0, sys_setresuid, "setresuid" },
+[145] = { 3, 0, sys_getresuid, "getresuid" },
+[146] = { 3, 0, sys_setresgid, "setresgid" },
+[147] = { 3, 0, sys_getresgid, "getresgid" },
+[148] = { 2, 0, sys_setpgid, "setpgid" },
+[149] = { 1, 0, sys_getpgid, "getpgid" },
+[150] = { 0, 0, sys_getppid, "getppid" },
+[151] = { 0, 0, sys_getpgrp, "getpgrp" },
+[152 ... 153] = { },
+[154] = { 1, 0, sys_times, "times" },
+[155] = { 1, TF, sys_acct, "acct" },
+[156] = { 3, 0, sys_sched_setaffinity, "sched_setaffinity" },
+[157] = { 3, 0, sys_sched_getaffinity, "sched_getaffinity" },
+[158] = { 2, 0, sys_capget, "capget" },
+[159] = { 2, 0, sys_capset, "capset" },
+[160] = { 4, 0, sys_ptrace, "ptrace" },
+[161] = { 4, TI, sys_semtimedop, "semtimedop" },
+[162] = { 3, TI, sys_semget, "semget" },
+[163] = { 3, TI, sys_semop, "semop" },
+[164] = { 4, TI, sys_semctl, "semctl" },
+[165] = { },
+[166] = { 2, TI, sys_msgget, "msgget" },
+[167] = { 4, TI, sys_msgsnd, "msgsnd" },
+[168] = { 5, TI, sys_msgrcv, "msgrcv" },
+[169] = { 3, TI, sys_msgctl, "msgctl" },
+[170] = { },
+[171] = { 2, TF, sys_umount2, "umount2" },
+[172] = { 5, TF, sys_mount, "mount" },
+[173] = { 2, TF, sys_swapon, "swapon" },
+[174] = { 1, TF, sys_chroot, "chroot" },
+[175] = { 2, TF, sys_pivotroot, "pivot_root" },
+[176] = { 1, TF, sys_umount, "umount" },
+[177] = { 1, TF, sys_swapoff, "swapoff" },
+[178] = { 0, 0, sys_sync, "sync" },
+[179] = { },
+[180] = { 1, NF, sys_setfsuid, "setfsuid" },
+[181] = { 1, NF, sys_setfsgid, "setfsgid" },
+[182] = { 3, 0, sys_sysfs, "sysfs" },
+[183] = { 2, 0, sys_ustat, "ustat" },
+[184] = { 2, TF, sys_statfs, "statfs" },
+[185] = { 2, TD, sys_fstatfs, "fstatfs" },
+[186] = { 3, TF, sys_statfs64, "statfs64" },
+[187] = { 3, TD, sys_fstatfs64, "fstatfs64" },
+[188] = { 2, 0, sys_setrlimit, "setrlimit" },
+[189] = { 2, 0, sys_getrlimit, "getrlimit" },
+[190] = { 2, 0, sys_getrusage, "getrusage" },
+[191] = { 5, 0, sys_futex, "futex" },
+[192] = { 2, 0, sys_gettimeofday, "gettimeofday" },
+[193] = { 2, 0, sys_settimeofday, "settimeofday" },
+[194] = { 1, 0, sys_adjtimex, "adjtimex" },
+[195] = { 2, 0, sys_nanosleep, "nanosleep" },
+[196] = { 2, 0, sys_getgroups, "getgroups" },
+[197] = { 2, 0, sys_setgroups, "setgroups" },
+[198] = { 2, 0, sys_sethostname, "sethostname" },
+[199] = { 2, 0, sys_setdomainname, "setdomainname" },
+[200] = { 3, 0, sys_syslog, "syslog" },
+[201] = { 0, 0, sys_vhangup, "vhangup" },
+[202] = { 1, TF, sys_uselib, "uselib" },
+[203] = { 3, 0, sys_reboot, "reboot" },
+[204] = { 4, TF, sys_quotactl, "quotactl" },
+[205] = { 3, 0, sys_nfsservctl, "nfsservctl" },
+[206] = { 1, 0, sys_sysctl, "_sysctl" },
+[207] = { 2, 0, sys_bdflush, "bdflush" },
+[208] = { 1, 0, sys_uname, "uname" },
+[209] = { 1, 0, sys_sysinfo, "sysinfo" },
+[210] = { 2, 0, sys_init_module, "init_module" },
+[211] = { 1, 0, sys_delete_module, "delete_module" },
+[212] = { 2, 0, sys_sched_setparam, "sched_setparam" },
+[213] = { 2, 0, sys_sched_getparam, "sched_getparam" },
+[214] = { 3, 0, sys_sched_setscheduler, "sched_setscheduler" },
+[215] = { 1, 0, sys_sched_getscheduler, "sched_getscheduler" },
+[216] = { 1, 0, sys_sched_get_priority_max, "sched_get_priority_max"},
+[217] = { 1, 0, sys_sched_get_priority_min, "sched_get_priority_min"},
+[218] = { 2, 0, sys_sched_rr_get_interval, "sched_rr_get_interval" },
+[219] = { 0, 0, sys_sched_yield, "sched_yield" },
+[220 ... 222] = { },
+[223] = { 0, 0, sys_restart_syscall, "restart_syscall" },
+[224] = { 2, TS, sys_sigaltstack, "sigaltstack" },
+[225] = { 0, TS, sys_rt_sigreturn, "rt_sigreturn" },
+[226] = { 4, TS, sys_rt_sigaction, "rt_sigaction" },
+[227] = { 4, TS, sys_rt_sigprocmask, "rt_sigprocmask" },
+[228] = { 2, TS, sys_rt_sigpending, "rt_sigpending" },
+[229] = { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" },
+[230] = { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" },
+[231] = { 2, TS, sys_rt_sigsuspend, "rt_sigsuspend" },
+[232] = { 4, 0, sys_mq_open, "mq_open" },
+[233] = { 1, 0, sys_mq_unlink, "mq_unlink" },
+[234] = { 5, 0, sys_mq_timedsend, "mq_timedsend" },
+[235] = { 5, 0, sys_mq_timedreceive, "mq_timedreceive" },
+[236] = { 2, 0, sys_mq_notify, "mq_notify" },
+[237] = { 3, 0, sys_mq_getsetattr, "mq_getsetattr" },
+[238] = { },
+[239] = { 2, 0, sys_io_setup, "io_setup" },
+[240] = { 1, 0, sys_io_destroy, "io_destroy" },
+[241] = { 3, 0, sys_io_submit, "io_submit" },
+[242] = { 5, 0, sys_io_getevents, "io_getevents" },
+[243] = { 3, 0, sys_io_cancel, "io_cancel" },
+[244] = { 2, 0, sys_clock_settime, "clock_settime" },
+[245] = { 2, 0, sys_clock_gettime, "clock_gettime" },
+[246] = { 2, 0, sys_clock_getres, "clock_getres" },
+[247] = { 4, 0, sys_clock_nanosleep, "clock_nanosleep" },
+[248] = { 3, 0, sys_timer_create, "timer_create" },
+[249] = { 1, 0, sys_timer_delete, "timer_delete" },
+[250] = { 4, 0, sys_timer_settime, "timer_settime" },
+[251] = { 2, 0, sys_timer_gettime, "timer_gettime" },
+[252] = { 1, 0, sys_timer_getoverrun, "timer_getoverrun" },
+[253] = { },
+[254] = { 4, 0, sys_lookup_dcookie, "lookup_dcookie" },
+[255] = { },
+[256] = { 5, 0, sys_add_key, "add_key" },
+[257] = { 5, 0, sys_request_key, "request_key" },
+[258] = { 5, 0, sys_keyctl, "keyctl" },
+[259] = { },
+[260] = { 5, TD, sys_readahead, "readahead" },
+[261] = { 5, TM|SI, sys_remap_file_pages, "remap_file_pages" },
+[262] = { 4, TM, sys_migrate_pages, "migrate_pages" },
+[263] = { 6, TM, sys_mbind, "mbind" },
+[264] = { 5, TM, sys_get_mempolicy, "get_mempolicy" },
+[265] = { 3, TM, sys_set_mempolicy, "set_mempolicy" },
+[266] = { 1, TP, sys_unshare, "unshare" },
+[267] = { 6, TM, sys_move_pages, "move_pages" },
+[268] = { 0, TD, sys_splice, "splice" },
+[269] = { 0, TD, sys_tee, "tee" },
+[270] = { 0, TD, sys_vmsplice, "vmsplice" },
+[271] = { },
+[272] = { 0, TD, sys_pselect6, "pselect6" },
+[273] = { 0, TD, sys_ppoll, "ppoll" },
+[274] = { 0, TD, sys_epoll_pwait, "epoll_pwait" },
+[275] = { 1, TD, sys_epoll_create1, "epoll_create1" },
+[276] = { 0, TD, sys_inotify_init, "inotify_init" },
+[277] = { 3, TD, sys_inotify_add_watch, "inotify_add_watch" },
+[278] = { 2, TD, sys_inotify_rm_watch, "inotify_rm_watch" },
+[279] = { 1, TD, sys_inotify_init1, "inotify_init1" },
+[280] = { 0, 0, sys_getcpu, "getcpu" },
+[281] = { 4, 0, sys_kexec_load, "kexec_load" },
+[282] = { 2, 0, sys_ioprio_set, "ioprio_set" },
+[283] = { 3, 0, sys_ioprio_get, "ioprio_get" },
+[284] = { 3, 0, sys_set_robust_list, "set_robust_list" },
+[285] = { 3, 0, sys_get_robust_list, "get_robust_list" },
+[286 ... 287] = { },
+[288] = { 4, TD|TF, sys_openat, "openat" },
+[289] = { 3, TD|TF, sys_mkdirat, "mkdirat" },
+[290] = { 4, TD|TF, sys_mknodat, "mknodat" },
+[291] = { 3, TD|TF, sys_unlinkat, "unlinkat" },
+[292] = { 4, TD|TF, sys_renameat, "renameat" },
+[293] = { 5, TD|TF, sys_linkat, "linkat" },
+[294] = { 3, TD|TF, sys_symlinkat, "symlinkat" },
+[295] = { 4, TD|TF, sys_readlinkat, "readlinkat" },
+[296] = { 0, TD|TF, sys_utimensat, "utimensat" },
+[297] = { 5, TD|TF, sys_fchownat, "fchownat" },
+[298] = { 4, TD|TF, sys_futimesat, "futimesat" },
+[299] = { 4, TD|TF, sys_newfstatat, "fstatat64" },
+[300] = { 4, TD|TF, sys_fchmodat, "fchmodat" },
+[301] = { 4, TD|TF, sys_faccessat, "faccessat" },
+[302 ... 303] = { },
+[304] = { 3, TD|TS, sys_signalfd, "signalfd" },
+[305] = { },
+[306] = { 1, TD, sys_eventfd, "eventfd" },
+[307] = { 5, TN, sys_recvmmsg, "recvmmsg" },
+[308] = { 2, TD, sys_setns, "setns" },
+[309] = { 4, TD|TS, sys_signalfd4, "signalfd4" },
+[310] = { 3, TD, sys_dup3, "dup3" },
+[311] = { 2, TD, sys_pipe2, "pipe2" },
+[312] = { 2, TD, sys_timerfd_create, "timerfd_create" },
+[313] = { 4, TD, sys_timerfd_settime, "timerfd_settime" },
+[314] = { 2, TD, sys_timerfd_gettime, "timerfd_gettime" },
+[315] = { },
+[316] = { 2, TD, sys_eventfd2, "eventfd2" },
+[317] = { 5, TD, sys_preadv, "preadv" },
+[318] = { 5, TD, sys_pwritev, "pwritev" },
+[319] = { },
+[320] = { 2, TD, sys_fanotify_init, "fanotify_init" },
+[321] = { 6, TD|TF, sys_fanotify_mark, "fanotify_mark" },
+[322] = { 6, 0, sys_process_vm_readv, "process_vm_readv" },
+[323] = { 6, 0, sys_process_vm_writev, "process_vm_writev" },
+[324] = { 5, TD|TF, sys_name_to_handle_at, "name_to_handle_at" },
+[325] = { 3, TD, sys_open_by_handle_at, "open_by_handle_at" },
+[326] = { 6, TD, sys_sync_file_range2, "sync_file_range2" },
+[327] = { 5, TD, sys_perf_event_open, "perf_event_open" },
+[328] = { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" },
+[329] = { 2, 0, sys_clock_adjtime, "clock_adjtime" },
+[330] = { 4, 0, sys_prlimit64, "prlimit64" },
+[331] = { 5, 0, sys_kcmp, "kcmp" },
+[332] = { 3, TD, sys_finit_module, "finit_module" },
+[333] = { 4, TN, sys_accept4, "accept4" },
+[334] = { 3, 0, sys_sched_setattr, "sched_setattr" },
+[335] = { 4, 0, sys_sched_getattr, "sched_getattr" },
+[336] = { 5, TD|TF, sys_renameat2, "renameat2" },
+[337] = { 3, 0, sys_seccomp, "seccomp", },
+[338] = { 3, 0, sys_getrandom, "getrandom", },
+[339] = { 2, TD, sys_memfd_create, "memfd_create", },
diff --git a/loop.c b/loop.c
index 2e16347..bb622fd 100644
--- a/loop.c
+++ b/loop.c
@@ -34,11 +34,11 @@
#include "xlat/loop_flags_options.h"
#include "xlat/loop_crypt_type_options.h"
-int loop_ioctl(struct tcb *tcp, long code, long arg)
+int
+loop_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
struct loop_info info;
struct loop_info64 info64;
- char *s = alloca((LO_NAME_SIZE + LO_KEY_SIZE) * 4);
if (entering(tcp))
return 0;
@@ -71,12 +71,14 @@
tprints(", flags=");
printflags(loop_flags_options, info.lo_flags, "LO_FLAGS_???");
- string_quote(info.lo_name, s, -1, LO_NAME_SIZE);
- tprintf(", name=%s", s);
+ tprints(", name=");
+ print_quoted_string(info.lo_name, LO_NAME_SIZE,
+ QUOTE_0_TERMINATED);
if (!abbrev(tcp) || info.lo_encrypt_type != LO_CRYPT_NONE) {
- string_quote((void *) info.lo_encrypt_key, s, 0, LO_KEY_SIZE);
- tprintf(", encrypt_key=%s", s);
+ tprints(", encrypt_key=");
+ print_quoted_string((void *) info.lo_encrypt_key,
+ LO_KEY_SIZE, 0);
}
if (!abbrev(tcp))
@@ -124,14 +126,17 @@
tprints(", flags=");
printflags(loop_flags_options, info64.lo_flags, "LO_FLAGS_???");
- string_quote((void *) info64.lo_file_name, s, -1, LO_NAME_SIZE);
- tprintf(", file_name=%s", s);
+ tprints(", file_name=");
+ print_quoted_string((void *) info64.lo_file_name,
+ LO_NAME_SIZE, QUOTE_0_TERMINATED);
if (!abbrev(tcp) || info64.lo_encrypt_type != LO_CRYPT_NONE) {
- string_quote((void *) info64.lo_crypt_name, s, -1, LO_NAME_SIZE);
- tprintf(", crypt_name=%s", s);
- string_quote((void *) info64.lo_encrypt_key, s, 0, LO_KEY_SIZE);
- tprintf(", encrypt_key=%s", s);
+ tprints(", crypt_name=");
+ print_quoted_string((void *) info64.lo_crypt_name,
+ LO_NAME_SIZE, QUOTE_0_TERMINATED);
+ tprints(", encrypt_key=");
+ print_quoted_string((void *) info64.lo_encrypt_key,
+ LO_KEY_SIZE, 0);
}
if (!abbrev(tcp))
diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4
new file mode 100644
index 0000000..77fd346
--- /dev/null
+++ b/m4/ax_prog_cc_for_build.m4
@@ -0,0 +1,125 @@
+# ===========================================================================
+# http://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_PROG_CC_FOR_BUILD
+#
+# DESCRIPTION
+#
+# This macro searches for a C compiler that generates native executables,
+# that is a C compiler that surely is not a cross-compiler. This can be
+# useful if you have to generate source code at compile-time like for
+# example GCC does.
+#
+# The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything
+# needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD).
+# The value of these variables can be overridden by the user by specifying
+# a compiler with an environment variable (like you do for standard CC).
+#
+# It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object
+# file extensions for the build platform, and GCC_FOR_BUILD to `yes' if
+# the compiler we found is GCC. All these variables but GCC_FOR_BUILD are
+# substituted in the Makefile.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 8
+
+AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD])
+AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_CPP])dnl
+AC_REQUIRE([AC_EXEEXT])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+
+dnl Use the standard macros, but make them use other variable names
+dnl
+pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl
+pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl
+pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl
+pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl
+pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl
+pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl
+pushdef([ac_cv_objext], ac_cv_build_objext)dnl
+pushdef([ac_exeext], ac_build_exeext)dnl
+pushdef([ac_objext], ac_build_objext)dnl
+pushdef([CC], CC_FOR_BUILD)dnl
+pushdef([CPP], CPP_FOR_BUILD)dnl
+pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl
+pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl
+pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl
+pushdef([host], build)dnl
+pushdef([host_alias], build_alias)dnl
+pushdef([host_cpu], build_cpu)dnl
+pushdef([host_vendor], build_vendor)dnl
+pushdef([host_os], build_os)dnl
+pushdef([ac_cv_host], ac_cv_build)dnl
+pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl
+pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl
+pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl
+pushdef([ac_cv_host_os], ac_cv_build_os)dnl
+pushdef([ac_cpp], ac_build_cpp)dnl
+pushdef([ac_compile], ac_build_compile)dnl
+pushdef([ac_link], ac_build_link)dnl
+
+save_cross_compiling=$cross_compiling
+save_ac_tool_prefix=$ac_tool_prefix
+cross_compiling=no
+ac_tool_prefix=
+
+AC_PROG_CC
+AC_PROG_CPP
+AC_EXEEXT
+
+ac_tool_prefix=$save_ac_tool_prefix
+cross_compiling=$save_cross_compiling
+
+dnl Restore the old definitions
+dnl
+popdef([ac_link])dnl
+popdef([ac_compile])dnl
+popdef([ac_cpp])dnl
+popdef([ac_cv_host_os])dnl
+popdef([ac_cv_host_vendor])dnl
+popdef([ac_cv_host_cpu])dnl
+popdef([ac_cv_host_alias])dnl
+popdef([ac_cv_host])dnl
+popdef([host_os])dnl
+popdef([host_vendor])dnl
+popdef([host_cpu])dnl
+popdef([host_alias])dnl
+popdef([host])dnl
+popdef([LDFLAGS])dnl
+popdef([CPPFLAGS])dnl
+popdef([CFLAGS])dnl
+popdef([CPP])dnl
+popdef([CC])dnl
+popdef([ac_objext])dnl
+popdef([ac_exeext])dnl
+popdef([ac_cv_objext])dnl
+popdef([ac_cv_exeext])dnl
+popdef([ac_cv_prog_cc_g])dnl
+popdef([ac_cv_prog_cc_cross])dnl
+popdef([ac_cv_prog_cc_works])dnl
+popdef([ac_cv_prog_gcc])dnl
+popdef([ac_cv_prog_CPP])dnl
+
+dnl Finally, set Makefile variables
+dnl
+BUILD_EXEEXT=$ac_build_exeext
+BUILD_OBJEXT=$ac_build_objext
+AC_SUBST(BUILD_EXEEXT)dnl
+AC_SUBST(BUILD_OBJEXT)dnl
+AC_SUBST([CFLAGS_FOR_BUILD])dnl
+AC_SUBST([CPPFLAGS_FOR_BUILD])dnl
+AC_SUBST([LDFLAGS_FOR_BUILD])dnl
+])
diff --git a/m4/includedir.m4 b/m4/includedir.m4
deleted file mode 100644
index dd859bb..0000000
--- a/m4/includedir.m4
+++ /dev/null
@@ -1,23 +0,0 @@
-dnl ### A macro to find the include directory, useful for cross-compiling.
-AC_DEFUN([AC_INCLUDEDIR],
-[AC_REQUIRE([AC_PROG_AWK])dnl
-AC_SUBST(includedir)
-AC_MSG_CHECKING(for primary include directory)
-includedir=/usr/include
-if test -n "$GCC"
-then
- >conftest.c
- new_includedir=`
- $CC -v -E conftest.c 2>&1 | $AWK '
- /^End of search list/ { print last; exit }
- { last = [$]1 }
- '
- `
- rm -f conftest.c
- if test -n "$new_includedir" && test -d "$new_includedir"
- then
- includedir=$new_includedir
- fi
-fi
-AC_MSG_RESULT($includedir)
-])
diff --git a/m4/stat.m4 b/m4/stat.m4
deleted file mode 100644
index bf0e480..0000000
--- a/m4/stat.m4
+++ /dev/null
@@ -1,16 +0,0 @@
-dnl ### A macro to determine whether stat64 is defined.
-AC_DEFUN([AC_STAT64],
-[AC_MSG_CHECKING(for stat64 in (asm|sys)/stat.h)
-AC_CACHE_VAL(ac_cv_type_stat64,
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/types.h>
-#include <linux/types.h>
-#include <asm/stat.h>
-]], [[struct stat64 st;]])],[ac_cv_type_stat64=yes],[ac_cv_type_stat64=no])])
-AC_MSG_RESULT($ac_cv_type_stat64)
-if test "$ac_cv_type_stat64" = yes
-then
- AC_DEFINE([HAVE_STAT64], 1,
-[Define if stat64 is available in asm/stat.h.])
-fi
-])
diff --git a/m4/statfs.m4 b/m4/statfs.m4
deleted file mode 100644
index 1a2f971..0000000
--- a/m4/statfs.m4
+++ /dev/null
@@ -1,15 +0,0 @@
-dnl ### A macro to determine whether statfs64 is defined.
-AC_DEFUN([AC_STATFS64],
-[AC_MSG_CHECKING(for statfs64 in sys/vfs.h)
-AC_CACHE_VAL(ac_cv_type_statfs64,
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <linux/types.h>
-#include <sys/vfs.h>
-]], [[struct statfs64 st;]])],[ac_cv_type_statfs64=yes],[ac_cv_type_statfs64=no])])
-AC_MSG_RESULT($ac_cv_type_statfs64)
-if test "$ac_cv_type_statfs64" = yes
-then
- AC_DEFINE([HAVE_STATFS64], 1,
-[Define if statfs64 is available in sys/vfs.h.])
-fi
-])
diff --git a/m4/warnings.m4 b/m4/warnings.m4
index dad5c1f..e3d239b 100644
--- a/m4/warnings.m4
+++ b/m4/warnings.m4
@@ -1,5 +1,5 @@
-# warnings.m4 serial 2
-dnl Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+# warnings.m4 serial 11
+dnl Copyright (C) 2008-2013 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
@@ -14,23 +14,66 @@
[m4_define([gl_AS_VAR_APPEND],
[AS_VAR_SET([$1], [AS_VAR_GET([$1])$2])])])
-# gl_WARN_ADD(PARAMETER, [VARIABLE = WARN_CFLAGS])
-# ------------------------------------------------
-# Adds parameter to WARN_CFLAGS if the compiler supports it. For example,
-# gl_WARN_ADD([-Wparentheses]).
-AC_DEFUN([gl_WARN_ADD],
-[AS_VAR_PUSHDEF([gl_Warn], [gl_cv_warn_$1])dnl
-AC_CACHE_CHECK([whether compiler handles $1], [gl_Warn], [
- save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="${CPPFLAGS} $1"
- AC_PREPROC_IFELSE([AC_LANG_PROGRAM([])],
- [AS_VAR_SET([gl_Warn], [yes])],
- [AS_VAR_SET([gl_Warn], [no])])
- CPPFLAGS="$save_CPPFLAGS"
+
+# gl_COMPILER_OPTION_IF(OPTION, [IF-SUPPORTED], [IF-NOT-SUPPORTED],
+# [PROGRAM = AC_LANG_PROGRAM()])
+# -----------------------------------------------------------------
+# Check if the compiler supports OPTION when compiling PROGRAM.
+#
+# FIXME: gl_Warn must be used unquoted until we can assume Autoconf
+# 2.64 or newer.
+AC_DEFUN([gl_COMPILER_OPTION_IF],
+[AS_VAR_PUSHDEF([gl_Warn], [gl_cv_warn_[]_AC_LANG_ABBREV[]_$1])dnl
+AS_VAR_PUSHDEF([gl_Flags], [_AC_LANG_PREFIX[]FLAGS])dnl
+AS_LITERAL_IF([$1],
+ [m4_pushdef([gl_Positive], m4_bpatsubst([$1], [^-Wno-], [-W]))],
+ [gl_positive="$1"
+case $gl_positive in
+ -Wno-*) gl_positive=-W`expr "X$gl_positive" : 'X-Wno-\(.*\)'` ;;
+esac
+m4_pushdef([gl_Positive], [$gl_positive])])dnl
+AC_CACHE_CHECK([whether _AC_LANG compiler handles $1], m4_defn([gl_Warn]), [
+ gl_save_compiler_FLAGS="$gl_Flags"
+ gl_AS_VAR_APPEND(m4_defn([gl_Flags]),
+ [" $gl_unknown_warnings_are_errors ]m4_defn([gl_Positive])["])
+ AC_LINK_IFELSE([m4_default([$4], [AC_LANG_PROGRAM([])])],
+ [AS_VAR_SET(gl_Warn, [yes])],
+ [AS_VAR_SET(gl_Warn, [no])])
+ gl_Flags="$gl_save_compiler_FLAGS"
])
-AS_VAR_PUSHDEF([gl_Flags], m4_if([$2], [], [[WARN_CFLAGS]], [[$2]]))dnl
-AS_VAR_IF([gl_Warn], [yes], [gl_AS_VAR_APPEND([gl_Flags], [" $1"])])
+AS_VAR_IF(gl_Warn, [yes], [$2], [$3])
+m4_popdef([gl_Positive])dnl
AS_VAR_POPDEF([gl_Flags])dnl
AS_VAR_POPDEF([gl_Warn])dnl
-m4_ifval([$2], [AS_LITERAL_IF([$2], [AC_SUBST([$2])], [])])dnl
])
+
+# gl_UNKNOWN_WARNINGS_ARE_ERRORS
+# ------------------------------
+# Clang doesn't complain about unknown warning options unless one also
+# specifies -Wunknown-warning-option -Werror. Detect this.
+AC_DEFUN([gl_UNKNOWN_WARNINGS_ARE_ERRORS],
+[gl_COMPILER_OPTION_IF([-Werror -Wunknown-warning-option],
+ [gl_unknown_warnings_are_errors='-Wunknown-warning-option -Werror'],
+ [gl_unknown_warnings_are_errors=])])
+
+# gl_WARN_ADD(OPTION, [VARIABLE = WARN_CFLAGS],
+# [PROGRAM = AC_LANG_PROGRAM()])
+# ---------------------------------------------
+# Adds parameter to WARN_CFLAGS if the compiler supports it when
+# compiling PROGRAM. For example, gl_WARN_ADD([-Wparentheses]).
+#
+# If VARIABLE is a variable name, AC_SUBST it.
+AC_DEFUN([gl_WARN_ADD],
+[AC_REQUIRE([gl_UNKNOWN_WARNINGS_ARE_ERRORS])
+gl_COMPILER_OPTION_IF([$1],
+ [gl_AS_VAR_APPEND(m4_if([$2], [], [[WARN_CFLAGS]], [[$2]]), [" $1"])],
+ [],
+ [$3])
+m4_ifval([$2],
+ [AS_LITERAL_IF([$2], [AC_SUBST([$2])])],
+ [AC_SUBST([WARN_CFLAGS])])dnl
+])
+
+# Local Variables:
+# mode: autoconf
+# End:
diff --git a/maint/ioctls_gen.sh b/maint/ioctls_gen.sh
new file mode 100755
index 0000000..d8da875
--- /dev/null
+++ b/maint/ioctls_gen.sh
@@ -0,0 +1,114 @@
+#!/bin/sh
+# Copyright (c) 2004-2015 Dmitry V. Levin <ldv@altlinux.org>
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+set -efu
+
+me="${0##*/}"
+mydir="${0%/*}"
+msg()
+{
+ printf >&2 '%s\n' "$me: $*"
+}
+
+case $# in
+ 1)
+ inc_dir="$1"
+ arch_dir=
+ ;;
+ 2)
+ inc_dir="$1"
+ arch_dir="$2"
+ ;;
+ *)
+ echo >&2 "usage: $me include-directory [arch-include-directory]"
+ exit 1
+ ;;
+esac
+
+# Check and canonicalize include-directory and arch-include-directory.
+abs_inc_dir="$(cd "$inc_dir" && pwd -P)"
+[ -z "$arch_dir" ] ||
+ abs_arch_dir="$(cd "$arch_dir" && pwd -P)"
+
+cleanup()
+{
+ trap - EXIT
+ rm -f ioctls_hex.h ioctls_sym.h
+ exit "$@"
+}
+trap 'cleanup $?' EXIT
+trap 'cleanup 1' HUP PIPE INT QUIT TERM
+
+# Fetch ioctl commands defined in hex form.
+{
+ "$mydir"/ioctls_hex.sh "$inc_dir" 03 linux/hdreg.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 22 scsi/sg.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 46 linux/fb.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 4B linux/kd.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 4C linux/loop.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 53 linux/cdrom.h scsi/scsi.h scsi/scsi_ioctl.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" '\(46\|54\|66\|74\)' asm/ioctls.h asm-generic/ioctls.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 56 linux/vt.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" '7[12]' linux/videotext.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 89 asm/sockios.h asm-generic/sockios.h linux/sockios.h
+ "$mydir"/ioctls_hex.sh "$inc_dir" 8B linux/wireless.h
+} > ioctls_hex.h
+msg "generated $(grep -c '^{' ioctls_hex.h) hex ioctls from $inc_dir"
+
+# Fetch ioctl commands defined in symbolic form.
+"$mydir"/ioctls_sym.sh "$inc_dir" > ioctls_sym.h
+
+# Part of android ioctl commands are defined elsewhere.
+android_dir="$inc_dir/../drivers/staging/android"
+if [ -d "$android_dir/uapi" ]; then
+ "$mydir"/ioctls_sym.sh "$android_dir" staging/android >> ioctls_sym.h
+fi
+msg "generated $(grep -c '^{' ioctls_sym.h) symbolic ioctls from $inc_dir"
+
+# Output all ioctl definitions fetched from include-directory.
+echo "/* Generated by $me from definitions found in ${inc_dir%%/}/ tree. */" > ioctls_inc.h
+sort -u ioctls_hex.h ioctls_sym.h >> ioctls_inc.h
+msg "generated $(grep -c '^{' ioctls_inc.h) ioctls from $inc_dir"
+
+[ -n "$arch_dir" ] || exit 0
+
+# Fetch ioctl commands defined in hex form.
+{
+ "$mydir"/ioctls_hex.sh "$arch_dir" 54 asm/ioctls.h
+ "$mydir"/ioctls_hex.sh "$arch_dir" '\(46\|54\|66\|74\)' asm/ioctls.h
+ "$mydir"/ioctls_hex.sh "$arch_dir" 89 asm/sockios.h
+} > ioctls_hex.h
+msg "generated $(grep -c '^{' ioctls_hex.h) hex ioctls from $arch_dir"
+
+# Fetch ioctl commands defined in symbolic form.
+INCLUDES="-I$abs_inc_dir/uapi -I$abs_inc_dir ${INCLUDES-}" \
+ "${0%/*}"/ioctls_sym.sh "$arch_dir" > ioctls_sym.h
+msg "generated $(grep -c '^{' ioctls_sym.h) symbolic ioctls from $arch_dir"
+
+# Output all ioctl definitions fetched from arch-include-directory.
+echo "/* Generated by $me from definitions found in ${arch_dir%%/}/ tree. */" > ioctls_arch.h
+sort -u ioctls_hex.h ioctls_sym.h >> ioctls_arch.h
+msg "generated $(grep -c '^{' ioctls_arch.h) ioctls from $arch_dir"
diff --git a/maint/ioctls_hex.sh b/maint/ioctls_hex.sh
new file mode 100755
index 0000000..2e380b9
--- /dev/null
+++ b/maint/ioctls_hex.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+# Copyright (c) 2001 Wichert Akkerman <wichert@cistron.nl>
+# Copyright (c) 2004-2015 Dmitry V. Levin <ldv@altlinux.org>
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+set -efu
+
+me="${0##*/}"
+
+[ $# -ge 2 ] || {
+ echo >&2 "usage: $me include-directory type [files...]"
+ exit 1
+}
+
+dir="$1"; shift # dir must exist
+type="$1"; shift # type might be a regexp
+
+cd "$dir"
+
+regexp='[[:space:]]*#[[:space:]]*define[[:space:]]\+\([A-Z][A-Z0-9_]*\)[[:space:]]\+\(0x'"$type"'..\)\>'
+
+for f; do
+ grep "^$regexp" "$f" "uapi/$f" 2>/dev/null ||:;
+done |
+ sed 's|^uapi/||' |
+ sed -n 's/^\([^:]*\):'"$regexp"'.*/{ "\1", "\2", 0, \3, 0 },/p' |
+ sort -u
diff --git a/maint/ioctls_sym.sh b/maint/ioctls_sym.sh
new file mode 100755
index 0000000..19e0dda
--- /dev/null
+++ b/maint/ioctls_sym.sh
@@ -0,0 +1,399 @@
+#!/bin/sh
+# Copyright (c) 2015 Dmitry V. Levin <ldv@altlinux.org>
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The name of the author may not be used to endorse or promote products
+# derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+set -efu
+
+# This script processes header files containing ioctl command definitions in
+# symbolic form, assuming that these definitions match the following regular
+# expressions:
+
+r_define='^[[:space:]]*#[[:space:]]*define[[:space:]]\+'
+r_cmd_name='[A-Z][A-Z0-9_]*'
+r_io='\([A-Z]\+\)\?_S\?\(IO\|IOW\|IOR\|IOWR\|IOC\)'
+r_value='[[:space:]]\+'"$r_io"'[[:space:]]*([^)]'
+regexp="${r_define}${r_cmd_name}${r_value}"
+
+me="${0##*/}"
+msg()
+{
+ printf >&2 '%s\n' "$me: $*"
+}
+
+prefix=
+case $# in
+ 1) inc_dir="$1"; shift
+ ;;
+ 2) inc_dir="$1"; shift
+ prefix="$1"; shift
+ ;;
+ *) echo >&2 "usage: $me include-directory [prefix]"
+ exit 1
+ ;;
+esac
+
+[ -z "$prefix" ] ||
+ prefix="${prefix%%/}/"
+
+tmpdir=
+cleanup()
+{
+ trap - EXIT
+ [ -z "$tmpdir" ] ||
+ rm -rf -- "$tmpdir"
+ exit "$@"
+}
+
+trap 'cleanup $?' EXIT
+trap 'cleanup 1' HUP PIPE INT QUIT TERM
+tmpdir="$(mktemp -dt "$me.XXXXXX")"
+
+# list interesting files in $inc_dir.
+cd "$inc_dir"
+inc_dir="$(pwd -P)"
+find . -type f -name '*.h' -print0 |
+ xargs -r0 grep -l "$r_value" -- > "$tmpdir"/headers1.list ||
+ exit 0
+cd - > /dev/null
+sed 's|^\./\(uapi/\)\?||' < "$tmpdir"/headers1.list > "$tmpdir"/headers.list
+sort -u -o "$tmpdir"/headers.list "$tmpdir"/headers.list
+
+msg "processing $(wc -l < "$tmpdir"/headers.list) header files from $inc_dir"
+failed=0
+
+CC="${CC:-gcc}"
+CPP="${CPP:-cpp}"
+CPPFLAGS="${CPPFLAGS-} -D__EXPORTED_HEADERS__"
+CFLAGS="${CFLAGS:--Wall -O2} -D__EXPORTED_HEADERS__"
+LDFLAGS="${LDFLAGS-}"
+INCLUDES="-I$inc_dir/uapi -I$inc_dir ${INCLUDES-}"
+
+$CC $INCLUDES $CFLAGS -c -o "$tmpdir"/print_ioctlent.o "${0%/*}"/print_ioctlent.c
+
+# Hook onto <asm-generic/ioctl.h> and <asm/ioctl.h>
+for d in asm-generic asm; do
+ mkdir "$tmpdir/$d"
+ cat > "$tmpdir/$d"/ioctl.h <<__EOF__
+#include_next <$d/ioctl.h>
+#undef _IOC
+#define _IOC(dir,type,nr,size) dir, type, nr, size
+__EOF__
+done
+
+INCLUDES="-I$tmpdir $INCLUDES"
+
+process_file()
+{
+ local f="$1"; shift
+
+ # Common code for every processed file.
+ cat > "$tmpdir"/printents.c <<__EOF__
+#include <asm/termbits.h>
+#include <asm/ioctl.h>
+#include <linux/types.h>
+#include <linux/limits.h>
+#include <linux/major.h>
+
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <stdint.h>
+#include <stdbool.h>
+
+#ifndef NULL
+# define NULL ((void*)0)
+#endif
+#ifndef __user
+# define __user
+#endif
+#ifndef __iomem
+# define __iomem
+#endif
+#ifndef __noreturn
+# define __noreturn __attribute__((noreturn))
+#endif
+#ifndef __packed
+# define __packed __attribute__((packed))
+#endif
+
+typedef signed char s8;
+typedef unsigned char u8;
+typedef signed short s16;
+typedef unsigned short u16;
+typedef signed int s32;
+typedef unsigned int u32;
+typedef signed long long s64;
+typedef unsigned long long u64;
+
+#include "fixes.h"
+
+#include <asm/bitsperlong.h>
+#ifndef BITS_PER_LONG
+# define BITS_PER_LONG __BITS_PER_LONG
+#endif
+
+#include "$f"
+
+void print_ioctlent(const char *, const char *, unsigned short, unsigned short, unsigned short, unsigned short);
+
+int main(void)
+{
+
+#include "defs.h"
+
+return 0;
+}
+__EOF__
+
+ # Soft workarounds for some processed files. Fragile.
+ case "$f" in
+ *asm/cmb.h)
+ echo '#include <asm/dasd.h>'
+ ;;
+ *asm/ioctls.h)
+ cat <<'__EOF__'
+#include <asm/termios.h>
+#include <linux/serial.h>
+__EOF__
+ ;;
+ *drm/*_drm.h)
+ echo '#include <drm/drm.h>'
+ ;;
+ fbio.h|*/fbio.h)
+ cat <<'__EOF__'
+#include <linux/fb.h>
+#undef FBIOGETCMAP
+#undef FBIOPUTCMAP
+__EOF__
+ ;;
+ *linux/atm?*.h)
+ echo '#include <linux/atm.h>'
+ ;;
+ *linux/auto_fs*.h)
+ echo 'typedef u32 compat_ulong_t;'
+ ;;
+ *linux/btrfs.h)
+ cat <<'__EOF__'
+struct btrfs_ioctl_defrag_range_args { __u32 unused[12]; };
+#define BTRFS_LABEL_SIZE 256
+__EOF__
+ ;;
+ *linux/coda.h|*android_alarm.h)
+ cat <<'__EOF__'
+#ifndef _LINUX_TIME_H
+# define _LINUX_TIME_H
+#endif
+#ifndef _UAPI_LINUX_TIME_H
+# define _UAPI_LINUX_TIME_H
+#endif
+__EOF__
+ ;;
+ *linux/fs.h|*linux/ncp_fs.h)
+ cat <<'__EOF__'
+#include <linux/blktrace_api.h>
+#include <linux/fiemap.h>
+__EOF__
+ ;;
+ *linux/if_pppox.h)
+ cat <<'__EOF__'
+#include <linux/if.h>
+#include <linux/in.h>
+#include <linux/in6.h>
+__EOF__
+ ;;
+ *linux/if_tun.h|*linux/ppp-ioctl.h)
+ echo '#include <linux/filter.h>'
+ ;;
+ *linux/isdn_ppp.h|*linux/gsmmux.h)
+ echo '#include <linux/if.h>'
+ ;;
+ *media/saa6588.h)
+ echo 'typedef struct poll_table_struct poll_table;'
+ ;;
+ *linux/ivtvfb.h|*linux/meye.h|*media/*.h)
+ echo '#include <linux/videodev2.h>'
+ ;;
+ *linux/kvm.h)
+ cat <<'__EOF__'
+#if defined __x86_64__ || defined __i386__
+struct kvm_create_spapr_tce { __u32 unused[3]; };
+struct kvm_allocate_rma { __u32 unused[2]; };
+struct kvm_get_htab_fd { __u32 unused[8]; };
+struct kvm_rtas_token_args { __u8 unused[128]; };
+struct kvm_vcpu_init { __u32 unused[8]; };
+#endif
+__EOF__
+ ;;
+ *linux/sonet.h)
+ echo '#include <linux/atmioc.h>'
+ ;;
+ *linux/usbdevice_fs.h)
+ cat <<'__EOF__'
+struct usbdevfs_ctrltransfer32 { __u32 unused[4]; };
+struct usbdevfs_bulktransfer32 { __u32 unused[4]; };
+struct usbdevfs_disconnectsignal32 { __u32 unused[2]; };
+struct usbdevfs_urb32 { __u8 unused[42]; };
+struct usbdevfs_ioctl32 { __u32 unused[3]; };
+__EOF__
+ ;;
+ logger.h|*/logger.h)
+ echo 'typedef __u32 kuid_t;'
+ ;;
+ *sound/asequencer.h)
+ cat <<'__EOF__'
+#include <sound/asound.h>
+struct snd_seq_queue_owner { __u32 unused[0]; };
+__EOF__
+ ;;
+ *sound/emu10k1.h)
+ cat <<'__EOF__'
+#include <sound/asound.h>
+#ifndef DECLARE_BITMAP
+# define DIV_ROUND_UP(x,y) (((x) + ((y) - 1)) / (y))
+# define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, 8 * sizeof(long))
+# define DECLARE_BITMAP(name,bits) unsigned long name[BITS_TO_LONGS(bits)]
+#endif
+__EOF__
+ ;;
+ *video/sstfb.h)
+ echo 'struct fb_info;'
+ ;;
+ *xen/interface/*.h)
+ return 0 # false positives
+ ;;
+ *xen/privcmd.h)
+ return 0 # too much work to make it compileable
+ ;;
+ esac > "$tmpdir"/fixes.h
+
+ cat > "$tmpdir"/header.in <<__EOF__
+#include <asm/bitsperlong.h>
+#ifndef BITS_PER_LONG
+# define BITS_PER_LONG __BITS_PER_LONG
+#endif
+#include "$f"
+__EOF__
+
+ if [ -f "$inc_dir/uapi/$f" ]; then
+ s="$inc_dir/uapi/$f"
+ elif [ -f "$inc_dir/$f" ]; then
+ s="$inc_dir/$f"
+ else
+ msg "$f: file not found"
+ return 1
+ fi
+
+ [ -n "${f##*/*}" ] ||
+ mkdir -p "$tmpdir/${f%/*}"
+ # Hard workarounds for some processed files. Very fragile.
+ case "$f" in
+ *acpi/*|*linux/i2o.h|*media/exynos-fimc.h|*media/v4l2-subdev.h|*net/bluetooth/*)
+ # Fetch macros only.
+ grep "${r_define}${r_cmd_name}" < "$s" > "$tmpdir/$f"
+ ;;
+ binder.h|*/binder.h)
+ # Convert enums to macros.
+ sed '/^enum binder/,/^};/d' < "$s" > "$tmpdir/$f"
+ sed -n '/^enum binder/,/^};/ s/^[[:space:]].*/&/p' < "$s" |
+ sed -e '
+s/^[[:space:]]*\([A-Z][A-Z_0-9]*\)[[:space:]]*=[[:space:]]*_\(IO\|IOW\|IOR\|IOWR\|IOC\)[[:space:]]*(/#define \1 _\2(/
+s/^\(#define .*)\),$/\1/
+s/^\(#define .*,\)$/\1 \\/
+s/^\([[:space:]]\+[^),]\+)\),$/\1/' >> "$tmpdir/$f"
+ ;;
+ *drm/r128_drm.h)
+ # Filter out the code that references unknown types.
+ sed '/drm_r128_clear2_t/d' < "$s" > "$tmpdir/$f"
+ ;;
+ *drm/sis_drm.h)
+ # Filter out the code that references unknown types.
+ sed '/^struct sis_file_private/,/^}/d' < "$s" > "$tmpdir/$f"
+ ;;
+ *drm/via_drm.h)
+ # Create the file it attempts to include.
+ touch "$tmpdir/via_drmclient.h"
+ # Filter out the code that references unknown types.
+ sed '/^struct via_file_private/,/^}/d' < "$s" > "$tmpdir/$f"
+ ;;
+ *linux/vmw_vmci_defs.h)
+ # Fetch ioctl macros only.
+ grep "${r_define}I" < "$s" > "$tmpdir/$f"
+ ;;
+ *media/v4l2-common.h)
+ # Fetch one piece of code containing ioctls definitions.
+ sed -n '/ remaining ioctls/,/ ---/p' < "$s" > "$tmpdir/$f"
+ ;;
+ *linux/nilfs2_fs.h)
+ # Create the file it attempts to include.
+ touch "$tmpdir/asm/bug.h"
+ ;;
+ openpromio.h|*/openpromio.h|fbio.h|*/fbio.h)
+ # Create the file it attempts to include.
+ mkdir -p "$tmpdir/linux"
+ touch "$tmpdir/linux/compiler.h"
+ esac
+ if [ -f "$tmpdir/$f" ]; then
+ s="$tmpdir/$f"
+ fi
+
+ # This may fail if the file includes unavailable headers.
+ # In case of success it outputs both the #define directives
+ # and the result of preprocessing.
+ $CPP $CPPFLAGS -dD $INCLUDES < "$tmpdir"/header.in > "$tmpdir"/header.out
+
+ # Need to exclude ioctl commands defined elsewhere.
+ local_defines='^[[:space:]]*#[[:space:]]*define[[:space:]]\+\('"$r_cmd_name"'\)[[:space:]]'
+ sed -n 's/'"$local_defines"'.*/\1\\/p' "$s" > "$tmpdir"/local_names
+ r_local_names="$(tr '\n' '|' < "$tmpdir"/local_names)"
+ r_local_names="${r_local_names%%|}"
+ r_local_names="${r_local_names%%\\}"
+
+ # Keep this in sync with $regexp by replacing $r_cmd_name with $r_local_names.
+ defs_regexp="${r_define}\($r_local_names\)${r_value}"
+
+ qf="$(echo "$prefix$f" | sed 's/[&\/]/\\&/g')"
+ # This outputs lines in the following format:
+ # print_ioctlent("filename.h", "IOCTL_CMD_NAME", IOCTL_CMD_NAME);
+ sed -n 's/'"$defs_regexp"'.*/print_ioctlent("'"$qf"'", "\1", \1);/p' \
+ < "$tmpdir"/header.out > "$tmpdir"/defs.h
+
+ # If something is wrong with the file, this will fail.
+ $CC $INCLUDES $CFLAGS -c -o "$tmpdir"/printents.o "$tmpdir"/printents.c
+ $CC $LDFLAGS -o "$tmpdir"/print_ioctlents \
+ "$tmpdir"/printents.o "$tmpdir"/print_ioctlent.o
+ "$tmpdir"/print_ioctlents > "$tmpdir"/ioctlents
+ cat "$tmpdir"/ioctlents
+ msg "$f: fetched $(grep -c '^{' "$tmpdir"/ioctlents) ioctl entries"
+}
+
+while read f; do
+ (process_file "$f" < /dev/null)
+ [ $? -eq 0 ] || {
+ msg "$f: failed to process"
+ failed=$((1 + $failed))
+ }
+done < "$tmpdir"/headers.list
+
+[ $failed -eq 0 ] ||
+ msg "failed to process $failed file(s)"
diff --git a/maint/print_ioctlent.c b/maint/print_ioctlent.c
new file mode 100644
index 0000000..d15aa35
--- /dev/null
+++ b/maint/print_ioctlent.c
@@ -0,0 +1,79 @@
+/*
+ * Copyright (c) 2015 Dmitry V. Levin <ldv@altlinux.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <stdio.h>
+#include <asm/ioctl.h>
+
+typedef unsigned short u16;
+
+static const char *
+dir2str(const char *name, u16 dir)
+{
+ switch (dir) {
+#define CASE(x) case x: return #x
+ CASE(_IOC_NONE);
+ CASE(_IOC_READ);
+ CASE(_IOC_WRITE);
+ CASE(_IOC_READ|_IOC_WRITE);
+ }
+
+ static char buf[3 + sizeof(dir) * 2];
+ fprintf(stderr,
+ "print_ioctlents: WARNING: invalid dir 0x%02x in %s\n",
+ dir, name);
+ snprintf(buf, sizeof(buf), "0x%02x", dir);
+ return buf;
+}
+
+void
+print_ioctlent(const char *info, const char *name,
+ u16 dir, u16 type, u16 nr, u16 size)
+{
+ unsigned int type_nr =
+ ((unsigned) type << _IOC_TYPESHIFT) |
+ ((unsigned) nr << _IOC_NRSHIFT);
+
+ if (dir & ~_IOC_DIRMASK)
+ fprintf(stderr,
+ "print_ioctlents: WARNING: dir 0x%02x is out of mask 0x%02x in %s\n",
+ dir, _IOC_DIRMASK, name);
+ if (type & ~_IOC_TYPEMASK)
+ fprintf(stderr,
+ "print_ioctlents: WARNING: type 0x%02x is out of mask 0x%02x in %s\n",
+ type, _IOC_TYPEMASK, name);
+ if (nr & ~_IOC_NRMASK)
+ fprintf(stderr,
+ "print_ioctlents: WARNING: nr 0x%02x is out of mask 0x%02x in %s\n",
+ nr, _IOC_NRMASK, name);
+ if (size & ~_IOC_SIZEMASK)
+ fprintf(stderr,
+ "print_ioctlents: WARNING: size 0x%02x is out of mask 0x%02x in %s\n",
+ size, _IOC_SIZEMASK, name);
+
+ printf("{ \"%s\", \"%s\", %s, 0x%04x, 0x%02x },\n",
+ info, name, dir2str(name, dir), type_nr, size);
+}
diff --git a/mem.c b/mem.c
index 55943f1..5e1822f 100644
--- a/mem.c
+++ b/mem.c
@@ -517,7 +517,7 @@
}
cur = tcp->u_arg[2];
end = cur + (sizeof(int) * entries);
- if (!verbose(tcp) || end < tcp->u_arg[2]) {
+ if (!verbose(tcp) || end < (unsigned long) tcp->u_arg[2]) {
tprintf("%#lx", tcp->u_arg[2]);
return 0;
}
@@ -530,7 +530,7 @@
abbrev_end = end;
tprints("{");
for (; cur < end; cur += sizeof(int)) {
- if (cur > tcp->u_arg[2])
+ if (cur > (unsigned long) tcp->u_arg[2])
tprints(", ");
if (cur >= abbrev_end) {
tprints("...");
diff --git a/mtd.c b/mtd.c
index 88e8dbc..87a6e5d 100644
--- a/mtd.c
+++ b/mtd.c
@@ -47,7 +47,8 @@
#include "xlat/mtd_otp_options.h"
#include "xlat/mtd_nandecc_options.h"
-int mtd_ioctl(struct tcb *tcp, long code, long arg)
+int
+mtd_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
struct mtd_info_user minfo;
struct erase_info_user einfo;
@@ -252,7 +253,8 @@
#include "xlat/ubi_volume_types.h"
#include "xlat/ubi_volume_props.h"
-int ubi_ioctl(struct tcb *tcp, long code, long arg)
+int
+ubi_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
struct ubi_mkvol_req mkvol;
struct ubi_rsvol_req rsvol;
@@ -260,9 +262,6 @@
struct ubi_attach_req attach;
struct ubi_map_req map;
struct ubi_set_vol_prop_req prop;
- /* 4*(n-1) + 3 for quotes and NUL */
- char vol_name[(UBI_MAX_VOLUME_NAME + 1) * 4];
- int ret;
if (entering(tcp))
return 0;
@@ -276,10 +275,12 @@
", bytes=%" PRIi64 ", vol_type=", mkvol.vol_id,
mkvol.alignment, (int64_t)mkvol.bytes);
printxval(ubi_volume_types, mkvol.vol_type, "UBI_???_VOLUME");
- ret = string_quote(mkvol.name, vol_name, -1,
- CLAMP(mkvol.name_len, 0, UBI_MAX_VOLUME_NAME));
- tprintf(", name_len=%" PRIi16 ", name=%s%s",
- mkvol.name_len, vol_name, ret ? "..." : "");
+ tprintf(", name_len=%" PRIi16 ", name=", mkvol.name_len);
+ if (print_quoted_string(mkvol.name,
+ CLAMP(mkvol.name_len, 0, UBI_MAX_VOLUME_NAME),
+ QUOTE_0_TERMINATED) > 0) {
+ tprints("...");
+ }
tprints("}");
return 1;
@@ -301,11 +302,15 @@
for (c = 0; c < CLAMP(rnvol.count, 0, UBI_MAX_RNVOL); ++c) {
if (c)
tprints(", ");
- ret = string_quote(rnvol.ents[c].name, vol_name, -1,
- CLAMP(rnvol.ents[c].name_len, 0, UBI_MAX_VOLUME_NAME));
tprintf("{vol_id=%" PRIi32 ", name_len=%" PRIi16
- ", name=%s%s}", rnvol.ents[c].vol_id,
- rnvol.ents[c].name_len, vol_name, ret ? "..." : "");
+ ", name=", rnvol.ents[c].vol_id,
+ rnvol.ents[c].name_len);
+ if (print_quoted_string(rnvol.ents[c].name,
+ CLAMP(rnvol.ents[c].name_len, 0, UBI_MAX_VOLUME_NAME),
+ QUOTE_0_TERMINATED) > 0) {
+ tprints("...");
+ }
+ tprints("}");
}
tprints("]}");
return 1;
diff --git a/net.c b/net.c
index 0f88c42..cb29faa 100644
--- a/net.c
+++ b/net.c
@@ -33,11 +33,6 @@
#include <sys/socket.h>
#include <sys/uio.h>
#include <sys/un.h>
-#if defined(HAVE_SIN6_SCOPE_ID_LINUX)
-# define in6_addr in6_addr_libc
-# define ipv6_mreq ipv6_mreq_libc
-# define sockaddr_in6 sockaddr_in6_libc
-#endif
#include <netinet/in.h>
#ifdef HAVE_NETINET_TCP_H
# include <netinet/tcp.h>
@@ -57,28 +52,6 @@
# include <linux/ipx.h>
#endif
-#if defined(__GLIBC__) && defined(HAVE_SIN6_SCOPE_ID_LINUX)
-# if defined(HAVE_LINUX_IN6_H)
-# if defined(HAVE_SIN6_SCOPE_ID_LINUX)
-# undef in6_addr
-# undef ipv6_mreq
-# undef sockaddr_in6
-# define in6_addr in6_addr_kernel
-# define ipv6_mreq ipv6_mreq_kernel
-# define sockaddr_in6 sockaddr_in6_kernel
-# endif
-# include <linux/in6.h>
-# if defined(HAVE_SIN6_SCOPE_ID_LINUX)
-# undef in6_addr
-# undef ipv6_mreq
-# undef sockaddr_in6
-# define in6_addr in6_addr_libc
-# define ipv6_mreq ipv6_mreq_libc
-# define sockaddr_in6 sockaddr_in6_kernel
-# endif
-# endif
-#endif
-
#if defined(HAVE_LINUX_NETLINK_H)
# include <linux/netlink.h>
#endif
@@ -106,13 +79,115 @@
#ifndef SOCK_TYPE_MASK
# define SOCK_TYPE_MASK 0xf
#endif
+
+#ifndef SOL_IP
+# define SOL_IP 0
+#endif
+#ifndef SOL_TCP
+# define SOL_TCP 6
+#endif
+#ifndef SOL_UDP
+# define SOL_UDP 17
+#endif
+#ifndef SOL_IPV6
+# define SOL_IPV6 41
+#endif
+#ifndef SOL_ICMPV6
+# define SOL_ICMPV6 58
+#endif
+#ifndef SOL_SCTP
+# define SOL_SCTP 132
+#endif
+#ifndef SOL_UDPLITE
+# define SOL_UDPLITE 136
+#endif
+#ifndef SOL_RAW
+# define SOL_RAW 255
+#endif
+#ifndef SOL_IPX
+# define SOL_IPX 256
+#endif
+#ifndef SOL_AX25
+# define SOL_AX25 257
+#endif
+#ifndef SOL_ATALK
+# define SOL_ATALK 258
+#endif
+#ifndef SOL_NETROM
+# define SOL_NETROM 259
+#endif
+#ifndef SOL_ROSE
+# define SOL_ROSE 260
+#endif
+#ifndef SOL_DECNET
+# define SOL_DECNET 261
+#endif
+#ifndef SOL_X25
+# define SOL_X25 262
+#endif
+#ifndef SOL_PACKET
+# define SOL_PACKET 263
+#endif
+#ifndef SOL_ATM
+# define SOL_ATM 264
+#endif
+#ifndef SOL_AAL
+# define SOL_AAL 265
+#endif
+#ifndef SOL_IRDA
+# define SOL_IRDA 266
+#endif
+#ifndef SOL_NETBEUI
+# define SOL_NETBEUI 267
+#endif
+#ifndef SOL_LLC
+# define SOL_LLC 268
+#endif
+#ifndef SOL_DCCP
+# define SOL_DCCP 269
+#endif
+#ifndef SOL_NETLINK
+# define SOL_NETLINK 270
+#endif
+#ifndef SOL_TIPC
+# define SOL_TIPC 271
+#endif
+#ifndef SOL_RXRPC
+# define SOL_RXRPC 272
+#endif
+#ifndef SOL_PPPOL2TP
+# define SOL_PPPOL2TP 273
+#endif
+#ifndef SOL_BLUETOOTH
+# define SOL_BLUETOOTH 274
+#endif
+#ifndef SOL_PNPIPE
+# define SOL_PNPIPE 275
+#endif
+#ifndef SOL_RDS
+# define SOL_RDS 276
+#endif
+#ifndef SOL_IUCV
+# define SOL_IUCV 277
+#endif
+#ifndef SOL_CAIF
+# define SOL_CAIF 278
+#endif
+#ifndef SOL_ALG
+# define SOL_ALG 279
+#endif
+#ifndef SOL_NFC
+# define SOL_NFC 280
+#endif
#include "xlat/socketlayers.h"
-/*** WARNING: DANGER WILL ROBINSON: NOTE "socketlayers" array above
- falls into "inet_protocols" array below!!!! This is intended!!! ***/
+
#include "xlat/inet_protocols.h"
#ifdef PF_NETLINK
-#include "xlat/netlink_protocols.h"
+# if !defined NETLINK_SOCK_DIAG && defined NETLINK_INET_DIAG
+# define NETLINK_SOCK_DIAG NETLINK_INET_DIAG
+# endif
+# include "xlat/netlink_protocols.h"
#endif
#if defined(HAVE_BLUETOOTH_BLUETOOTH_H)
@@ -120,51 +195,10 @@
#endif
#include "xlat/msg_flags.h"
-#include "xlat/sockoptions.h"
-
-#if !defined(SOL_IP) && defined(IPPROTO_IP)
-#define SOL_IP IPPROTO_IP
-#endif
-
-#ifdef SOL_IP
-#include "xlat/sockipoptions.h"
-#endif /* SOL_IP */
-
-#ifdef SOL_IPV6
-#include "xlat/sockipv6options.h"
-#endif /* SOL_IPV6 */
-
-#ifdef SOL_IPX
-#include "xlat/sockipxoptions.h"
-#endif /* SOL_IPX */
-
-#ifdef SOL_RAW
-#include "xlat/sockrawoptions.h"
-#endif /* SOL_RAW */
-
-#ifdef SOL_PACKET
-#include "xlat/sockpacketoptions.h"
-#endif /* SOL_PACKET */
-
-#ifdef SOL_SCTP
-#include "xlat/socksctpoptions.h"
-#endif
-
-#if !defined(SOL_TCP) && defined(IPPROTO_TCP)
-#define SOL_TCP IPPROTO_TCP
-#endif
-
-#ifdef SOL_TCP
-#include "xlat/socktcpoptions.h"
-#endif /* SOL_TCP */
-
-#ifdef SOL_RAW
-#include "xlat/icmpfilterflags.h"
-#endif /* SOL_RAW */
#if defined(AF_PACKET) /* from e.g. linux/if_packet.h */
-#include "xlat/af_packet_types.h"
-#endif /* defined(AF_PACKET) */
+# include "xlat/af_packet_types.h"
+#endif
void
printsock(struct tcb *tcp, long addr, int addrlen)
@@ -224,10 +258,14 @@
tprints("NULL");
} else if (addrbuf.sau.sun_path[0]) {
tprints("sun_path=");
- printpathn(tcp, addr + 2, strlen(addrbuf.sau.sun_path));
+ print_quoted_string(addrbuf.sau.sun_path,
+ sizeof(addrbuf.sau.sun_path) + 1,
+ QUOTE_0_TERMINATED);
} else {
tprints("sun_path=@");
- printpathn(tcp, addr + 3, strlen(addrbuf.sau.sun_path + 1));
+ print_quoted_string(addrbuf.sau.sun_path + 1,
+ sizeof(addrbuf.sau.sun_path),
+ QUOTE_0_TERMINATED);
}
break;
case AF_INET:
@@ -250,8 +288,13 @@
if (if_indextoname(addrbuf.sa6.sin6_scope_id, scopebuf) == NULL)
numericscope++;
- else
- tprintf(", sin6_scope_id=if_nametoindex(\"%s\")", scopebuf);
+ else {
+ tprints(", sin6_scope_id=if_nametoindex(");
+ print_quoted_string(scopebuf,
+ sizeof(scopebuf),
+ QUOTE_0_TERMINATED);
+ tprints(")");
+ }
} else
numericscope++;
@@ -328,65 +371,168 @@
default:
tprints("sa_data=");
- printstr(tcp, (long) &((struct sockaddr *) addr)->sa_data,
- sizeof addrbuf.sa.sa_data);
+ print_quoted_string(addrbuf.sa.sa_data,
+ sizeof(addrbuf.sa.sa_data), 0);
break;
}
tprints("}");
}
#if HAVE_SENDMSG
-#include "xlat/scmvals.h"
+# ifndef SCM_SECURITY
+# define SCM_SECURITY 0x03
+# endif
+# include "xlat/scmvals.h"
+
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+struct cmsghdr32 {
+ uint32_t cmsg_len;
+ int cmsg_level;
+ int cmsg_type;
+};
+#endif
+
+typedef union {
+ char *ptr;
+ struct cmsghdr *cmsg;
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ struct cmsghdr32 *cmsg32;
+#endif
+} union_cmsghdr;
+
+static bool
+print_scm_rights(struct tcb *tcp, size_t cmsg_size, char *ptr, size_t cmsg_len)
+{
+ if (cmsg_size + sizeof(int) > cmsg_len)
+ return false;
+
+ int *fds = (int *) (ptr + cmsg_size);
+ bool seen = false;
+
+ tprints(", [");
+ while ((char *) fds < (ptr + cmsg_len)) {
+ if (seen)
+ tprints(", ");
+ else
+ seen = true;
+ printfd(tcp, *fds++);
+ }
+ tprints("]}");
+ return true;
+}
+
+static bool
+print_scm_creds(struct tcb *tcp, size_t cmsg_size, char *ptr, size_t cmsg_len)
+{
+ if (cmsg_size + sizeof(struct ucred) > cmsg_len)
+ return false;
+
+ const struct ucred *uc = (void *) (ptr + cmsg_size);
+
+ tprintf(", {pid=%u, uid=%u, gid=%u}}",
+ (unsigned) uc->pid, (unsigned) uc->uid, (unsigned) uc->gid);
+ return true;
+}
+
+static bool
+print_scm_security(struct tcb *tcp, size_t cmsg_size, char *ptr, size_t cmsg_len)
+{
+ if (cmsg_size + sizeof(char) > cmsg_len)
+ return false;
+
+ const char *label = (const char *) (ptr + cmsg_size);
+ const size_t label_len = cmsg_len - cmsg_size;
+
+ tprints(", ");
+ print_quoted_string(label, label_len, 0);
+ tprints("}");
+
+ return true;
+}
static void
-printcmsghdr(struct tcb *tcp, unsigned long addr, unsigned long len)
+printcmsghdr(struct tcb *tcp, unsigned long addr, size_t len)
{
- struct cmsghdr *cmsg = len < sizeof(struct cmsghdr) ?
- NULL : malloc(len);
- if (cmsg == NULL || umoven(tcp, addr, len, (char *) cmsg) < 0) {
+ const size_t cmsg_size =
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ (current_wordsize < sizeof(long)) ? sizeof(struct cmsghdr32) :
+#endif
+ sizeof(struct cmsghdr);
+
+ char *buf = len < cmsg_size ? NULL : malloc(len);
+ if (!buf || umoven(tcp, addr, len, buf) < 0) {
tprintf(", msg_control=%#lx", addr);
- free(cmsg);
+ free(buf);
return;
}
- tprintf(", {cmsg_len=%u, cmsg_level=", (unsigned) cmsg->cmsg_len);
- printxval(socketlayers, cmsg->cmsg_level, "SOL_???");
- tprints(", cmsg_type=");
+ union_cmsghdr u = { .ptr = buf };
- if (cmsg->cmsg_level == SOL_SOCKET) {
- unsigned long cmsg_len;
+ tprints(", [");
+ while (len >= cmsg_size) {
+ size_t cmsg_len =
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ (current_wordsize < sizeof(long)) ? u.cmsg32->cmsg_len :
+#endif
+ u.cmsg->cmsg_len;
+ int cmsg_level =
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ (current_wordsize < sizeof(long)) ? u.cmsg32->cmsg_level :
+#endif
+ u.cmsg->cmsg_level;
+ int cmsg_type =
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ (current_wordsize < sizeof(long)) ? u.cmsg32->cmsg_type :
+#endif
+ u.cmsg->cmsg_type;
- printxval(scmvals, cmsg->cmsg_type, "SCM_???");
- cmsg_len = (len < cmsg->cmsg_len) ? len : cmsg->cmsg_len;
+ if (u.ptr != buf)
+ tprints(", ");
+ tprintf("{cmsg_len=%lu, cmsg_level=", (unsigned long) cmsg_len);
+ printxval(socketlayers, cmsg_level, "SOL_???");
+ tprints(", cmsg_type=");
- if (cmsg->cmsg_type == SCM_RIGHTS
- && CMSG_LEN(sizeof(int)) <= cmsg_len) {
- int *fds = (int *) CMSG_DATA(cmsg);
- int first = 1;
+ if (cmsg_len > len)
+ cmsg_len = len;
- tprints(", {");
- while ((char *) fds < ((char *) cmsg + cmsg_len)) {
- if (!first)
- tprints(", ");
- printfd(tcp, *fds++);
- first = 0;
+ if (cmsg_level == SOL_SOCKET) {
+ printxval(scmvals, cmsg_type, "SCM_???");
+ switch (cmsg_type) {
+ case SCM_RIGHTS:
+ if (print_scm_rights(tcp, cmsg_size, u.ptr, cmsg_len))
+ goto next_cmsg;
+ break;
+ case SCM_CREDENTIALS:
+ if (print_scm_creds(tcp, cmsg_size, u.ptr, cmsg_len))
+ goto next_cmsg;
+ break;
+ case SCM_SECURITY:
+ if (print_scm_security(tcp, cmsg_size, u.ptr, cmsg_len))
+ goto next_cmsg;
+ break;
}
- tprints("}}");
- free(cmsg);
- return;
+ } else {
+ tprintf("%u", cmsg_type);
}
- if (cmsg->cmsg_type == SCM_CREDENTIALS
- && CMSG_LEN(sizeof(struct ucred)) <= cmsg_len) {
- struct ucred *uc = (struct ucred *) CMSG_DATA(cmsg);
-
- tprintf("{pid=%ld, uid=%ld, gid=%ld}}",
- (long)uc->pid, (long)uc->uid, (long)uc->gid);
- free(cmsg);
- return;
+ tprints(", ...}");
+next_cmsg:
+ if (cmsg_len < cmsg_size) {
+ len -= cmsg_size;
+ break;
}
+ cmsg_len = (cmsg_len + current_wordsize - 1) &
+ (size_t) ~(current_wordsize - 1);
+ if (cmsg_len >= len) {
+ len = 0;
+ break;
+ }
+ u.ptr += cmsg_len;
+ len -= cmsg_len;
}
- free(cmsg);
- tprints(", ...}");
+ if (len)
+ tprints(", ...");
+ tprints("]");
+ free(buf);
}
static void
@@ -493,7 +639,7 @@
{
struct msghdr msg;
- if (extractmsghdr(tcp, addr, &msg))
+ if (verbose(tcp) && extractmsghdr(tcp, addr, &msg))
do_msghdr(tcp, &msg, data_size);
else
tprintf("%#lx", addr);
@@ -838,7 +984,7 @@
printfd(tcp, tcp->u_arg[0]);
tprints(", ");
} else {
- if (syserror(tcp) || !verbose(tcp))
+ if (syserror(tcp))
tprintf("%#lx", tcp->u_arg[1]);
else
printmsghdr(tcp, tcp->u_arg[1], tcp->u_rval);
@@ -978,153 +1124,122 @@
return 0;
}
-int
-sys_getsockopt(struct tcb *tcp)
+#include "xlat/sockoptions.h"
+#include "xlat/sockipoptions.h"
+#include "xlat/sockipv6options.h"
+#include "xlat/sockipxoptions.h"
+#include "xlat/sockrawoptions.h"
+#include "xlat/sockpacketoptions.h"
+#include "xlat/socksctpoptions.h"
+#include "xlat/socktcpoptions.h"
+
+static void
+print_sockopt_fd_level_name(struct tcb *tcp, int fd, int level, int name)
{
- if (entering(tcp)) {
- printfd(tcp, tcp->u_arg[0]);
- tprints(", ");
- printxval(socketlayers, tcp->u_arg[1], "SOL_???");
- tprints(", ");
- switch (tcp->u_arg[1]) {
- case SOL_SOCKET:
- printxval(sockoptions, tcp->u_arg[2], "SO_???");
- break;
-#ifdef SOL_IP
- case SOL_IP:
- printxval(sockipoptions, tcp->u_arg[2], "IP_???");
- break;
-#endif
-#ifdef SOL_IPV6
- case SOL_IPV6:
- printxval(sockipv6options, tcp->u_arg[2], "IPV6_???");
- break;
-#endif
-#ifdef SOL_IPX
- case SOL_IPX:
- printxval(sockipxoptions, tcp->u_arg[2], "IPX_???");
- break;
-#endif
-#ifdef SOL_PACKET
- case SOL_PACKET:
- printxval(sockpacketoptions, tcp->u_arg[2], "PACKET_???");
- break;
-#endif
-#ifdef SOL_TCP
- case SOL_TCP:
- printxval(socktcpoptions, tcp->u_arg[2], "TCP_???");
- break;
-#endif
-#ifdef SOL_SCTP
- case SOL_SCTP:
- printxval(socksctpoptions, tcp->u_arg[2], "SCTP_???");
- break;
-#endif
+ printfd(tcp, fd);
+ tprints(", ");
+ printxval(socketlayers, level, "SOL_??");
+ tprints(", ");
- /* SOL_AX25 SOL_ROSE SOL_ATALK SOL_NETROM SOL_UDP SOL_DECNET SOL_X25
- * etc. still need work */
- default:
- tprintf("%lu", tcp->u_arg[2]);
- break;
- }
- tprints(", ");
- } else {
- int len;
- if (syserror(tcp) || umove(tcp, tcp->u_arg[4], &len) < 0) {
- tprintf("%#lx, %#lx",
- tcp->u_arg[3], tcp->u_arg[4]);
- return 0;
- }
+ switch (level) {
+ case SOL_SOCKET:
+ printxval(sockoptions, name, "SO_???");
+ break;
+ case SOL_IP:
+ printxval(sockipoptions, name, "IP_???");
+ break;
+ case SOL_IPV6:
+ printxval(sockipv6options, name, "IPV6_???");
+ break;
+ case SOL_IPX:
+ printxval(sockipxoptions, name, "IPX_???");
+ break;
+ case SOL_PACKET:
+ printxval(sockpacketoptions, name, "PACKET_???");
+ break;
+ case SOL_TCP:
+ printxval(socktcpoptions, name, "TCP_???");
+ break;
+ case SOL_SCTP:
+ printxval(socksctpoptions, name, "SCTP_???");
+ break;
+ case SOL_RAW:
+ printxval(sockrawoptions, name, "RAW_???");
+ break;
- switch (tcp->u_arg[1]) {
- case SOL_SOCKET:
- switch (tcp->u_arg[2]) {
-#ifdef SO_LINGER
- case SO_LINGER:
- if (len == sizeof(struct linger)) {
- struct linger linger;
- if (umove(tcp,
- tcp->u_arg[3],
- &linger) < 0)
- break;
- tprintf("{onoff=%d, linger=%d}, "
- "[%d]",
- linger.l_onoff,
- linger.l_linger,
- len);
- return 0;
- }
- break;
-#endif
-#ifdef SO_PEERCRED
- case SO_PEERCRED:
- if (len == sizeof(struct ucred)) {
- struct ucred uc;
- if (umove(tcp,
- tcp->u_arg[3],
- &uc) < 0)
- break;
- tprintf("{pid=%ld, uid=%ld, gid=%ld}, "
- "[%d]",
- (long)uc.pid,
- (long)uc.uid,
- (long)uc.gid,
- len);
- return 0;
- }
- break;
-#endif
- }
- break;
- case SOL_PACKET:
- switch (tcp->u_arg[2]) {
-#ifdef PACKET_STATISTICS
- case PACKET_STATISTICS:
- if (len == sizeof(struct tpacket_stats)) {
- struct tpacket_stats stats;
- if (umove(tcp,
- tcp->u_arg[3],
- &stats) < 0)
- break;
- tprintf("{packets=%u, drops=%u}, "
- "[%d]",
- stats.tp_packets,
- stats.tp_drops,
- len);
- return 0;
- }
- break;
-#endif
- }
- break;
- }
+ /* Other SOL_* protocol levels still need work. */
- if (len == sizeof(int)) {
- printnum_int(tcp, tcp->u_arg[3], "%d");
- }
- else {
- printstr(tcp, tcp->u_arg[3], len);
- }
- tprintf(", [%d]", len);
+ default:
+ tprintf("%u", name);
}
- return 0;
+
+ tprints(", ");
}
-#if defined(ICMP_FILTER)
-static void printicmpfilter(struct tcb *tcp, long addr)
+#ifdef SO_LINGER
+static void
+print_linger(struct tcb *tcp, long addr, int len)
{
- struct icmp_filter filter;
+ struct linger linger;
- if (!addr) {
- tprints("NULL");
- return;
- }
- if (syserror(tcp) || !verbose(tcp)) {
+ if (len != sizeof(linger) ||
+ umove(tcp, addr, &linger) < 0) {
tprintf("%#lx", addr);
return;
}
- if (umove(tcp, addr, &filter) < 0) {
- tprints("{...}");
+
+ tprintf("{onoff=%d, linger=%d}",
+ linger.l_onoff,
+ linger.l_linger);
+}
+#endif /* SO_LINGER */
+
+#ifdef SO_PEERCRED
+static void
+print_ucred(struct tcb *tcp, long addr, int len)
+{
+ struct ucred uc;
+
+ if (len != sizeof(uc) ||
+ umove(tcp, addr, &uc) < 0) {
+ tprintf("%#lx", addr);
+ } else {
+ tprintf("{pid=%u, uid=%u, gid=%u}",
+ (unsigned) uc.pid,
+ (unsigned) uc.uid,
+ (unsigned) uc.gid);
+ }
+}
+#endif /* SO_PEERCRED */
+
+#ifdef PACKET_STATISTICS
+static void
+print_tpacket_stats(struct tcb *tcp, long addr, int len)
+{
+ struct tpacket_stats stats;
+
+ if (len != sizeof(stats) ||
+ umove(tcp, addr, &stats) < 0) {
+ tprintf("%#lx", addr);
+ } else {
+ tprintf("{packets=%u, drops=%u}",
+ stats.tp_packets,
+ stats.tp_drops);
+ }
+}
+#endif /* PACKET_STATISTICS */
+
+#ifdef ICMP_FILTER
+# include "xlat/icmpfilterflags.h"
+
+static void
+print_icmp_filter(struct tcb *tcp, long addr, int len)
+{
+ struct icmp_filter filter;
+
+ if (len != sizeof(filter) ||
+ umove(tcp, addr, &filter) < 0) {
+ tprintf("%#lx", addr);
return;
}
@@ -1134,126 +1249,257 @@
}
#endif /* ICMP_FILTER */
-static int
-printsockopt(struct tcb *tcp, int level, int name, long addr, int len)
+static void
+print_getsockopt(struct tcb *tcp, int level, int name, long addr, int len)
{
- printxval(socketlayers, level, "SOL_??");
- tprints(", ");
+ if (addr && verbose(tcp))
switch (level) {
case SOL_SOCKET:
- printxval(sockoptions, name, "SO_???");
switch (name) {
-#if defined(SO_LINGER)
+#ifdef SO_LINGER
case SO_LINGER:
- if (len == sizeof(struct linger)) {
- struct linger linger;
- if (umove(tcp, addr, &linger) < 0)
- break;
- tprintf(", {onoff=%d, linger=%d}",
- linger.l_onoff,
- linger.l_linger);
- return 0;
- }
- break;
+ print_linger(tcp, addr, len);
+ goto done;
+#endif
+#ifdef SO_PEERCRED
+ case SO_PEERCRED:
+ print_ucred(tcp, addr, len);
+ goto done;
#endif
}
break;
-#ifdef SOL_IP
- case SOL_IP:
- printxval(sockipoptions, name, "IP_???");
- break;
-#endif
-#ifdef SOL_IPV6
- case SOL_IPV6:
- printxval(sockipv6options, name, "IPV6_???");
- break;
-#endif
-#ifdef SOL_IPX
- case SOL_IPX:
- printxval(sockipxoptions, name, "IPX_???");
- break;
-#endif
-#ifdef SOL_PACKET
+
case SOL_PACKET:
- printxval(sockpacketoptions, name, "PACKET_???");
- /* TODO: decode packate_mreq for PACKET_*_MEMBERSHIP */
switch (name) {
-#ifdef PACKET_RX_RING
- case PACKET_RX_RING:
+#ifdef PACKET_STATISTICS
+ case PACKET_STATISTICS:
+ print_tpacket_stats(tcp, addr, len);
+ goto done;
#endif
-#ifdef PACKET_TX_RING
- case PACKET_TX_RING:
-#endif
-#if defined(PACKET_RX_RING) || defined(PACKET_TX_RING)
- if (len == sizeof(struct tpacket_req)) {
- struct tpacket_req req;
- if (umove(tcp, addr, &req) < 0)
- break;
- tprintf(", {block_size=%u, block_nr=%u, frame_size=%u, frame_nr=%u}",
- req.tp_block_size,
- req.tp_block_nr,
- req.tp_frame_size,
- req.tp_frame_nr);
- return 0;
- }
- break;
-#endif /* PACKET_RX_RING || PACKET_TX_RING */
}
break;
-#endif
-#ifdef SOL_TCP
- case SOL_TCP:
- printxval(socktcpoptions, name, "TCP_???");
- break;
-#endif
-#ifdef SOL_SCTP
- case SOL_SCTP:
- printxval(socksctpoptions, name, "SCTP_???");
- break;
-#endif
-#ifdef SOL_RAW
+
case SOL_RAW:
- printxval(sockrawoptions, name, "RAW_???");
switch (name) {
-#if defined(ICMP_FILTER)
- case ICMP_FILTER:
- tprints(", ");
- printicmpfilter(tcp, addr);
- return 0;
+#ifdef ICMP_FILTER
+ case ICMP_FILTER:
+ print_icmp_filter(tcp, addr, len);
+ goto done;
#endif
}
break;
-#endif
-
- /* SOL_AX25 SOL_ATALK SOL_NETROM SOL_UDP SOL_DECNET SOL_X25
- * etc. still need work */
-
- default:
- tprintf("%u", name);
}
/* default arg printing */
- tprints(", ");
-
- if (len == sizeof(int)) {
- printnum_int(tcp, addr, "%d");
+ if (verbose(tcp)) {
+ if (len == sizeof(int)) {
+ printnum_int(tcp, addr, "%d");
+ } else {
+ printstr(tcp, addr, len);
+ }
+ } else {
+ tprintf("%#lx", addr);
}
- else {
- printstr(tcp, addr, len);
+done:
+ tprintf(", [%d]", len);
+}
+
+int
+sys_getsockopt(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ print_sockopt_fd_level_name(tcp, tcp->u_arg[0],
+ tcp->u_arg[1], tcp->u_arg[2]);
+ } else {
+ int len;
+
+ if (syserror(tcp) || umove(tcp, tcp->u_arg[4], &len) < 0) {
+ tprintf("%#lx, %#lx",
+ tcp->u_arg[3], tcp->u_arg[4]);
+ } else {
+ print_getsockopt(tcp, tcp->u_arg[1], tcp->u_arg[2],
+ tcp->u_arg[3], len);
+ }
}
return 0;
}
+#ifdef MCAST_JOIN_GROUP
+static void
+print_group_req(struct tcb *tcp, long addr, int len)
+{
+ struct group_req greq;
+
+ if (len != sizeof(greq) ||
+ umove(tcp, addr, &greq) < 0) {
+ tprintf("%#lx", addr);
+ return;
+ }
+
+ union {
+ struct sockaddr *sa;
+ struct sockaddr_in *sin;
+#ifdef HAVE_INET_NTOP
+ struct sockaddr_in6 *sin6;
+#endif
+ } a = { .sa = (struct sockaddr *) &greq.gr_group };
+#ifdef HAVE_INET_NTOP
+ char str[INET6_ADDRSTRLEN];
+#endif
+
+ tprintf("{gr_interface=%u, gr_group={sa_family=", greq.gr_interface);
+ printxval(addrfams, a.sa->sa_family, "AF_???");
+
+ switch (a.sa->sa_family) {
+ case AF_INET:
+ tprintf(", sin_port=htons(%u), sin_addr=inet_addr(\"%s\")}}",
+ ntohs(a.sin->sin_port),
+ inet_ntoa(a.sin->sin_addr));
+ return;
+#ifdef HAVE_INET_NTOP
+ case AF_INET6:
+ if (!inet_ntop(AF_INET6, &a.sin6->sin6_addr, str, sizeof(str)))
+ break;
+ tprintf(", sin6_port=htons(%u)"
+ ", inet_pton(AF_INET6, \"%s\", &sin6_addr)}}",
+ ntohs(a.sin6->sin6_port), str);
+ return;
+#endif /* HAVE_INET_NTOP */
+ }
+
+ tprints(", sa_data=");
+ print_quoted_string(a.sa->sa_data, sizeof(a.sa->sa_data), 0);
+ tprintf("}}");
+
+}
+#endif /* MCAST_JOIN_GROUP */
+
+#ifdef PACKET_RX_RING
+static void
+print_tpacket_req(struct tcb *tcp, long addr, int len)
+{
+ struct tpacket_req req;
+
+ if (len != sizeof(req) ||
+ umove(tcp, addr, &req) < 0) {
+ tprintf("%#lx", addr);
+ } else {
+ tprintf("{block_size=%u, block_nr=%u, "
+ "frame_size=%u, frame_nr=%u}",
+ req.tp_block_size,
+ req.tp_block_nr,
+ req.tp_frame_size,
+ req.tp_frame_nr);
+ }
+}
+#endif /* PACKET_RX_RING */
+
+#ifdef PACKET_ADD_MEMBERSHIP
+# include "xlat/packet_mreq_type.h"
+
+static void
+print_packet_mreq(struct tcb *tcp, long addr, int len)
+{
+ struct packet_mreq mreq;
+
+ if (len != sizeof(mreq) ||
+ umove(tcp, addr, &mreq) < 0) {
+ tprintf("%#lx", addr);
+ } else {
+ unsigned int i;
+
+ tprintf("{mr_ifindex=%u, mr_type=", mreq.mr_ifindex);
+ printxval(packet_mreq_type, mreq.mr_type, "PACKET_MR_???");
+ tprintf(", mr_alen=%u, mr_address=", mreq.mr_alen);
+ if (mreq.mr_alen > ARRAY_SIZE(mreq.mr_address))
+ mreq.mr_alen = ARRAY_SIZE(mreq.mr_address);
+ for (i = 0; i < mreq.mr_alen; ++i)
+ tprintf("%02x", mreq.mr_address[i]);
+ tprints("}");
+ }
+}
+#endif /* PACKET_ADD_MEMBERSHIP */
+
+static void
+print_setsockopt(struct tcb *tcp, int level, int name, long addr, int len)
+{
+ if (addr && verbose(tcp))
+ switch (level) {
+ case SOL_SOCKET:
+ switch (name) {
+#ifdef SO_LINGER
+ case SO_LINGER:
+ print_linger(tcp, addr, len);
+ goto done;
+#endif
+ }
+ break;
+
+ case SOL_IP:
+ switch (name) {
+#ifdef MCAST_JOIN_GROUP
+ case MCAST_JOIN_GROUP:
+ case MCAST_LEAVE_GROUP:
+ print_group_req(tcp, addr, len);
+ goto done;
+#endif /* MCAST_JOIN_GROUP */
+ }
+ break;
+
+ case SOL_PACKET:
+ switch (name) {
+#ifdef PACKET_RX_RING
+ case PACKET_RX_RING:
+# ifdef PACKET_TX_RING
+ case PACKET_TX_RING:
+# endif
+ print_tpacket_req(tcp, addr, len);
+ goto done;
+#endif /* PACKET_RX_RING */
+#ifdef PACKET_ADD_MEMBERSHIP
+ case PACKET_ADD_MEMBERSHIP:
+ case PACKET_DROP_MEMBERSHIP:
+ print_packet_mreq(tcp, addr, len);
+ goto done;
+#endif /* PACKET_ADD_MEMBERSHIP */
+ }
+ break;
+
+ case SOL_RAW:
+ switch (name) {
+#ifdef ICMP_FILTER
+ case ICMP_FILTER:
+ print_icmp_filter(tcp, addr, len);
+ goto done;
+#endif
+ }
+ break;
+ }
+
+ /* default arg printing */
+
+ if (verbose(tcp)) {
+ if (len == sizeof(int)) {
+ printnum_int(tcp, addr, "%d");
+ } else {
+ printstr(tcp, addr, len);
+ }
+ } else {
+ tprintf("%#lx", addr);
+ }
+done:
+ tprintf(", %d", len);
+}
+
int
sys_setsockopt(struct tcb *tcp)
{
if (entering(tcp)) {
- printfd(tcp, tcp->u_arg[0]);
- tprints(", ");
- printsockopt(tcp, tcp->u_arg[1], tcp->u_arg[2],
- tcp->u_arg[3], tcp->u_arg[4]);
- tprintf(", %lu", tcp->u_arg[4]);
+ print_sockopt_fd_level_name(tcp, tcp->u_arg[0],
+ tcp->u_arg[1], tcp->u_arg[2]);
+ print_setsockopt(tcp, tcp->u_arg[1], tcp->u_arg[2],
+ tcp->u_arg[3], tcp->u_arg[4]);
}
return 0;
}
diff --git a/prctl.c b/prctl.c
index 234d11d..0ec0fc8 100644
--- a/prctl.c
+++ b/prctl.c
@@ -3,112 +3,288 @@
#include <sys/prctl.h>
#include "xlat/prctl_options.h"
+#include "xlat/pr_unalign_flags.h"
+#include "xlat/pr_mce_kill.h"
+#include "xlat/pr_mce_kill_policy.h"
+#include "xlat/pr_set_mm.h"
+#include "xlat/pr_tsc.h"
-static const char *
-unalignctl_string(unsigned int ctl)
+#ifndef TASK_COMM_LEN
+# define TASK_COMM_LEN 16
+#endif
+
+#ifdef HAVE_LINUX_SECCOMP_H
+# include <linux/seccomp.h>
+#endif
+#include "xlat/seccomp_mode.h"
+
+#ifdef HAVE_LINUX_SECUREBITS_H
+# include <linux/securebits.h>
+#endif
+#include "xlat/secbits.h"
+
+/* these constants are the same as in <linux/capability.h> */
+enum {
+#include "caps0.h"
+#include "caps1.h"
+};
+
+#include "xlat/cap.h"
+
+static int
+prctl_enter(struct tcb *tcp)
{
- static char buf[sizeof(int)*2 + 2];
+ unsigned int i;
- switch (ctl) {
-#ifdef PR_UNALIGN_NOPRINT
- case PR_UNALIGN_NOPRINT:
- return "NOPRINT";
-#endif
-#ifdef PR_UNALIGN_SIGBUS
- case PR_UNALIGN_SIGBUS:
- return "SIGBUS";
-#endif
- default:
+ printxval(prctl_options, tcp->u_arg[0], "PR_???");
+
+ switch (tcp->u_arg[0]) {
+ /* PR_GET_* are decoded on exit. */
+ case PR_GET_CHILD_SUBREAPER:
+ case PR_GET_DUMPABLE:
+ case PR_GET_ENDIAN:
+ case PR_GET_FPEMU:
+ case PR_GET_FPEXC:
+ case PR_GET_KEEPCAPS:
+ case PR_GET_NAME:
+ case PR_GET_PDEATHSIG:
+ case PR_GET_SECCOMP:
+ case PR_GET_SECUREBITS:
+ case PR_GET_TID_ADDRESS:
+ case PR_GET_TIMERSLACK:
+ case PR_GET_TIMING:
+ case PR_GET_TSC:
+ case PR_GET_UNALIGN:
+ /* PR_TASK_PERF_EVENTS_* have nothing to decode on enter. */
+ case PR_TASK_PERF_EVENTS_DISABLE:
+ case PR_TASK_PERF_EVENTS_ENABLE:
+ break;
+
+ case PR_SET_CHILD_SUBREAPER:
+ case PR_SET_DUMPABLE:
+ case PR_SET_ENDIAN:
+ case PR_SET_FPEMU:
+ case PR_SET_FPEXC:
+ case PR_SET_KEEPCAPS:
+ case PR_SET_TIMING:
+ tprintf(", %lu", tcp->u_arg[1]);
+ break;
+
+ case PR_CAPBSET_DROP:
+ case PR_CAPBSET_READ:
+ tprints(", ");
+ printxval(cap, tcp->u_arg[1], "CAP_???");
+ break;
+
+ case PR_MCE_KILL:
+ tprints(", ");
+ printxval(pr_mce_kill, tcp->u_arg[1], "PR_MCE_KILL_???");
+ tprints(", ");
+ if (PR_MCE_KILL_SET == tcp->u_arg[1])
+ printxval(pr_mce_kill_policy, tcp->u_arg[2],
+ "PR_MCE_KILL_???");
+ else
+ tprintf("%#lx", tcp->u_arg[2]);
+ for (i = 3; i < tcp->s_ent->nargs; i++)
+ tprintf(", %#lx", tcp->u_arg[i]);
+ break;
+
+ case PR_SET_NAME:
+ tprints(", ");
+ printstr(tcp, tcp->u_arg[1], TASK_COMM_LEN);
+ break;
+
+ case PR_SET_MM:
+ tprints(", ");
+ printxval(pr_set_mm, tcp->u_arg[1], "PR_SET_MM_???");
+ for (i = 2; i < tcp->s_ent->nargs; i++)
+ tprintf(", %#lx", tcp->u_arg[i]);
+ break;
+
+ case PR_SET_PDEATHSIG:
+ tprints(", ");
+ if ((unsigned long) tcp->u_arg[1] > 128)
+ tprintf("%lu", tcp->u_arg[1]);
+ else
+ tprints(signame(tcp->u_arg[1]));
+ break;
+
+ case PR_SET_PTRACER:
+ tprints(", ");
+ if (tcp->u_arg[1] == -1)
+ tprints("PR_SET_PTRACER_ANY");
+ else
+ tprintf("%lu", tcp->u_arg[1]);
+ break;
+
+ case PR_SET_SECCOMP:
+ tprints(", ");
+ printxval(seccomp_mode, tcp->u_arg[1],
+ "SECCOMP_MODE_???");
+ if (SECCOMP_MODE_STRICT == tcp->u_arg[1])
break;
+ if (SECCOMP_MODE_FILTER == tcp->u_arg[1]) {
+ tprints(", ");
+ print_seccomp_filter(tcp, tcp->u_arg[2]);
+ break;
+ }
+ for (i = 2; i < tcp->s_ent->nargs; i++)
+ tprintf(", %#lx", tcp->u_arg[i]);
+ break;
+
+ case PR_SET_SECUREBITS:
+ tprints(", ");
+ printflags(secbits, tcp->u_arg[1], "SECBIT_???");
+ break;
+
+ case PR_SET_TIMERSLACK:
+ tprintf(", %ld", tcp->u_arg[1]);
+ break;
+
+ case PR_SET_TSC:
+ tprints(", ");
+ printxval(pr_tsc, tcp->u_arg[1], "PR_TSC_???");
+ break;
+
+ case PR_SET_UNALIGN:
+ tprints(", ");
+ printflags(pr_unalign_flags, tcp->u_arg[1], "PR_UNALIGN_???");
+ break;
+
+ case PR_SET_NO_NEW_PRIVS:
+ case PR_SET_THP_DISABLE:
+ tprintf(", %lu", tcp->u_arg[1]);
+ for (i = 2; i < tcp->s_ent->nargs; i++)
+ tprintf(", %#lx", tcp->u_arg[i]);
+ break;
+
+ case PR_GET_NO_NEW_PRIVS:
+ case PR_GET_THP_DISABLE:
+ case PR_MCE_KILL_GET:
+ /* Return code of "GET" commands will be decoded on exit */
+ case PR_MPX_DISABLE_MANAGEMENT:
+ case PR_MPX_ENABLE_MANAGEMENT:
+ default:
+ for (i = 1; i < tcp->s_ent->nargs; i++)
+ tprintf(", %#lx", tcp->u_arg[i]);
+ break;
}
- sprintf(buf, "%x", ctl);
- return buf;
+ return 0;
+}
+
+static int
+prctl_exit(struct tcb *tcp)
+{
+ unsigned long addr;
+ unsigned int i;
+
+ switch (tcp->u_arg[0]) {
+ case PR_CAPBSET_READ:
+ case PR_GET_DUMPABLE:
+ case PR_GET_KEEPCAPS:
+ case PR_GET_NO_NEW_PRIVS:
+ case PR_GET_SECCOMP:
+ case PR_GET_THP_DISABLE:
+ case PR_GET_TIMERSLACK:
+ case PR_GET_TIMING:
+ return syserror(tcp) ? 0 : RVAL_UDECIMAL;
+
+ case PR_GET_CHILD_SUBREAPER:
+ case PR_GET_ENDIAN:
+ case PR_GET_FPEMU:
+ case PR_GET_FPEXC:
+ tprints(", ");
+ /* cannot use printnum_int() because of syserror() */
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &i) < 0)
+ tprintf("%#lx", tcp->u_arg[1]);
+ else
+ tprintf("[%u]", i);
+ break;
+
+ case PR_GET_NAME:
+ tprints(", ");
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp))
+ tprintf("%#lx", tcp->u_arg[1]);
+ else
+ printstr(tcp, tcp->u_arg[1], -1);
+ break;
+
+ case PR_GET_PDEATHSIG:
+ tprints(", ");
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &i) < 0)
+ tprintf("%#lx", tcp->u_arg[1]);
+ else {
+ tprints("[");
+ tprints(signame(i));
+ tprints("]");
+ }
+ break;
+
+ case PR_GET_SECUREBITS:
+ if (syserror(tcp) || tcp->u_rval == 0)
+ return 0;
+ tcp->auxstr = sprintflags("", secbits, tcp->u_rval);
+ return RVAL_STR;
+
+ case PR_GET_TID_ADDRESS:
+ tprints(", ");
+ /* cannot use printnum_long() because of syserror() */
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &addr) < 0)
+ tprintf("%#lx", tcp->u_arg[1]);
+ else
+ tprintf("[%#lx]", addr);
+ break;
+
+ case PR_GET_TSC:
+ tprints(", ");
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &i) < 0)
+ tprintf("%#lx", tcp->u_arg[1]);
+ else {
+ tprints("[");
+ printxval(pr_tsc, i, "PR_TSC_???");
+ tprints("]");
+ }
+ break;
+
+ case PR_GET_UNALIGN:
+ tprints(", ");
+ if (!tcp->u_arg[1])
+ tprints("NULL");
+ else if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &i) < 0)
+ tprintf("%#lx", tcp->u_arg[1]);
+ else {
+ tprints("[");
+ printflags(pr_unalign_flags, i, "PR_UNALIGN_???");
+ tprints("]");
+ }
+ break;
+
+ case PR_MCE_KILL_GET:
+ if (syserror(tcp))
+ return 0;
+ tcp->auxstr = xlookup(pr_mce_kill_policy, tcp->u_rval);
+ return tcp->auxstr ? RVAL_STR : RVAL_UDECIMAL;
+
+ default:
+ break;
+ }
+ return 0;
}
int
sys_prctl(struct tcb *tcp)
{
- unsigned int i;
-
- if (entering(tcp)) {
- printxval(prctl_options, tcp->u_arg[0], "PR_???");
- switch (tcp->u_arg[0]) {
-#ifdef PR_GETNSHARE
- case PR_GETNSHARE:
- break;
-#endif
-#ifdef PR_SET_PDEATHSIG
- case PR_SET_PDEATHSIG:
- tprintf(", %lu", tcp->u_arg[1]);
- break;
-#endif
-#ifdef PR_GET_PDEATHSIG
- case PR_GET_PDEATHSIG:
- break;
-#endif
-#ifdef PR_SET_DUMPABLE
- case PR_SET_DUMPABLE:
- tprintf(", %lu", tcp->u_arg[1]);
- break;
-#endif
-#ifdef PR_GET_DUMPABLE
- case PR_GET_DUMPABLE:
- break;
-#endif
-#ifdef PR_SET_UNALIGN
- case PR_SET_UNALIGN:
- tprintf(", %s", unalignctl_string(tcp->u_arg[1]));
- break;
-#endif
-#ifdef PR_GET_UNALIGN
- case PR_GET_UNALIGN:
- tprintf(", %#lx", tcp->u_arg[1]);
- break;
-#endif
-#ifdef PR_SET_KEEPCAPS
- case PR_SET_KEEPCAPS:
- tprintf(", %lu", tcp->u_arg[1]);
- break;
-#endif
-#ifdef PR_GET_KEEPCAPS
- case PR_GET_KEEPCAPS:
- break;
-#endif
- default:
- for (i = 1; i < tcp->s_ent->nargs; i++)
- tprintf(", %#lx", tcp->u_arg[i]);
- break;
- }
- } else {
- switch (tcp->u_arg[0]) {
-#ifdef PR_GET_PDEATHSIG
- case PR_GET_PDEATHSIG:
- if (umove(tcp, tcp->u_arg[1], &i) < 0)
- tprintf(", %#lx", tcp->u_arg[1]);
- else
- tprintf(", {%u}", i);
- break;
-#endif
-#ifdef PR_GET_DUMPABLE
- case PR_GET_DUMPABLE:
- return RVAL_UDECIMAL;
-#endif
-#ifdef PR_GET_UNALIGN
- case PR_GET_UNALIGN:
- if (syserror(tcp) || umove(tcp, tcp->u_arg[1], &i) < 0)
- break;
- tcp->auxstr = unalignctl_string(i);
- return RVAL_STR;
-#endif
-#ifdef PR_GET_KEEPCAPS
- case PR_GET_KEEPCAPS:
- return RVAL_UDECIMAL;
-#endif
- default:
- break;
- }
- }
- return 0;
+ return entering(tcp) ? prctl_enter(tcp) : prctl_exit(tcp);
}
#if defined X86_64 || defined X32
@@ -118,24 +294,25 @@
int
sys_arch_prctl(struct tcb *tcp)
{
- if (entering(tcp)) {
+ if (entering(tcp))
printxval(archvals, tcp->u_arg[0], "ARCH_???");
- if (tcp->u_arg[0] == ARCH_SET_GS
- || tcp->u_arg[0] == ARCH_SET_FS
- ) {
- tprintf(", %#lx", tcp->u_arg[1]);
+
+ switch (tcp->u_arg[0]) {
+ case ARCH_GET_GS:
+ case ARCH_GET_FS:
+ if (exiting(tcp)) {
+ if (syserror(tcp))
+ break;
+ tprints(", ");
+ printnum_long(tcp, tcp->u_arg[1], "%#lx");
}
- } else {
- if (tcp->u_arg[0] == ARCH_GET_GS
- || tcp->u_arg[0] == ARCH_GET_FS
- ) {
- long int v;
- if (!syserror(tcp) && umove(tcp, tcp->u_arg[1], &v) != -1)
- tprintf(", [%#lx]", v);
- else
- tprintf(", %#lx", tcp->u_arg[1]);
- }
+ return 0;
+ default:
+ if (exiting(tcp))
+ return 0;
}
+
+ tprintf(", %#lx", tcp->u_arg[1]);
return 0;
}
#endif /* X86_64 || X32 */
diff --git a/printstat.h b/printstat.h
new file mode 100644
index 0000000..53112fe
--- /dev/null
+++ b/printstat.h
@@ -0,0 +1,90 @@
+#ifndef DO_PRINTSTAT
+# define DO_PRINTSTAT do_printstat
+#endif
+
+#ifndef STRUCT_STAT
+# define STRUCT_STAT struct stat
+#endif
+
+#ifndef STAT_MAJOR
+# define STAT_MAJOR(x) major(x)
+#endif
+
+#ifndef STAT_MINOR
+# define STAT_MINOR(x) minor(x)
+#endif
+
+static void
+DO_PRINTSTAT(struct tcb *tcp, const STRUCT_STAT *statbuf)
+{
+ if (!abbrev(tcp)) {
+ tprintf("{st_dev=makedev(%u, %u), st_ino=%llu, st_mode=%s, ",
+ (unsigned int) STAT_MAJOR(statbuf->st_dev),
+ (unsigned int) STAT_MINOR(statbuf->st_dev),
+ (unsigned long long) statbuf->st_ino,
+ sprintmode(statbuf->st_mode));
+ tprintf("st_nlink=%u, st_uid=%u, st_gid=%u, ",
+ (unsigned int) statbuf->st_nlink,
+ (unsigned int) statbuf->st_uid,
+ (unsigned int) statbuf->st_gid);
+#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE
+ tprintf("st_blksize=%u, ", (unsigned int) statbuf->st_blksize);
+#endif
+#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
+ tprintf("st_blocks=%llu, ",
+ (unsigned long long) statbuf->st_blocks);
+#endif
+ } else {
+ tprintf("{st_mode=%s, ", sprintmode(statbuf->st_mode));
+ }
+
+ switch (statbuf->st_mode & S_IFMT) {
+ case S_IFCHR: case S_IFBLK:
+#ifdef HAVE_STRUCT_STAT_ST_RDEV
+ tprintf("st_rdev=makedev(%u, %u), ",
+ (unsigned int) STAT_MAJOR(statbuf->st_rdev),
+ (unsigned int) STAT_MINOR(statbuf->st_rdev));
+#else /* !HAVE_STRUCT_STAT_ST_RDEV */
+ tprintf("st_size=makedev(%u, %u), ",
+ (unsigned int) STAT_MAJOR(statbuf->st_size),
+ (unsigned int) STAT_MINOR(statbuf->st_size));
+#endif /* !HAVE_STRUCT_STAT_ST_RDEV */
+ break;
+ default:
+ tprintf("st_size=%llu, ",
+ (unsigned long long) statbuf->st_size);
+ break;
+ }
+
+ if (!abbrev(tcp)) {
+ const bool cast = sizeof(statbuf->st_atime) == sizeof(int);
+
+ tprintf("st_atime=%s, ",
+ sprinttime(cast ? (time_t) (int) statbuf->st_atime:
+ (time_t) statbuf->st_atime));
+ tprintf("st_mtime=%s, ",
+ sprinttime(cast ? (time_t) (int) statbuf->st_mtime:
+ (time_t) statbuf->st_mtime));
+ tprintf("st_ctime=%s",
+ sprinttime(cast ? (time_t) (int) statbuf->st_ctime:
+ (time_t) statbuf->st_ctime));
+#if HAVE_STRUCT_STAT_ST_FLAGS
+ tprintf(", st_flags=%u", (unsigned int) statbuf->st_flags);
+#endif
+#if HAVE_STRUCT_STAT_ST_FSTYPE
+ tprintf(", st_fstype=%.*s",
+ (int) sizeof statbuf->st_fstype, statbuf->st_fstype);
+#endif
+#if HAVE_STRUCT_STAT_ST_GEN
+ tprintf(", st_gen=%u", (unsigned int) statbuf->st_gen);
+#endif
+ tprints("}");
+ } else {
+ tprints("...}");
+ }
+}
+
+#undef STAT_MINOR
+#undef STAT_MAJOR
+#undef STRUCT_STAT
+#undef DO_PRINTSTAT
diff --git a/process.c b/process.c
index bb888ce..690ca8e 100644
--- a/process.c
+++ b/process.c
@@ -42,44 +42,11 @@
#include "xlat/nt_descriptor_types.h"
-#include <sys/user.h>
-#ifdef HAVE_SYS_REG_H
-# include <sys/reg.h>
-#endif
-
-#ifdef HAVE_LINUX_PTRACE_H
-# undef PTRACE_SYSCALL
-# ifdef HAVE_STRUCT_IA64_FPREG
-# define ia64_fpreg XXX_ia64_fpreg
-# endif
-# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
-# define pt_all_user_regs XXX_pt_all_user_regs
-# endif
-# ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
-# define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args
-# endif
-# include <linux/ptrace.h>
-# undef ptrace_peeksiginfo_args
-# undef ia64_fpreg
-# undef pt_all_user_regs
-#endif
-
-#if defined(SPARC64)
-# define r_pc r_tpc
-# undef PTRACE_GETREGS
-# define PTRACE_GETREGS PTRACE_GETREGS64
-# undef PTRACE_SETREGS
-# define PTRACE_SETREGS PTRACE_SETREGS64
-#endif
-
+#include "regs.h"
+#include "ptrace.h"
#include "xlat/ptrace_cmds.h"
#include "xlat/ptrace_setoptions_flags.h"
-#if defined(IA64)
-# include <asm/ptrace_offsets.h>
-# include <asm/rse.h>
-#endif
-
#define uoff(member) offsetof(struct user, member)
#define XLAT_UOFF(member) { uoff(member), "offsetof(struct user, " #member ")" }
@@ -115,14 +82,12 @@
else
tprintf("%s, ", x->str);
} else
-#ifdef PTRACE_GETREGSET
if (tcp->u_arg[0] == PTRACE_GETREGSET
|| tcp->u_arg[0] == PTRACE_SETREGSET
) {
printxval(nt_descriptor_types, tcp->u_arg[2], "NT_???");
tprints(", ");
} else
-#endif
tprintf("%#lx, ", addr);
@@ -139,29 +104,20 @@
case PTRACE_DETACH:
printsignal(tcp->u_arg[3]);
break;
-#ifdef PTRACE_SETOPTIONS
case PTRACE_SETOPTIONS:
printflags(ptrace_setoptions_flags, tcp->u_arg[3], "PTRACE_O_???");
break;
-#endif
-#ifdef PTRACE_SETSIGINFO
case PTRACE_SETSIGINFO: {
printsiginfo_at(tcp, tcp->u_arg[3]);
break;
}
-#endif
-#ifdef PTRACE_GETSIGINFO
- case PTRACE_GETSIGINFO:
- /* Don't print anything, do it at syscall return. */
- break;
-#endif
-#ifdef PTRACE_GETREGSET
- case PTRACE_GETREGSET:
- break;
case PTRACE_SETREGSET:
tprint_iov(tcp, /*len:*/ 1, tcp->u_arg[3], /*as string:*/ 0);
break;
-#endif
+ case PTRACE_GETSIGINFO:
+ case PTRACE_GETREGSET:
+ /* Don't print anything, do it at syscall return. */
+ break;
default:
tprintf("%#lx", tcp->u_arg[3]);
break;
@@ -174,20 +130,16 @@
#ifdef IA64
return RVAL_HEX;
#else
- printnum(tcp, tcp->u_arg[3], "%#lx");
+ printnum_long(tcp, tcp->u_arg[3], "%#lx");
break;
#endif
-#ifdef PTRACE_GETSIGINFO
case PTRACE_GETSIGINFO: {
printsiginfo_at(tcp, tcp->u_arg[3]);
break;
}
-#endif
-#ifdef PTRACE_GETREGSET
case PTRACE_GETREGSET:
tprint_iov(tcp, /*len:*/ 1, tcp->u_arg[3], /*as string:*/ 0);
break;
-#endif
}
}
return 0;
diff --git a/ptp.c b/ptp.c
index 1d9cf24..dbd3583 100644
--- a/ptp.c
+++ b/ptp.c
@@ -4,7 +4,8 @@
#include "xlat/ptp_flags_options.h"
-int ptp_ioctl(struct tcb *tcp, long code, long arg)
+int
+ptp_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
if (!verbose(tcp))
return 0;
diff --git a/ptrace.h b/ptrace.h
new file mode 100644
index 0000000..065cbda
--- /dev/null
+++ b/ptrace.h
@@ -0,0 +1,133 @@
+#ifdef NEED_PTRACE_PROTOTYPE_WORKAROUND
+# define ptrace xptrace
+# include <sys/ptrace.h>
+# undef ptrace
+extern long ptrace(int, int, char *, long);
+#else
+# include <sys/ptrace.h>
+#endif
+
+#ifdef HAVE_STRUCT_IA64_FPREG
+# define ia64_fpreg XXX_ia64_fpreg
+#endif
+#ifdef HAVE_STRUCT_PT_ALL_USER_REGS
+# define pt_all_user_regs XXX_pt_all_user_regs
+#endif
+#ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
+# define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args
+#endif
+
+#include <linux/ptrace.h>
+
+#ifdef HAVE_STRUCT_IA64_FPREG
+# undef ia64_fpreg
+#endif
+#ifdef HAVE_STRUCT_PT_ALL_USER_REGS
+# undef pt_all_user_regs
+#endif
+#ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
+# undef ptrace_peeksiginfo_args
+#endif
+
+#ifndef PTRACE_EVENT_FORK
+# define PTRACE_EVENT_FORK 1
+#endif
+#ifndef PTRACE_EVENT_VFORK
+# define PTRACE_EVENT_VFORK 2
+#endif
+#ifndef PTRACE_EVENT_CLONE
+# define PTRACE_EVENT_CLONE 3
+#endif
+#ifndef PTRACE_EVENT_EXEC
+# define PTRACE_EVENT_EXEC 4
+#endif
+#ifndef PTRACE_EVENT_VFORK_DONE
+# define PTRACE_EVENT_VFORK_DONE 5
+#endif
+#ifndef PTRACE_EVENT_EXIT
+# define PTRACE_EVENT_EXIT 6
+#endif
+#ifndef PTRACE_EVENT_SECCOMP
+# define PTRACE_EVENT_SECCOMP 7
+#endif
+#ifdef PTRACE_EVENT_STOP
+/* Linux 3.1 - 3.3 releases had a broken value. It was fixed in 3.4. */
+# if PTRACE_EVENT_STOP == 7
+# undef PTRACE_EVENT_STOP
+# endif
+#endif
+#ifndef PTRACE_EVENT_STOP
+# define PTRACE_EVENT_STOP 128
+#endif
+
+#ifndef PTRACE_O_TRACESYSGOOD
+# define PTRACE_O_TRACESYSGOOD 1
+#endif
+#ifndef PTRACE_O_TRACEFORK
+# define PTRACE_O_TRACEFORK (1 << PTRACE_EVENT_FORK)
+#endif
+#ifndef PTRACE_O_TRACEVFORK
+# define PTRACE_O_TRACEVFORK (1 << PTRACE_EVENT_VFORK)
+#endif
+#ifndef PTRACE_O_TRACECLONE
+# define PTRACE_O_TRACECLONE (1 << PTRACE_EVENT_CLONE)
+#endif
+#ifndef PTRACE_O_TRACEEXEC
+# define PTRACE_O_TRACEEXEC (1 << PTRACE_EVENT_EXEC)
+#endif
+#ifndef PTRACE_O_TRACEVFORKDONE
+# define PTRACE_O_TRACEVFORKDONE (1 << PTRACE_EVENT_VFORK_DONE)
+#endif
+#ifndef PTRACE_O_TRACEEXIT
+# define PTRACE_O_TRACEEXIT (1 << PTRACE_EVENT_EXIT)
+#endif
+#ifndef PTRACE_O_TRACESECCOMP
+# define PTRACE_O_TRACESECCOMP (1 << PTRACE_EVENT_SECCOMP)
+#endif
+#ifndef PTRACE_O_EXITKILL
+# define PTRACE_O_EXITKILL (1 << 20)
+#endif
+
+#ifndef PTRACE_SETOPTIONS
+# define PTRACE_SETOPTIONS 0x4200
+#endif
+#ifndef PTRACE_GETEVENTMSG
+# define PTRACE_GETEVENTMSG 0x4201
+#endif
+#ifndef PTRACE_GETSIGINFO
+# define PTRACE_GETSIGINFO 0x4202
+#endif
+#ifndef PTRACE_SETSIGINFO
+# define PTRACE_SETSIGINFO 0x4203
+#endif
+#ifndef PTRACE_GETREGSET
+# define PTRACE_GETREGSET 0x4204
+#endif
+#ifndef PTRACE_SETREGSET
+# define PTRACE_SETREGSET 0x4205
+#endif
+#ifndef PTRACE_SEIZE
+# define PTRACE_SEIZE 0x4206
+#endif
+#ifndef PTRACE_INTERRUPT
+# define PTRACE_INTERRUPT 0x4207
+#endif
+#ifndef PTRACE_LISTEN
+# define PTRACE_LISTEN 0x4208
+#endif
+#ifndef PTRACE_PEEKSIGINFO
+# define PTRACE_PEEKSIGINFO 0x4209
+#endif
+#ifndef PTRACE_GETSIGMASK
+# define PTRACE_GETSIGMASK 0x420a
+#endif
+#ifndef PTRACE_SETSIGMASK
+# define PTRACE_SETSIGMASK 0x420b
+#endif
+
+#if !HAVE_DECL_PTRACE_PEEKUSER
+# define PTRACE_PEEKUSER PTRACE_PEEKUSR
+#endif
+#if !HAVE_DECL_PTRACE_POKEUSER
+# define PTRACE_POKEUSER PTRACE_POKEUSR
+#endif
diff --git a/qemu_multiarch_testing/.gitignore b/qemu_multiarch_testing/.gitignore
new file mode 100644
index 0000000..9ba3a0a
--- /dev/null
+++ b/qemu_multiarch_testing/.gitignore
@@ -0,0 +1,2 @@
+hdc.dir/strace
+hdc.img
diff --git a/qemu_multiarch_testing/README b/qemu_multiarch_testing/README
index 756da24..3dc5581 100644
--- a/qemu_multiarch_testing/README
+++ b/qemu_multiarch_testing/README
@@ -21,31 +21,21 @@
There is no automated detection of errors for now: you need to examine
logs yourself.
-For me, the following system images worked:
-system-image-armv4l
-system-image-armv4tl
-system-image-armv5l
-system-image-armv6l
-system-image-i686 (had to s/qemu-system-i386/qemu/ in run-emulator.sh)
-system-image-mipsel
-system-image-mips
-system-image-x86_64
-system-image-sparc - needed small edit in native-build.sh:
- # Getting this early:
- # Unhandled Exception 0x00000007
- # PC = 0xffd07cec NPC = 0xffd07cf0
- # Stopping execution
- # and it looks like it's triggered just by too long kernel cmdline,
- # not by specific options.
- #export KERNEL_EXTRA="FTP_SERVER=$FTP_SERVER FTP_PORT=$FTP_PORT NATIVE_BUILD=$NATIVE_BUILD $KERNEL_EXTRA"
- # This works:
- export KERNEL_EXTRA="NATIVE_BUILD=$NATIVE_BUILD $KERNEL_EXTRA"
+For me, the following system images worked (tests passed/skipped/failed):
+system-image-armv4l - 14/14/1 (failed: stat32-v.test - wrong stat decoding, sun_path.test - libc error)
+system-image-armv4tl - 15/14/0
+system-image-armv5l - 15/14/0
+system-image-armv6l - 15/14/0
+system-image-i486 - 14/14/1 (failed: count.test - grep segfault)
+system-image-i586 - 14/14/1 (failed: count.test - grep segfault)
+system-image-i686 - 14/14/1 (failed: count.test - grep segfault)
+system-image-mips - 15/14/0
+system-image-mipsel - 15/14/0
+system-image-powerpc - 13/14/2 (failed: ipc_sem.test - ipc_sem segfault)
+system-image-sparc - 13/14/2 (failed: ipc_sem.test - ipc_sem segfault)
+system-image-x86_64 - 14/15/0
And these did not:
-system-image-armv4eb - VFS: Cannot open root device "sda" or unknown-block(0,0)
-system-image-m68k - run-emulator.sh has no call of qemu-system-* (not supported yet??)
-system-image-mips64 -
- need to run ./native-build.sh ../hdc.img by hand;
- copying in /mnt/init fails (segv?)
-system-image-powerpc - QEMU stuck very early
+system-image-m68k - qemu-system-m68k: -M q800: Unsupported machine type
+system-image-mips64 - init dies before reaching /mnt/init
system-image-sh4 - hdc does not mount (no support for 2 disks)
diff --git a/qemu_multiarch_testing/hdc.dir/init2 b/qemu_multiarch_testing/hdc.dir/init2
index f1a9dee..8c0200a 100755
--- a/qemu_multiarch_testing/hdc.dir/init2
+++ b/qemu_multiarch_testing/hdc.dir/init2
@@ -1,19 +1,16 @@
#!/bin/sh
umount /mnt # optional
-echo "Building"
(
- cd strace &&
- ./configure &&
- make &&
- echo "Build: SUCCESS"
+ set -e -x
+ cd strace
+ ./configure
+ make
size strace
- ./strace
- # strace may segfault, let's see exit code
- echo "Exit code: $?"
- ./strace /bin/true
- echo "Exit code: $?"
- ftpput -P "$FTP_PORT" "$FTP_SERVER" strace
+ make check VERBOSE=1 &&
+ cat tests/test-suite.log ||:
+ test "x$FTP_PORT" = x ||
+ ftpput -P "$FTP_PORT" "$FTP_SERVER" strace
) 2>&1 | tee strace_build.log
mount -o remount,ro /home
sync
diff --git a/qemu_multiarch_testing/make-hdc-img.sh b/qemu_multiarch_testing/make-hdc-img.sh
index 93d2a77..3c35f4e 100755
--- a/qemu_multiarch_testing/make-hdc-img.sh
+++ b/qemu_multiarch_testing/make-hdc-img.sh
@@ -1,17 +1,30 @@
-#!/bin/sh
+#!/bin/sh -ex
-export HDCMEGS=128
+mountpoint -q /
+[ ! -e hdc.img.dir ]
-rm hdc.img 2>/dev/null
-umount -d hdc.img.dir 2>/dev/null
-rm -rf hdc.img.dir 2>/dev/null
+cleanup()
+{
+ trap - EXIT
+ if mountpoint -q hdc.img.dir; then
+ umount -d hdc.img.dir
+ fi
+ mountpoint -q hdc.img.dir ||
+ rm -rf hdc.img.dir
+ exit $@
+}
-dd if=/dev/zero of=hdc.img bs=1024 seek=$((HDCMEGS*1024-1)) count=1 &&
-mke2fs -q -b 1024 -F -i 4096 hdc.img &&
-tune2fs -j -c 0 -i 0 hdc.img &&
-mkdir hdc.img.dir &&
-mount -o loop hdc.img hdc.img.dir &&
-cp -a hdc.dir/* hdc.img.dir &&
-umount -d hdc.img.dir &&
-rm -rf hdc.img.dir &&
-true
+trap 'cleanup $?' EXIT
+trap 'cleanup 1' HUP PIPE INT QUIT TERM
+
+size=$(du -ks hdc.dir | sed -rn 's/^([0-9]+).*/\1/p')
+[ "$size" -gt 0 ]
+
+rm -f hdc.img
+dd if=/dev/zero of=hdc.img count=1 bs=1024 seek=$(($size*2))
+mkfs.ext3 -q -F -b 1024 -i 4096 hdc.img
+tune2fs -c 0 -i 0 hdc.img
+mkdir hdc.img.dir
+mount -o loop hdc.img hdc.img.dir
+cp -a hdc.dir/* hdc.img.dir/
+umount -d hdc.img.dir
diff --git a/qemu_multiarch_testing/parallel-build-hdc-img.sh b/qemu_multiarch_testing/parallel-build-hdc-img.sh
index cbfe42f..d98f954 100755
--- a/qemu_multiarch_testing/parallel-build-hdc-img.sh
+++ b/qemu_multiarch_testing/parallel-build-hdc-img.sh
@@ -1,13 +1,14 @@
#!/bin/sh
-export HDBMEGS=128
+export HDBMEGS=64
build_in_dir()
{
cd "$1" || exit 1
- rm -f hdb.img 2>/dev/null
- nice -n10 ./native-build.sh ../hdc.img
- rm -f hdb.img 2>/dev/null
+ rm -f hdb.img
+ nice -n10 time ./native-build.sh ../hdc.img
+ rm -f hdb.img
+ echo >&3 "Finished: $1"
}
started=false
@@ -15,7 +16,7 @@
test -d "$dir" || continue
test -e "$dir/native-build.sh" || continue
echo "Starting: $dir"
- build_in_dir "$dir" </dev/null >"$dir.log" 2>&1 &
+ build_in_dir "$dir" 3>&1 </dev/null >"$dir.log" 2>&1 &
started=true
done
diff --git a/reboot.c b/reboot.c
index e3fa77a..5c4752d 100644
--- a/reboot.c
+++ b/reboot.c
@@ -1,5 +1,4 @@
#include "defs.h"
-#include <linux/reboot.h>
#include "xlat/bootflags1.h"
#include "xlat/bootflags2.h"
diff --git a/regs.h b/regs.h
new file mode 100644
index 0000000..9b0746c
--- /dev/null
+++ b/regs.h
@@ -0,0 +1,7 @@
+#include <sys/user.h>
+
+#ifdef HAVE_SYS_REG_H
+# include <sys/reg.h>
+#endif
+
+#include "arch_regs.h"
diff --git a/scsi.c b/scsi.c
index a2e23c8..867b74c 100644
--- a/scsi.c
+++ b/scsi.c
@@ -33,97 +33,251 @@
# include <sys/ioctl.h>
# include <scsi/sg.h>
-#include "xlat/sg_io_dxfer_direction.h"
+# include "xlat/sg_io_dxfer_direction.h"
+
+# ifdef HAVE_LINUX_BSG_H
+# include <linux/bsg.h>
+# include <sys/uio.h>
+# include "xlat/bsg_protocol.h"
+# include "xlat/bsg_subprotocol.h"
+# endif
static void
-print_sg_io_buffer(struct tcb *tcp, unsigned char *addr, const unsigned int len)
+print_sg_io_buffer(struct tcb *tcp, unsigned long addr, const unsigned int len)
{
unsigned char *buf = NULL;
unsigned int allocated, i;
+ tprints("[");
if (len == 0)
- return;
+ goto out;
allocated = (len > max_strlen) ? max_strlen : len;
if ((buf = malloc(allocated)) == NULL ||
- umoven(tcp, (unsigned long) addr, allocated, (char *) buf) < 0) {
- tprintf("%p", addr);
- free(buf);
- return;
+ umoven(tcp, addr, allocated, (char *) buf) < 0) {
+ tprintf("%#lx", addr);
+ goto out;
}
tprintf("%02x", buf[0]);
for (i = 1; i < allocated; ++i)
tprintf(", %02x", buf[i]);
- free(buf);
if (allocated != len)
tprints(", ...");
+out:
+ free(buf);
+ tprints("]");
}
static void
-print_sg_io_req(struct tcb *tcp, struct sg_io_hdr *sg_io)
+print_sg_io_v3_req(struct tcb *tcp, long arg)
{
- tprintf("{'%c', ", sg_io->interface_id);
- printxval(sg_io_dxfer_direction, sg_io->dxfer_direction,
+ struct sg_io_hdr sg_io;
+
+ if (umove(tcp, arg, &sg_io) < 0) {
+ tprintf(", %#lx", arg);
+ return;
+ }
+
+ tprints(", ");
+ printxval(sg_io_dxfer_direction, sg_io.dxfer_direction,
"SG_DXFER_???");
- tprintf(", cmd[%u]=[", sg_io->cmd_len);
- print_sg_io_buffer(tcp, sg_io->cmdp, sg_io->cmd_len);
- tprintf("], mx_sb_len=%d, ", sg_io->mx_sb_len);
- tprintf("iovec_count=%d, ", sg_io->iovec_count);
- tprintf("dxfer_len=%u, ", sg_io->dxfer_len);
- tprintf("timeout=%u, ", sg_io->timeout);
- tprintf("flags=%#x", sg_io->flags);
+ tprintf(", cmd[%u]=", sg_io.cmd_len);
+ print_sg_io_buffer(tcp, (unsigned long) sg_io.cmdp, sg_io.cmd_len);
+ tprintf(", mx_sb_len=%d", sg_io.mx_sb_len);
+ tprintf(", iovec_count=%d", sg_io.iovec_count);
+ tprintf(", dxfer_len=%u", sg_io.dxfer_len);
+ tprintf(", timeout=%u", sg_io.timeout);
+ tprintf(", flags=%#x", sg_io.flags);
- if (sg_io->dxfer_direction == SG_DXFER_TO_DEV ||
- sg_io->dxfer_direction == SG_DXFER_TO_FROM_DEV) {
- tprintf(", data[%u]=[", sg_io->dxfer_len);
- printstr(tcp, (unsigned long) sg_io->dxferp,
- sg_io->dxfer_len);
- tprints("]");
+ if (sg_io.dxfer_direction == SG_DXFER_TO_DEV ||
+ sg_io.dxfer_direction == SG_DXFER_TO_FROM_DEV) {
+ tprintf(", data[%u]=", sg_io.dxfer_len);
+ if (sg_io.iovec_count)
+ tprint_iov_upto(tcp, sg_io.iovec_count,
+ (unsigned long) sg_io.dxferp, 1,
+ sg_io.dxfer_len);
+ else
+ print_sg_io_buffer(tcp, (unsigned long) sg_io.dxferp,
+ sg_io.dxfer_len);
}
}
static void
-print_sg_io_res(struct tcb *tcp, struct sg_io_hdr *sg_io)
+print_sg_io_v3_res(struct tcb *tcp, long arg)
{
- if (sg_io->dxfer_direction == SG_DXFER_FROM_DEV ||
- sg_io->dxfer_direction == SG_DXFER_TO_FROM_DEV) {
- tprintf(", data[%u]=[", sg_io->dxfer_len);
- printstr(tcp, (unsigned long) sg_io->dxferp,
- sg_io->dxfer_len);
- tprints("]");
+ struct sg_io_hdr sg_io;
+
+ if (umove(tcp, arg, &sg_io) < 0) {
+ tprintf(", %#lx", arg);
+ return;
}
- tprintf(", status=%02x, ", sg_io->status);
- tprintf("masked_status=%02x, ", sg_io->masked_status);
- tprintf("sb[%u]=[", sg_io->sb_len_wr);
- print_sg_io_buffer(tcp, sg_io->sbp, sg_io->sb_len_wr);
- tprintf("], host_status=%#x, ", sg_io->host_status);
- tprintf("driver_status=%#x, ", sg_io->driver_status);
- tprintf("resid=%d, ", sg_io->resid);
- tprintf("duration=%d, ", sg_io->duration);
- tprintf("info=%#x}", sg_io->info);
+
+ if (sg_io.dxfer_direction == SG_DXFER_FROM_DEV ||
+ sg_io.dxfer_direction == SG_DXFER_TO_FROM_DEV) {
+ uint32_t din_len = sg_io.dxfer_len;
+
+ if (sg_io.resid > 0)
+ din_len -= sg_io.resid;
+ tprintf(", data[%u]=", din_len);
+ if (sg_io.iovec_count)
+ tprint_iov_upto(tcp, sg_io.iovec_count,
+ (unsigned long) sg_io.dxferp, 1,
+ din_len);
+ else
+ print_sg_io_buffer(tcp, (unsigned long) sg_io.dxferp,
+ din_len);
+ }
+ tprintf(", status=%02x", sg_io.status);
+ tprintf(", masked_status=%02x", sg_io.masked_status);
+ tprintf(", sb[%u]=", sg_io.sb_len_wr);
+ print_sg_io_buffer(tcp, (unsigned long) sg_io.sbp, sg_io.sb_len_wr);
+ tprintf(", host_status=%#x", sg_io.host_status);
+ tprintf(", driver_status=%#x", sg_io.driver_status);
+ tprintf(", resid=%d", sg_io.resid);
+ tprintf(", duration=%d", sg_io.duration);
+ tprintf(", info=%#x", sg_io.info);
+}
+
+#ifdef HAVE_LINUX_BSG_H
+
+static void
+print_sg_io_v4_req(struct tcb *tcp, long arg)
+{
+ struct sg_io_v4 sg_io;
+
+ if (umove(tcp, arg, &sg_io) < 0) {
+ tprintf(", %#lx", arg);
+ return;
+ }
+
+ tprints(", ");
+ printxval(bsg_protocol, sg_io.protocol, "BSG_PROTOCOL_???");
+ tprints(", ");
+ printxval(bsg_subprotocol, sg_io.subprotocol, "BSG_SUB_PROTOCOL_???");
+ tprintf(", request[%u]=", sg_io.request_len);
+ print_sg_io_buffer(tcp, sg_io.request, sg_io.request_len);
+ tprintf(", request_tag=%llu", (unsigned long long) sg_io.request_tag);
+ tprintf(", request_attr=%u", sg_io.request_attr);
+ tprintf(", request_priority=%u", sg_io.request_priority);
+ tprintf(", request_extra=%u", sg_io.request_extra);
+ tprintf(", max_response_len=%u", sg_io.max_response_len);
+
+ tprintf(", dout_iovec_count=%u", sg_io.dout_iovec_count);
+ tprintf(", dout_xfer_len=%u", sg_io.dout_xfer_len);
+ tprintf(", din_iovec_count=%u", sg_io.din_iovec_count);
+ tprintf(", din_xfer_len=%u", sg_io.din_xfer_len);
+ tprintf(", timeout=%u", sg_io.timeout);
+ tprintf(", flags=%u", sg_io.flags);
+ tprintf(", usr_ptr=%llu", (unsigned long long) sg_io.usr_ptr);
+ tprintf(", spare_in=%u", sg_io.spare_in);
+ tprintf(", dout[%u]=", sg_io.dout_xfer_len);
+ if (sg_io.dout_iovec_count)
+ tprint_iov_upto(tcp, sg_io.dout_iovec_count, sg_io.dout_xferp,
+ 1, sg_io.dout_xfer_len);
+ else
+ print_sg_io_buffer(tcp, sg_io.dout_xferp, sg_io.dout_xfer_len);
+}
+
+static void
+print_sg_io_v4_res(struct tcb *tcp, long arg)
+{
+ struct sg_io_v4 sg_io;
+ uint32_t din_len;
+
+ if (umove(tcp, arg, &sg_io) < 0) {
+ tprintf(", %#lx", arg);
+ return;
+ }
+
+ tprintf(", response[%u]=", sg_io.response_len);
+ print_sg_io_buffer(tcp, sg_io.response, sg_io.response_len);
+ din_len = sg_io.din_xfer_len;
+ if (sg_io.din_resid > 0)
+ din_len -= sg_io.din_resid;
+ tprintf(", din[%u]=", din_len);
+ if (sg_io.din_iovec_count)
+ tprint_iov_upto(tcp, sg_io.din_iovec_count, sg_io.din_xferp,
+ 1, din_len);
+ else
+ print_sg_io_buffer(tcp, sg_io.din_xferp, din_len);
+ tprintf(", driver_status=%u", sg_io.driver_status);
+ tprintf(", transport_status=%u", sg_io.transport_status);
+ tprintf(", device_status=%u", sg_io.device_status);
+ tprintf(", retry_delay=%u", sg_io.retry_delay);
+ tprintf(", info=%u", sg_io.info);
+ tprintf(", duration=%u", sg_io.duration);
+ tprintf(", response_len=%u", sg_io.response_len);
+ tprintf(", din_resid=%u", sg_io.din_resid);
+ tprintf(", dout_resid=%u", sg_io.dout_resid);
+ tprintf(", generated_tag=%llu", (unsigned long long) sg_io.generated_tag);
+ tprintf(", spare_out=%u", sg_io.spare_out);
+}
+
+#else /* !HAVE_LINUX_BSG_H */
+
+static void
+print_sg_io_v4_req(struct tcb *tcp, long arg)
+{
+ tprintf(", %#lx", arg);
+}
+
+static void
+print_sg_io_v4_res(struct tcb *tcp, long arg)
+{
+}
+
+#endif
+
+static void
+print_sg_io_req(struct tcb *tcp, uint32_t iid, long arg)
+{
+ tprintf("{'%c'", iid);
+
+ switch (iid) {
+ case 'S':
+ print_sg_io_v3_req(tcp, arg);
+ break;
+ case 'Q':
+ print_sg_io_v4_req(tcp, arg);
+ break;
+ default:
+ tprints(", ...");
+ }
+
+}
+
+static void
+print_sg_io_res(struct tcb *tcp, uint32_t iid, long arg)
+{
+ if (!syserror(tcp)) {
+ switch (iid) {
+ case 'S':
+ print_sg_io_v3_res(tcp, arg);
+ break;
+ case 'Q':
+ print_sg_io_v4_res(tcp, arg);
+ break;
+ }
+ }
+
+ tprintf("}");
}
int
-scsi_ioctl(struct tcb *tcp, long code, long arg)
+scsi_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
+ uint32_t iid;
+
switch (code) {
case SG_IO:
if (entering(tcp)) {
- struct sg_io_hdr sg_io;
-
- if (umove(tcp, arg, &sg_io) < 0)
- tprintf(", %#lx", arg);
- else {
- tprints(", ");
- print_sg_io_req(tcp, &sg_io);
- }
- }
- if (exiting(tcp)) {
- struct sg_io_hdr sg_io;
-
- if (!syserror(tcp) && umove(tcp, arg, &sg_io) >= 0)
- print_sg_io_res(tcp, &sg_io);
+ tprints(", ");
+ if (umove(tcp, arg, &iid) < 0)
+ tprintf("%#lx", arg);
else
- tprints("}");
+ print_sg_io_req(tcp, iid, arg);
+ } else {
+ if (umove(tcp, arg, &iid) >= 0)
+ print_sg_io_res(tcp, iid, arg);
}
break;
default:
diff --git a/seccomp.c b/seccomp.c
new file mode 100644
index 0000000..9939c11
--- /dev/null
+++ b/seccomp.c
@@ -0,0 +1,253 @@
+/*
+ * Copyright (c) 2015 Dmitry V. Levin <ldv@altlinux.org>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "defs.h"
+
+#ifdef HAVE_LINUX_SECCOMP_H
+# include <linux/seccomp.h>
+#endif
+#include "xlat/seccomp_ops.h"
+#include "xlat/seccomp_filter_flags.h"
+
+#ifdef HAVE_LINUX_FILTER_H
+# include <linux/filter.h>
+# include "xlat/bpf_class.h"
+# include "xlat/bpf_miscop.h"
+# include "xlat/bpf_mode.h"
+# include "xlat/bpf_op_alu.h"
+# include "xlat/bpf_op_jmp.h"
+# include "xlat/bpf_rval.h"
+# include "xlat/bpf_size.h"
+# include "xlat/bpf_src.h"
+
+# ifndef SECCOMP_RET_ACTION
+# define SECCOMP_RET_ACTION 0x7fff0000U
+# endif
+# include "xlat/seccomp_ret_action.h"
+#endif
+
+struct bpf_filter {
+ uint16_t code;
+ uint8_t jt;
+ uint8_t jf;
+ uint32_t k;
+};
+
+#ifdef HAVE_LINUX_FILTER_H
+
+static void
+decode_bpf_code(uint16_t code)
+{
+ uint16_t i = code & ~BPF_CLASS(code);
+
+ printxval(bpf_class, BPF_CLASS(code), "BPF_???");
+ switch (BPF_CLASS(code)) {
+ case BPF_LD:
+ case BPF_LDX:
+ tprints(" | ");
+ printxval(bpf_size, BPF_SIZE(code), "BPF_???");
+ tprints(" | ");
+ printxval(bpf_mode, BPF_MODE(code), "BPF_???");
+ break;
+ case BPF_ST:
+ case BPF_STX:
+ if (i)
+ tprintf(" | %#x /* %s */", i, "BPF_???");
+ break;
+ case BPF_ALU:
+ tprints(" | ");
+ printxval(bpf_src, BPF_SRC(code), "BPF_???");
+ tprints(" | ");
+ printxval(bpf_op_alu, BPF_OP(code), "BPF_???");
+ break;
+ case BPF_JMP:
+ tprints(" | ");
+ printxval(bpf_src, BPF_SRC(code), "BPF_???");
+ tprints(" | ");
+ printxval(bpf_op_jmp, BPF_OP(code), "BPF_???");
+ break;
+ case BPF_RET:
+ tprints(" | ");
+ printxval(bpf_rval, BPF_RVAL(code), "BPF_???");
+ i &= ~BPF_RVAL(code);
+ if (i)
+ tprintf(" | %#x /* %s */", i, "BPF_???");
+ break;
+ case BPF_MISC:
+ tprints(" | ");
+ printxval(bpf_miscop, BPF_MISCOP(code), "BPF_???");
+ i &= ~BPF_MISCOP(code);
+ if (i)
+ tprintf(" | %#x /* %s */", i, "BPF_???");
+ break;
+ }
+
+}
+
+static void
+decode_bpf_stmt(const struct bpf_filter *filter)
+{
+#ifdef HAVE_LINUX_FILTER_H
+ tprints("BPF_STMT(");
+ decode_bpf_code(filter->code);
+ tprints(", ");
+ if (BPF_CLASS(filter->code) == BPF_RET) {
+ unsigned int action = SECCOMP_RET_ACTION & filter->k;
+ unsigned int data = filter->k & ~action;
+
+ printxval(seccomp_ret_action, action, "SECCOMP_RET_???");
+ if (data)
+ tprintf(" | %#x)", data);
+ else
+ tprints(")");
+ } else {
+ tprintf("%#x)", filter->k);
+ }
+#else
+ tprintf("BPF_STMT(%#x, %#x)", filter->code, filter->k);
+#endif /* HAVE_LINUX_FILTER_H */
+}
+
+static void
+decode_bpf_jump(const struct bpf_filter *filter)
+{
+#ifdef HAVE_LINUX_FILTER_H
+ tprints("BPF_JUMP(");
+ decode_bpf_code(filter->code);
+ tprintf(", %#x, %#x, %#x)",
+ filter->k, filter->jt, filter->jf);
+#else
+ tprintf("BPF_JUMP(%#x, %#x, %#x, %#x)",
+ filter->code, filter->k, filter->jt, filter->jf);
+#endif /* HAVE_LINUX_FILTER_H */
+}
+
+static void
+decode_filter(const struct bpf_filter *filter)
+{
+ if (filter->jt || filter->jf)
+ decode_bpf_jump(filter);
+ else
+ decode_bpf_stmt(filter);
+}
+
+#endif /* HAVE_LINUX_FILTER_H */
+
+#ifndef BPF_MAXINSNS
+# define BPF_MAXINSNS 4096
+#endif
+
+static void
+decode_fprog(struct tcb *tcp, unsigned short len, unsigned long addr)
+{
+ if (!len || abbrev(tcp)) {
+ tprintf("{len = %u, filter = %#lx}", len, addr);
+ } else {
+ unsigned int i = 0;
+
+ tprints("[");
+ while (i < len && i < BPF_MAXINSNS) {
+ struct bpf_filter filter;
+
+ if (umove(tcp, addr, &filter) < 0)
+ break;
+ if (i)
+ tprints(", ");
+ decode_filter(&filter);
+
+ addr += sizeof(filter);
+ ++i;
+ }
+ if (i < len)
+ tprints("...");
+ tprints("]");
+ }
+}
+
+void
+print_seccomp_filter(struct tcb *tcp, unsigned long addr)
+{
+ if (addr) {
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ if (current_wordsize == 4) {
+ struct {
+ unsigned short len;
+ uint32_t filter;
+ } fprog;
+ if (umove(tcp, addr, &fprog) < 0)
+ tprintf("%#lx", addr);
+ else
+ decode_fprog(tcp, fprog.len, fprog.filter);
+ } else {
+#endif
+ struct {
+ unsigned short len;
+ unsigned long filter;
+ } fprog;
+ if (umove(tcp, addr, &fprog) < 0)
+ tprintf("%#lx", addr);
+ else
+ decode_fprog(tcp, fprog.len, fprog.filter);
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ }
+#endif
+ } else {
+ tprints("NULL");
+ }
+}
+
+static void
+decode_seccomp_set_mode_strict(unsigned int flags, unsigned long addr)
+{
+ tprintf("%u, ", flags);
+ if (addr)
+ tprintf("%#lx", addr);
+ else
+ tprints("NULL");
+}
+
+int
+sys_seccomp(struct tcb *tcp)
+{
+ if (entering(tcp)) {
+ unsigned int op = tcp->u_arg[0];
+
+ printxval(seccomp_ops, op, "SECCOMP_SET_MODE_???");
+ tprints(", ");
+
+ if (op == SECCOMP_SET_MODE_FILTER) {
+ printflags(seccomp_filter_flags, tcp->u_arg[1],
+ "SECCOMP_FILTER_FLAG_???");
+ tprints(", ");
+ print_seccomp_filter(tcp, tcp->u_arg[2]);
+ } else {
+ decode_seccomp_set_mode_strict(tcp->u_arg[1],
+ tcp->u_arg[2]);
+ }
+ }
+ return 0;
+}
diff --git a/signal.c b/signal.c
index 6f00fc0..867e156 100644
--- a/signal.c
+++ b/signal.c
@@ -32,68 +32,14 @@
*/
#include "defs.h"
-#include <sys/user.h>
-#include <fcntl.h>
-
-#ifdef HAVE_SYS_REG_H
-# include <sys/reg.h>
-#endif
-
-#ifdef HAVE_LINUX_PTRACE_H
-# undef PTRACE_SYSCALL
-# ifdef HAVE_STRUCT_IA64_FPREG
-# define ia64_fpreg XXX_ia64_fpreg
-# endif
-# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
-# define pt_all_user_regs XXX_pt_all_user_regs
-# endif
-# ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
-# define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args
-# endif
-# include <linux/ptrace.h>
-# undef ptrace_peeksiginfo_args
-# undef ia64_fpreg
-# undef pt_all_user_regs
-#endif
-
-#ifdef IA64
-# include <asm/ptrace_offsets.h>
-#endif
-
-#if defined(SPARC) || defined(SPARC64) || defined(MIPS)
-typedef struct {
- struct pt_regs si_regs;
- int si_mask;
-} m_siginfo_t;
-#elif defined HAVE_ASM_SIGCONTEXT_H
-# if !defined(IA64) && !defined(X86_64) && !defined(X32)
-# include <asm/sigcontext.h>
-# endif
-#else /* !HAVE_ASM_SIGCONTEXT_H */
-# if defined M68K && !defined HAVE_STRUCT_SIGCONTEXT
-struct sigcontext {
- unsigned long sc_mask;
- unsigned long sc_usp;
- unsigned long sc_d0;
- unsigned long sc_d1;
- unsigned long sc_a0;
- unsigned long sc_a1;
- unsigned short sc_sr;
- unsigned long sc_pc;
- unsigned short sc_formatvec;
-};
-# endif /* M68K */
-#endif /* !HAVE_ASM_SIGCONTEXT_H */
#ifndef NSIG
-# warning: NSIG is not defined, using 32
+# warning NSIG is not defined, using 32
# define NSIG 32
#elif NSIG < 32
-# error: NSIG < 32
+# error NSIG < 32
#endif
-#ifdef HAVE_SIGACTION
-
/* The libc headers do not define this constant since it should only be
used by the implementation. So we define it here. */
#ifndef SA_RESTORER
@@ -102,25 +48,46 @@
# endif
#endif
-/* Some arches define this in their headers, but don't actually have it,
- so we have to delete the define. */
-#if defined(HPPA) || defined(IA64)
-# undef SA_RESTORER
+/*
+ * Some architectures define SA_RESTORER in their headers,
+ * but do not actually have sa_restorer.
+ *
+ * Some architectures, otherwise, do not define SA_RESTORER in their headers,
+ * but actually have sa_restorer.
+ */
+#ifdef SA_RESTORER
+# if defined HPPA || defined IA64
+# define HAVE_SA_RESTORER 0
+# else
+# define HAVE_SA_RESTORER 1
+# endif
+#else /* !SA_RESTORER */
+# if defined SPARC || defined SPARC64 || defined M68K
+# define HAVE_SA_RESTORER 1
+# else
+# define HAVE_SA_RESTORER 0
+# endif
#endif
#include "xlat/sigact_flags.h"
#include "xlat/sigprocmaskcmds.h"
-#endif /* HAVE_SIGACTION */
-
/* Anonymous realtime signals. */
-/* Under glibc 2.1, SIGRTMIN et al are functions, but __SIGRTMIN is a
- constant. This is what we want. Otherwise, just use SIGRTMIN. */
-#ifdef SIGRTMIN
-#ifndef __SIGRTMIN
-#define __SIGRTMIN SIGRTMIN
-#define __SIGRTMAX SIGRTMAX /* likewise */
+#ifndef ASM_SIGRTMIN
+/* Linux kernel >= 3.18 defines SIGRTMIN to 32 on all architectures. */
+# define ASM_SIGRTMIN 32
#endif
+#ifndef ASM_SIGRTMAX
+/* Under glibc 2.1, SIGRTMAX et al are functions, but __SIGRTMAX is a
+ constant. This is what we want. Otherwise, just use SIGRTMAX. */
+# ifdef SIGRTMAX
+# ifndef __SIGRTMAX
+# define __SIGRTMAX SIGRTMAX
+# endif
+# endif
+# ifdef __SIGRTMAX
+# define ASM_SIGRTMAX __SIGRTMAX
+# endif
#endif
/* Note on the size of sigset_t:
@@ -155,9 +122,9 @@
if (s < nsignals)
return signalent[s];
-#ifdef SIGRTMIN
- if (s >= __SIGRTMIN && s <= __SIGRTMAX) {
- sprintf(buf, "SIGRT_%u", s - __SIGRTMIN);
+#ifdef ASM_SIGRTMAX
+ if (s >= ASM_SIGRTMIN && s <= ASM_SIGRTMAX) {
+ sprintf(buf, "SIGRT_%u", s - ASM_SIGRTMIN);
return buf;
}
#endif
@@ -185,7 +152,7 @@
return count;
}
-static const char *
+const char *
sprintsigmask_n(const char *prefix, const void *sig_mask, unsigned int bytes)
{
/*
@@ -226,9 +193,9 @@
if ((unsigned) i < nsignals) {
s = stpcpy(s, signalent[i] + 3);
}
-#ifdef SIGRTMIN
- else if (i >= __SIGRTMIN && i <= __SIGRTMAX) {
- s += sprintf(s, "RT_%u", i - __SIGRTMIN);
+#ifdef ASM_SIGRTMAX
+ else if (i >= ASM_SIGRTMIN && i <= ASM_SIGRTMAX) {
+ s += sprintf(s, "RT_%u", i - ASM_SIGRTMIN);
}
#endif
else {
@@ -243,9 +210,6 @@
return outstr;
}
-#define tprintsigmask_addr(prefix, mask) \
- tprints(sprintsigmask_n((prefix), (mask), sizeof(mask)))
-
#define sprintsigmask_val(prefix, mask) \
sprintsigmask_n((prefix), &(mask), sizeof(mask))
@@ -378,7 +342,7 @@
}
void
-printsiginfo(siginfo_t *sip, int verbose)
+printsiginfo(const siginfo_t *sip, int verbose)
{
const char *code;
@@ -434,11 +398,12 @@
#endif
{
if (sip->si_errno) {
- if (sip->si_errno < 0 || (unsigned) sip->si_errno >= nerrnos)
- tprintf(", si_errno=%d", sip->si_errno);
+ tprints(", si_errno=");
+ if ((unsigned) sip->si_errno < nerrnos
+ && errnoent[sip->si_errno])
+ tprints(errnoent[sip->si_errno]);
else
- tprintf(", si_errno=%s",
- errnoent[sip->si_errno]);
+ tprintf("%d", sip->si_errno);
}
#ifdef SI_FROMUSER
if (SI_FROMUSER(sip)) {
@@ -453,7 +418,8 @@
printsigsource(sip);
break;
#endif
-#ifdef SI_TIMER
+#if defined SI_TIMER \
+ && defined HAVE_SIGINFO_T_SI_TIMERID && defined HAVE_SIGINFO_T_SI_OVERRUN
case SI_TIMER:
tprintf(", si_timerid=%#x, si_overrun=%d",
sip->si_timerid, sip->si_overrun);
@@ -562,7 +528,7 @@
unsigned long sa_mask;
unsigned long sa_flags;
#endif /* !MIPS */
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER
void (*sa_restorer)(void);
#endif
};
@@ -572,7 +538,7 @@
uint32_t __sa_handler;
uint32_t sa_mask;
uint32_t sa_flags;
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER
uint32_t sa_restorer;
#endif
};
@@ -600,7 +566,7 @@
memset(&sa, 0, sizeof(sa));
sa.__sa_handler = (void*)(uintptr_t)sa32.__sa_handler;
sa.sa_flags = sa32.sa_flags;
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER && defined SA_RESTORER
sa.sa_restorer = (void*)(uintptr_t)sa32.sa_restorer;
#endif
sa.sa_mask = sa32.sa_mask;
@@ -638,7 +604,7 @@
#endif
tprints(", ");
printflags(sigact_flags, sa.sa_flags, "SA_???");
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER && defined SA_RESTORER
if (sa.sa_flags & SA_RESTORER)
tprintf(", %p", sa.sa_restorer);
#endif
@@ -698,266 +664,6 @@
#endif /* HAVE_SIGACTION */
int
-sys_sigreturn(struct tcb *tcp)
-{
-#if defined(ARM)
- if (entering(tcp)) {
- struct arm_sigcontext {
- unsigned long trap_no;
- unsigned long error_code;
- unsigned long oldmask;
- unsigned long arm_r0;
- unsigned long arm_r1;
- unsigned long arm_r2;
- unsigned long arm_r3;
- unsigned long arm_r4;
- unsigned long arm_r5;
- unsigned long arm_r6;
- unsigned long arm_r7;
- unsigned long arm_r8;
- unsigned long arm_r9;
- unsigned long arm_r10;
- unsigned long arm_fp;
- unsigned long arm_ip;
- unsigned long arm_sp;
- unsigned long arm_lr;
- unsigned long arm_pc;
- unsigned long arm_cpsr;
- unsigned long fault_address;
- };
- struct arm_ucontext {
- unsigned long uc_flags;
- unsigned long uc_link; /* struct ucontext* */
- /* The next three members comprise stack_t struct: */
- unsigned long ss_sp; /* void* */
- unsigned long ss_flags; /* int */
- unsigned long ss_size; /* size_t */
- struct arm_sigcontext sc;
- /* These two members are sigset_t: */
- unsigned long uc_sigmask[2];
- /* more fields follow, which we aren't interested in */
- };
- struct arm_ucontext uc;
- if (umove(tcp, arm_regs.ARM_sp, &uc) < 0)
- return 0;
- /*
- * Kernel fills out uc.sc.oldmask too when it sets up signal stack,
- * but for sigmask restore, sigreturn syscall uses uc.uc_sigmask instead.
- */
- tprintsigmask_addr(") (mask ", uc.uc_sigmask);
- }
-#elif defined(S390) || defined(S390X)
- if (entering(tcp)) {
- long usp;
- struct sigcontext sc;
- if (upeek(tcp->pid, PT_GPR15, &usp) < 0)
- return 0;
- if (umove(tcp, usp + __SIGNAL_FRAMESIZE, &sc) < 0)
- return 0;
- tprintsigmask_addr(") (mask ", sc.oldmask);
- }
-#elif defined(I386) || defined(X86_64)
-# if defined(X86_64)
- if (current_personality == 0) /* 64-bit */
- return 0;
-# endif
- if (entering(tcp)) {
- struct i386_sigcontext_struct {
- uint16_t gs, __gsh;
- uint16_t fs, __fsh;
- uint16_t es, __esh;
- uint16_t ds, __dsh;
- uint32_t edi;
- uint32_t esi;
- uint32_t ebp;
- uint32_t esp;
- uint32_t ebx;
- uint32_t edx;
- uint32_t ecx;
- uint32_t eax;
- uint32_t trapno;
- uint32_t err;
- uint32_t eip;
- uint16_t cs, __csh;
- uint32_t eflags;
- uint32_t esp_at_signal;
- uint16_t ss, __ssh;
- uint32_t i387;
- uint32_t oldmask;
- uint32_t cr2;
- };
- struct i386_fpstate {
- uint32_t cw;
- uint32_t sw;
- uint32_t tag;
- uint32_t ipoff;
- uint32_t cssel;
- uint32_t dataoff;
- uint32_t datasel;
- uint8_t st[8][10]; /* 8*10 bytes: FP regs */
- uint16_t status;
- uint16_t magic;
- uint32_t fxsr_env[6];
- uint32_t mxcsr;
- uint32_t reserved;
- uint8_t stx[8][16]; /* 8*16 bytes: FP regs, each padded to 16 bytes */
- uint8_t xmm[8][16]; /* 8 XMM regs */
- uint32_t padding1[44];
- uint32_t padding2[12]; /* union with struct _fpx_sw_bytes */
- };
- struct {
- struct i386_sigcontext_struct sc;
- struct i386_fpstate fp;
- uint32_t extramask[1];
- } signal_stack;
- /* On i386, sc is followed on stack by struct fpstate
- * and after it an additional u32 extramask[1] which holds
- * upper half of the mask.
- */
- uint32_t sigmask[2];
- if (umove(tcp, *i386_esp_ptr, &signal_stack) < 0)
- return 0;
- sigmask[0] = signal_stack.sc.oldmask;
- sigmask[1] = signal_stack.extramask[0];
- tprintsigmask_addr(") (mask ", sigmask);
- }
-#elif defined(IA64)
- if (entering(tcp)) {
- struct sigcontext sc;
- long sp;
- /* offset of sigcontext in the kernel's sigframe structure: */
-# define SIGFRAME_SC_OFFSET 0x90
- if (upeek(tcp->pid, PT_R12, &sp) < 0)
- return 0;
- if (umove(tcp, sp + 16 + SIGFRAME_SC_OFFSET, &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.sc_mask);
- }
-#elif defined(POWERPC)
- if (entering(tcp)) {
- long esp;
- struct sigcontext sc;
-
- esp = ppc_regs.gpr[1];
-
- /* Skip dummy stack frame. */
-#ifdef POWERPC64
- if (current_personality == 0)
- esp += 128;
- else
- esp += 64;
-#else
- esp += 64;
-#endif
- if (umove(tcp, esp, &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.oldmask);
- }
-#elif defined(M68K)
- if (entering(tcp)) {
- long usp;
- struct sigcontext sc;
- if (upeek(tcp->pid, 4*PT_USP, &usp) < 0)
- return 0;
- if (umove(tcp, usp, &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.sc_mask);
- }
-#elif defined(ALPHA)
- if (entering(tcp)) {
- long fp;
- struct sigcontext sc;
- if (upeek(tcp->pid, REG_FP, &fp) < 0)
- return 0;
- if (umove(tcp, fp, &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.sc_mask);
- }
-#elif defined(SPARC) || defined(SPARC64)
- if (entering(tcp)) {
- long i1;
- m_siginfo_t si;
- i1 = sparc_regs.u_regs[U_REG_O1];
- if (umove(tcp, i1, &si) < 0) {
- perror_msg("sigreturn: umove");
- return 0;
- }
- tprintsigmask_val(") (mask ", si.si_mask);
- }
-#elif defined(LINUX_MIPSN32) || defined(LINUX_MIPSN64)
- /* This decodes rt_sigreturn. The 64-bit ABIs do not have
- sigreturn. */
- if (entering(tcp)) {
- long sp;
- struct ucontext uc;
- if (upeek(tcp->pid, REG_SP, &sp) < 0)
- return 0;
- /* There are six words followed by a 128-byte siginfo. */
- sp = sp + 6 * 4 + 128;
- if (umove(tcp, sp, &uc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", uc.uc_sigmask);
- }
-#elif defined(MIPS)
- if (entering(tcp)) {
- long sp;
- struct pt_regs regs;
- m_siginfo_t si;
- if (ptrace(PTRACE_GETREGS, tcp->pid, (char *)®s, 0) < 0) {
- perror_msg("sigreturn: PTRACE_GETREGS");
- return 0;
- }
- sp = regs.regs[29];
- if (umove(tcp, sp, &si) < 0)
- return 0;
- tprintsigmask_val(") (mask ", si.si_mask);
- }
-#elif defined(CRISV10) || defined(CRISV32)
- if (entering(tcp)) {
- struct sigcontext sc;
- long regs[PT_MAX+1];
- if (ptrace(PTRACE_GETREGS, tcp->pid, NULL, (long)regs) < 0) {
- perror_msg("sigreturn: PTRACE_GETREGS");
- return 0;
- }
- if (umove(tcp, regs[PT_USP], &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.oldmask);
- }
-#elif defined(TILE)
- if (entering(tcp)) {
- struct ucontext uc;
-
- /* offset of ucontext in the kernel's sigframe structure */
-# define SIGFRAME_UC_OFFSET C_ABI_SAVE_AREA_SIZE + sizeof(siginfo_t)
- if (umove(tcp, tile_regs.sp + SIGFRAME_UC_OFFSET, &uc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", uc.uc_sigmask);
- }
-#elif defined(MICROBLAZE)
- /* TODO: Verify that this is correct... */
- if (entering(tcp)) {
- struct sigcontext sc;
- long sp;
- /* Read r1, the stack pointer. */
- if (upeek(tcp->pid, 1 * 4, &sp) < 0)
- return 0;
- if (umove(tcp, sp, &sc) < 0)
- return 0;
- tprintsigmask_val(") (mask ", sc.oldmask);
- }
-#elif defined(XTENSA)
- /* Xtensa only has rt_sys_sigreturn */
-#elif defined(ARC)
- /* ARC syscall ABI only supports rt_sys_sigreturn */
-#else
-# warning No sys_sigreturn() for this architecture
-# warning (no problem, just a reminder :-)
-#endif
- return 0;
-}
-
-int
sys_siggetmask(struct tcb *tcp)
{
if (exiting(tcp)) {
@@ -1147,7 +853,7 @@
void (*__sa_handler)(int);
unsigned long sa_flags;
#endif /* !MIPS */
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER
void (*sa_restorer)(void);
#endif
/* Kernel treats sa_mask as an array of longs. */
@@ -1158,7 +864,7 @@
{
uint32_t __sa_handler;
uint32_t sa_flags;
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER
uint32_t sa_restorer;
#endif
uint32_t sa_mask[2 * (NSIG / sizeof(long) ? NSIG / sizeof(long) : 1)];
@@ -1186,7 +892,7 @@
memset(&sa, 0, sizeof(sa));
sa.__sa_handler = (void*)(unsigned long)sa32.__sa_handler;
sa.sa_flags = sa32.sa_flags;
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER && defined SA_RESTORER
sa.sa_restorer = (void*)(unsigned long)sa32.sa_restorer;
#endif
/* Kernel treats sa_mask as an array of longs.
@@ -1235,7 +941,7 @@
tprints(", ");
printflags(sigact_flags, sa.sa_flags, "SA_???");
-#ifdef SA_RESTORER
+#if HAVE_SA_RESTORER && defined SA_RESTORER
if (sa.sa_flags & SA_RESTORER)
tprintf(", %p", sa.sa_restorer);
#endif
diff --git a/sigreturn.c b/sigreturn.c
new file mode 100644
index 0000000..365ef1a
--- /dev/null
+++ b/sigreturn.c
@@ -0,0 +1,243 @@
+#include "defs.h"
+#include "regs.h"
+#include "ptrace.h"
+
+#if defined HAVE_ASM_SIGCONTEXT_H && !defined HAVE_STRUCT_SIGCONTEXT
+# include <asm/sigcontext.h>
+#endif
+
+#ifndef NSIG
+# warning NSIG is not defined, using 32
+# define NSIG 32
+#elif NSIG < 32
+# error NSIG < 32
+#endif
+
+int
+sys_sigreturn(struct tcb *tcp)
+{
+#if defined AARCH64 || defined ARM
+ if (entering(tcp)) {
+# define SIZEOF_STRUCT_SIGINFO 128
+# define SIZEOF_STRUCT_SIGCONTEXT (21 * 4)
+# define OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK (5 * 4 + SIZEOF_STRUCT_SIGCONTEXT)
+ const long addr =
+# ifdef AARCH64
+ current_personality == 1 ?
+ (*aarch64_sp_ptr + SIZEOF_STRUCT_SIGINFO +
+ offsetof(struct ucontext, uc_sigmask)) :
+# endif
+ (*arm_sp_ptr +
+ OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(S390) || defined(S390X)
+ if (entering(tcp)) {
+ long mask[NSIG / 8 / sizeof(long)];
+ tprints("{mask=");
+ const long addr = *s390_frame_ptr + __SIGNAL_FRAMESIZE;
+ if (umove(tcp, addr, &mask) < 0) {
+ tprintf("%#lx", addr);
+ } else {
+# ifdef S390
+ long v = mask[0];
+ mask[0] = mask[1];
+ mask[1] = v;
+# endif
+ tprintsigmask_addr("", mask);
+ }
+ tprints("}");
+ }
+#elif defined I386 || defined X86_64 || defined X32
+ if (entering(tcp)) {
+# ifndef I386
+ if (current_personality != 1) {
+ const unsigned long addr =
+ (unsigned long) *x86_64_rsp_ptr +
+ offsetof(struct ucontext, uc_sigmask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ return 0;
+ }
+# endif
+ /*
+ * On i386, sigcontext is followed on stack by struct fpstate
+ * and after it an additional u32 extramask which holds
+ * upper half of the mask.
+ */
+ struct {
+ uint32_t struct_sigcontext_padding1[20];
+ uint32_t oldmask;
+ uint32_t struct_sigcontext_padding2;
+ uint32_t struct_fpstate_padding[156];
+ uint32_t extramask;
+ } frame;
+ tprints("{mask=");
+ if (umove(tcp, *i386_esp_ptr, &frame) < 0) {
+ tprintf("%#lx", (unsigned long) *i386_esp_ptr);
+ } else {
+ uint32_t mask[2] = { frame.oldmask, frame.extramask };
+ tprintsigmask_addr("", mask);
+ }
+ tprints("}");
+ }
+#elif defined(IA64)
+ if (entering(tcp)) {
+ /* offsetof(struct sigframe, sc) */
+# define OFFSETOF_STRUCT_SIGFRAME_SC 0xA0
+ const long addr = *ia64_frame_ptr + 16 +
+ OFFSETOF_STRUCT_SIGFRAME_SC +
+ offsetof(struct sigcontext, sc_mask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(POWERPC)
+ if (entering(tcp)) {
+ long esp = ppc_regs.gpr[1];
+ struct sigcontext sc;
+
+ /* Skip dummy stack frame. */
+#ifdef POWERPC64
+ if (current_personality == 0)
+ esp += 128;
+ else
+#endif
+ esp += 64;
+
+ tprints("{mask=");
+ if (umove(tcp, esp, &sc) < 0) {
+ tprintf("%#lx", esp);
+ } else {
+ unsigned long mask[NSIG / 8 / sizeof(long)];
+#ifdef POWERPC64
+ mask[0] = sc.oldmask | (sc._unused[3] << 32);
+#else
+ mask[0] = sc.oldmask;
+ mask[1] = sc._unused[3];
+#endif
+ tprintsigmask_addr("", mask);
+ }
+ tprints("}");
+ }
+#elif defined(M68K)
+ if (entering(tcp)) {
+ long addr;
+ if (upeek(tcp->pid, 4*PT_USP, &addr) < 0)
+ return 0;
+ /* Fetch pointer to struct sigcontext. */
+ if (umove(tcp, addr + 2 * sizeof(int), &addr) < 0)
+ return 0;
+ unsigned long mask[NSIG / 8 / sizeof(long)];
+ /* Fetch first word of signal mask. */
+ if (umove(tcp, addr, &mask[0]) < 0)
+ return 0;
+ /* Fetch remaining words of signal mask, located
+ immediately before. */
+ addr -= sizeof(mask) - sizeof(long);
+ if (umoven(tcp, addr, sizeof(mask) - sizeof(long), (char *) &mask[1]) < 0)
+ return 0;
+ tprints("{mask=");
+ tprintsigmask_addr("", mask);
+ tprints("}");
+ }
+#elif defined(ALPHA)
+ if (entering(tcp)) {
+ long addr;
+ if (upeek(tcp->pid, REG_FP, &addr) < 0)
+ return 0;
+ addr += offsetof(struct sigcontext, sc_mask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(SPARC) || defined(SPARC64)
+ if (entering(tcp)) {
+ long fp = sparc_regs.u_regs[U_REG_FP] + sizeof(struct sparc_stackf);
+ struct {
+ struct pt_regs si_regs;
+ int si_mask;
+ void *fpu_save;
+ long insns[2] __attribute__ ((aligned (8)));
+ unsigned int extramask[NSIG / 8 / sizeof(int) - 1];
+ } frame;
+
+ tprints("{mask=");
+ if (umove(tcp, fp, &frame) < 0) {
+ tprintf("%#lx", fp);
+ } else {
+ unsigned int mask[NSIG / 8 / sizeof(int)];
+
+ mask[0] = frame.si_mask;
+ memcpy(mask + 1, frame.extramask, sizeof(frame.extramask));
+ tprintsigmask_addr("", mask);
+ }
+ tprints("}");
+ }
+#elif defined MIPS
+ if (entering(tcp)) {
+# if defined LINUX_MIPSO32
+ /*
+ * offsetof(struct sigframe, sf_mask) ==
+ * sizeof(sf_ass) + sizeof(sf_pad) + sizeof(struct sigcontext)
+ */
+ const long addr = mips_REG_SP + 6 * 4 +
+ sizeof(struct sigcontext);
+# else
+ /*
+ * This decodes rt_sigreturn.
+ * The 64-bit ABIs do not have sigreturn.
+ *
+ * offsetof(struct rt_sigframe, rs_uc) ==
+ * sizeof(sf_ass) + sizeof(sf_pad) + sizeof(struct siginfo)
+ */
+ const long addr = mips_REG_SP + 6 * 4 + 128 +
+ offsetof(struct ucontext, uc_sigmask);
+# endif
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(CRISV10) || defined(CRISV32)
+ if (entering(tcp)) {
+ long regs[PT_MAX+1];
+ if (ptrace(PTRACE_GETREGS, tcp->pid, NULL, (long)regs) < 0) {
+ perror_msg("sigreturn: PTRACE_GETREGS");
+ return 0;
+ }
+ const long addr = regs[PT_USP] +
+ offsetof(struct sigcontext, oldmask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(TILE)
+ if (entering(tcp)) {
+ /* offset of ucontext in the kernel's sigframe structure */
+# define SIGFRAME_UC_OFFSET C_ABI_SAVE_AREA_SIZE + sizeof(siginfo_t)
+ const long addr = tile_regs.sp + SIGFRAME_UC_OFFSET +
+ offsetof(struct ucontext, uc_sigmask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#elif defined(MICROBLAZE)
+ /* TODO: Verify that this is correct... */
+ if (entering(tcp)) {
+ long addr;
+ /* Read r1, the stack pointer. */
+ if (upeek(tcp->pid, 1 * 4, &addr) < 0)
+ return 0;
+ addr += offsetof(struct sigcontext, oldmask);
+ tprints("{mask=");
+ print_sigset_addr_len(tcp, addr, NSIG / 8);
+ tprints("}");
+ }
+#else
+# warning sigreturn/rt_sigreturn signal mask decoding is not implemented for this architecture
+#endif
+ return 0;
+}
diff --git a/sock.c b/sock.c
index 546c651..b6fc95c 100644
--- a/sock.c
+++ b/sock.c
@@ -51,8 +51,14 @@
printstr(tcp, addr, sizeof(ifr->ifr_addr.sa_data));
}
+static void
+print_ifname(const char *ifname)
+{
+ print_quoted_string(ifname, IFNAMSIZ + 1, QUOTE_0_TERMINATED);
+}
+
int
-sock_ioctl(struct tcb *tcp, long code, long arg)
+sock_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
struct ifreq ifr;
struct ifconf ifc;
@@ -71,10 +77,13 @@
case SIOCSIFNAME:
if (umove(tcp, tcp->u_arg[2], &ifr) < 0)
tprintf(", %#lx", tcp->u_arg[2]);
- else
- tprintf(", {ifr_name=\"%.*s\", ifr_newname=\"%.*s\"}",
- IFNAMSIZ, ifr.ifr_name,
- IFNAMSIZ, ifr.ifr_newname);
+ else {
+ tprints(", {ifr_name=");
+ print_ifname(ifr.ifr_name);
+ tprints(", ifr_newname=");
+ print_ifname(ifr.ifr_newname);
+ tprints("}");
+ }
break;
}
return 0;
@@ -108,7 +117,7 @@
#ifdef SIOCATMARK
case SIOCATMARK:
#endif
- printnum(tcp, arg, ", %#d");
+ printnum_int(tcp, arg, ", %d");
case SIOCSIFNAME:
return 1;
case SIOCGIFNAME:
@@ -142,15 +151,18 @@
tprintf(", {ifr_index=%d, ifr_name=???}",
ifr.ifr_ifindex);
} else {
- tprintf(", {ifr_name=\"%.*s\", ???}",
- IFNAMSIZ, ifr.ifr_name);
+ tprints(", {ifr_name=");
+ print_ifname(ifr.ifr_name);
+ tprints(", ???}");
}
} else if (code == SIOCGIFNAME) {
- tprintf(", {ifr_index=%d, ifr_name=\"%.*s\"}",
- ifr.ifr_ifindex, IFNAMSIZ, ifr.ifr_name);
+ tprintf(", {ifr_index=%d, ifr_name=", ifr.ifr_ifindex);
+ print_ifname(ifr.ifr_name);
+ tprints("}");
} else {
- tprintf(", {ifr_name=\"%.*s\", ",
- IFNAMSIZ, ifr.ifr_name);
+ tprints(", {ifr_name=");
+ print_ifname(ifr.ifr_name);
+ tprints(", ");
switch (code) {
case SIOCGIFINDEX:
tprintf("ifr_index=%d", ifr.ifr_ifindex);
@@ -205,7 +217,8 @@
break;
case SIOCGIFSLAVE:
case SIOCSIFSLAVE:
- tprintf("ifr_slave=\"%s\"", ifr.ifr_slave);
+ tprints("ifr_slave=");
+ print_ifname(ifr.ifr_slave);
break;
case SIOCGIFTXQLEN:
case SIOCSIFTXQLEN:
@@ -251,8 +264,9 @@
for (i = 0; i < nifra; ++i ) {
if (i > 0)
tprints(", ");
- tprintf("{\"%.*s\", {",
- IFNAMSIZ, ifra[i].ifr_newname);
+ tprints("{");
+ print_ifname(ifra[i].ifr_newname);
+ tprints(", {");
if (verbose(tcp)) {
printxval(addrfams,
ifra[i].ifr_addr.sa_family,
diff --git a/socketutils.c b/socketutils.c
index 0605aad..93f5f16 100644
--- a/socketutils.c
+++ b/socketutils.c
@@ -8,6 +8,10 @@
#include <linux/unix_diag.h>
#include <linux/rtnetlink.h>
+#if !defined NETLINK_SOCK_DIAG && defined NETLINK_INET_DIAG
+# define NETLINK_SOCK_DIAG NETLINK_INET_DIAG
+#endif
+
#include <sys/un.h>
#ifndef UNIX_PATH_MAX
# define UNIX_PATH_MAX sizeof(((struct sockaddr_un *) 0)->sun_path)
@@ -110,7 +114,7 @@
const char *proto_name,
bool (* parser) (const char *, const void *, int, const unsigned long))
{
- static char buf[8192];
+ static long buf[8192 / sizeof(long)];
struct sockaddr_nl nladdr = {
.nl_family = AF_NETLINK
};
@@ -248,13 +252,13 @@
tprintf("->%u", peer);
if (path_len) {
if (path[0] == '\0') {
- char *outstr = alloca(4 * path_len - 1);
- string_quote(path + 1, outstr, -1, path_len);
- tprintf(",@%s", outstr);
+ tprints(",@");
+ print_quoted_string(path + 1, path_len,
+ QUOTE_0_TERMINATED);
} else {
- char *outstr = alloca(4 * path_len + 3);
- string_quote(path, outstr, -1, path_len + 1);
- tprintf(",%s", outstr);
+ tprints(",");
+ print_quoted_string(path, path_len + 1,
+ QUOTE_0_TERMINATED);
}
}
tprints("]");
diff --git a/statfs.c b/statfs.c
index d8583f6..6f5e4d3 100644
--- a/statfs.c
+++ b/statfs.c
@@ -32,15 +32,6 @@
tprints("{...}");
return;
}
-#ifdef ALPHA
- tprintf("{f_type=%s, f_fbsize=%u, f_blocks=%u, f_bfree=%u, ",
- sprintfstype(statbuf.f_type),
- statbuf.f_bsize, statbuf.f_blocks, statbuf.f_bfree);
- tprintf("f_bavail=%u, f_files=%u, f_ffree=%u, f_fsid={%d, %d}, f_namelen=%u",
- statbuf.f_bavail, statbuf.f_files, statbuf.f_ffree,
- statbuf.f_fsid.__val[0], statbuf.f_fsid.__val[1],
- statbuf.f_namelen);
-#else /* !ALPHA */
tprintf("{f_type=%s, f_bsize=%lu, f_blocks=%lu, f_bfree=%lu, ",
sprintfstype(statbuf.f_type),
(unsigned long)statbuf.f_bsize,
@@ -52,7 +43,6 @@
(unsigned long)statbuf.f_ffree,
statbuf.f_fsid.__val[0], statbuf.f_fsid.__val[1]);
tprintf(", f_namelen=%lu", (unsigned long)statbuf.f_namelen);
-#endif /* !ALPHA */
#ifdef _STATFS_F_FRSIZE
tprintf(", f_frsize=%lu", (unsigned long)statbuf.f_frsize);
#endif
@@ -83,7 +73,7 @@
return 0;
}
-#ifdef HAVE_STATFS64
+#ifdef HAVE_STRUCT_STATFS64
static void
printstatfs64(struct tcb *tcp, long addr)
{
@@ -131,7 +121,7 @@
uint32_t f_flags;
uint32_t f_spare[4];
}
-#if defined(X86_64) || defined(IA64)
+#if defined AARCH64 || defined X86_64 || defined X32 || defined IA64
__attribute__ ((packed, aligned(4)))
#endif
;
@@ -197,7 +187,7 @@
}
return 0;
}
-#endif /* HAVE_STATFS64 */
+#endif /* HAVE_STRUCT_STATFS64 */
#ifdef ALPHA
int
diff --git a/strace.1 b/strace.1
index 1e69217..c1f87e9 100644
--- a/strace.1
+++ b/strace.1
@@ -269,6 +269,9 @@
.TP
.B \-k
Print the execution stack trace of the traced processes after each system call (experimental).
+This option is available only if
+.B strace
+is built with libunwind.
.TP
.B \-q
Suppress messages about attaching, detaching etc. This happens
diff --git a/strace.c b/strace.c
index aae7505..b714255 100644
--- a/strace.c
+++ b/strace.c
@@ -42,9 +42,9 @@
#ifdef HAVE_PRCTL
# include <sys/prctl.h>
#endif
-#if defined(IA64)
-# include <asm/ptrace_offsets.h>
-#endif
+
+#include "ptrace.h"
+
/* In some libc, these aren't declared. Do it ourself: */
extern char **environ;
extern int optind;
@@ -74,18 +74,17 @@
# define fork() vfork()
#endif
+const unsigned int syscall_trap_sig = SIGTRAP | 0x80;
+
cflag_t cflag = CFLAG_NONE;
unsigned int followfork = 0;
-unsigned int ptrace_setoptions = 0;
+unsigned int ptrace_setoptions = PTRACE_O_TRACESYSGOOD | PTRACE_O_TRACEEXEC;
unsigned int xflag = 0;
-bool need_fork_exec_workarounds = 0;
bool debug_flag = 0;
bool Tflag = 0;
bool iflag = 0;
bool count_wallclock = 0;
unsigned int qflag = 0;
-/* Which WSTOPSIG(status) value marks syscall traps? */
-static unsigned int syscall_trap_sig = SIGTRAP;
static unsigned int tflag = 0;
static bool rflag = 0;
static bool print_pid_pfx = 0;
@@ -347,7 +346,7 @@
int r;
if (!use_seize)
return ptrace(PTRACE_ATTACH, pid, 0L, 0L);
- r = ptrace(PTRACE_SEIZE, pid, 0L, (unsigned long)ptrace_setoptions);
+ r = ptrace(PTRACE_SEIZE, pid, 0L, (unsigned long) ptrace_setoptions);
if (r)
return r;
r = ptrace(PTRACE_INTERRUPT, pid, 0L, 0L);
@@ -766,9 +765,6 @@
int error;
int status;
- if (tcp->flags & TCB_BPTSET)
- clearbpt(tcp);
-
/*
* Linux wrongly insists the child be stopped
* before detaching. Arghh. We go through hoops
@@ -1161,16 +1157,19 @@
{
struct_stat statbuf;
const char *filename;
+ size_t filename_len;
char pathname[PATH_MAX];
int pid;
struct tcb *tcp;
filename = argv[0];
+ filename_len = strlen(filename);
+
+ if (filename_len > sizeof(pathname) - 1) {
+ errno = ENAMETOOLONG;
+ perror_msg_and_die("exec");
+ }
if (strchr(filename, '/')) {
- if (strlen(filename) > sizeof pathname - 1) {
- errno = ENAMETOOLONG;
- perror_msg_and_die("exec");
- }
strcpy(pathname, filename);
}
#ifdef USE_DEBUGGING_EXEC
@@ -1207,6 +1206,8 @@
}
if (len && pathname[len - 1] != '/')
pathname[len++] = '/';
+ if (filename_len + len > sizeof(pathname) - 1)
+ continue;
strcpy(pathname + len, filename);
if (stat_file(pathname, &statbuf) == 0 &&
/* Accept only regular files
@@ -1216,6 +1217,8 @@
(statbuf.st_mode & 0111))
break;
}
+ if (!path || !*path)
+ pathname[0] = '\0';
}
if (stat_file(pathname, &statbuf) < 0) {
perror_msg_and_die("Can't stat '%s'", filename);
@@ -1321,219 +1324,6 @@
}
}
-/*
- * Test whether the kernel support PTRACE_O_TRACECLONE et al options.
- * First fork a new child, call ptrace with PTRACE_SETOPTIONS on it,
- * and then see which options are supported by the kernel.
- */
-static int
-test_ptrace_setoptions_followfork(void)
-{
- int pid, expected_grandchild = 0, found_grandchild = 0;
- const unsigned int test_options = PTRACE_O_TRACECLONE |
- PTRACE_O_TRACEFORK |
- PTRACE_O_TRACEVFORK;
-
- /* Need fork for test. NOMMU has no forks */
- if (NOMMU_SYSTEM)
- goto worked; /* be bold, and pretend that test succeeded */
-
- pid = fork();
- if (pid < 0)
- perror_msg_and_die("fork");
- if (pid == 0) {
- pid = getpid();
- if (ptrace(PTRACE_TRACEME, 0L, 0L, 0L) < 0)
- perror_msg_and_die("%s: PTRACE_TRACEME doesn't work",
- __func__);
- kill_save_errno(pid, SIGSTOP);
- if (fork() < 0)
- perror_msg_and_die("fork");
- _exit(0);
- }
-
- while (1) {
- int status, tracee_pid;
-
- errno = 0;
- tracee_pid = wait(&status);
- if (tracee_pid <= 0) {
- if (errno == EINTR)
- continue;
- if (errno == ECHILD)
- break;
- kill_save_errno(pid, SIGKILL);
- perror_msg_and_die("%s: unexpected wait result %d",
- __func__, tracee_pid);
- }
- if (WIFEXITED(status)) {
- if (WEXITSTATUS(status)) {
- if (tracee_pid != pid)
- kill_save_errno(pid, SIGKILL);
- error_msg_and_die("%s: unexpected exit status %u",
- __func__, WEXITSTATUS(status));
- }
- continue;
- }
- if (WIFSIGNALED(status)) {
- if (tracee_pid != pid)
- kill_save_errno(pid, SIGKILL);
- error_msg_and_die("%s: unexpected signal %u",
- __func__, WTERMSIG(status));
- }
- if (!WIFSTOPPED(status)) {
- if (tracee_pid != pid)
- kill_save_errno(tracee_pid, SIGKILL);
- kill_save_errno(pid, SIGKILL);
- error_msg_and_die("%s: unexpected wait status %x",
- __func__, status);
- }
- if (tracee_pid != pid) {
- found_grandchild = tracee_pid;
- if (ptrace(PTRACE_CONT, tracee_pid, 0, 0) < 0) {
- kill_save_errno(tracee_pid, SIGKILL);
- kill_save_errno(pid, SIGKILL);
- perror_msg_and_die("PTRACE_CONT doesn't work");
- }
- continue;
- }
- switch (WSTOPSIG(status)) {
- case SIGSTOP:
- if (ptrace(PTRACE_SETOPTIONS, pid, 0, test_options) < 0
- && errno != EINVAL && errno != EIO)
- perror_msg("PTRACE_SETOPTIONS");
- break;
- case SIGTRAP:
- if (status >> 16 == PTRACE_EVENT_FORK) {
- long msg = 0;
-
- if (ptrace(PTRACE_GETEVENTMSG, pid,
- NULL, (long) &msg) == 0)
- expected_grandchild = msg;
- }
- break;
- }
- if (ptrace(PTRACE_SYSCALL, pid, 0, 0) < 0) {
- kill_save_errno(pid, SIGKILL);
- perror_msg_and_die("PTRACE_SYSCALL doesn't work");
- }
- }
- if (expected_grandchild && expected_grandchild == found_grandchild) {
- worked:
- ptrace_setoptions |= test_options;
- if (debug_flag)
- fprintf(stderr, "ptrace_setoptions = %#x\n",
- ptrace_setoptions);
- return 0;
- }
- error_msg("Test for PTRACE_O_TRACECLONE failed, "
- "giving up using this feature.");
- return 1;
-}
-
-/*
- * Test whether the kernel support PTRACE_O_TRACESYSGOOD.
- * First fork a new child, call ptrace(PTRACE_SETOPTIONS) on it,
- * and then see whether it will stop with (SIGTRAP | 0x80).
- *
- * Use of this option enables correct handling of user-generated SIGTRAPs,
- * and SIGTRAPs generated by special instructions such as int3 on x86:
-
-# compile with: gcc -nostartfiles -nostdlib -o int3 int3.S
-_start: .globl _start
- int3
- movl $42, %ebx
- movl $1, %eax
- int $0x80
- */
-static int
-test_ptrace_setoptions_for_all(void)
-{
- const unsigned int test_options = PTRACE_O_TRACESYSGOOD |
- PTRACE_O_TRACEEXEC;
- int pid;
- int it_worked = 0;
-
- /* Need fork for test. NOMMU has no forks */
- if (NOMMU_SYSTEM)
- goto worked; /* be bold, and pretend that test succeeded */
-
- pid = fork();
- if (pid < 0)
- perror_msg_and_die("fork");
-
- if (pid == 0) {
- pid = getpid();
- if (ptrace(PTRACE_TRACEME, 0L, 0L, 0L) < 0)
- /* Note: exits with exitcode 1 */
- perror_msg_and_die("%s: PTRACE_TRACEME doesn't work",
- __func__);
- kill(pid, SIGSTOP);
- _exit(0); /* parent should see entry into this syscall */
- }
-
- while (1) {
- int status, tracee_pid;
-
- errno = 0;
- tracee_pid = wait(&status);
- if (tracee_pid <= 0) {
- if (errno == EINTR)
- continue;
- kill_save_errno(pid, SIGKILL);
- perror_msg_and_die("%s: unexpected wait result %d",
- __func__, tracee_pid);
- }
- if (WIFEXITED(status)) {
- if (WEXITSTATUS(status) == 0)
- break;
- error_msg_and_die("%s: unexpected exit status %u",
- __func__, WEXITSTATUS(status));
- }
- if (WIFSIGNALED(status)) {
- error_msg_and_die("%s: unexpected signal %u",
- __func__, WTERMSIG(status));
- }
- if (!WIFSTOPPED(status)) {
- kill(pid, SIGKILL);
- error_msg_and_die("%s: unexpected wait status %x",
- __func__, status);
- }
- if (WSTOPSIG(status) == SIGSTOP) {
- /*
- * We don't check "options aren't accepted" error.
- * If it happens, we'll never get (SIGTRAP | 0x80),
- * and thus will decide to not use the option.
- * IOW: the outcome of the test will be correct.
- */
- if (ptrace(PTRACE_SETOPTIONS, pid, 0L, test_options) < 0
- && errno != EINVAL && errno != EIO)
- perror_msg("PTRACE_SETOPTIONS");
- }
- if (WSTOPSIG(status) == (SIGTRAP | 0x80)) {
- it_worked = 1;
- }
- if (ptrace(PTRACE_SYSCALL, pid, 0L, 0L) < 0) {
- kill_save_errno(pid, SIGKILL);
- perror_msg_and_die("PTRACE_SYSCALL doesn't work");
- }
- }
-
- if (it_worked) {
- worked:
- syscall_trap_sig = (SIGTRAP | 0x80);
- ptrace_setoptions |= test_options;
- if (debug_flag)
- fprintf(stderr, "ptrace_setoptions = %#x\n",
- ptrace_setoptions);
- return 0;
- }
-
- error_msg("Test for PTRACE_O_TRACESYSGOOD failed, "
- "giving up using this feature.");
- return 1;
-}
-
#if USE_SEIZE
static void
test_ptrace_seize(void)
@@ -1871,14 +1661,12 @@
run_gid = getgid();
}
- /*
- * On any reasonably recent Linux kernel (circa about 2.5.46)
- * need_fork_exec_workarounds should stay 0 after these tests:
- */
- /*need_fork_exec_workarounds = 0; - already is */
if (followfork)
- need_fork_exec_workarounds = test_ptrace_setoptions_followfork();
- need_fork_exec_workarounds |= test_ptrace_setoptions_for_all();
+ ptrace_setoptions |= PTRACE_O_TRACECLONE |
+ PTRACE_O_TRACEFORK |
+ PTRACE_O_TRACEVFORK;
+ if (debug_flag)
+ fprintf(stderr, "ptrace_setoptions = %#x\n", ptrace_setoptions);
test_ptrace_seize();
/* Check if they want to redirect the output. */
@@ -2030,143 +1818,284 @@
}
static void
+print_debug_info(const int pid, int status)
+{
+ const unsigned int event = (unsigned int) status >> 16;
+ char buf[sizeof("WIFEXITED,exitcode=%u") + sizeof(int)*3 /*paranoia:*/ + 16];
+ char evbuf[sizeof(",EVENT_VFORK_DONE (%u)") + sizeof(int)*3 /*paranoia:*/ + 16];
+
+ strcpy(buf, "???");
+ if (WIFSIGNALED(status))
+#ifdef WCOREDUMP
+ sprintf(buf, "WIFSIGNALED,%ssig=%s",
+ WCOREDUMP(status) ? "core," : "",
+ signame(WTERMSIG(status)));
+#else
+ sprintf(buf, "WIFSIGNALED,sig=%s",
+ signame(WTERMSIG(status)));
+#endif
+ if (WIFEXITED(status))
+ sprintf(buf, "WIFEXITED,exitcode=%u", WEXITSTATUS(status));
+ if (WIFSTOPPED(status))
+ sprintf(buf, "WIFSTOPPED,sig=%s", signame(WSTOPSIG(status)));
+#ifdef WIFCONTINUED
+ /* Should never be seen */
+ if (WIFCONTINUED(status))
+ strcpy(buf, "WIFCONTINUED");
+#endif
+ evbuf[0] = '\0';
+ if (event != 0) {
+ static const char *const event_names[] = {
+ [PTRACE_EVENT_CLONE] = "CLONE",
+ [PTRACE_EVENT_FORK] = "FORK",
+ [PTRACE_EVENT_VFORK] = "VFORK",
+ [PTRACE_EVENT_VFORK_DONE] = "VFORK_DONE",
+ [PTRACE_EVENT_EXEC] = "EXEC",
+ [PTRACE_EVENT_EXIT] = "EXIT",
+ /* [PTRACE_EVENT_STOP (=128)] would make biggish array */
+ };
+ const char *e = "??";
+ if (event < ARRAY_SIZE(event_names))
+ e = event_names[event];
+ else if (event == PTRACE_EVENT_STOP)
+ e = "STOP";
+ sprintf(evbuf, ",EVENT_%s (%u)", e, event);
+ }
+ fprintf(stderr, " [wait(0x%06x) = %u] %s%s\n", status, pid, buf, evbuf);
+}
+
+static struct tcb *
+maybe_allocate_tcb(const int pid, int status)
+{
+ if (!WIFSTOPPED(status)) {
+ if (detach_on_execve && pid == strace_child) {
+ /* example: strace -bexecve sh -c 'exec true' */
+ strace_child = 0;
+ return NULL;
+ }
+ /*
+ * This can happen if we inherited an unknown child.
+ * Example: (sleep 1 & exec strace true)
+ */
+ error_msg("Exit of unknown pid %u ignored", pid);
+ return NULL;
+ }
+ if (followfork) {
+ /* We assume it's a fork/vfork/clone child */
+ struct tcb *tcp = alloctcb(pid);
+ tcp->flags |= TCB_ATTACHED | TCB_STARTUP | post_attach_sigstop;
+ newoutf(tcp);
+ if (!qflag)
+ fprintf(stderr, "Process %d attached\n", pid);
+ return tcp;
+ } else {
+ /* This can happen if a clone call used
+ * CLONE_PTRACE itself.
+ */
+ ptrace(PTRACE_CONT, pid, (char *) 0, 0);
+ error_msg("Stop of unknown pid %u seen, PTRACE_CONTed it", pid);
+ return NULL;
+ }
+}
+
+static struct tcb *
+maybe_switch_tcbs(struct tcb *tcp, const int pid)
+{
+ FILE *fp;
+ struct tcb *execve_thread;
+ long old_pid = 0;
+
+ if (ptrace(PTRACE_GETEVENTMSG, pid, NULL, (long) &old_pid) < 0)
+ return tcp;
+ /* Avoid truncation in pid2tcb() param passing */
+ if (old_pid <= 0 || old_pid == pid)
+ return tcp;
+ if ((unsigned long) old_pid > UINT_MAX)
+ return tcp;
+ execve_thread = pid2tcb(old_pid);
+ /* It should be !NULL, but I feel paranoid */
+ if (!execve_thread)
+ return tcp;
+
+ if (execve_thread->curcol != 0) {
+ /*
+ * One case we are here is -ff:
+ * try "strace -oLOG -ff test/threaded_execve"
+ */
+ fprintf(execve_thread->outf, " <pid changed to %d ...>\n", pid);
+ /*execve_thread->curcol = 0; - no need, see code below */
+ }
+ /* Swap output FILEs (needed for -ff) */
+ fp = execve_thread->outf;
+ execve_thread->outf = tcp->outf;
+ tcp->outf = fp;
+ /* And their column positions */
+ execve_thread->curcol = tcp->curcol;
+ tcp->curcol = 0;
+ /* Drop leader, but close execve'd thread outfile (if -ff) */
+ droptcb(tcp);
+ /* Switch to the thread, reusing leader's outfile and pid */
+ tcp = execve_thread;
+ tcp->pid = pid;
+ if (cflag != CFLAG_ONLY_STATS) {
+ printleader(tcp);
+ tprintf("+++ superseded by execve in pid %lu +++\n", old_pid);
+ line_ended();
+ tcp->flags |= TCB_REPRINT;
+ }
+
+ return tcp;
+}
+
+static void
+print_signalled(struct tcb *tcp, const int pid, int status)
+{
+ if (pid == strace_child) {
+ exit_code = 0x100 | WTERMSIG(status);
+ strace_child = 0;
+ }
+
+ if (cflag != CFLAG_ONLY_STATS
+ && (qual_flags[WTERMSIG(status)] & QUAL_SIGNAL)
+ ) {
+ printleader(tcp);
+#ifdef WCOREDUMP
+ tprintf("+++ killed by %s %s+++\n",
+ signame(WTERMSIG(status)),
+ WCOREDUMP(status) ? "(core dumped) " : "");
+#else
+ tprintf("+++ killed by %s +++\n",
+ signame(WTERMSIG(status)));
+#endif
+ line_ended();
+ }
+}
+
+static void
+print_exited(struct tcb *tcp, const int pid, int status)
+{
+ if (pid == strace_child) {
+ exit_code = WEXITSTATUS(status);
+ strace_child = 0;
+ }
+
+ if (cflag != CFLAG_ONLY_STATS &&
+ qflag < 2) {
+ printleader(tcp);
+ tprintf("+++ exited with %d +++\n", WEXITSTATUS(status));
+ line_ended();
+ }
+}
+
+static void
+print_stopped(struct tcb *tcp, const siginfo_t *si, const unsigned int sig)
+{
+ if (cflag != CFLAG_ONLY_STATS
+ && !hide_log_until_execve
+ && (qual_flags[sig] & QUAL_SIGNAL)
+ ) {
+ printleader(tcp);
+ if (si) {
+ tprintf("--- %s ", signame(sig));
+ printsiginfo(si, verbose(tcp));
+ tprints(" ---\n");
+ } else
+ tprintf("--- stopped by %s ---\n", signame(sig));
+ line_ended();
+ }
+}
+
+static bool
+startup_tcb(struct tcb *tcp)
+{
+ if (debug_flag)
+ fprintf(stderr, "pid %d has TCB_STARTUP, initializing it\n",
+ tcp->pid);
+
+ tcp->flags &= ~TCB_STARTUP;
+
+ if (!use_seize) {
+ if (debug_flag)
+ fprintf(stderr, "setting opts 0x%x on pid %d\n",
+ ptrace_setoptions, tcp->pid);
+ if (ptrace(PTRACE_SETOPTIONS, tcp->pid, NULL, ptrace_setoptions) < 0) {
+ if (errno != ESRCH) {
+ /* Should never happen, really */
+ perror_msg_and_die("PTRACE_SETOPTIONS");
+ }
+ }
+ }
+
+ return true;
+}
+
+/* Returns true iff the main trace loop has to continue. */
+static bool
trace(void)
{
+ int pid;
+ int wait_errno;
+ int status;
+ bool stopped;
+ unsigned int sig;
+ unsigned int event;
+ struct tcb *tcp;
struct rusage ru;
- /* Used to be "while (nprocs != 0)", but in this testcase:
- * int main() { _exit(!!fork()); }
- * under strace -f, parent sometimes (rarely) manages
- * to exit before we see the first stop of the child,
- * and we are losing track of it:
- * 19923 clone(...) = 19924
- * 19923 exit_group(1) = ?
- * 19923 +++ exited with 1 +++
- * Waiting for ECHILD works better.
- * (However, if -o|logger is in use, we can't do that.
- * Can work around that by double-forking the logger,
- * but that loses the ability to wait for its completion on exit.
- * Oh well...)
- */
- while (1) {
- int pid;
- int wait_errno;
- int status;
- int stopped;
- unsigned int sig;
- unsigned event;
- struct tcb *tcp;
+ if (interrupted)
+ return false;
- if (interrupted)
- return;
+ if (popen_pid != 0 && nprocs == 0)
+ return false;
- if (popen_pid != 0 && nprocs == 0)
- return;
+ if (interactive)
+ sigprocmask(SIG_SETMASK, &empty_set, NULL);
+ pid = wait4(-1, &status, __WALL, (cflag ? &ru : NULL));
+ wait_errno = errno;
+ if (interactive)
+ sigprocmask(SIG_BLOCK, &blocked_set, NULL);
- if (interactive)
- sigprocmask(SIG_SETMASK, &empty_set, NULL);
- pid = wait4(-1, &status, __WALL, (cflag ? &ru : NULL));
- wait_errno = errno;
- if (interactive)
- sigprocmask(SIG_BLOCK, &blocked_set, NULL);
+ if (pid < 0) {
+ if (wait_errno == EINTR)
+ return true;
+ if (nprocs == 0 && wait_errno == ECHILD)
+ return false;
+ /*
+ * If nprocs > 0, ECHILD is not expected,
+ * treat it as any other error here:
+ */
+ errno = wait_errno;
+ perror_msg_and_die("wait4(__WALL)");
+ }
- if (pid < 0) {
- if (wait_errno == EINTR)
- continue;
- if (nprocs == 0 && wait_errno == ECHILD)
- return;
- /* If nprocs > 0, ECHILD is not expected,
- * treat it as any other error here:
- */
- errno = wait_errno;
- perror_msg_and_die("wait4(__WALL)");
- }
+ if (pid == popen_pid) {
+ if (!WIFSTOPPED(status))
+ popen_pid = 0;
+ return true;
+ }
- if (pid == popen_pid) {
- if (!WIFSTOPPED(status))
- popen_pid = 0;
- continue;
- }
+ if (debug_flag)
+ print_debug_info(pid, status);
- event = ((unsigned)status >> 16);
- if (debug_flag) {
- char buf[sizeof("WIFEXITED,exitcode=%u") + sizeof(int)*3 /*paranoia:*/ + 16];
- char evbuf[sizeof(",EVENT_VFORK_DONE (%u)") + sizeof(int)*3 /*paranoia:*/ + 16];
- strcpy(buf, "???");
- if (WIFSIGNALED(status))
-#ifdef WCOREDUMP
- sprintf(buf, "WIFSIGNALED,%ssig=%s",
- WCOREDUMP(status) ? "core," : "",
- signame(WTERMSIG(status)));
-#else
- sprintf(buf, "WIFSIGNALED,sig=%s",
- signame(WTERMSIG(status)));
-#endif
- if (WIFEXITED(status))
- sprintf(buf, "WIFEXITED,exitcode=%u", WEXITSTATUS(status));
- if (WIFSTOPPED(status))
- sprintf(buf, "WIFSTOPPED,sig=%s", signame(WSTOPSIG(status)));
-#ifdef WIFCONTINUED
- /* Should never be seen */
- if (WIFCONTINUED(status))
- strcpy(buf, "WIFCONTINUED");
-#endif
- evbuf[0] = '\0';
- if (event != 0) {
- static const char *const event_names[] = {
- [PTRACE_EVENT_CLONE] = "CLONE",
- [PTRACE_EVENT_FORK] = "FORK",
- [PTRACE_EVENT_VFORK] = "VFORK",
- [PTRACE_EVENT_VFORK_DONE] = "VFORK_DONE",
- [PTRACE_EVENT_EXEC] = "EXEC",
- [PTRACE_EVENT_EXIT] = "EXIT",
- /* [PTRACE_EVENT_STOP (=128)] would make biggish array */
- };
- const char *e = "??";
- if (event < ARRAY_SIZE(event_names))
- e = event_names[event];
- else if (event == PTRACE_EVENT_STOP)
- e = "STOP";
- sprintf(evbuf, ",EVENT_%s (%u)", e, event);
- }
- fprintf(stderr, " [wait(0x%06x) = %u] %s%s\n", status, pid, buf, evbuf);
- }
+ /* Look up 'pid' in our table. */
+ tcp = pid2tcb(pid);
- /* Look up 'pid' in our table. */
- tcp = pid2tcb(pid);
+ if (!tcp) {
+ tcp = maybe_allocate_tcb(pid, status);
+ if (!tcp)
+ return true;
+ }
- if (!tcp) {
- if (!WIFSTOPPED(status)) {
- /* This can happen if we inherited
- * an unknown child. Example:
- * (sleep 1 & exec strace sleep 2)
- */
- error_msg("Exit of unknown pid %u seen", pid);
- continue;
- }
- if (followfork) {
- /* We assume it's a fork/vfork/clone child */
- tcp = alloctcb(pid);
- tcp->flags |= TCB_ATTACHED | TCB_STARTUP | post_attach_sigstop;
- newoutf(tcp);
- if (!qflag)
- fprintf(stderr, "Process %d attached\n",
- pid);
- } else {
- /* This can happen if a clone call used
- * CLONE_PTRACE itself.
- */
- ptrace(PTRACE_CONT, pid, (char *) 0, 0);
- error_msg("Stop of unknown pid %u seen, PTRACE_CONTed it", pid);
- continue;
- }
- }
-
+ if (WIFSTOPPED(status))
+ get_regs(pid);
+ else
clear_regs();
- if (WIFSTOPPED(status))
- get_regs(pid);
- /* Under Linux, execve changes pid to thread leader's pid,
+ event = (unsigned int) status >> 16;
+
+ if (event == PTRACE_EVENT_EXEC) {
+ /*
+ * Under Linux, execve changes pid to thread leader's pid,
* and we see this changed pid on EVENT_EXEC and later,
* execve sysexit. Leader "disappears" without exit
* notification. Let user know that, drop leader's tcb,
@@ -2180,248 +2109,160 @@
* PTRACE_GETEVENTMSG returns old pid starting from Linux 3.0.
* On 2.6 and earlier, it can return garbage.
*/
- if (event == PTRACE_EVENT_EXEC && os_release >= KERNEL_VERSION(3,0,0)) {
- FILE *fp;
- struct tcb *execve_thread;
- long old_pid = 0;
+ if (os_release >= KERNEL_VERSION(3,0,0))
+ tcp = maybe_switch_tcbs(tcp, pid);
- if (ptrace(PTRACE_GETEVENTMSG, pid, NULL, (long) &old_pid) < 0)
- goto dont_switch_tcbs;
- /* Avoid truncation in pid2tcb() param passing */
- if (old_pid <= 0 || old_pid == pid)
- goto dont_switch_tcbs;
- if ((unsigned long) old_pid > UINT_MAX)
- goto dont_switch_tcbs;
- execve_thread = pid2tcb(old_pid);
- /* It should be !NULL, but I feel paranoid */
- if (!execve_thread)
- goto dont_switch_tcbs;
-
- if (execve_thread->curcol != 0) {
- /*
- * One case we are here is -ff:
- * try "strace -oLOG -ff test/threaded_execve"
- */
- fprintf(execve_thread->outf, " <pid changed to %d ...>\n", pid);
- /*execve_thread->curcol = 0; - no need, see code below */
- }
- /* Swap output FILEs (needed for -ff) */
- fp = execve_thread->outf;
- execve_thread->outf = tcp->outf;
- tcp->outf = fp;
- /* And their column positions */
- execve_thread->curcol = tcp->curcol;
- tcp->curcol = 0;
- /* Drop leader, but close execve'd thread outfile (if -ff) */
- droptcb(tcp);
- /* Switch to the thread, reusing leader's outfile and pid */
- tcp = execve_thread;
- tcp->pid = pid;
- if (cflag != CFLAG_ONLY_STATS) {
- printleader(tcp);
- tprintf("+++ superseded by execve in pid %lu +++\n", old_pid);
- line_ended();
- tcp->flags |= TCB_REPRINT;
- }
+ if (detach_on_execve && !skip_one_b_execve) {
+ detach(tcp); /* do "-b execve" thingy */
+ return true;
}
- dont_switch_tcbs:
+ skip_one_b_execve = 0;
+ }
- if (event == PTRACE_EVENT_EXEC) {
- if (detach_on_execve && !skip_one_b_execve)
- detach(tcp); /* do "-b execve" thingy */
- skip_one_b_execve = 0;
- }
+ /* Set current output file */
+ current_tcp = tcp;
- /* Set current output file */
- current_tcp = tcp;
+ if (cflag) {
+ tv_sub(&tcp->dtime, &ru.ru_stime, &tcp->stime);
+ tcp->stime = ru.ru_stime;
+ }
- if (cflag) {
- tv_sub(&tcp->dtime, &ru.ru_stime, &tcp->stime);
- tcp->stime = ru.ru_stime;
- }
+ if (WIFSIGNALED(status)) {
+ print_signalled(tcp, pid, status);
+ droptcb(tcp);
+ return true;
+ }
- if (WIFSIGNALED(status)) {
- if (pid == strace_child)
- exit_code = 0x100 | WTERMSIG(status);
- if (cflag != CFLAG_ONLY_STATS
- && (qual_flags[WTERMSIG(status)] & QUAL_SIGNAL)
- ) {
- printleader(tcp);
-#ifdef WCOREDUMP
- tprintf("+++ killed by %s %s+++\n",
- signame(WTERMSIG(status)),
- WCOREDUMP(status) ? "(core dumped) " : "");
-#else
- tprintf("+++ killed by %s +++\n",
- signame(WTERMSIG(status)));
-#endif
- line_ended();
- }
- droptcb(tcp);
- continue;
- }
- if (WIFEXITED(status)) {
- if (pid == strace_child)
- exit_code = WEXITSTATUS(status);
- if (cflag != CFLAG_ONLY_STATS &&
- qflag < 2) {
- printleader(tcp);
- tprintf("+++ exited with %d +++\n", WEXITSTATUS(status));
- line_ended();
- }
- droptcb(tcp);
- continue;
- }
- if (!WIFSTOPPED(status)) {
- fprintf(stderr, "PANIC: pid %u not stopped\n", pid);
- droptcb(tcp);
- continue;
- }
+ if (WIFEXITED(status)) {
+ print_exited(tcp, pid, status);
+ droptcb(tcp);
+ return true;
+ }
- /* Is this the very first time we see this tracee stopped? */
- if (tcp->flags & TCB_STARTUP) {
- if (debug_flag)
- fprintf(stderr, "pid %d has TCB_STARTUP, initializing it\n", tcp->pid);
- tcp->flags &= ~TCB_STARTUP;
- if (tcp->flags & TCB_BPTSET) {
- /*
- * One example is a breakpoint inherited from
- * parent through fork().
- */
- if (clearbpt(tcp) < 0) {
- /* Pretty fatal */
- droptcb(tcp);
- exit_code = 1;
- return;
- }
- }
- if (!use_seize && ptrace_setoptions) {
- if (debug_flag)
- fprintf(stderr, "setting opts 0x%x on pid %d\n", ptrace_setoptions, tcp->pid);
- if (ptrace(PTRACE_SETOPTIONS, tcp->pid, NULL, ptrace_setoptions) < 0) {
- if (errno != ESRCH) {
- /* Should never happen, really */
- perror_msg_and_die("PTRACE_SETOPTIONS");
- }
- }
- }
- }
+ if (!WIFSTOPPED(status)) {
+ /*
+ * Neither signalled, exited or stopped.
+ * How could that be?
+ */
+ error_msg("pid %u not stopped!", pid);
+ droptcb(tcp);
+ return true;
+ }
- sig = WSTOPSIG(status);
+ /* Is this the very first time we see this tracee stopped? */
+ if (tcp->flags & TCB_STARTUP) {
+ if (!startup_tcb(tcp))
+ return false;
+ }
- if (event != 0) {
- /* Ptrace event */
+ sig = WSTOPSIG(status);
+
+ if (event != 0) {
+ /* Ptrace event */
#if USE_SEIZE
- if (event == PTRACE_EVENT_STOP) {
- /*
- * PTRACE_INTERRUPT-stop or group-stop.
- * PTRACE_INTERRUPT-stop has sig == SIGTRAP here.
- */
- if (sig == SIGSTOP
- || sig == SIGTSTP
- || sig == SIGTTIN
- || sig == SIGTTOU
- ) {
- stopped = 1;
+ if (event == PTRACE_EVENT_STOP) {
+ /*
+ * PTRACE_INTERRUPT-stop or group-stop.
+ * PTRACE_INTERRUPT-stop has sig == SIGTRAP here.
+ */
+ switch (sig) {
+ case SIGSTOP:
+ case SIGTSTP:
+ case SIGTTIN:
+ case SIGTTOU:
+ stopped = true;
goto show_stopsig;
- }
}
+ }
#endif
- goto restart_tracee_with_sig_0;
- }
+ goto restart_tracee_with_sig_0;
+ }
- /* Is this post-attach SIGSTOP?
- * Interestingly, the process may stop
- * with STOPSIG equal to some other signal
- * than SIGSTOP if we happend to attach
- * just before the process takes a signal.
+ /*
+ * Is this post-attach SIGSTOP?
+ * Interestingly, the process may stop
+ * with STOPSIG equal to some other signal
+ * than SIGSTOP if we happend to attach
+ * just before the process takes a signal.
+ */
+ if (sig == SIGSTOP && (tcp->flags & TCB_IGNORE_ONE_SIGSTOP)) {
+ if (debug_flag)
+ fprintf(stderr, "ignored SIGSTOP on pid %d\n", tcp->pid);
+ tcp->flags &= ~TCB_IGNORE_ONE_SIGSTOP;
+ goto restart_tracee_with_sig_0;
+ }
+
+ if (sig != syscall_trap_sig) {
+ siginfo_t si;
+
+ /*
+ * True if tracee is stopped by signal
+ * (as opposed to "tracee received signal").
+ * TODO: shouldn't we check for errno == EINVAL too?
+ * We can get ESRCH instead, you know...
*/
- if (sig == SIGSTOP && (tcp->flags & TCB_IGNORE_ONE_SIGSTOP)) {
- if (debug_flag)
- fprintf(stderr, "ignored SIGSTOP on pid %d\n", tcp->pid);
- tcp->flags &= ~TCB_IGNORE_ONE_SIGSTOP;
- goto restart_tracee_with_sig_0;
- }
-
- if (sig != syscall_trap_sig) {
- siginfo_t si;
-
- /* Nonzero (true) if tracee is stopped by signal
- * (as opposed to "tracee received signal").
- * TODO: shouldn't we check for errno == EINVAL too?
- * We can get ESRCH instead, you know...
- */
- stopped = (ptrace(PTRACE_GETSIGINFO, pid, 0, (long) &si) < 0);
+ stopped = ptrace(PTRACE_GETSIGINFO, pid, 0, (long) &si) < 0;
#if USE_SEIZE
- show_stopsig:
+show_stopsig:
#endif
- if (cflag != CFLAG_ONLY_STATS
- && !hide_log_until_execve
- && (qual_flags[sig] & QUAL_SIGNAL)
- ) {
- printleader(tcp);
- if (!stopped) {
- tprintf("--- %s ", signame(sig));
- printsiginfo(&si, verbose(tcp));
- tprints(" ---\n");
- } else
- tprintf("--- stopped by %s ---\n",
- signame(sig));
- line_ended();
- }
+ print_stopped(tcp, stopped ? NULL : &si, sig);
- if (!stopped)
- /* It's signal-delivery-stop. Inject the signal */
- goto restart_tracee;
-
- /* It's group-stop */
- if (use_seize) {
- /*
- * This ends ptrace-stop, but does *not* end group-stop.
- * This makes stopping signals work properly on straced process
- * (that is, process really stops. It used to continue to run).
- */
- if (ptrace_restart(PTRACE_LISTEN, tcp, 0) < 0) {
- /* Note: ptrace_restart emitted error message */
- exit_code = 1;
- return;
- }
- continue;
- }
- /* We don't have PTRACE_LISTEN support... */
+ if (!stopped)
+ /* It's signal-delivery-stop. Inject the signal */
goto restart_tracee;
- }
- /* We handled quick cases, we are permitted to interrupt now. */
- if (interrupted)
- return;
-
- /* This should be syscall entry or exit.
- * (Or it still can be that pesky post-execve SIGTRAP!)
- * Handle it.
- */
- if (trace_syscall(tcp) < 0) {
- /* ptrace() failed in trace_syscall().
- * Likely a result of process disappearing mid-flight.
- * Observed case: exit_group() or SIGKILL terminating
- * all processes in thread group.
- * We assume that ptrace error was caused by process death.
- * We used to detach(tcp) here, but since we no longer
- * implement "detach before death" policy/hack,
- * we can let this process to report its death to us
- * normally, via WIFEXITED or WIFSIGNALED wait status.
+ /* It's group-stop */
+ if (use_seize) {
+ /*
+ * This ends ptrace-stop, but does *not* end group-stop.
+ * This makes stopping signals work properly on straced process
+ * (that is, process really stops. It used to continue to run).
*/
- continue;
+ if (ptrace_restart(PTRACE_LISTEN, tcp, 0) < 0) {
+ /* Note: ptrace_restart emitted error message */
+ exit_code = 1;
+ return false;
+ }
+ return true;
}
- restart_tracee_with_sig_0:
- sig = 0;
- restart_tracee:
- if (ptrace_restart(PTRACE_SYSCALL, tcp, sig) < 0) {
- /* Note: ptrace_restart emitted error message */
- exit_code = 1;
- return;
- }
- } /* while (1) */
+ /* We don't have PTRACE_LISTEN support... */
+ goto restart_tracee;
+ }
+
+ /* We handled quick cases, we are permitted to interrupt now. */
+ if (interrupted)
+ return false;
+
+ /*
+ * This should be syscall entry or exit.
+ * Handle it.
+ */
+ if (trace_syscall(tcp) < 0) {
+ /*
+ * ptrace() failed in trace_syscall().
+ * Likely a result of process disappearing mid-flight.
+ * Observed case: exit_group() or SIGKILL terminating
+ * all processes in thread group.
+ * We assume that ptrace error was caused by process death.
+ * We used to detach(tcp) here, but since we no longer
+ * implement "detach before death" policy/hack,
+ * we can let this process to report its death to us
+ * normally, via WIFEXITED or WIFSIGNALED wait status.
+ */
+ return true;
+ }
+
+restart_tracee_with_sig_0:
+ sig = 0;
+
+restart_tracee:
+ if (ptrace_restart(PTRACE_SYSCALL, tcp, sig) < 0) {
+ /* Note: ptrace_restart emitted error message */
+ exit_code = 1;
+ return false;
+ }
+
+ return true;
}
int
@@ -2429,8 +2270,25 @@
{
init(argc, argv);
- /* Run main tracing loop */
- trace();
+ /*
+ * Run main tracing loop.
+ *
+ * Used to be "while (nprocs != 0)", but in this testcase:
+ * int main() { _exit(!!fork()); }
+ * under strace -f, parent sometimes (rarely) manages
+ * to exit before we see the first stop of the child,
+ * and we are losing track of it:
+ * 19923 clone(...) = 19924
+ * 19923 exit_group(1) = ?
+ * 19923 +++ exited with 1 +++
+ * Waiting for ECHILD works better.
+ * (However, if -o|logger is in use, we can't do that.
+ * Can work around that by double-forking the logger,
+ * but that loses the ability to wait for its completion on exit.
+ * Oh well...)
+ */
+ while (trace())
+ ;
cleanup();
fflush(NULL);
diff --git a/strace.spec b/strace.spec
index 9384fa5..7ab1bda 100644
--- a/strace.spec
+++ b/strace.spec
@@ -1,6 +1,6 @@
Summary: Tracks and displays system calls associated with a running process
Name: strace
-Version: 4.9
+Version: 4.10
Release: 1%{?dist}
License: BSD
Group: Development/Debuggers
@@ -79,6 +79,16 @@
%endif
%changelog
+* Fri Mar 06 2015 Dmitry V. Levin <ldv@altlinux.org> - 4.10-1
+- New upstream release:
+ + enhanced ioctl decoding (#902788).
+
+* Mon Nov 03 2014 Lubomir Rintel <lkundrak@v3.sk> - 4.9-3
+- Regenerate ioctl entries with proper kernel headers
+
+* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.9-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
* Fri Aug 15 2014 Dmitry V. Levin <ldv@altlinux.org> - 4.9-1
- New upstream release:
+ fixed build when <sys/ptrace.h> and <linux/ptrace.h> conflict (#993384);
diff --git a/stream.c b/stream.c
index ceb9e2d..2aa6366 100644
--- a/stream.c
+++ b/stream.c
@@ -190,7 +190,7 @@
for (i = 1; i < 3; i++)
printstrbufarg(tcp, tcp->u_arg[i], 1);
/* pointer to band */
- printnum(tcp, tcp->u_arg[3], "%d");
+ printnum_int(tcp, tcp->u_arg[3], "%d");
tprints(", ");
/* pointer to flags */
if (tcp->u_arg[4] == 0)
diff --git a/syscall.c b/syscall.c
index 091626c..b37f43a 100644
--- a/syscall.c
+++ b/syscall.c
@@ -32,29 +32,13 @@
*/
#include "defs.h"
-#include <sys/user.h>
#include <sys/param.h>
-#ifdef HAVE_SYS_REG_H
-# include <sys/reg.h>
-#endif
+/* for struct iovec */
+#include <sys/uio.h>
-#ifdef HAVE_LINUX_PTRACE_H
-# undef PTRACE_SYSCALL
-# ifdef HAVE_STRUCT_IA64_FPREG
-# define ia64_fpreg XXX_ia64_fpreg
-# endif
-# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
-# define pt_all_user_regs XXX_pt_all_user_regs
-# endif
-# ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
-# define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args
-# endif
-# include <linux/ptrace.h>
-# undef ptrace_peeksiginfo_args
-# undef ia64_fpreg
-# undef pt_all_user_regs
-#endif
+#include "regs.h"
+#include "ptrace.h"
#if defined(SPARC64)
# undef PTRACE_GETREGS
@@ -63,24 +47,18 @@
# define PTRACE_SETREGS PTRACE_SETREGS64
#endif
-#if defined(IA64)
-# include <asm/ptrace_offsets.h>
+#if defined SPARC64
+# include <asm/psrcompat.h>
+#elif defined SPARC
+# include <asm/psr.h>
+#endif
+
+#ifdef IA64
# include <asm/rse.h>
#endif
-/* for struct iovec */
-#include <sys/uio.h>
-/* for NT_PRSTATUS */
-#ifdef HAVE_ELF_H
-# include <elf.h>
-#endif
-
-#if defined(AARCH64)
-# include <asm/ptrace.h>
-#endif
-
-#if defined(XTENSA)
-# include <asm/ptrace.h>
+#ifndef NT_PRSTATUS
+# define NT_PRSTATUS 1
#endif
#ifndef NSIG
@@ -133,7 +111,7 @@
#undef SE
/*
- * `ioctlent.h' may be generated from `ioctlent.raw' by the auxiliary
+ * `ioctlent[012].h' files are automatically generated by the auxiliary
* program `ioctlsort', such that the list is sorted by the `code' field.
* This has the side-effect of resolving the _IO.. macros into
* plain integers, eliminating the need to include here everything
@@ -147,7 +125,7 @@
#include "signalent.h"
};
const struct_ioctlent ioctlent0[] = {
-#include "ioctlent.h"
+#include "ioctlent0.h"
};
#if SUPPORTED_PERSONALITIES > 1
@@ -664,31 +642,10 @@
return 0;
}
-#if defined(SPARC) || defined(SPARC64) || defined(IA64) || defined(SH)
-long
-getrval2(struct tcb *tcp)
-{
- long val;
-
-# if defined(SPARC) || defined(SPARC64)
- val = sparc_regs.u_regs[U_REG_O1];
-# elif defined(SH)
- if (upeek(tcp->pid, 4*(REG_REG0+1), &val) < 0)
- return -1;
-# elif defined(IA64)
- if (upeek(tcp->pid, PT_R9, &val) < 0)
- return -1;
-# endif
-
- return val;
-}
-#endif
-
#if defined(I386)
static struct user_regs_struct i386_regs;
-/* Cast suppresses signedness warning (.esp is long, not unsigned long) */
-uint32_t *const i386_esp_ptr = (uint32_t*)&i386_regs.esp;
-# define ARCH_REGS_FOR_GETREGSET i386_regs
+long *const i386_esp_ptr = &i386_regs.esp;
+# define ARCH_REGS_FOR_GETREGS i386_regs
#elif defined(X86_64) || defined(X32)
/*
* On i386, pt_regs and user_regs_struct are the same,
@@ -722,46 +679,82 @@
# define x86_64_regs x86_regs_union.x86_64_r
# define i386_regs x86_regs_union.i386_r
uint32_t *const i386_esp_ptr = &i386_regs.esp;
+uint64_t *const x86_64_rsp_ptr = (uint64_t *) &x86_64_regs.rsp;
static struct iovec x86_io = {
.iov_base = &x86_regs_union
};
+# define ARCH_REGS_FOR_GETREGSET x86_regs_union
+# define ARCH_IOVEC_FOR_GETREGSET x86_io
#elif defined(IA64)
-bool ia64_ia32mode = 0; /* not static */
-static long ia64_r8, ia64_r10;
+static struct pt_all_user_regs ia64_regs;
+unsigned long *const ia64_frame_ptr = &ia64_regs.gr[12];
+# define IA64_PSR_IS ((long)1 << 34)
+# define ia64_ia32mode (ia64_regs.cr_ipsr & IA64_PSR_IS)
+# define ARCH_REGS_FOR_GETREGS ia64_regs
#elif defined(POWERPC)
-struct pt_regs ppc_regs;
+struct pt_regs ppc_regs; /* not static */
+# define ARCH_REGS_FOR_GETREGS ppc_regs
#elif defined(M68K)
static long m68k_d0;
#elif defined(BFIN)
static long bfin_r0;
#elif defined(ARM)
-struct pt_regs arm_regs; /* not static */
-# define ARCH_REGS_FOR_GETREGSET arm_regs
+static struct pt_regs arm_regs;
+long *const arm_sp_ptr = &arm_regs.ARM_sp;
+# define ARCH_REGS_FOR_GETREGS arm_regs
#elif defined(AARCH64)
+struct arm_pt_regs {
+ int uregs[18];
+};
+# define ARM_cpsr uregs[16]
+# define ARM_pc uregs[15]
+# define ARM_lr uregs[14]
+# define ARM_sp uregs[13]
+# define ARM_ip uregs[12]
+# define ARM_fp uregs[11]
+# define ARM_r10 uregs[10]
+# define ARM_r9 uregs[9]
+# define ARM_r8 uregs[8]
+# define ARM_r7 uregs[7]
+# define ARM_r6 uregs[6]
+# define ARM_r5 uregs[5]
+# define ARM_r4 uregs[4]
+# define ARM_r3 uregs[3]
+# define ARM_r2 uregs[2]
+# define ARM_r1 uregs[1]
+# define ARM_r0 uregs[0]
+# define ARM_ORIG_r0 uregs[17]
static union {
struct user_pt_regs aarch64_r;
struct arm_pt_regs arm_r;
} arm_regs_union;
# define aarch64_regs arm_regs_union.aarch64_r
# define arm_regs arm_regs_union.arm_r
+uint64_t *const aarch64_sp_ptr = (uint64_t *) &aarch64_regs.sp;
+uint32_t *const arm_sp_ptr = (uint32_t *) &arm_regs.ARM_sp;
static struct iovec aarch64_io = {
.iov_base = &arm_regs_union
};
+# define ARCH_REGS_FOR_GETREGSET arm_regs_union
+# define ARCH_IOVEC_FOR_GETREGSET aarch64_io
#elif defined(ALPHA)
static long alpha_r0;
static long alpha_a3;
#elif defined(AVR32)
static struct pt_regs avr32_regs;
+# define ARCH_REGS_FOR_GETREGS avr32_regs
#elif defined(SPARC) || defined(SPARC64)
struct pt_regs sparc_regs; /* not static */
-#elif defined(LINUX_MIPSN32)
-static long long mips_a3;
-static long long mips_r2;
+# define ARCH_REGS_FOR_GETREGS sparc_regs
#elif defined(MIPS)
-static long mips_a3;
-static long mips_r2;
+struct mips_regs mips_regs; /* not static */
+/* PTRACE_GETREGS on MIPS is available since linux v2.6.15. */
+# define ARCH_REGS_FOR_GETREGS mips_regs
#elif defined(S390) || defined(S390X)
-static long s390_gpr2;
+/* PTRACE_GETREGSET on S390 is available since linux v2.6.27. */
+static struct user_regs_struct s390_regset;
+unsigned long *const s390_frame_ptr = &s390_regset.gprs[15];
+# define ARCH_REGS_FOR_GETREGSET s390_regset
#elif defined(HPPA)
static long hppa_r28;
#elif defined(SH)
@@ -771,7 +764,8 @@
#elif defined(CRISV10) || defined(CRISV32)
static long cris_r10;
#elif defined(TILE)
-struct pt_regs tile_regs;
+struct pt_regs tile_regs; /* not static */
+# define ARCH_REGS_FOR_GETREGS tile_regs
#elif defined(MICROBLAZE)
static long microblaze_r3;
#elif defined(OR1K)
@@ -787,177 +781,189 @@
# define ARCH_REGS_FOR_GETREGSET arc_regs
#endif
+static long get_regs_error;
+
+#if defined(SPARC) || defined(SPARC64) || defined(IA64) || defined(SH)
+long
+getrval2(struct tcb *tcp)
+{
+ long val;
+
+# if defined(SPARC) || defined(SPARC64)
+ val = sparc_regs.u_regs[U_REG_O1];
+# elif defined(SH)
+ if (upeek(tcp->pid, 4*(REG_REG0+1), &val) < 0)
+ return -1;
+# elif defined(IA64)
+ val = ia64_regs.gr[9];
+# endif
+
+ return val;
+}
+#endif
+
void
print_pc(struct tcb *tcp)
{
-#define PRINTBADPC tprintf(sizeof(long) == 4 ? "[????????] " : \
- sizeof(long) == 8 ? "[????????????????] " : \
- NULL /* crash */)
+ const char *fmt;
+ const char *bad;
+
+#ifdef current_wordsize
+# define pc_wordsize current_wordsize
+#else
+# define pc_wordsize personality_wordsize[tcp->currpers]
+#endif
+
+ if (pc_wordsize == 4) {
+ fmt = "[%08lx] ";
+ bad = "[????????] ";
+ } else {
+ fmt = "[%016lx] ";
+ bad = "[????????????????] ";
+ }
+
+#undef pc_wordsize
+#define PRINTBADPC tprints(bad)
+
if (get_regs_error) {
PRINTBADPC;
return;
}
+
#if defined(I386)
- tprintf("[%08lx] ", i386_regs.eip);
-#elif defined(S390) || defined(S390X)
- long psw;
- if (upeek(tcp->pid, PT_PSWADDR, &psw) < 0) {
- PRINTBADPC;
- return;
- }
-# ifdef S390
- tprintf("[%08lx] ", psw);
-# elif S390X
- tprintf("[%016lx] ", psw);
-# endif
+ tprintf(fmt, i386_regs.eip);
#elif defined(X86_64) || defined(X32)
- if (x86_io.iov_len == sizeof(i386_regs)) {
- tprintf("[%08x] ", (unsigned) i386_regs.eip);
- } else {
-# if defined(X86_64)
- tprintf("[%016lx] ", (unsigned long) x86_64_regs.rip);
-# elif defined(X32)
- /* Note: this truncates 64-bit rip to 32 bits */
- tprintf("[%08lx] ", (unsigned long) x86_64_regs.rip);
-# endif
- }
+ if (x86_io.iov_len == sizeof(i386_regs))
+ tprintf(fmt, (unsigned long) i386_regs.eip);
+ else
+ tprintf(fmt, (unsigned long) x86_64_regs.rip);
+#elif defined(S390) || defined(S390X)
+ tprintf(fmt, s390_regset.psw.addr);
#elif defined(IA64)
- long ip;
- if (upeek(tcp->pid, PT_B0, &ip) < 0) {
- PRINTBADPC;
- return;
- }
- tprintf("[%08lx] ", ip);
+ tprintf(fmt, ia64_regs.br[0]);
#elif defined(POWERPC)
- long pc = ppc_regs.nip;
-# ifdef POWERPC64
- tprintf("[%016lx] ", pc);
-# else
- tprintf("[%08lx] ", pc);
-# endif
+ tprintf(fmt, ppc_regs.nip);
#elif defined(M68K)
long pc;
if (upeek(tcp->pid, 4*PT_PC, &pc) < 0) {
- tprints("[????????] ");
+ PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(ALPHA)
long pc;
if (upeek(tcp->pid, REG_PC, &pc) < 0) {
- tprints("[????????????????] ");
+ PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(SPARC)
- tprintf("[%08lx] ", sparc_regs.pc);
+ tprintf(fmt, sparc_regs.pc);
#elif defined(SPARC64)
- tprintf("[%08lx] ", sparc_regs.tpc);
+ tprintf(fmt, sparc_regs.tpc);
#elif defined(HPPA)
long pc;
if (upeek(tcp->pid, PT_IAOQ0, &pc) < 0) {
- tprints("[????????] ");
+ PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
-#elif defined(MIPS)
- long pc;
- if (upeek(tcp->pid, REG_EPC, &pc) < 0) {
- tprints("[????????] ");
- return;
- }
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
+#elif defined MIPS
+ tprintf(fmt, (unsigned long) mips_REG_EPC);
#elif defined(SH)
long pc;
if (upeek(tcp->pid, 4*REG_PC, &pc) < 0) {
- tprints("[????????] ");
+ PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(SH64)
long pc;
if (upeek(tcp->pid, REG_PC, &pc) < 0) {
- tprints("[????????????????] ");
+ PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
-#elif defined(ARM)
- tprintf("[%08lx] ", arm_regs.ARM_pc);
+ tprintf(fmt, pc);
#elif defined(AARCH64)
- /* tprintf("[%016lx] ", aarch64_regs.regs[???]); */
+ if (aarch64_io.iov_len == sizeof(arm_regs))
+ tprintf(fmt, (unsigned long) arm_regs.ARM_pc);
+ else
+ tprintf(fmt, (unsigned long) aarch64_regs.pc);
+#elif defined(ARM)
+ tprintf(fmt, arm_regs.ARM_pc);
#elif defined(AVR32)
- tprintf("[%08lx] ", avr32_regs.pc);
+ tprintf(fmt, avr32_regs.pc);
#elif defined(BFIN)
long pc;
if (upeek(tcp->pid, PT_PC, &pc) < 0) {
PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(CRISV10)
long pc;
if (upeek(tcp->pid, 4*PT_IRP, &pc) < 0) {
PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(CRISV32)
long pc;
if (upeek(tcp->pid, 4*PT_ERP, &pc) < 0) {
PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(TILE)
-# ifdef _LP64
- tprintf("[%016lx] ", (unsigned long) tile_regs.pc);
-# else
- tprintf("[%08lx] ", (unsigned long) tile_regs.pc);
-# endif
+ tprintf(fmt, (unsigned long) tile_regs.pc);
#elif defined(OR1K)
- tprintf("[%08lx] ", or1k_regs.pc);
+ tprintf(fmt, or1k_regs.pc);
#elif defined(METAG)
- tprintf("[%08lx] ", metag_regs.pc);
+ tprintf(fmt, metag_regs.pc);
#elif defined(XTENSA)
long pc;
if (upeek(tcp->pid, REG_PC, &pc) < 0) {
PRINTBADPC;
return;
}
- tprintf("[%08lx] ", pc);
+ tprintf(fmt, pc);
#elif defined(ARC)
- tprintf("[%08lx] ", arc_regs.efa);
+ tprintf(fmt, arc_regs.efa);
+#else
+# warning print_pc is not implemented for this architecture
+ PRINTBADPC;
#endif /* architecture */
}
-/* Shuffle syscall numbers so that we don't have huge gaps in syscall table.
- * The shuffling should be reversible: shuffle_scno(shuffle_scno(n)) == n.
+/*
+ * Shuffle syscall numbers so that we don't have huge gaps in syscall table.
+ * The shuffling should be an involution: shuffle_scno(shuffle_scno(n)) == n.
*/
#if defined(ARM) || defined(AARCH64) /* So far only 32-bit ARM needs this */
static long
shuffle_scno(unsigned long scno)
{
- if (scno <= ARM_LAST_ORDINARY_SYSCALL)
+ if (scno < ARM_FIRST_SHUFFLED_SYSCALL)
return scno;
/* __ARM_NR_cmpxchg? Swap with LAST_ORDINARY+1 */
- if (scno == 0x000ffff0)
- return ARM_LAST_ORDINARY_SYSCALL+1;
- if (scno == ARM_LAST_ORDINARY_SYSCALL+1)
+ if (scno == ARM_FIRST_SHUFFLED_SYSCALL)
return 0x000ffff0;
+ if (scno == 0x000ffff0)
+ return ARM_FIRST_SHUFFLED_SYSCALL;
- /* Is it ARM specific syscall?
- * Swap with [LAST_ORDINARY+2, LAST_ORDINARY+2 + LAST_SPECIAL] range.
+#define ARM_SECOND_SHUFFLED_SYSCALL (ARM_FIRST_SHUFFLED_SYSCALL + 1)
+ /*
+ * Is it ARM specific syscall?
+ * Swap [0x000f0000, 0x000f0000 + LAST_SPECIAL] range
+ * with [SECOND_SHUFFLED, SECOND_SHUFFLED + LAST_SPECIAL] range.
*/
- if (scno >= 0x000f0000
- && scno <= 0x000f0000 + ARM_LAST_SPECIAL_SYSCALL
- ) {
- return scno - 0x000f0000 + (ARM_LAST_ORDINARY_SYSCALL+2);
+ if (scno >= 0x000f0000 &&
+ scno <= 0x000f0000 + ARM_LAST_SPECIAL_SYSCALL) {
+ return scno - 0x000f0000 + ARM_SECOND_SHUFFLED_SYSCALL;
}
- if (/* scno >= ARM_LAST_ORDINARY_SYSCALL+2 - always true */ 1
- && scno <= (ARM_LAST_ORDINARY_SYSCALL+2) + ARM_LAST_SPECIAL_SYSCALL
- ) {
- return scno + 0x000f0000 - (ARM_LAST_ORDINARY_SYSCALL+2);
+ if (scno <= ARM_SECOND_SHUFFLED_SYSCALL + ARM_LAST_SPECIAL_SYSCALL) {
+ return scno + 0x000f0000 - ARM_SECOND_SHUFFLED_SYSCALL;
}
return scno;
@@ -1012,71 +1018,43 @@
}
#endif
-#ifndef get_regs
-long get_regs_error;
-
-#if defined(PTRACE_GETREGSET) && defined(NT_PRSTATUS)
-static void get_regset(pid_t pid)
+void
+clear_regs(void)
{
-/* constant iovec */
-# if defined(ARM) \
- || defined(I386) \
- || defined(METAG) \
- || defined(OR1K) \
- || defined(ARC)
+ get_regs_error = -1;
+}
+
+#if defined ARCH_REGS_FOR_GETREGSET
+static long
+get_regset(pid_t pid)
+{
+# ifdef ARCH_IOVEC_FOR_GETREGSET
+ /* variable iovec */
+ ARCH_IOVEC_FOR_GETREGSET.iov_len = sizeof(ARCH_REGS_FOR_GETREGSET);
+ return ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS,
+ &ARCH_IOVEC_FOR_GETREGSET);
+# else
+ /* constant iovec */
static struct iovec io = {
.iov_base = &ARCH_REGS_FOR_GETREGSET,
.iov_len = sizeof(ARCH_REGS_FOR_GETREGSET)
};
- get_regs_error = ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS, &io);
+ return ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS, &io);
-/* variable iovec */
-# elif defined(X86_64) || defined(X32)
- /* x86_io.iov_base = &x86_regs_union; - already is */
- x86_io.iov_len = sizeof(x86_regs_union);
- get_regs_error = ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS, &x86_io);
-# elif defined(AARCH64)
- /* aarch64_io.iov_base = &arm_regs_union; - already is */
- aarch64_io.iov_len = sizeof(arm_regs_union);
- get_regs_error = ptrace(PTRACE_GETREGSET, pid, NT_PRSTATUS, &aarch64_io);
-# else
-# warning both PTRACE_GETREGSET and NT_PRSTATUS are available but not yet used
# endif
}
-#endif /* PTRACE_GETREGSET && NT_PRSTATUS */
+#endif /* ARCH_REGS_FOR_GETREGSET */
void
get_regs(pid_t pid)
{
-/* PTRACE_GETREGSET only */
-# if defined(METAG) || defined(OR1K) || defined(X32) || defined(AARCH64) || defined(ARC)
- get_regset(pid);
-
-/* PTRACE_GETREGS only */
-# elif defined(AVR32)
- get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &avr32_regs);
-# elif defined(TILE)
- get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &tile_regs);
-# elif defined(SPARC) || defined(SPARC64)
- get_regs_error = ptrace(PTRACE_GETREGS, pid, (char *)&sparc_regs, 0);
-# elif defined(POWERPC)
- static bool old_kernel = 0;
- if (old_kernel)
- goto old;
- get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, (long) &ppc_regs);
- if (get_regs_error && errno == EIO) {
- old_kernel = 1;
- old:
- get_regs_error = powerpc_getregs_old(pid);
- }
-
-/* try PTRACE_GETREGSET first, fallback to PTRACE_GETREGS */
-# else
-# if defined(PTRACE_GETREGSET) && defined(NT_PRSTATUS)
+#ifdef ARCH_REGS_FOR_GETREGSET
+# ifdef X86_64
+ /* Try PTRACE_GETREGSET first, fallback to PTRACE_GETREGS. */
static int getregset_support;
if (getregset_support >= 0) {
- get_regset(pid);
+ get_regs_error = get_regset(pid);
if (getregset_support > 0)
return;
if (get_regs_error >= 0) {
@@ -1087,12 +1065,6 @@
return;
getregset_support = -1;
}
-# endif /* PTRACE_GETREGSET && NT_PRSTATUS */
-# if defined(ARM)
- get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &arm_regs);
-# elif defined(I386)
- get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &i386_regs);
-# elif defined(X86_64)
/* Use old method, with unreliable heuristical detection of 32-bitness. */
x86_io.iov_len = sizeof(x86_64_regs);
get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &x86_64_regs);
@@ -1120,12 +1092,34 @@
i386_regs.esp = x86_64_regs.rsp;
/* i386_regs.xss = x86_64_regs.ss; */
}
-# else
-# error unhandled architecture
-# endif /* ARM || I386 || X86_64 */
+# else /* !X86_64 */
+ /* Assume that PTRACE_GETREGSET works. */
+ get_regs_error = get_regset(pid);
# endif
+#elif defined ARCH_REGS_FOR_GETREGS
+# if defined SPARC || defined SPARC64
+ /* SPARC systems have the meaning of data and addr reversed */
+ get_regs_error = ptrace(PTRACE_GETREGS, pid, (char *)&ARCH_REGS_FOR_GETREGS, 0);
+# elif defined POWERPC
+ static bool old_kernel = 0;
+ if (old_kernel)
+ goto old;
+ get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &ARCH_REGS_FOR_GETREGS);
+ if (get_regs_error && errno == EIO) {
+ old_kernel = 1;
+ old:
+ get_regs_error = powerpc_getregs_old(pid);
+ }
+# else
+ /* Assume that PTRACE_GETREGS works. */
+ get_regs_error = ptrace(PTRACE_GETREGS, pid, NULL, &ARCH_REGS_FOR_GETREGS);
+# endif
+
+#else /* !ARCH_REGS_FOR_GETREGSET && !ARCH_REGS_FOR_GETREGS */
+# warning get_regs is not implemented for this architecture yet
+ get_regs_error = 0;
+#endif
}
-#endif /* !get_regs */
/* Returns:
* 0: "ignore this ptrace stop", bail out of trace_syscall_entering() silently.
@@ -1139,87 +1133,7 @@
long scno = 0;
#if defined(S390) || defined(S390X)
- if (upeek(tcp->pid, PT_GPR2, &s390_gpr2) < 0)
- return -1;
-
- if (s390_gpr2 != -ENOSYS) {
- /*
- * Since kernel version 2.5.44 the scno gets passed in gpr2.
- */
- scno = s390_gpr2;
- } else {
- /*
- * Old style of "passing" the scno via the SVC instruction.
- */
- long psw;
- long opcode, offset_reg, tmp;
- void *svc_addr;
- static const int gpr_offset[16] = {
- PT_GPR0, PT_GPR1, PT_ORIGGPR2, PT_GPR3,
- PT_GPR4, PT_GPR5, PT_GPR6, PT_GPR7,
- PT_GPR8, PT_GPR9, PT_GPR10, PT_GPR11,
- PT_GPR12, PT_GPR13, PT_GPR14, PT_GPR15
- };
-
- if (upeek(tcp->pid, PT_PSWADDR, &psw) < 0)
- return -1;
- errno = 0;
- opcode = ptrace(PTRACE_PEEKTEXT, tcp->pid, (char *)(psw - sizeof(long)), 0);
- if (errno) {
- perror_msg("peektext(psw-oneword)");
- return -1;
- }
-
- /*
- * We have to check if the SVC got executed directly or via an
- * EXECUTE instruction. In case of EXECUTE it is necessary to do
- * instruction decoding to derive the system call number.
- * Unfortunately the opcode sizes of EXECUTE and SVC are differently,
- * so that this doesn't work if a SVC opcode is part of an EXECUTE
- * opcode. Since there is no way to find out the opcode size this
- * is the best we can do...
- */
- if ((opcode & 0xff00) == 0x0a00) {
- /* SVC opcode */
- scno = opcode & 0xff;
- }
- else {
- /* SVC got executed by EXECUTE instruction */
-
- /*
- * Do instruction decoding of EXECUTE. If you really want to
- * understand this, read the Principles of Operations.
- */
- svc_addr = (void *) (opcode & 0xfff);
-
- tmp = 0;
- offset_reg = (opcode & 0x000f0000) >> 16;
- if (offset_reg && (upeek(tcp->pid, gpr_offset[offset_reg], &tmp) < 0))
- return -1;
- svc_addr += tmp;
-
- tmp = 0;
- offset_reg = (opcode & 0x0000f000) >> 12;
- if (offset_reg && (upeek(tcp->pid, gpr_offset[offset_reg], &tmp) < 0))
- return -1;
- svc_addr += tmp;
-
- scno = ptrace(PTRACE_PEEKTEXT, tcp->pid, svc_addr, 0);
- if (errno)
- return -1;
-# if defined(S390X)
- scno >>= 48;
-# else
- scno >>= 16;
-# endif
- tmp = 0;
- offset_reg = (opcode & 0x00f00000) >> 20;
- if (offset_reg && (upeek(tcp->pid, gpr_offset[offset_reg], &tmp) < 0))
- return -1;
-
- scno = (scno | tmp) & 0xff;
- }
- }
+ scno = s390_regset.gprs[2];
#elif defined(POWERPC)
scno = ppc_regs.gpr[0];
# ifdef POWERPC64
@@ -1263,8 +1177,22 @@
scno = x86_64_regs.orig_rax;
currpers = 0;
if (scno & __X32_SYSCALL_BIT) {
- scno -= __X32_SYSCALL_BIT;
- currpers = 2;
+ /*
+ * Syscall number -1 requires special treatment:
+ * it might be a side effect of SECCOMP_RET_ERRNO
+ * filtering that sets orig_rax to -1
+ * in some versions of linux kernel.
+ * If that is the case, then
+ * __X32_SYSCALL_BIT logic does not apply.
+ */
+ if ((long long) x86_64_regs.orig_rax != -1) {
+ scno -= __X32_SYSCALL_BIT;
+ currpers = 2;
+ } else {
+# ifdef X32
+ currpers = 2;
+# endif
+ }
}
}
# elif 0
@@ -1332,16 +1260,10 @@
# endif
update_personality(tcp, currpers);
#elif defined(IA64)
-# define IA64_PSR_IS ((long)1 << 34)
- long psr;
- if (upeek(tcp->pid, PT_CR_IPSR, &psr) >= 0)
- ia64_ia32mode = ((psr & IA64_PSR_IS) != 0);
if (ia64_ia32mode) {
- if (upeek(tcp->pid, PT_R1, &scno) < 0)
- return -1;
+ scno = ia64_regs.gr[0];
} else {
- if (upeek(tcp->pid, PT_R15, &scno) < 0)
- return -1;
+ scno = ia64_regs.gr[15];
}
#elif defined(AARCH64)
switch (aarch64_io.iov_len) {
@@ -1378,7 +1300,7 @@
if (errno)
return -1;
/* EABI syscall convention? */
- if (scno != 0xef000000) {
+ if ((unsigned long) scno != 0xef000000) {
/* No, it's OABI */
if ((scno & 0x0ff00000) != 0x0f900000) {
fprintf(stderr, "pid %d unknown syscall trap 0x%08lx\n",
@@ -1398,30 +1320,11 @@
#elif defined(M68K)
if (upeek(tcp->pid, 4*PT_ORIG_D0, &scno) < 0)
return -1;
-#elif defined(LINUX_MIPSN32)
- unsigned long long regs[38];
-
- if (ptrace(PTRACE_GETREGS, tcp->pid, NULL, (long) ®s) < 0)
- return -1;
- mips_a3 = regs[REG_A3];
- mips_r2 = regs[REG_V0];
-
- scno = mips_r2;
- if (!SCNO_IN_RANGE(scno)) {
- if (mips_a3 == 0 || mips_a3 == -1) {
- if (debug_flag)
- fprintf(stderr, "stray syscall exit: v0 = %ld\n", scno);
- return 0;
- }
- }
#elif defined(MIPS)
- if (upeek(tcp->pid, REG_A3, &mips_a3) < 0)
- return -1;
- if (upeek(tcp->pid, REG_V0, &scno) < 0)
- return -1;
+ scno = mips_REG_V0;
if (!SCNO_IN_RANGE(scno)) {
- if (mips_a3 == 0 || mips_a3 == -1) {
+ if (mips_REG_A3 == 0 || mips_REG_A3 == (uint64_t) -1) {
if (debug_flag)
fprintf(stderr, "stray syscall exit: v0 = %ld\n", scno);
return 0;
@@ -1578,159 +1481,51 @@
return 1;
}
-/* Called at each syscall entry.
- * Returns:
- * 0: "ignore this ptrace stop", bail out of trace_syscall_entering() silently.
- * 1: ok, continue in trace_syscall_entering().
- * other: error, trace_syscall_entering() should print error indicator
- * ("????" etc) and bail out.
+/*
+ * Cannot rely on __kernel_[u]long_t being defined,
+ * it is quite a recent feature of <asm/posix_types.h>.
*/
-static int
-syscall_fixup_on_sysenter(struct tcb *tcp)
-{
- /* A common case of "not a syscall entry" is post-execve SIGTRAP */
-#if defined(I386)
- if (i386_regs.eax != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (eax = %ld)\n", i386_regs.eax);
- return 0;
- }
-#elif defined(X86_64) || defined(X32)
- {
- long rax;
- if (x86_io.iov_len == sizeof(i386_regs)) {
- /* Sign extend from 32 bits */
- rax = (int32_t)i386_regs.eax;
- } else {
- /* Note: in X32 build, this truncates 64 to 32 bits */
- rax = x86_64_regs.rax;
- }
- if (rax != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (rax = %ld)\n", rax);
- return 0;
- }
- }
-#elif defined(M68K)
- /* TODO? Eliminate upeek's in arches below like we did in x86 */
- if (upeek(tcp->pid, 4*PT_D0, &m68k_d0) < 0)
- return -1;
- if (m68k_d0 != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (d0 = %ld)\n", m68k_d0);
- return 0;
- }
-#elif defined(IA64)
- if (upeek(tcp->pid, PT_R10, &ia64_r10) < 0)
- return -1;
- if (upeek(tcp->pid, PT_R8, &ia64_r8) < 0)
- return -1;
- if (ia64_ia32mode && ia64_r8 != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (r8 = %ld)\n", ia64_r8);
- return 0;
- }
-#elif defined(CRISV10) || defined(CRISV32)
- if (upeek(tcp->pid, 4*PT_R10, &cris_r10) < 0)
- return -1;
- if (cris_r10 != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (r10 = %ld)\n", cris_r10);
- return 0;
- }
-#elif defined(MICROBLAZE)
- if (upeek(tcp->pid, 3 * 4, µblaze_r3) < 0)
- return -1;
- if (microblaze_r3 != -ENOSYS) {
- if (debug_flag)
- fprintf(stderr, "not a syscall entry (r3 = %ld)\n", microblaze_r3);
- return 0;
- }
-#endif
- return 1;
-}
-
-static void
-internal_fork(struct tcb *tcp)
-{
-#if defined S390 || defined S390X || defined CRISV10 || defined CRISV32
-# define ARG_FLAGS 1
+#ifdef __kernel_long_t
+typedef __kernel_long_t kernel_long_t;
+typedef __kernel_ulong_t kernel_ulong_t;
#else
-# define ARG_FLAGS 0
-#endif
-#ifndef CLONE_UNTRACED
-# define CLONE_UNTRACED 0x00800000
-#endif
- if ((ptrace_setoptions
- & (PTRACE_O_TRACECLONE | PTRACE_O_TRACEFORK | PTRACE_O_TRACEVFORK))
- == (PTRACE_O_TRACECLONE | PTRACE_O_TRACEFORK | PTRACE_O_TRACEVFORK))
- return;
-
- if (!followfork)
- return;
-
- if (entering(tcp)) {
- /*
- * We won't see the new child if clone is called with
- * CLONE_UNTRACED, so we keep the same logic with that option
- * and don't trace it.
- */
- if ((tcp->s_ent->sys_func == sys_clone)
- && (tcp->u_arg[ARG_FLAGS] & CLONE_UNTRACED)
- )
- return;
- setbpt(tcp);
- } else {
- if (tcp->flags & TCB_BPTSET)
- clearbpt(tcp);
- }
-}
-
-#if defined(TCB_WAITEXECVE)
-static void
-internal_exec(struct tcb *tcp)
-{
- /* Maybe we have post-execve SIGTRAP suppressed? */
- if (ptrace_setoptions & PTRACE_O_TRACEEXEC)
- return; /* yes, no need to do anything */
-
- if (exiting(tcp) && syserror(tcp))
- /* Error in execve, no post-execve SIGTRAP expected */
- tcp->flags &= ~TCB_WAITEXECVE;
- else
- tcp->flags |= TCB_WAITEXECVE;
-}
-#endif
-
-static void
-syscall_fixup_for_fork_exec(struct tcb *tcp)
-{
- /*
- * We must always trace a few critical system calls in order to
- * correctly support following forks in the presence of tracing
- * qualifiers.
- */
- int (*func)();
-
- func = tcp->s_ent->sys_func;
-
- if ( sys_fork == func
- || sys_clone == func
- ) {
- internal_fork(tcp);
- return;
- }
-
-#if defined(TCB_WAITEXECVE)
- if ( sys_execve == func
-# if defined(SPARC) || defined(SPARC64)
- || sys_execv == func
+# ifdef X32
+typedef long long kernel_long_t;
+typedef unsigned long long kernel_ulong_t;
+# else
+typedef long kernel_long_t;
+typedef unsigned long kernel_ulong_t;
# endif
- ) {
- internal_exec(tcp);
- return;
+#endif
+
+/*
+ * Check the syscall return value register value for whether it is
+ * a negated errno code indicating an error, or a success return value.
+ */
+static inline bool
+is_negated_errno(kernel_ulong_t val)
+{
+ /* Linux kernel defines MAX_ERRNO to 4095. */
+ kernel_ulong_t max = -(kernel_long_t) 4095;
+
+#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
+ if (current_wordsize < sizeof(val)) {
+ val = (uint32_t) val;
+ max = (uint32_t) max;
+ }
+#elif defined X32
+ /*
+ * current_wordsize is 4 even in personality 0 (native X32)
+ * but truncation _must not_ be done in it.
+ * can't check current_wordsize here!
+ */
+ if (current_personality != 0) {
+ val = (uint32_t) val;
+ max = (uint32_t) max;
}
#endif
+
+ return val >= max;
}
/* Return -1 on error or 1 on success (never 0!) */
@@ -1742,30 +1537,25 @@
nargs = tcp->s_ent->nargs;
#if defined(S390) || defined(S390X)
- for (i = 0; i < nargs; ++i)
- if (upeek(tcp->pid, i==0 ? PT_ORIGGPR2 : PT_GPR2 + i*sizeof(long), &tcp->u_arg[i]) < 0)
- return -1;
+ (void)i;
+ (void)nargs;
+ tcp->u_arg[0] = s390_regset.orig_gpr2;
+ tcp->u_arg[1] = s390_regset.gprs[3];
+ tcp->u_arg[2] = s390_regset.gprs[4];
+ tcp->u_arg[3] = s390_regset.gprs[5];
+ tcp->u_arg[4] = s390_regset.gprs[6];
+ tcp->u_arg[5] = s390_regset.gprs[7];
#elif defined(ALPHA)
for (i = 0; i < nargs; ++i)
if (upeek(tcp->pid, REG_A0+i, &tcp->u_arg[i]) < 0)
return -1;
#elif defined(IA64)
if (!ia64_ia32mode) {
- unsigned long *out0, cfm, sof, sol;
- long rbs_end;
- /* be backwards compatible with kernel < 2.4.4... */
-# ifndef PT_RBS_END
-# define PT_RBS_END PT_AR_BSP
-# endif
-
- if (upeek(tcp->pid, PT_RBS_END, &rbs_end) < 0)
- return -1;
- if (upeek(tcp->pid, PT_CFM, (long *) &cfm) < 0)
- return -1;
-
- sof = (cfm >> 0) & 0x7f;
- sol = (cfm >> 7) & 0x7f;
- out0 = ia64_rse_skip_regs((unsigned long *) rbs_end, -sof + sol);
+ unsigned long *rbs_end =
+ (unsigned long *) ia64_regs.ar[PT_AUR_BSP];
+ unsigned long sof = (ia64_regs.cfm >> 0) & 0x7f;
+ unsigned long sol = (ia64_regs.cfm >> 7) & 0x7f;
+ unsigned long *out0 = ia64_rse_skip_regs(rbs_end, -sof + sol);
for (i = 0; i < nargs; ++i) {
if (umoven(tcp, (unsigned long) ia64_rse_skip_regs(out0, i),
@@ -1773,48 +1563,45 @@
return -1;
}
} else {
- static const int argreg[MAX_ARGS] = { PT_R11 /* EBX = out0 */,
- PT_R9 /* ECX = out1 */,
- PT_R10 /* EDX = out2 */,
- PT_R14 /* ESI = out3 */,
- PT_R15 /* EDI = out4 */,
- PT_R13 /* EBP = out5 */};
-
- for (i = 0; i < nargs; ++i) {
- if (upeek(tcp->pid, argreg[i], &tcp->u_arg[i]) < 0)
- return -1;
- /* truncate away IVE sign-extension */
- tcp->u_arg[i] &= 0xffffffff;
- }
+ (void)i;
+ (void)nargs;
+ /* truncate away IVE sign-extension */
+ tcp->u_arg[0] = 0xffffffff & ia64_regs.gr[11]; /* EBX */
+ tcp->u_arg[1] = 0xffffffff & ia64_regs.gr[ 9]; /* ECX */
+ tcp->u_arg[2] = 0xffffffff & ia64_regs.gr[10]; /* EDX */
+ tcp->u_arg[3] = 0xffffffff & ia64_regs.gr[14]; /* ESI */
+ tcp->u_arg[4] = 0xffffffff & ia64_regs.gr[15]; /* EDI */
+ tcp->u_arg[5] = 0xffffffff & ia64_regs.gr[13]; /* EBP */
}
-#elif defined(LINUX_MIPSN32) || defined(LINUX_MIPSN64)
- /* N32 and N64 both use up to six registers. */
- unsigned long long regs[38];
-
- if (ptrace(PTRACE_GETREGS, tcp->pid, NULL, (long) ®s) < 0)
- return -1;
-
- for (i = 0; i < nargs; ++i) {
- tcp->u_arg[i] = regs[REG_A0 + i];
-# if defined(LINUX_MIPSN32)
- tcp->ext_arg[i] = regs[REG_A0 + i];
-# endif
- }
-#elif defined(MIPS)
+#elif defined LINUX_MIPSN64
+ (void)i;
+ (void)nargs;
+ tcp->u_arg[0] = mips_REG_A0;
+ tcp->u_arg[1] = mips_REG_A1;
+ tcp->u_arg[2] = mips_REG_A2;
+ tcp->u_arg[3] = mips_REG_A3;
+ tcp->u_arg[4] = mips_REG_A4;
+ tcp->u_arg[5] = mips_REG_A5;
+#elif defined LINUX_MIPSN32
+ (void)i;
+ (void)nargs;
+ tcp->u_arg[0] = tcp->ext_arg[0] = mips_REG_A0;
+ tcp->u_arg[1] = tcp->ext_arg[1] = mips_REG_A1;
+ tcp->u_arg[2] = tcp->ext_arg[2] = mips_REG_A2;
+ tcp->u_arg[3] = tcp->ext_arg[3] = mips_REG_A3;
+ tcp->u_arg[4] = tcp->ext_arg[4] = mips_REG_A4;
+ tcp->u_arg[5] = tcp->ext_arg[5] = mips_REG_A5;
+#elif defined LINUX_MIPSO32
+ (void)i;
+ (void)nargs;
+ tcp->u_arg[0] = mips_REG_A0;
+ tcp->u_arg[1] = mips_REG_A1;
+ tcp->u_arg[2] = mips_REG_A2;
+ tcp->u_arg[3] = mips_REG_A3;
if (nargs > 4) {
- long sp;
-
- if (upeek(tcp->pid, REG_SP, &sp) < 0)
- return -1;
- for (i = 0; i < 4; ++i)
- if (upeek(tcp->pid, REG_A0 + i, &tcp->u_arg[i]) < 0)
- return -1;
- umoven(tcp, sp + 16, (nargs - 4) * sizeof(tcp->u_arg[0]),
+ umoven(tcp, mips_REG_SP + 4 * 4,
+ (nargs - 4) * sizeof(tcp->u_arg[0]),
(char *)(tcp->u_arg + 4));
- } else {
- for (i = 0; i < nargs; ++i)
- if (upeek(tcp->pid, REG_A0 + i, &tcp->u_arg[i]) < 0)
- return -1;
}
#elif defined(POWERPC)
(void)i;
@@ -1966,24 +1753,11 @@
{
int res, scno_good;
-#if defined TCB_WAITEXECVE
- if (tcp->flags & TCB_WAITEXECVE) {
- /* This is the post-execve SIGTRAP. */
- tcp->flags &= ~TCB_WAITEXECVE;
- return 0;
- }
-#endif
-
scno_good = res = (get_regs_error ? -1 : get_scno(tcp));
if (res == 0)
return res;
- if (res == 1) {
- res = syscall_fixup_on_sysenter(tcp);
- if (res == 0)
- return res;
- if (res == 1)
- res = get_syscall_args(tcp);
- }
+ if (res == 1)
+ res = get_syscall_args(tcp);
if (res != 1) {
printleader(tcp);
@@ -2026,9 +1800,6 @@
}
#endif
- if (need_fork_exec_workarounds)
- syscall_fixup_for_fork_exec(tcp);
-
if (!(tcp->qual_flg & QUAL_TRACE)
|| (tracing_paths && !pathtrace_match(tcp))
) {
@@ -2077,61 +1848,19 @@
static int
get_syscall_result(struct tcb *tcp)
{
-#if defined(S390) || defined(S390X)
- if (upeek(tcp->pid, PT_GPR2, &s390_gpr2) < 0)
- return -1;
-#elif defined(POWERPC)
- /* already done by get_regs */
-#elif defined(AVR32)
+#if defined ARCH_REGS_FOR_GETREGSET || defined ARCH_REGS_FOR_GETREGS
/* already done by get_regs */
#elif defined(BFIN)
if (upeek(tcp->pid, PT_R0, &bfin_r0) < 0)
return -1;
-#elif defined(I386)
- /* already done by get_regs */
-#elif defined(X86_64) || defined(X32)
- /* already done by get_regs */
-#elif defined(IA64)
-# define IA64_PSR_IS ((long)1 << 34)
- long psr;
- if (upeek(tcp->pid, PT_CR_IPSR, &psr) >= 0)
- ia64_ia32mode = ((psr & IA64_PSR_IS) != 0);
- if (upeek(tcp->pid, PT_R8, &ia64_r8) < 0)
- return -1;
- if (upeek(tcp->pid, PT_R10, &ia64_r10) < 0)
- return -1;
-#elif defined(ARM)
- /* already done by get_regs */
-#elif defined(AARCH64)
- /* register reading already done by get_regs */
-
- /* Used to do this, but we did it on syscall entry already: */
- /* We are in 64-bit mode (personality 1) if register struct is aarch64_regs,
- * else it's personality 0.
- */
- /*update_personality(tcp, aarch64_io.iov_len == sizeof(aarch64_regs));*/
#elif defined(M68K)
if (upeek(tcp->pid, 4*PT_D0, &m68k_d0) < 0)
return -1;
-#elif defined(LINUX_MIPSN32)
- unsigned long long regs[38];
-
- if (ptrace(PTRACE_GETREGS, tcp->pid, NULL, (long) ®s) < 0)
- return -1;
- mips_a3 = regs[REG_A3];
- mips_r2 = regs[REG_V0];
-#elif defined(MIPS)
- if (upeek(tcp->pid, REG_A3, &mips_a3) < 0)
- return -1;
- if (upeek(tcp->pid, REG_V0, &mips_r2) < 0)
- return -1;
#elif defined(ALPHA)
if (upeek(tcp->pid, REG_A3, &alpha_a3) < 0)
return -1;
if (upeek(tcp->pid, REG_R0, &alpha_r0) < 0)
return -1;
-#elif defined(SPARC) || defined(SPARC64)
- /* already done by get_regs */
#elif defined(HPPA)
if (upeek(tcp->pid, PT_GR28, &hppa_r28) < 0)
return -1;
@@ -2146,76 +1875,18 @@
#elif defined(CRISV10) || defined(CRISV32)
if (upeek(tcp->pid, 4*PT_R10, &cris_r10) < 0)
return -1;
-#elif defined(TILE)
- /* already done by get_regs */
#elif defined(MICROBLAZE)
if (upeek(tcp->pid, 3 * 4, µblaze_r3) < 0)
return -1;
-#elif defined(OR1K)
- /* already done by get_regs */
-#elif defined(METAG)
- /* already done by get_regs */
#elif defined(XTENSA)
if (upeek(tcp->pid, REG_A_BASE + 2, &xtensa_a2) < 0)
return -1;
-#elif defined(ARC)
- /* already done by get_regs */
+#else
+# error get_syscall_result is not implemented for this architecture
#endif
return 1;
}
-/* Called at each syscall exit */
-static void
-syscall_fixup_on_sysexit(struct tcb *tcp)
-{
-#if defined(S390) || defined(S390X)
- if ((tcp->flags & TCB_WAITEXECVE)
- && (s390_gpr2 == -ENOSYS || s390_gpr2 == tcp->scno)) {
- /*
- * Return from execve.
- * Fake a return value of zero. We leave the TCB_WAITEXECVE
- * flag set for the post-execve SIGTRAP to see and reset.
- */
- s390_gpr2 = 0;
- }
-#endif
-}
-
-/*
- * Check the syscall return value register value for whether it is
- * a negated errno code indicating an error, or a success return value.
- */
-static inline int
-is_negated_errno(unsigned long int val)
-{
- unsigned long int max = -(long int) nerrnos;
-#if SUPPORTED_PERSONALITIES > 1 && SIZEOF_LONG > 4
- if (current_wordsize < sizeof(val)) {
- val = (unsigned int) val;
- max = (unsigned int) max;
- }
-#endif
- return val > max;
-}
-
-#if defined(X32)
-static inline int
-is_negated_errno_x32(unsigned long long val)
-{
- unsigned long long max = -(long long) nerrnos;
- /*
- * current_wordsize is 4 even in personality 0 (native X32)
- * but truncation _must not_ be done in it.
- * can't check current_wordsize here!
- */
- if (current_personality != 0) {
- val = (uint32_t) val;
- max = (uint32_t) max;
- }
- return val > max;
-}
-#endif
-
/* Returns:
* 1: ok, continue in trace_syscall_exiting().
* -1: error, trace_syscall_exiting() should print error indicator
@@ -2230,12 +1901,12 @@
check_errno = 0;
}
#if defined(S390) || defined(S390X)
- if (check_errno && is_negated_errno(s390_gpr2)) {
+ if (check_errno && is_negated_errno(s390_regset.gprs[2])) {
tcp->u_rval = -1;
- u_error = -s390_gpr2;
+ u_error = -s390_regset.gprs[2];
}
else {
- tcp->u_rval = s390_gpr2;
+ tcp->u_rval = s390_regset.gprs[2];
}
#elif defined(I386)
if (check_errno && is_negated_errno(i386_regs.eax)) {
@@ -2245,11 +1916,16 @@
else {
tcp->u_rval = i386_regs.eax;
}
-#elif defined(X86_64)
- long rax;
+#elif defined(X86_64) || defined(X32)
+ /*
+ * In X32, return value is 64-bit (llseek uses one).
+ * Using merely "long rax" would not work.
+ */
+ kernel_long_t rax;
+
if (x86_io.iov_len == sizeof(i386_regs)) {
/* Sign extend from 32 bits */
- rax = (int32_t)i386_regs.eax;
+ rax = (int32_t) i386_regs.eax;
} else {
rax = x86_64_regs.rax;
}
@@ -2259,32 +1935,14 @@
}
else {
tcp->u_rval = rax;
- }
-#elif defined(X32)
- /* In X32, return value is 64-bit (llseek uses one).
- * Using merely "long rax" would not work.
- */
- long long rax;
- if (x86_io.iov_len == sizeof(i386_regs)) {
- /* Sign extend from 32 bits */
- rax = (int32_t)i386_regs.eax;
- } else {
- rax = x86_64_regs.rax;
- }
- /* Careful: is_negated_errno() works only on longs */
- if (check_errno && is_negated_errno_x32(rax)) {
- tcp->u_rval = -1;
- u_error = -rax;
- }
- else {
- tcp->u_rval = rax; /* truncating */
+# ifdef X32
+ /* tcp->u_rval contains a truncated value */
tcp->u_lrval = rax;
+# endif
}
#elif defined(IA64)
if (ia64_ia32mode) {
- int err;
-
- err = (int)ia64_r8;
+ int err = ia64_regs.gr[8];
if (check_errno && is_negated_errno(err)) {
tcp->u_rval = -1;
u_error = -err;
@@ -2293,22 +1951,22 @@
tcp->u_rval = err;
}
} else {
- if (check_errno && ia64_r10) {
+ if (check_errno && ia64_regs.gr[10]) {
tcp->u_rval = -1;
- u_error = ia64_r8;
+ u_error = ia64_regs.gr[8];
} else {
- tcp->u_rval = ia64_r8;
+ tcp->u_rval = ia64_regs.gr[8];
}
}
#elif defined(MIPS)
- if (check_errno && mips_a3) {
+ if (check_errno && mips_REG_A3) {
tcp->u_rval = -1;
- u_error = mips_r2;
+ u_error = mips_REG_V0;
} else {
- tcp->u_rval = mips_r2;
-# if defined(LINUX_MIPSN32)
- tcp->u_lrval = mips_r2;
+# if defined LINUX_MIPSN32
+ tcp->u_lrval = mips_REG_V0;
# endif
+ tcp->u_rval = mips_REG_V0;
}
#elif defined(POWERPC)
if (check_errno && (ppc_regs.ccr & 0x10000000)) {
@@ -2493,17 +2151,21 @@
if (func == sys_read ||
func == sys_pread ||
func == sys_recv ||
- func == sys_recvfrom)
+ func == sys_recvfrom) {
dumpstr(tcp, tcp->u_arg[1], tcp->u_rval);
- else if (func == sys_readv)
+ return;
+ } else if (func == sys_readv) {
dumpiov(tcp, tcp->u_arg[2], tcp->u_arg[1]);
+ return;
#if HAVE_SENDMSG
- else if (func == sys_recvmsg)
+ } else if (func == sys_recvmsg) {
dumpiov_in_msghdr(tcp, tcp->u_arg[1]);
- else if (func == sys_recvmmsg)
+ return;
+ } else if (func == sys_recvmmsg) {
dumpiov_in_mmsghdr(tcp, tcp->u_arg[1]);
+ return;
#endif
- return;
+ }
}
if (qual_flags[tcp->u_arg[0]] & QUAL_WRITE) {
if (func == sys_write ||
@@ -2519,7 +2181,6 @@
else if (func == sys_sendmmsg)
dumpiov_in_mmsghdr(tcp, tcp->u_arg[1]);
#endif
- return;
}
}
@@ -2547,10 +2208,7 @@
#endif
res = (get_regs_error ? -1 : get_syscall_result(tcp));
if (res == 1) {
- syscall_fixup_on_sysexit(tcp); /* never fails */
get_error(tcp); /* never fails */
- if (need_fork_exec_workarounds)
- syscall_fixup_for_fork_exec(tcp);
if (filtered(tcp) || hide_log_until_execve)
goto ret;
}
@@ -2673,13 +2331,12 @@
tprints("= ? ERESTART_RESTARTBLOCK (Interrupted by signal)");
break;
default:
- if (u_error < 0)
- tprintf("= -1 E??? (errno %ld)", u_error);
- else if ((unsigned long) u_error < nerrnos)
+ if ((unsigned long) u_error < nerrnos
+ && errnoent[u_error])
tprintf("= -1 %s (%s)", errnoent[u_error],
strerror(u_error));
else
- tprintf("= -1 ERRNO_%ld (%s)", u_error,
+ tprintf("= -1 ERRNO_%lu (%s)", u_error,
strerror(u_error));
break;
}
@@ -2692,7 +2349,13 @@
else {
switch (sys_res & RVAL_MASK) {
case RVAL_HEX:
- tprintf("= %#lx", tcp->u_rval);
+#if SUPPORTED_PERSONALITIES > 1
+ if (current_wordsize < sizeof(long))
+ tprintf("= %#x",
+ (unsigned int) tcp->u_rval);
+ else
+#endif
+ tprintf("= %#lx", tcp->u_rval);
break;
case RVAL_OCTAL:
tprintf("= %#lo", tcp->u_rval);
diff --git a/sysinfo.c b/sysinfo.c
index ab5044b..21a6246 100644
--- a/sysinfo.c
+++ b/sysinfo.c
@@ -13,39 +13,41 @@
umove(tcp, tcp->u_arg[0], &si) < 0) {
tprintf("%#lx", tcp->u_arg[0]);
} else {
- tprintf("{uptime=%lu"
- ", loads=[%lu, %lu, %lu]"
- ", totalram=%lu"
- ", freeram=%lu"
- ", sharedram=%lu"
- ", bufferram=%lu"
- ", totalswap=%lu"
- ", freeswap=%lu"
+ tprintf("{uptime=%llu"
+ ", loads=[%llu, %llu, %llu]"
+ ", totalram=%llu"
+ ", freeram=%llu"
+ ", sharedram=%llu"
+ ", bufferram=%llu"
+ ", totalswap=%llu"
+ ", freeswap=%llu"
", procs=%u"
#ifdef HAVE_STRUCT_SYSINFO_TOTALHIGH
- ", totalhigh=%lu"
+ ", totalhigh=%llu"
#endif
#ifdef HAVE_STRUCT_SYSINFO_FREEHIGH
- ", freehigh=%lu"
+ ", freehigh=%llu"
#endif
#ifdef HAVE_STRUCT_SYSINFO_MEM_UNIT
", mem_unit=%u"
#endif
"}",
- si.uptime
- , si.loads[0], si.loads[1], si.loads[2]
- , si.totalram
- , si.freeram
- , si.sharedram
- , si.bufferram
- , si.totalswap
- , si.freeswap
+ (unsigned long long) si.uptime
+ , (unsigned long long) si.loads[0]
+ , (unsigned long long) si.loads[1]
+ , (unsigned long long) si.loads[2]
+ , (unsigned long long) si.totalram
+ , (unsigned long long) si.freeram
+ , (unsigned long long) si.sharedram
+ , (unsigned long long) si.bufferram
+ , (unsigned long long) si.totalswap
+ , (unsigned long long) si.freeswap
, (unsigned) si.procs
#ifdef HAVE_STRUCT_SYSINFO_TOTALHIGH
- , si.totalhigh
+ , (unsigned long long) si.totalhigh
#endif
#ifdef HAVE_STRUCT_SYSINFO_FREEHIGH
- , si.freehigh
+ , (unsigned long long) si.freehigh
#endif
#ifdef HAVE_STRUCT_SYSINFO_MEM_UNIT
, si.mem_unit
diff --git a/sysmips.c b/sysmips.c
index 521b081..6728b8a 100644
--- a/sysmips.c
+++ b/sysmips.c
@@ -23,10 +23,14 @@
tprintf("%ld, %ld, %ld", tcp->u_arg[1], tcp->u_arg[2], tcp->u_arg[3]);
} else if (tcp->u_arg[0] == SETNAME) {
char nodename[__NEW_UTS_LEN + 1];
- if (umovestr(tcp, tcp->u_arg[1], (__NEW_UTS_LEN + 1), nodename) < 0)
- tprintf(", %#lx", tcp->u_arg[1]);
- else
- tprintf(", \"%.*s\"", (int)(__NEW_UTS_LEN + 1), nodename);
+ tprints(", ");
+ if (umovestr(tcp, tcp->u_arg[1], (__NEW_UTS_LEN + 1),
+ nodename) < 0) {
+ tprintf("%#lx", tcp->u_arg[1]);
+ } else {
+ print_quoted_string(nodename, __NEW_UTS_LEN + 1,
+ QUOTE_0_TERMINATED);
+ }
} else if (tcp->u_arg[0] == MIPS_ATOMIC_SET) {
tprintf(", %#lx, 0x%lx", tcp->u_arg[1], tcp->u_arg[2]);
} else if (tcp->u_arg[0] == MIPS_FIXADE) {
diff --git a/term.c b/term.c
index d1c9b65..b2811f2 100644
--- a/term.c
+++ b/term.c
@@ -44,7 +44,8 @@
#include "xlat/baud_options.h"
#include "xlat/modem_flags.h"
-int term_ioctl(struct tcb *tcp, long code, long arg)
+int
+term_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
struct termios tios;
struct termio tio;
diff --git a/test/.gitignore b/test/.gitignore
index c73b64a..b69ccab 100644
--- a/test/.gitignore
+++ b/test/.gitignore
@@ -1,14 +1,13 @@
-vfork
-fork
-sig
-skodic
-clone
-leaderkill
childthread
-sigkill_rain
-wait_must_be_interruptible
-threaded_execve
+clone
+fork
+leaderkill
mtd
+seccomp
+sig
+sigkill_rain
+skodic
+threaded_execve
ubi
-select
-sigreturn
+vfork
+wait_must_be_interruptible
diff --git a/test/Makefile b/test/Makefile
index cc7d47a..56fcd4c 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -3,7 +3,7 @@
PROGS = \
vfork fork sig skodic clone leaderkill childthread \
sigkill_rain wait_must_be_interruptible threaded_execve \
- mtd ubi select sigreturn
+ mtd ubi seccomp
all: $(PROGS)
diff --git a/test/README b/test/README
index 7fae09b..069bd0f 100644
--- a/test/README
+++ b/test/README
@@ -1,3 +1,6 @@
+This directory contains some manual tests.
+For automated tests, see ../tests/.
+
To run a test:
* Run make
* Run resulting executable(s) under strace
diff --git a/test/seccomp.c b/test/seccomp.c
new file mode 100644
index 0000000..b305d38
--- /dev/null
+++ b/test/seccomp.c
@@ -0,0 +1,93 @@
+#include <stddef.h>
+#include <unistd.h>
+#include <errno.h>
+#include <sys/prctl.h>
+#include <sys/syscall.h>
+#include <linux/audit.h>
+#include <linux/filter.h>
+#include <linux/seccomp.h>
+
+#if defined __i386__
+# define SECCOMP_ARCH AUDIT_ARCH_I386
+#elif defined __x86_64__
+# define SECCOMP_ARCH AUDIT_ARCH_X86_64
+#elif defined __arm__
+# define SECCOMP_ARCH AUDIT_ARCH_ARM
+#elif defined __arm64__ || defined __aarch64__
+# define SECCOMP_ARCH AUDIT_ARCH_AARCH64
+#else
+# error unsupported architecture
+#endif
+
+#define SOCK_FILTER_KILL_PROCESS \
+ BPF_STMT(BPF_RET | BPF_K, SECCOMP_RET_KILL)
+
+#define SOCK_FILTER_DENY_SYSCALL(nr, err) \
+ BPF_JUMP(BPF_JMP | BPF_JEQ | BPF_K, __NR_ ## nr, 0, 1), \
+ BPF_STMT(BPF_RET | BPF_K, SECCOMP_RET_ERRNO | (SECCOMP_RET_DATA & (err)))
+
+#define SOCK_FILTER_ALLOW_SYSCALL(nr) \
+ BPF_JUMP(BPF_JMP | BPF_JEQ | BPF_K, __NR_ ## nr, 0, 1), \
+ BPF_STMT(BPF_RET | BPF_K, SECCOMP_RET_ALLOW)
+
+static const struct sock_filter filter[] = {
+ /* load architecture */
+ BPF_STMT(BPF_LD | BPF_W | BPF_ABS, (offsetof (struct seccomp_data, arch))),
+ /* jump forward 1 instruction if architecture matches */
+ BPF_JUMP(BPF_JMP | BPF_JEQ | BPF_K, SECCOMP_ARCH, 1, 0),
+ /* kill process */
+ SOCK_FILTER_KILL_PROCESS,
+
+ /* load syscall number */
+ BPF_STMT(BPF_LD | BPF_W | BPF_ABS, offsetof(struct seccomp_data, nr)),
+
+ /* allow syscalls */
+ SOCK_FILTER_ALLOW_SYSCALL(close),
+ SOCK_FILTER_ALLOW_SYSCALL(exit),
+ SOCK_FILTER_ALLOW_SYSCALL(exit_group),
+
+ /* deny syscalls */
+ SOCK_FILTER_DENY_SYSCALL(sync, EBUSY),
+ SOCK_FILTER_DENY_SYSCALL(setsid, EACCES),
+ SOCK_FILTER_DENY_SYSCALL(getpid, EPERM),
+ SOCK_FILTER_DENY_SYSCALL(munlockall, SECCOMP_RET_DATA),
+
+ /* kill process */
+ SOCK_FILTER_KILL_PROCESS
+};
+
+static const struct sock_fprog prog = {
+ .len = sizeof(filter) / sizeof(filter[0]),
+ .filter = (struct sock_filter *) filter,
+};
+
+int
+main(void)
+{
+ int fds[2];
+
+ close(0);
+ close(1);
+ if (pipe(fds))
+ return 77;
+
+ if (prctl(PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0))
+ return 77;
+
+ if (prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, &prog))
+ return 77;
+
+ if (close(0) || close(1))
+ _exit(1);
+
+#define TEST_DENIED_SYSCALL(nr, err, fail) \
+ if (errno = 0, syscall(__NR_ ## nr, 0xbad, 0xf00d, 0xdead, 0xbeef, err, fail) != -1 || err != errno) \
+ close(-fail)
+
+ TEST_DENIED_SYSCALL(sync, EBUSY, 2);
+ TEST_DENIED_SYSCALL(setsid, EACCES, 3);
+ TEST_DENIED_SYSCALL(getpid, EPERM, 4);
+ TEST_DENIED_SYSCALL(munlockall, SECCOMP_RET_DATA, 5);
+
+ _exit(0);
+}
diff --git a/test/select.c b/test/select.c
deleted file mode 100644
index 0810fff..0000000
--- a/test/select.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* dave@treblig.org */
-#include <sys/select.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-char buffer[1024*1024*2];
-
-int main()
-{
- fd_set rds;
- struct timeval timeout;
-
- FD_ZERO(&rds);
- FD_SET(2, &rds);
- /* Start with a nice simple select */
- select(3, &rds, &rds, &rds, NULL);
-
- /* Now the crash case that trinity found, negative nfds
- * but with a pointer to a large chunk of valid memory.
- */
- FD_ZERO((fd_set*)buffer);
- FD_SET(2,(fd_set*)buffer);
- select(-1, (fd_set *)buffer, NULL, NULL, NULL);
-
- /* Another variant, with nfds exceeding allowed limit. */
- timeout.tv_sec = 0;
- timeout.tv_usec = 100;
- select(FD_SETSIZE + 1, (fd_set *)buffer, NULL, NULL, &timeout);
-
- return 0;
-}
diff --git a/test/sigreturn.c b/test/sigreturn.c
deleted file mode 100644
index 246a3ce..0000000
--- a/test/sigreturn.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Check that strace output contains RT_1 RT_3 RT_31 RT_32 here:
- * rt_sigprocmask(SIG_BLOCK, [CHLD RT_1 RT_3 RT_31 RT_32], NULL, 8) = 0
- * and here:
- * sigreturn() (mask [CHLD RT_1 RT_3 RT_31 RT_32]) = 0
- *
- * On x86, both 32-bit and 64-bit strace needs to be checked.
- */
-#include <stdlib.h>
-#include <unistd.h>
-#include <signal.h>
-
-void null_handler(int sig)
-{
-}
-
-int main(int argc, char *argv[])
-{
- sigset_t set;
- sigemptyset(&set);
- sigaddset(&set, SIGCHLD);
- sigaddset(&set, 33);
- sigaddset(&set, 35);
- sigaddset(&set, 63);
- sigaddset(&set, 64);
- sigprocmask(SIG_BLOCK, &set, NULL);
- signal(SIGWINCH, null_handler);
- raise(SIGWINCH);
- return 0;
-}
diff --git a/tests/.gitignore b/tests/.gitignore
index b53ef6a..8efb0ef 100644
--- a/tests/.gitignore
+++ b/tests/.gitignore
@@ -1,18 +1,30 @@
caps
+fanotify_mark
+getrandom
inet-accept-connect-send-recv
+ioctl
+ipc_msg
+ipc_sem
+ipc_shm
mmsg
net-accept-connect
netlink_inet_diag
netlink_unix_diag
+pc
scm_rights
+select
set_ptracer_any
sigaction
+sigreturn
stack-fcall
+stat
+stat32
statfs
uid
uid16
uid32
uio
+unix-pair-send-recv
*.log
*.log.*
*.o
diff --git a/tests/Makefile.am b/tests/Makefile.am
index e307c57..ff5e136 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,43 +1,74 @@
# Automake input for strace tests.
AM_CFLAGS = $(WARN_CFLAGS)
+AM_CPPFLAGS = -I$(top_builddir)/$(OS)/$(ARCH) \
+ -I$(top_srcdir)/$(OS)/$(ARCH) \
+ -I$(top_builddir)/$(OS) \
+ -I$(top_srcdir)/$(OS)
check_PROGRAMS = \
- inet-accept-connect-send-recv \
caps \
+ fanotify_mark \
+ getrandom \
+ inet-accept-connect-send-recv \
+ ioctl \
+ ipc_msg \
+ ipc_sem \
+ ipc_shm \
mmsg \
net-accept-connect \
netlink_inet_diag \
netlink_unix_diag \
+ pc \
scm_rights \
+ select \
set_ptracer_any \
sigaction \
+ sigreturn \
stack-fcall \
+ stat \
+ stat32 \
statfs \
uid \
uid16 \
uid32 \
- uio
+ uio \
+ unix-pair-send-recv
+pc_LDADD = $(dl_LIBS)
+stat_CFLAGS = $(AM_CFLAGS) -D_FILE_OFFSET_BITS=64
statfs_CFLAGS = $(AM_CFLAGS) -D_FILE_OFFSET_BITS=64
uio_CFLAGS = $(AM_CFLAGS) -D_FILE_OFFSET_BITS=64
stack_fcall_SOURCES = stack-fcall.c \
stack-fcall-0.c stack-fcall-1.c stack-fcall-2.c stack-fcall-3.c
TESTS = \
- ptrace_setoptions.test \
strace-f.test \
qual_syscall.test \
+ bexecve.test \
caps.test \
+ dumpio.test \
+ fanotify_mark.test \
getdents.test \
+ getrandom.test \
+ ioctl.test \
+ ipc_msg.test \
+ ipc_shm.test \
+ ipc_sem.test \
scm_rights-fd.test \
+ select.test \
sigaction.test \
+ sigreturn.test \
stat.test \
+ stat32-v.test \
+ stat64-v.test \
statfs.test \
mmsg.test \
net.test \
net-fd.test \
net-yy.test \
+ pc.test \
+ sun_path.test \
unix-yy.test \
uid.test \
uid16.test \
@@ -55,10 +86,14 @@
EXTRA_DIST = init.sh run.sh \
caps.awk \
+ dumpio.expected \
getdents.awk \
+ getdents.out \
+ getrandom.awk \
mmsg.expected \
net-yy-accept.awk \
net-yy-connect.awk \
+ select.awk \
sigaction.awk \
uid.awk \
unix-yy-accept.awk \
diff --git a/tests/bexecve.test b/tests/bexecve.test
new file mode 100755
index 0000000..9064399
--- /dev/null
+++ b/tests/bexecve.test
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+# Check -bexecve behavior.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+args='-enone'
+what="$STRACE $args sh -c 'exec false'"
+
+$STRACE $args sh -c 'exec false' 2> "$LOG"
+if [ $? -ne 1 ]; then
+ cat "$LOG"
+ fail_ "$what: unexpected exit status"
+fi
+
+args='-bexecve -enone'
+what="$STRACE $args sh -c 'exec false'"
+
+$STRACE $args sh -c 'exec false' 2> "$LOG" || {
+ cat "$LOG"
+ fail_ "$what: unexpected exit status"
+}
+
+pattern='Process [1-9][0-9]* detached'
+
+LC_ALL=C grep -x "$pattern" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ "$what: unexpected output"
+}
+
+if LC_ALL=C grep -v -x "$pattern" "$LOG" > /dev/null; then
+ cat "$LOG"
+ fail_ "$what: unexpected output"
+fi
+
+exit 0
diff --git a/tests/caps.awk b/tests/caps.awk
index 9f99280..70f3147 100644
--- a/tests/caps.awk
+++ b/tests/caps.awk
@@ -1,8 +1,8 @@
BEGIN {
fail = 0
lines = 3
- cap = "(0|CAP_[A-Z_]+(\\|CAP_[A-Z_]+)*)"
- capget = "^capget\\({_LINUX_CAPABILITY_VERSION_3, 0}, {" cap ", " cap ", " cap "}\\) = 0$"
+ cap = "(0|CAP_[A-Z_]+(\\|CAP_[A-Z_]+)*|CAP_[A-Z_]+(\\|CAP_[A-Z_]+){37}\\|0xffffffc0)"
+ capget = "^capget\\(\\{_LINUX_CAPABILITY_VERSION_3, 0\\}, \\{" cap ", " cap ", " cap "\\}\\) = 0$"
}
NR == 1 {if (match($0, capget)) next}
diff --git a/tests/detach-running.test b/tests/detach-running.test
index 3b607d8..70e5208 100755
--- a/tests/detach-running.test
+++ b/tests/detach-running.test
@@ -4,6 +4,9 @@
. "${srcdir=.}/init.sh"
+kill -0 $$ ||
+ framework_skip_ 'kill -0 does not work'
+
check_prog grep
check_prog sleep
diff --git a/tests/detach-sleeping.test b/tests/detach-sleeping.test
index 571c345..6588d4f 100755
--- a/tests/detach-sleeping.test
+++ b/tests/detach-sleeping.test
@@ -4,6 +4,9 @@
. "${srcdir=.}/init.sh"
+kill -0 $$ ||
+ framework_skip_ 'kill -0 does not work'
+
check_prog grep
check_prog sleep
diff --git a/tests/detach-stopped.test b/tests/detach-stopped.test
index b5cf364..871a157 100755
--- a/tests/detach-stopped.test
+++ b/tests/detach-stopped.test
@@ -4,6 +4,9 @@
. "${srcdir=.}/init.sh"
+kill -0 $$ ||
+ framework_skip_ 'kill -0 does not work'
+
check_prog grep
check_prog sleep
diff --git a/tests/dumpio.expected b/tests/dumpio.expected
new file mode 100644
index 0000000..f8fd244
--- /dev/null
+++ b/tests/dumpio.expected
@@ -0,0 +1,7 @@
+sendto(0, "zyxwvutsrqponmlkjihgfedcba", 26, MSG_DONTROUTE, NULL, 0) = 26
+ | 00000 7a 79 78 77 76 75 74 73 72 71 70 6f 6e 6d 6c 6b zyxwvutsrqponmlk |
+ | 00010 6a 69 68 67 66 65 64 63 62 61 jihgfedcba |
+recvfrom(0, "abcdefghijklmnopqrstuvwxyz", 26, MSG_WAITALL, NULL, NULL) = 26
+ | 00000 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 abcdefghijklmnop |
+ | 00010 71 72 73 74 75 76 77 78 79 7a qrstuvwxyz |
++++ exited with 0 +++
diff --git a/tests/dumpio.test b/tests/dumpio.test
new file mode 100755
index 0000000..ef3792d
--- /dev/null
+++ b/tests/dumpio.test
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+# Check how dumpio works.
+
+. "${srcdir=.}/init.sh"
+
+dumpio_expected="${srcdir=.}/dumpio.expected"
+cat "$dumpio_expected" > /dev/null ||
+ fail_ "$dumpio_expected is not available"
+
+check_prog diff
+
+args='./unix-pair-send-recv abcdefghijklmnopqrstuvwxyz'
+$args ||
+ fail_ "$args failed"
+
+args="-esignal=none -esendto,recvfrom -eread=0 -ewrite=0 $args"
+$STRACE -o "$LOG" $args || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed"
+}
+
+diff "$dumpio_expected" "$LOG" ||
+ fail_ "$STRACE $args failed to dump i/o properly"
+
+exit 0
diff --git a/tests/fanotify_mark.c b/tests/fanotify_mark.c
new file mode 100644
index 0000000..7160acd
--- /dev/null
+++ b/tests/fanotify_mark.c
@@ -0,0 +1,19 @@
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#if defined HAVE_SYS_FANOTIFY_H && defined HAVE_FANOTIFY_MARK
+# include <sys/fanotify.h>
+int
+main(void)
+{
+ fanotify_mark(-1, FAN_MARK_ADD, FAN_MODIFY | FAN_ONDIR, -100, ".");
+ return 0;
+}
+#else
+int
+main(void)
+{
+ return 77;
+}
+#endif
diff --git a/tests/fanotify_mark.test b/tests/fanotify_mark.test
new file mode 100755
index 0000000..c5eb4eb
--- /dev/null
+++ b/tests/fanotify_mark.test
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+# Check fanotify_mark syscall decoding.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+./fanotify_mark || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'fanotify_mark is not available'
+ else
+ fail_ 'fanotify_mark failed'
+ fi
+}
+
+args="-efanotify_mark ./fanotify_mark"
+$STRACE -o "$LOG" $args || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed"
+}
+
+grep_log()
+{
+ local syscall="$1"; shift
+
+ LC_ALL=C grep -E -x "$syscall$*" $LOG > /dev/null || {
+ cat $LOG
+ fail_ "$STRACE $args failed to trace \"$syscall\" properly"
+ }
+}
+
+grep_log fanotify_mark '\(-1, FAN_MARK_ADD, FAN_MODIFY\|FAN_ONDIR, AT_FDCWD, "\."\) += -1.*'
+
+exit 0
diff --git a/tests/getdents.awk b/tests/getdents.awk
index 9e7b968..c230e26 100644
--- a/tests/getdents.awk
+++ b/tests/getdents.awk
@@ -8,17 +8,40 @@
d_ino = "d_ino=" i
d_off = "d_off=" i
d_reclen = "d_reclen=" len
- d_name1 = "d_name=\"\\.\""
- d_name2 = "d_name=\"\\.\\.\""
- d_type = "d_type=DT_DIR"
+ d_name_1 = "d_name=\"\\.\""
+ d_name_2 = "d_name=\"\\.\\.\""
+ d_name_3 = "d_name=\"(A\\\\n){127}Z\""
+ # Some older systems might not pass back d_type at all like Alpha.
+ d_type_dir = "d_type=DT_(DIR|UNKNOWN)"
+ d_type_reg = "d_type=DT_(REG|UNKNOWN)"
- d1_1 = "{" d_ino ", " d_off ", " d_reclen ", " d_name1 ", " d_type "}"
- d1_2 = "{" d_ino ", " d_off ", " d_reclen ", " d_name2 ", " d_type "}"
- d2_1 = "{" d_ino ", " d_off ", " d_reclen ", " d_type ", " d_name1 "}"
- d2_2 = "{" d_ino ", " d_off ", " d_reclen ", " d_type ", " d_name2 "}"
+ dirent_1 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_name_1 ", " d_type_dir "\\}"
+ dirent_2 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_name_2 ", " d_type_dir "\\}"
+ dirent_3 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_name_3 ", " d_type_reg "\\}"
- getdents = "^getdents\\(" i ", {(" d1_1 " " d1_2 "|" d1_2 " " d1_1 ")}, " len "\\) += " len "$"
- getdents64 = "^getdents64\\(" i ", {(" d2_1 " " d2_2 "|" d2_2 " " d2_1 ")}, " len "\\) += " len "$"
+ dirent64_1 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_type_dir ", " d_name_1 "\\}"
+ dirent64_2 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_type_dir ", " d_name_2 "\\}"
+ dirent64_3 = "\\{" d_ino ", " d_off ", " d_reclen ", " d_type_reg ", " d_name_3 "\\}"
+
+ d_123 = dirent_1 " " dirent_2 " " dirent_3
+ d_213 = dirent_2 " " dirent_1 " " dirent_3
+ d_132 = dirent_1 " " dirent_3 " " dirent_2
+ d_321 = dirent_3 " " dirent_2 " " dirent_1
+ d_231 = dirent_2 " " dirent_3 " " dirent_1
+ d_312 = dirent_3 " " dirent_1 " " dirent_2
+
+ d64_123 = dirent64_1 " " dirent64_2 " " dirent64_3
+ d64_213 = dirent64_2 " " dirent64_1 " " dirent64_3
+ d64_132 = dirent64_1 " " dirent64_3 " " dirent64_2
+ d64_321 = dirent64_3 " " dirent64_2 " " dirent64_1
+ d64_231 = dirent64_2 " " dirent64_3 " " dirent64_1
+ d64_312 = dirent64_3 " " dirent64_1 " " dirent64_2
+
+ dents = "\\{(" d_123 "|" d_213 "|" d_132 "|" d_321 "|" d_231 "|" d_312 ")\\}"
+ dents64 = "\\{(" d64_123 "|" d64_213 "|" d64_132 "|" d64_321 "|" d64_231 "|" d64_312 ")\\}"
+
+ getdents = "^getdents\\(" i ", " dents ", " len "\\) += " len "$"
+ getdents64 = "^getdents64\\(" i ", " dents64 ", " len "\\) += " len "$"
}
NR == 1 {if (match($0, getdents) || match($0, getdents64)) next}
diff --git a/tests/getdents.out b/tests/getdents.out
new file mode 100644
index 0000000..d2a9818
--- /dev/null
+++ b/tests/getdents.out
@@ -0,0 +1,3 @@
+getdents(3, {{d_ino=123456789, d_off=1, d_reclen=24, d_name=".", d_type=DT_DIR} {d_ino=234567890, d_off=2, d_reclen=24, d_name="..", d_type=DT_DIR} {d_ino=345678901, d_off=3, d_reclen=280, d_name="A\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nA\nZ", d_type=DT_REG}}, 4096) = 328
+getdents(3, {}, 4096) = 0
++++ exited with 0 +++
diff --git a/tests/getdents.test b/tests/getdents.test
index 5f86ac1..5200c0b 100755
--- a/tests/getdents.test
+++ b/tests/getdents.test
@@ -5,25 +5,39 @@
. "${srcdir=.}/init.sh"
check_prog awk
-check_prog grep
+awk -f "$srcdir"/getdents.awk "$srcdir"/getdents.out ||
+ framework_skip_ 'awk does not work properly'
+
check_prog ls
check_prog mkdir
-check_prog rmdir
+check_prog rm
+check_prog seq
+check_prog touch
-mkdir emptydir ||
- framework_skip_ 'failed to create an empty directory'
+dir="$LOG.dir"
+mkdir -- "$dir" ||
+ framework_skip_ 'failed to create a directory'
-ls emptydir ||
- { rmdir emptydir; framework_skip_ 'failed to list an empty directory'; }
+touch -- "$dir/$(for i in $(seq 1 127); do echo A; done; echo Z)" ||
+ framework_skip_ 'failed to create a file'
+
+ls -- "$dir" > /dev/null || {
+ rm -rf -- "$dir"
+ framework_skip_ 'failed to list a directory'
+}
args='-vegetdents,getdents64'
-$STRACE $args -o $LOG ls emptydir
+$STRACE -o "$LOG" $args ls -- "$dir" > /dev/null
rc=$?
-rmdir emptydir
-[ $rc -eq 0 ] ||
- { cat $LOG; fail_ "strace $args failed"; }
+rm -rf -- "$dir"
+[ $rc -eq 0 ] || {
+ cat "$LOG"
+ fail_ "strace $args failed"
+}
-awk -f "$srcdir"/getdents.awk $LOG ||
- { cat $LOG; fail_ "strace $args failed to trace getdents/getdents64 properly"; }
+awk -f "$srcdir"/getdents.awk "$LOG" || {
+ cat "$LOG"
+ fail_ "strace $args failed to trace getdents/getdents64 properly"
+}
exit 0
diff --git a/tests/getrandom.awk b/tests/getrandom.awk
new file mode 100644
index 0000000..4c5f6fc
--- /dev/null
+++ b/tests/getrandom.awk
@@ -0,0 +1,26 @@
+BEGIN {
+ r[1] = "^getrandom\\(\"(\\\\x[0-9a-f][0-9a-f]){3}\", 3, 0\\) += 3$"
+ r[2] = "^getrandom\\(\"(\\\\x[0-9a-f][0-9a-f]){3}\"\\.\\.\\., 4, GRND_NONBLOCK\\) += 4$"
+ r[3] = "^getrandom\\(0x[[0-9a-f]+, 4, GRND_NONBLOCK\\|GRND_RANDOM\\|0x3000\\) += -1 "
+ r[4] = "^\\+\\+\\+ exited with 0 \\+\\+\\+$"
+ lines = 4
+ fail = 0
+}
+
+NR > lines { exit 1 }
+
+{
+ if (match($0, r[NR]))
+ next
+
+ print "Line " NR " does not match."
+ fail = 1
+}
+
+END {
+ if (fail == 0 && NR != lines) {
+ fail = 1
+ print "Expected " lines " lines, found " NR " line(s)."
+ }
+ exit fail
+}
diff --git a/tests/getrandom.c b/tests/getrandom.c
new file mode 100644
index 0000000..4620f9f
--- /dev/null
+++ b/tests/getrandom.c
@@ -0,0 +1,21 @@
+#include <unistd.h>
+#include <sys/syscall.h>
+
+int
+main(void)
+{
+#ifdef __NR_getrandom
+ char buf[4];
+
+ if (syscall(__NR_getrandom, buf, sizeof(buf) - 1, 0) != sizeof(buf) - 1)
+ return 77;
+ if (syscall(__NR_getrandom, buf, sizeof(buf), 1) != sizeof(buf))
+ return 77;
+ if (syscall(__NR_getrandom, buf, sizeof(buf), 0x3003) != -1)
+ return 77;
+
+ return 0;
+#else
+ return 77;
+#endif
+}
diff --git a/tests/getrandom.test b/tests/getrandom.test
new file mode 100755
index 0000000..9117038
--- /dev/null
+++ b/tests/getrandom.test
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+# Check getrandom syscall decoding.
+
+. "${srcdir=.}/init.sh"
+
+check_prog awk
+
+./getrandom ||
+ framework_skip_ 'getrandom is not available'
+
+args="-e getrandom -xx -s3 ./getrandom"
+$STRACE -o "$LOG" $args || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed"
+}
+
+awk -f "$srcdir"/getrandom.awk "$LOG" || {
+ cat "$LOG"
+ fail_ 'unexpected output'
+}
+
+exit 0
diff --git a/tests/inet-accept-connect-send-recv.c b/tests/inet-accept-connect-send-recv.c
index 38376ae..7cd079f 100644
--- a/tests/inet-accept-connect-send-recv.c
+++ b/tests/inet-accept-connect-send-recv.c
@@ -1,5 +1,6 @@
#include <assert.h>
#include <stddef.h>
+#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/wait.h>
@@ -22,8 +23,14 @@
close(0);
close(1);
- assert(socket(PF_INET, SOCK_STREAM, 0) == 0);
- assert(bind(0, (struct sockaddr *) &addr, len) == 0);
+ if (socket(PF_INET, SOCK_STREAM, 0)) {
+ perror("socket");
+ return 77;
+ }
+ if (bind(0, (struct sockaddr *) &addr, len)) {
+ perror("bind");
+ return 77;
+ }
assert(listen(0, 5) == 0);
memset(&addr, 0, sizeof(addr));
diff --git a/tests/ioctl.c b/tests/ioctl.c
new file mode 100644
index 0000000..ca7839f
--- /dev/null
+++ b/tests/ioctl.c
@@ -0,0 +1,51 @@
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+#include <fcntl.h>
+#include <stdint.h>
+#include <unistd.h>
+#include <termios.h>
+#include <sys/ioctl.h>
+
+#ifdef HAVE_LINUX_MMTIMER_H
+# include <linux/mmtimer.h>
+#endif
+#ifdef HAVE_LINUX_HIDDEV_H
+# include <linux/hiddev.h>
+#endif
+#ifdef HAVE_LINUX_INPUT_H
+# include <linux/input.h>
+#endif
+
+#if defined MMTIMER_GETRES \
+ && defined HIDIOCGVERSION \
+ && defined HIDIOCGPHYS \
+ && defined EVIOCGBIT \
+ && defined EV_KEY
+
+int
+main(void )
+{
+ struct termios tty;
+ uint64_t data;
+
+ if (ioctl(-1, TCGETS, &tty) != -1 ||
+ ioctl(-1, MMTIMER_GETRES, &data) != -1 ||
+ ioctl(-1, HIDIOCGVERSION, &data) != -1 ||
+ ioctl(-1, HIDIOCGPHYS(8), &data) != -1 ||
+ ioctl(-1, EVIOCGBIT(EV_KEY, 8), &data) != -1 ||
+ ioctl(-1, _IOR(0xde, 0xad, data), &data) != -1)
+ return 77;
+
+ return 0;
+}
+
+#else
+
+int
+main(void )
+{
+ return 77;
+}
+
+#endif
diff --git a/tests/ioctl.test b/tests/ioctl.test
new file mode 100755
index 0000000..bdcaa50
--- /dev/null
+++ b/tests/ioctl.test
@@ -0,0 +1,40 @@
+#!/bin/sh
+
+# Check ioctl syscall decoding.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+./ioctl || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'ioctl does not behave as expected'
+ else
+ fail_ 'ioctl failed'
+ fi
+}
+
+args="-e ioctl ./ioctl"
+$STRACE -o "$LOG" $args || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed"
+}
+
+grep_log()
+{
+ local syscall="$1"; shift
+
+ LC_ALL=C grep -E -x "$syscall$*" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed to trace \"$syscall\" properly"
+ }
+}
+
+grep_log ioctl '\(-1, TCGETS, 0x[0-9a-f]+\) += -1 EBADF .*'
+grep_log ioctl '\(-1, MMTIMER_GETRES, 0x[0-9a-f]+\) += -1 EBADF .*'
+grep_log ioctl '\(-1, HIDIOCGRDESCSIZE or HIDIOCGVERSION, 0x[0-9a-f]+\) += -1 EBADF .*'
+grep_log ioctl '\(-1, HIDIOCGPHYS\(8\), 0x[0-9a-f]+\) += -1 EBADF .*'
+grep_log ioctl '\(-1, EVIOCGBIT\(EV_KEY, 8\), 0x[0-9a-f]+\) += -1 EBADF .*'
+grep_log ioctl '\(-1, _IOC\(_IOC_READ, 0xde, 0xad, 0x08\), 0x[0-9a-f]+\) += -1 EBADF .*'
+
+exit 0
diff --git a/tests/ipc_msg.c b/tests/ipc_msg.c
new file mode 100644
index 0000000..ed2bfd6
--- /dev/null
+++ b/tests/ipc_msg.c
@@ -0,0 +1,48 @@
+#include <stdio.h>
+#include <errno.h>
+#include <sys/msg.h>
+
+int
+main(void)
+{
+ int rc, id;
+ struct msqid_ds ds;
+
+ id = msgget(IPC_PRIVATE, 0600);
+ if (id < 0)
+ return 77;
+ printf("msgget\\(IPC_PRIVATE, 0600\\) += %d\n", id);
+
+ if (msgctl(id, IPC_STAT, &ds))
+ goto fail;
+ printf("msgctl\\(%d, (IPC_64\\|)?IPC_STAT, %p\\) += 0\n", id, &ds);
+
+ int max = msgctl(0, MSG_INFO, &ds);
+ if (max < 0)
+ goto fail;
+ printf("msgctl\\(0, (IPC_64\\|)?MSG_INFO, %p\\) += %d\n", &ds, max);
+
+ rc = msgctl(id, MSG_STAT, &ds);
+ if (rc != id) {
+ /*
+ * In linux < v2.6.24-rc1 the first argument must be
+ * an index in the kernel's internal array.
+ */
+ if (-1 != rc || EINVAL != errno)
+ goto fail;
+ printf("msgctl\\(%d, (IPC_64\\|)?MSG_STAT, %p\\) += -1 EINVAL \\(Invalid argument\\)\n", id, &ds);
+ } else {
+ printf("msgctl\\(%d, (IPC_64\\|)?MSG_STAT, %p\\) += %d\n", id, &ds, id);
+ }
+
+ rc = 0;
+done:
+ if (msgctl(id, IPC_RMID, 0) < 0)
+ return 1;
+ printf("msgctl\\(%d, (IPC_64\\|)?IPC_RMID, 0\\) += 0\n", id);
+ return rc;
+
+fail:
+ rc = 1;
+ goto done;
+}
diff --git a/tests/ipc_msg.test b/tests/ipc_msg.test
new file mode 100755
index 0000000..e0d27ed
--- /dev/null
+++ b/tests/ipc_msg.test
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# Check decoding of ipc msgget/msgctl syscalls
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+OUT="$LOG.out"
+
+./ipc_msg > /dev/null || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'ipc msgget/msgctl syscalls do not behave as expected'
+ else
+ fail_ 'ipc_msg failed'
+ fi
+}
+
+args="-eipc ./ipc_msg"
+$STRACE -o "$LOG" $args > "$OUT" &&
+exp_lines=$(wc -l < "$OUT") &&
+matched_lines=$(LC_ALL=C grep -c -E -x -f "$OUT" "$LOG") &&
+test $exp_lines -eq $matched_lines || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+}
+
+rm -f "$OUT"
+
+exit 0
diff --git a/tests/ipc_sem.c b/tests/ipc_sem.c
new file mode 100644
index 0000000..64450b8
--- /dev/null
+++ b/tests/ipc_sem.c
@@ -0,0 +1,65 @@
+#include <stdio.h>
+#include <errno.h>
+#include <sys/sem.h>
+
+union semun {
+ int val; /* Value for SETVAL */
+ struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */
+ unsigned short *array; /* Array for GETALL, SETALL */
+ struct seminfo *__buf; /* Buffer for IPC_INFO
+ (Linux-specific) */
+};
+
+int
+main(void)
+{
+ int rc, id;
+ union semun un;
+ struct semid_ds ds;
+ struct seminfo info;
+
+ id = semget(IPC_PRIVATE, 1, 0600);
+ if (id < 0)
+ return 77;
+ printf("semget\\(IPC_PRIVATE, 1, 0600\\) += %d\n", id);
+
+ un.buf = &ds;
+ if (semctl(id, 0, IPC_STAT, un))
+ goto fail;
+ printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_STAT, \\[?%p\\]?\\) += 0\n",
+ id, &ds);
+
+ un.__buf = &info;
+ int max = semctl(0, 0, SEM_INFO, un);
+ if (max < 0)
+ goto fail;
+ printf("semctl\\(0, 0, (IPC_64\\|)?SEM_INFO, \\[?%p\\]?\\) += %d\n",
+ &info, max);
+
+ un.buf = &ds;
+ rc = semctl(id, 0, SEM_STAT, un);
+ if (rc != id) {
+ /*
+ * In linux < v2.6.24-rc1 the first argument must be
+ * an index in the kernel's internal array.
+ */
+ if (-1 != rc || EINVAL != errno)
+ goto fail;
+ printf("semctl\\(%d, 0, (IPC_64\\|)?SEM_STAT, \\[?%p\\]?\\)"
+ " += -1 EINVAL \\(Invalid argument\\)\n", id, &ds);
+ } else {
+ printf("semctl\\(%d, 0, (IPC_64\\|)?SEM_STAT, \\[?%p\\]?\\)"
+ " += %d\n", id, &ds, id);
+ }
+
+ rc = 0;
+done:
+ if (semctl(id, 0, IPC_RMID, 0) < 0)
+ return 1;
+ printf("semctl\\(%d, 0, (IPC_64\\|)?IPC_RMID, \\[?0\\]?\\) += 0\n", id);
+ return rc;
+
+fail:
+ rc = 1;
+ goto done;
+}
diff --git a/tests/ipc_sem.test b/tests/ipc_sem.test
new file mode 100755
index 0000000..ef957c3
--- /dev/null
+++ b/tests/ipc_sem.test
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# Check decoding of ipc semget/semctl syscalls
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+OUT="$LOG.out"
+
+./ipc_sem > /dev/null || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'ipc semget/semctl syscalls do not behave as expected'
+ else
+ fail_ 'ipc_sem failed'
+ fi
+}
+
+args='-eipc ./ipc_sem'
+$STRACE -o "$LOG" $args > "$OUT" &&
+exp_lines=$(wc -l < "$OUT") &&
+matched_lines=$(LC_ALL=C grep -c -E -x -f "$OUT" "$LOG") &&
+test $exp_lines -eq $matched_lines || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+}
+
+rm -f "$OUT"
+
+exit 0
diff --git a/tests/ipc_shm.c b/tests/ipc_shm.c
new file mode 100644
index 0000000..5888dc6
--- /dev/null
+++ b/tests/ipc_shm.c
@@ -0,0 +1,48 @@
+#include <stdio.h>
+#include <errno.h>
+#include <sys/shm.h>
+
+int
+main(void)
+{
+ int rc, id;
+ struct shmid_ds ds;
+
+ id = shmget(IPC_PRIVATE, 1, 0600);
+ if (id < 0)
+ return 77;
+ printf("shmget\\(IPC_PRIVATE, 1, 0600\\) += %d\n", id);
+
+ if (shmctl(id, IPC_STAT, &ds))
+ goto fail;
+ printf("shmctl\\(%d, (IPC_64\\|)?IPC_STAT, %p\\) += 0\n", id, &ds);
+
+ int max = shmctl(0, SHM_INFO, &ds);
+ if (max < 0)
+ goto fail;
+ printf("shmctl\\(0, (IPC_64\\|)?SHM_INFO, %p\\) += %d\n", &ds, max);
+
+ rc = shmctl(id, SHM_STAT, &ds);
+ if (rc != id) {
+ /*
+ * In linux < v2.6.24-rc1 the first argument must be
+ * an index in the kernel's internal array.
+ */
+ if (-1 != rc || EINVAL != errno)
+ goto fail;
+ printf("shmctl\\(%d, (IPC_64\\|)?SHM_STAT, %p\\) += -1 EINVAL \\(Invalid argument\\)\n", id, &ds);
+ } else {
+ printf("shmctl\\(%d, (IPC_64\\|)?SHM_STAT, %p\\) += %d\n", id, &ds, id);
+ }
+
+ rc = 0;
+done:
+ if (shmctl(id, IPC_RMID, 0) < 0)
+ return 1;
+ printf("shmctl\\(%d, (IPC_64\\|)?IPC_RMID, 0\\) += 0\n", id);
+ return rc;
+
+fail:
+ rc = 1;
+ goto done;
+}
diff --git a/tests/ipc_shm.test b/tests/ipc_shm.test
new file mode 100755
index 0000000..de8b47c
--- /dev/null
+++ b/tests/ipc_shm.test
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# Check decoding of ipc shmget/shmctl syscalls
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+OUT="$LOG.out"
+
+./ipc_shm > /dev/null || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'ipc shmget/shmctl syscalls do not behave as expected'
+ else
+ fail_ 'ipc_shm failed'
+ fi
+}
+
+args="-eipc ./ipc_shm"
+$STRACE -o "$LOG" $args > "$OUT" &&
+exp_lines=$(wc -l < "$OUT") &&
+matched_lines=$(LC_ALL=C grep -c -E -x -f "$OUT" "$LOG") &&
+test $exp_lines -eq $matched_lines || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+}
+
+rm -f "$OUT"
+
+exit 0
diff --git a/tests/mmsg.c b/tests/mmsg.c
index 496111b..fddd7d1 100644
--- a/tests/mmsg.c
+++ b/tests/mmsg.c
@@ -4,6 +4,7 @@
#include <sys/socket.h>
#include <unistd.h>
#include <fcntl.h>
+#include <errno.h>
#include <assert.h>
int
@@ -61,7 +62,10 @@
assert(dup2(sv[R], R) == R);
assert(close(sv[R]) == 0);
- assert(sendmmsg(W, mmh, n_mmh, 0) == n_mmh);
+ int r = sendmmsg(W, mmh, n_mmh, 0);
+ if (r < 0 && errno == ENOSYS)
+ return 77;
+ assert((size_t)r == n_mmh);
assert(close(W) == 0);
assert(recvmmsg(R, mmh, n_mmh, 0, NULL) == n_mmh);
diff --git a/tests/net-accept-connect.c b/tests/net-accept-connect.c
index 5af7d81..c9bc8e4 100644
--- a/tests/net-accept-connect.c
+++ b/tests/net-accept-connect.c
@@ -1,21 +1,36 @@
#include <assert.h>
#include <stddef.h>
#include <string.h>
+#include <signal.h>
#include <unistd.h>
#include <sys/wait.h>
#include <sys/socket.h>
#include <sys/un.h>
-#define SUN_PATH "local-stream"
-int main(void)
+static void
+handler(int sig)
+{
+ assert(close(1) == 0);
+ _exit(0);
+}
+
+int
+main(int ac, const char **av)
{
struct sockaddr_un addr = {
.sun_family = AF_UNIX,
- .sun_path = SUN_PATH
};
- socklen_t len = offsetof(struct sockaddr_un, sun_path) + sizeof SUN_PATH;
+ socklen_t len;
- unlink(SUN_PATH);
+ assert(ac == 2);
+ assert(strlen(av[1]) > 0);
+
+ strncpy(addr.sun_path, av[1], sizeof(addr.sun_path));
+ len = offsetof(struct sockaddr_un, sun_path) + strlen(av[1]) + 1;
+ if (len > sizeof(addr))
+ len = sizeof(addr);
+
+ unlink(av[1]);
close(0);
close(1);
@@ -25,6 +40,8 @@
memset(&addr, 0, sizeof addr);
assert(getsockname(0, (struct sockaddr *) &addr, &len) == 0);
+ if (len > sizeof(addr))
+ len = sizeof(addr);
pid_t pid = fork();
assert(pid >= 0);
@@ -32,18 +49,26 @@
if (pid) {
assert(accept(0, (struct sockaddr *) &addr, &len) == 1);
assert(close(0) == 0);
+ assert(kill(pid, SIGUSR1) == 0);
int status;
assert(waitpid(pid, &status, 0) == pid);
assert(status == 0);
assert(close(1) == 0);
} else {
+ sigset_t set;
+ sigemptyset(&set);
+ sigaddset(&set, SIGUSR1);
+
+ assert(sigprocmask(SIG_BLOCK, &set, NULL) == 0);
+ assert(signal(SIGUSR1, handler) != SIG_ERR);
assert(socket(PF_LOCAL, SOCK_STREAM, 0) == 1);
assert(close(0) == 0);
assert(connect(1, (struct sockaddr *) &addr, len) == 0);
- assert(close(1) == 0);
- return 0;
+ assert(sigprocmask(SIG_UNBLOCK, &set, NULL) == 0);
+ assert(pause() == 99);
+ return 1;
}
- unlink(SUN_PATH);
+ unlink(av[1]);
return 0;
}
diff --git a/tests/net-fd.test b/tests/net-fd.test
index 0f0eb5c..4c24efd 100755
--- a/tests/net-fd.test
+++ b/tests/net-fd.test
@@ -12,13 +12,14 @@
rm -f $LOG.*
-./net-accept-connect ||
+addr=net-fd-local-stream
+./net-accept-connect $addr ||
fail_ 'net-accept-connect failed'
# using -y to test socket descriptors 'paths' decoding
-args="-tt -ff -y -o $LOG -enetwork ./net-accept-connect"
-$STRACE $args ||
- fail_ "strace $args failed"
+args="-tt -ff -y -enetwork ./net-accept-connect $addr"
+$STRACE -o "$LOG" $args ||
+ fail_ "$STRACE $args failed"
"$srcdir"/../strace-log-merge $LOG > $LOG || {
cat $LOG
@@ -32,15 +33,15 @@
local syscall="$1"; shift
local prefix='[1-9][0-9]* +[0-9]+:[0-9]+:[0-9]+\.[0-9]+ +'
- LC_ALL=C grep -E -x "$prefix$syscall$@" $LOG > /dev/null || {
+ LC_ALL=C grep -E -x "$prefix$syscall$*" $LOG > /dev/null || {
cat $LOG
fail_ "strace -enetwork failed to trace \"$syscall\" properly"
}
}
-grep_log bind '\(0<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, 15\) += 0'
+grep_log bind '\(0<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 22\) += 0'
grep_log listen '\(0<socket:\[[0-9]+\]>, 5\) += 0'
-grep_log getsockname '\(0<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, \[15\]\) += 0'
+grep_log getsockname '\(0<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, \[22\]\) += 0'
grep_log accept '\(0<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), NULL\}, \[2\]\) += 1<socket:\[[0-9]+\]>'
-grep_log connect '\(1<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, 15\) += 0'
+grep_log connect '\(1<socket:\[[0-9]+\]>, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 22\) += 0'
exit 0
diff --git a/tests/net-yy-accept.awk b/tests/net-yy-accept.awk
index b3743ef..3543277 100644
--- a/tests/net-yy-accept.awk
+++ b/tests/net-yy-accept.awk
@@ -5,8 +5,8 @@
r_i = "[1-9][0-9]*"
r_port = "[1-9][0-9][0-9][0-9]+"
r_localhost = "127\\.0\\.0\\.1"
- r_bind = "^bind\\(0<TCP:\\[(" r_i ")\\]>, {sa_family=AF_INET, sin_port=htons\\(0\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)}, " r_i "\\) += 0$"
- r_getsockname = "^getsockname\\(0<TCP:\\[" r_localhost ":(" r_port ")\\]>, {sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)}, \\[" r_i "\\]\\) += 0$"
+ r_bind = "^bind\\(0<TCP:\\[(" r_i ")\\]>, \\{sa_family=AF_INET, sin_port=htons\\(0\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)\\}, " r_i "\\) += 0$"
+ r_getsockname = "^getsockname\\(0<TCP:\\[" r_localhost ":(" r_port ")\\]>, \\{sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)\\}, \\[" r_i "\\]\\) += 0$"
}
NR == 1 && /^socket\(PF_INET, SOCK_STREAM, IPPROTO_IP\) += 0$/ {next}
@@ -24,7 +24,7 @@
NR == 4 {
if (match($0, r_getsockname, a) && a[1] == a[2]) {
port_l = a[1]
- r_accept = "^accept\\(0<TCP:\\[" r_localhost ":" port_l "\\]>, {sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)}, \\[" r_i "\\]\\) += 1<TCP:\\[" r_localhost ":" port_l "->" r_localhost ":(" r_port ")\\]>$"
+ r_accept = "^accept\\(0<TCP:\\[" r_localhost ":" port_l "\\]>, \\{sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)\\}, \\[" r_i "\\]\\) += 1<TCP:\\[" r_localhost ":" port_l "->" r_localhost ":(" r_port ")\\]>$"
r_close0 = "^close\\(0<TCP:\\[" r_localhost ":" port_l "\\]>) += 0$"
next
}
diff --git a/tests/net-yy-connect.awk b/tests/net-yy-connect.awk
index 81ef47e..6761366 100644
--- a/tests/net-yy-connect.awk
+++ b/tests/net-yy-connect.awk
@@ -5,7 +5,7 @@
r_i = "[1-9][0-9]*"
r_port = "[1-9][0-9][0-9][0-9]+"
r_localhost = "127\\.0\\.0\\.1"
- r_connect = "^connect\\(0<TCP:\\[" r_i "\\]>, {sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)}, " r_i ") += 0$"
+ r_connect = "^connect\\(0<TCP:\\[" r_i "\\]>, \\{sa_family=AF_INET, sin_port=htons\\((" r_port ")\\), sin_addr=inet_addr\\(\"" r_localhost "\"\\)\\}, " r_i ") += 0$"
}
NR == 1 && /^socket\(PF_INET, SOCK_STREAM, IPPROTO_IP\) += 0$/ {next}
diff --git a/tests/net-yy.test b/tests/net-yy.test
index 85c2ede..47e3767 100755
--- a/tests/net-yy.test
+++ b/tests/net-yy.test
@@ -13,8 +13,13 @@
rm -f $LOG.* $LOG-*
-./inet-accept-connect-send-recv ||
- fail_ 'inet-accept-connect-send-recv failed'
+./inet-accept-connect-send-recv || {
+ if [ $? -eq 77 ]; then
+ framework_skip_ 'PF_INET SOCK_STREAM (CONFIG_INET_TCP_DIAG) is not available'
+ else
+ fail_ 'inet-accept-connect-send-recv failed'
+ fi
+}
./netlink_inet_diag || {
if [ $? -eq 77 ]; then
diff --git a/tests/net.test b/tests/net.test
index f0eff0c..c007271 100755
--- a/tests/net.test
+++ b/tests/net.test
@@ -8,12 +8,13 @@
rm -f $LOG.*
-./net-accept-connect ||
+addr=net-local-stream
+./net-accept-connect $addr ||
fail_ 'net-accept-connect failed'
-args="-tt -ff -o $LOG -enetwork ./net-accept-connect"
-$STRACE $args ||
- fail_ "strace $args failed"
+args="-tt -ff -enetwork ./net-accept-connect $addr"
+$STRACE -o "$LOG" $args ||
+ fail_ "$STRACE $args failed"
"$srcdir"/../strace-log-merge $LOG > $LOG || {
cat $LOG
@@ -27,7 +28,7 @@
local syscall="$1"; shift
local prefix='[1-9][0-9]* +[0-9]+:[0-9]+:[0-9]+\.[0-9]+ +'
- LC_ALL=C grep -E -x "$prefix$syscall$@" $LOG > /dev/null || {
+ LC_ALL=C grep -E -x "$prefix$syscall$*" $LOG > /dev/null || {
cat $LOG
fail_ "strace -enetwork failed to trace \"$syscall\" properly"
}
@@ -35,10 +36,10 @@
grep_log socket '\(PF_(LOCAL|UNIX|FILE), SOCK_STREAM, 0\) += 0'
grep_log socket '\(PF_(LOCAL|UNIX|FILE), SOCK_STREAM, 0\) += 1'
-grep_log bind '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, 15\) += 0'
+grep_log bind '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 19\) += 0'
grep_log listen '\(0, 5\) += 0'
-grep_log getsockname '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, \[15\]\) += 0'
+grep_log getsockname '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, \[19\]\) += 0'
grep_log accept '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), NULL\}, \[2\]\) += 1'
-grep_log connect '\(1, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="local-stream"\}, 15\) += 0'
+grep_log connect '\(1, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 19\) += 0'
exit 0
diff --git a/tests/netlink_unix_diag.c b/tests/netlink_unix_diag.c
index 7208117..979ab88 100644
--- a/tests/netlink_unix_diag.c
+++ b/tests/netlink_unix_diag.c
@@ -1,5 +1,6 @@
#include <assert.h>
#include <stddef.h>
+#include <stdint.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
@@ -8,6 +9,10 @@
#include <linux/sock_diag.h>
#include <linux/unix_diag.h>
+#if !defined NETLINK_SOCK_DIAG && defined NETLINK_INET_DIAG
+# define NETLINK_SOCK_DIAG NETLINK_INET_DIAG
+#endif
+
static int
send_query(const int fd, const int family, const int proto)
{
diff --git a/tests/pc.c b/tests/pc.c
new file mode 100644
index 0000000..4f12701
--- /dev/null
+++ b/tests/pc.c
@@ -0,0 +1,74 @@
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+#include <dlfcn.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <sys/mman.h>
+#include <sys/wait.h>
+#include <sys/sendfile.h>
+
+int main(void)
+{
+ const unsigned long pagesize = sysconf(_SC_PAGESIZE);
+
+#ifdef __s390__
+ /*
+ * The si_addr field is unreliable:
+ * https://marc.info/?l=linux-s390&m=142515870124248&w=2
+ */
+ return 77;
+#endif
+
+ /* write instruction pointer length to the log */
+ if (write(-1, NULL, 2 * sizeof(void *)) >= 0)
+ return 77;
+
+ /* just a noticeable line in the log */
+ if (munmap(&main, 0) >= 0)
+ return 77;
+
+ int pid = fork();
+ if (pid < 0)
+ return 77;
+
+ if (!pid) {
+ const unsigned long mask = ~(pagesize - 1);
+ unsigned long addr = (unsigned long) &main & mask;
+ unsigned long size = pagesize << 1;
+
+#ifdef HAVE_DLADDR
+ Dl_info info;
+ if (dladdr(&main, &info)) {
+ const unsigned long base =
+ (unsigned long) info.dli_fbase & mask;
+ if (base < addr) {
+ size += addr - base;
+ addr = base;
+ }
+ } else
+#endif
+ {
+ addr -= size;
+ size <<= 1;
+ }
+
+ /* SIGSEGV is expected */
+ (void) munmap((void *) addr, size);
+ (void) munmap((void *) addr, size);
+ return 77;
+ }
+
+ int status;
+ if (wait(&status) != pid ||
+ !WIFSIGNALED(status) ||
+ WTERMSIG(status) != SIGSEGV)
+ return 77;
+
+ /* dump process map for debug purposes */
+ close(0);
+ if (!open("/proc/self/maps", O_RDONLY))
+ (void) sendfile(1, 0, NULL, pagesize);
+
+ return 0;
+}
diff --git a/tests/pc.test b/tests/pc.test
new file mode 100755
index 0000000..a8537a2
--- /dev/null
+++ b/tests/pc.test
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+# Check -i option.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+OUT="$LOG.out"
+
+./pc > /dev/null ||
+ framework_skip_ 'munmap/fork/wait do not behave as expected'
+
+args="-if ./pc"
+$STRACE $args > "$OUT" 2> "$LOG" || {
+ cat "$LOG"
+ fail_ "$STRACE $args does not work"
+}
+
+len="$(sed -n 's/^\[[[:xdigit:]]\+\] write(-1, NULL, \([[:digit:]]\{1,2\}\))[[:space:]]\+= -1 .*/\1/p' "$LOG")" &&
+[ -n "$len" ] &&
+pid="$(sed -n 's/^\[[[:xdigit:]]\{'"$len"'\}\] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_\(KILLED\|DUMPED\), si_pid=\([[:digit:]]\+\), .*/\2/p' "$LOG")" &&
+[ -n "$pid" ] &&
+ip="$(sed -n 's/^\[pid \+'"$pid"'\] \[\([[:xdigit:]]\{'"$len"'\}\)] --- SIGSEGV {.*} ---$/\1/p' "$LOG")" &&
+[ -n "$ip" ] &&
+addr="$(echo "$ip" |sed 's/^0\+//')" &&
+[ -n "$addr" ] || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+}
+
+grep_log()
+{
+ LC_ALL=C grep -x -e "$*" < "$LOG" > /dev/null || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+ }
+}
+
+grep_log '\[[[:xdigit:]]\{'"$len"'\}\] munmap(0x[[:xdigit:]]\+, 0)[[:space:]]\+= -1 .*'
+grep_log '\[pid \+'"$pid"'\] \['"$ip"'\] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x'"$addr"'} ---'
+grep_log '\[pid \+'"$pid"'\] \[?\{'"$len"'\}\] +++ killed by SIGSEGV\( (core dumped)\)\? +++'
+grep_log '\[?\{'"$len"'\}\] +++ exited with 0 +++'
+
+rm -f "$OUT"
+
+exit 0
diff --git a/tests/ptrace_setoptions.test b/tests/ptrace_setoptions.test
deleted file mode 100755
index 87651b8..0000000
--- a/tests/ptrace_setoptions.test
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/sh
-
-# Ensure that strace tests kernel PTRACE_O_TRACECLONE
-# and PTRACE_O_TRACESYSGOOD support properly.
-
-. "${srcdir=.}/init.sh"
-
-check_prog grep
-
-[ "$(uname -s)" = Linux ] ||
- skip_ 'The kernel is not a Linux kernel'
-case "$(uname -r)" in
- 2.[6-9]*|2.[1-5][0-9]*|[3-9].*|[12][0-9]*) ;;
- *) skip_ 'The kernel is not Linux 2.6.* or newer' ;;
-esac
-
-$STRACE -df -enone / > /dev/null 2> $LOG
-grep -F -x 'ptrace_setoptions = 0xe' $LOG > /dev/null || {
- cat $LOG
- fail_ 'strace -f failed to recognize proper kernel PTRACE_O_TRACECLONE support'
-}
-
-grep -F -x 'ptrace_setoptions = 0x1f' $LOG > /dev/null || {
- cat $LOG
- fail_ 'strace -f failed to recognize proper kernel PTRACE_O_TRACESYSGOOD support'
-}
-
-$STRACE -d -enone / > /dev/null 2> $LOG
-grep -F -x 'ptrace_setoptions = 0x11' $LOG > /dev/null || {
- cat $LOG
- fail_ 'strace failed to recognize proper kernel PTRACE_O_TRACESYSGOOD support'
-}
diff --git a/tests/scm_rights-fd.test b/tests/scm_rights-fd.test
index ecf4475..1974e0d 100755
--- a/tests/scm_rights-fd.test
+++ b/tests/scm_rights-fd.test
@@ -1,6 +1,6 @@
#!/bin/sh
-# Check how SCM_RIGHTS control messages are decoded in -y mode.
+# Check how SCM_RIGHTS and SCM_CREDENTIALS control messages are decoded in -y mode.
. "${srcdir=.}/init.sh"
@@ -9,21 +9,35 @@
framework_skip_ '/proc/self/fd/ is not available'
check_prog grep
+check_prog mkdir
+check_prog rm
+check_prog seq
+check_prog touch
-rm -f $LOG.*
+rm -rf -- "$LOG".*
-./scm_rights ||
+dir="$LOG.dir"
+mkdir -- "$dir" ||
+ framework_skip_ 'failed to create a directory'
+
+file="$dir/$(for i in $(seq 1 127); do echo A; done; echo Z)"
+
+touch -- "$file" ||
+ framework_skip_ 'failed to create a file'
+
+./scm_rights /dev/zero ||
fail_ 'scm_rights failed'
-args="-tt -ff -y -xx -enetwork -o $LOG ./scm_rights"
-$STRACE $args ||
+args="-tt -ff -y -x -enetwork ./scm_rights /dev/zero"
+$STRACE -o "$LOG" $args "$file" ||
fail_ "$STRACE $args failed"
-"$srcdir"/../strace-log-merge $LOG > $LOG || {
+"$srcdir"/../strace-log-merge "$LOG" > "$LOG" || {
cat $LOG
fail_ 'strace-log-merge failed'
}
-rm -f $LOG.*
+
+rm -rf -- "$LOG".*
grep_log()
{
@@ -36,7 +50,11 @@
}
}
-grep_log sendmsg '\(1<socket:\[[0-9]+\]>, \{msg_name\(0\)=NULL, msg_iov\(1\)=\[\{"\\x00\\x00\\x00\\x00[^"]*", [1-9][0-9]*\}\], msg_controllen=[1-9][0-9]*, \{cmsg_len=[1-9][0-9]*, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, \{3</dev/null>\}\}, msg_flags=0\}, 0\) += [1-9][0-9]*'
-grep_log recvmsg '\(0<socket:\[[0-9]+\]>, \{msg_name\(0\)=NULL, msg_iov\(1\)=\[\{"\\x00\\x00\\x00\\x00[^"]*", [1-9][0-9]*\}\], msg_controllen=[1-9][0-9]*, \{cmsg_len=[1-9][0-9]*, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, \{3</dev/null>\}\}, msg_flags=0\}, 0\) += [1-9][0-9]*'
+n='[1-9][0-9]*'
+msg='\{msg_name\(0\)=NULL, msg_iov\(1\)=\[\{"\\x00\\x00\\x00\\x00[^"]*", '"$n"'\}\], msg_controllen='"$n"
+rights='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, \[3</dev/null>, 4</dev/zero>, 5</[^}>]*/(A\\n){127}Z>\]\}'
+creds='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_CREDENTIALS, \{pid='"$n"', uid=[0-9]+, gid=[0-9]+\}\}'
+grep_log sendmsg '\(1<socket:\[[0-9]+\]>, '"$msg"', \['"$rights"'\], msg_flags=0\}, 0\) += '"$n"
+grep_log recvmsg '\(0<socket:\[[0-9]+\]>, '"$msg"', \['"$creds"', '"$rights"'\], msg_flags=0\}, 0\) += '"$n"
exit 0
diff --git a/tests/scm_rights.c b/tests/scm_rights.c
index 0cced9b..0f25e01 100644
--- a/tests/scm_rights.c
+++ b/tests/scm_rights.c
@@ -7,33 +7,23 @@
#include <sys/socket.h>
#include <sys/wait.h>
-int main(void)
+int main(int ac, const char **av)
{
- union {
- struct cmsghdr cmsghdr;
- char buf[CMSG_SPACE(sizeof(int))];
- } control = {};
-
- int fd;
+ int i;
int data = 0;
struct iovec iov = {
.iov_base = &data,
.iov_len = sizeof(iov)
};
- struct msghdr mh = {
- .msg_iov = &iov,
- .msg_iovlen = 1,
- .msg_control = &control,
- .msg_controllen = sizeof(control)
- };
-
- while ((fd = open("/dev/null", O_RDWR)) < 3)
- assert(fd >= 0);
+ while ((i = open("/dev/null", O_RDWR)) < 3)
+ assert(i >= 0);
(void) close(3);
int sv[2];
assert(socketpair(AF_UNIX, SOCK_STREAM, 0, sv) == 0);
+ int one = 1;
+ assert(setsockopt(sv[0], SOL_SOCKET, SO_PASSCRED, &one, sizeof(one)) == 0);
pid_t pid = fork();
assert(pid >= 0);
@@ -43,14 +33,27 @@
assert(dup2(sv[1], 1) == 1);
assert(close(sv[1]) == 0);
- assert((fd = open("/dev/null", O_RDWR)) == 3);
+ int fds[ac];
+ assert((fds[0] = open("/dev/null", O_RDWR)) == 3);
+ for (i = 1; i < ac; ++i)
+ assert((fds[i] = open(av[i], O_RDONLY)) == i + 3);
- struct cmsghdr *cmsg = CMSG_FIRSTHDR(&mh);
- cmsg->cmsg_level = SOL_SOCKET;
- cmsg->cmsg_type = SCM_RIGHTS;
- cmsg->cmsg_len = CMSG_LEN(sizeof fd);
- memcpy(CMSG_DATA(cmsg), &fd, sizeof fd);
- mh.msg_controllen = cmsg->cmsg_len;
+ union {
+ struct cmsghdr cmsg;
+ char buf[CMSG_LEN(sizeof(fds))];
+ } control;
+
+ control.cmsg.cmsg_level = SOL_SOCKET;
+ control.cmsg.cmsg_type = SCM_RIGHTS;
+ control.cmsg.cmsg_len = CMSG_LEN(sizeof(fds));
+ memcpy(CMSG_DATA(&control.cmsg), fds, sizeof(fds));
+
+ struct msghdr mh = {
+ .msg_iov = &iov,
+ .msg_iovlen = 1,
+ .msg_control = &control,
+ .msg_controllen = sizeof(control)
+ };
assert(sendmsg(1, &mh, 0) == sizeof(iov));
assert(close(1) == 0);
@@ -63,6 +66,15 @@
assert(dup2(sv[0], 0) == 0);
assert(close(sv[0]) == 0);
+ struct cmsghdr control[4 + ac * sizeof(int) / sizeof(struct cmsghdr)];
+
+ struct msghdr mh = {
+ .msg_iov = &iov,
+ .msg_iovlen = 1,
+ .msg_control = control,
+ .msg_controllen = sizeof(control)
+ };
+
assert(recvmsg(0, &mh, 0) == sizeof(iov));
assert(close(0) == 0);
}
diff --git a/tests/select.awk b/tests/select.awk
new file mode 100644
index 0000000..688cefe
--- /dev/null
+++ b/tests/select.awk
@@ -0,0 +1,26 @@
+BEGIN {
+ r[1] = "^p?select6?\\(2, \\[0 1\\], \\[0 1\\], \\[0 1\\], NULL(, 0)?\\) += 1 \\(\\)$"
+ r[2] = "^p?select6?\\(-1, NULL, 0x[0-9a-f]+, NULL, NULL(, 0)?\\) += -1 "
+ r[3] = "^p?select6?\\(1025, \\[0\\], \\[\\], NULL, \\{0, 100(000)?\\}(, 0)?\\) += 0 \\(Timeout\\)$"
+ r[4] = "^\\+\\+\\+ exited with 0 \\+\\+\\+$"
+ lines = 4
+ fail = 0
+}
+
+NR > lines { exit 1 }
+
+{
+ if (match($0, r[NR]))
+ next
+
+ print "Line " NR " does not match."
+ fail = 1
+}
+
+END {
+ if (fail == 0 && NR != lines) {
+ fail = 1
+ print "Expected " lines " lines, found " NR " line(s)."
+ }
+ exit fail
+}
diff --git a/tests/select.c b/tests/select.c
new file mode 100644
index 0000000..4ed644d
--- /dev/null
+++ b/tests/select.c
@@ -0,0 +1,43 @@
+/*
+ * Based on test by Dr. David Alan Gilbert <dave@treblig.org>
+ */
+#include <assert.h>
+#include <unistd.h>
+#include <sys/select.h>
+
+static fd_set set[0x1000000 / sizeof(fd_set)];
+
+int main()
+{
+ int fds[2];
+ struct timeval timeout = { .tv_sec = 0, .tv_usec = 100 };
+
+ (void) close(0);
+ (void) close(1);
+ assert(pipe(fds) == 0);
+
+ /*
+ * Start with a nice simple select.
+ */
+ FD_ZERO(set);
+ FD_SET(0, set);
+ FD_SET(1, set);
+ assert(select(2, set, set, set, NULL) == 1);
+
+ /*
+ * Now the crash case that trinity found, negative nfds
+ * but with a pointer to a large chunk of valid memory.
+ */
+ FD_ZERO(set);
+ FD_SET(1,set);
+ assert(select(-1, NULL, set, NULL, NULL) == -1);
+
+ /*
+ * Another variant, with nfds exceeding FD_SETSIZE limit.
+ */
+ FD_ZERO(set);
+ FD_SET(0,set);
+ assert(select(FD_SETSIZE + 1, set, set + 1, NULL, &timeout) == 0);
+
+ return 0;
+}
diff --git a/tests/select.test b/tests/select.test
new file mode 100755
index 0000000..5d5fe54
--- /dev/null
+++ b/tests/select.test
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+# Check select syscall decoding.
+
+. "${srcdir=.}/init.sh"
+
+check_prog awk
+
+syscall=
+$STRACE -epselect6 -h > /dev/null && syscall=$syscall,pselect6
+$STRACE -eselect -h > /dev/null && syscall=$syscall,select
+test -n "$syscall" ||
+ skip_ 'select syscall is not supported on this architecture'
+
+./select ||
+ framework_skip_ 'select syscall does not behave as expected'
+
+args="-e$syscall ./select"
+$STRACE -o "$LOG" $args || {
+ cat "$LOG"
+ fail_ "$STRACE $args failed"
+}
+
+awk -f "$srcdir"/select.awk "$LOG" || {
+ cat "$LOG"
+ fail_ 'unexpected output'
+}
+
+exit 0
diff --git a/tests/sigaction.awk b/tests/sigaction.awk
index 08f49c3..01133d2 100644
--- a/tests/sigaction.awk
+++ b/tests/sigaction.awk
@@ -15,24 +15,24 @@
}
# Test 1.
-NR == 1 && /^rt_sigaction\(SIGUSR2, {SIG_IGN, \[HUP INT\], SA_RESTORER\|SA_RESTART, 0x[0-9a-f]+}, {SIG_DFL, \[\], 0}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
-NR == 1 && /^rt_sigaction\(SIGUSR2, {SIG_IGN, \[HUP INT\], SA_RESTART}, {SIG_DFL, \[\], 0}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
-NR == 1 && /^rt_sigaction\(SIGUSR2, {SIG_IGN, \[HUP INT\], SA_RESTART}, {SIG_DFL, \[\], 0}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
+NR == 1 && /^rt_sigaction\(SIGUSR2, \{SIG_IGN, \[HUP INT\], SA_RESTORER\|SA_RESTART, 0x[0-9a-f]+\}, \{SIG_DFL, \[\], 0\}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
+NR == 1 && /^rt_sigaction\(SIGUSR2, \{SIG_IGN, \[HUP INT\], SA_RESTART\}, \{SIG_DFL, \[\], 0\}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
+NR == 1 && /^rt_sigaction\(SIGUSR2, \{SIG_IGN, \[HUP INT\], SA_RESTART\}, \{SIG_DFL, \[\], 0\}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
# Test 2.
-NR == 2 && /^rt_sigaction\(SIGUSR2, {0x[0-9a-f]+, \[QUIT TERM\], SA_RESTORER\|SA_SIGINFO, 0x[0-9a-f]+}, {SIG_IGN, \[HUP INT\], SA_RESTORER\|SA_RESTART, 0x[0-9a-f]+}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
-NR == 2 && /^rt_sigaction\(SIGUSR2, {0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO}, {SIG_IGN, \[HUP INT\], SA_RESTART}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
-NR == 2 && /^rt_sigaction\(SIGUSR2, {0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO}, {SIG_IGN, \[HUP INT\], SA_RESTART}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
+NR == 2 && /^rt_sigaction\(SIGUSR2, \{0x[0-9a-f]+, \[QUIT TERM\], SA_RESTORER\|SA_SIGINFO, 0x[0-9a-f]+\}, \{SIG_IGN, \[HUP INT\], SA_RESTORER\|SA_RESTART, 0x[0-9a-f]+\}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
+NR == 2 && /^rt_sigaction\(SIGUSR2, \{0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO\}, \{SIG_IGN, \[HUP INT\], SA_RESTART\}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
+NR == 2 && /^rt_sigaction\(SIGUSR2, \{0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO\}, \{SIG_IGN, \[HUP INT\], SA_RESTART\}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
# Test 3.
-NR == 3 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, \[\], SA_RESTORER, 0x[0-9a-f]+}, {0x[0-9a-f]+, \[QUIT TERM\], SA_RESTORER\|SA_SIGINFO, 0x[0-9a-f]+}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
-NR == 3 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, \[\], 0}, {0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
-NR == 3 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, \[\], 0}, {0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
+NR == 3 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, \[\], SA_RESTORER, 0x[0-9a-f]+\}, \{0x[0-9a-f]+, \[QUIT TERM\], SA_RESTORER\|SA_SIGINFO, 0x[0-9a-f]+\}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
+NR == 3 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, \[\], 0\}, \{0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO\}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
+NR == 3 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, \[\], 0\}, \{0x[0-9a-f]+, \[QUIT TERM\], SA_SIGINFO\}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
# Test 4.
-NR == 4 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], SA_RESTORER, 0x[0-9a-f]+}, {SIG_DFL, \[\], SA_RESTORER, 0x[0-9a-f]+}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
-NR == 4 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], 0}, {SIG_DFL, \[\], 0}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
-NR == 4 && /^rt_sigaction\(SIGUSR2, {SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], 0}, {SIG_DFL, \[\], 0}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
+NR == 4 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], SA_RESTORER, 0x[0-9a-f]+\}, \{SIG_DFL, \[\], SA_RESTORER, 0x[0-9a-f]+\}, (0x[0-9a-f]+, )?(4|8|16)\) = 0$/ {next}
+NR == 4 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], 0\}, \{SIG_DFL, \[\], 0\}, (4|8|16)(, 0x[0-9a-f]+)?\) = 0$/ {next}
+NR == 4 && /^rt_sigaction\(SIGUSR2, \{SIG_DFL, ~\[HUP( ((RT|SIGRT)[^] ]+|[3-9][0-9]|1[0-9][0-9]))*\], 0\}, \{SIG_DFL, \[\], 0\}, 0x[0-9a-f]+, (4|8|16)\) = 0$/ {next}
# The last line.
NR == lines && /^\+\+\+ exited with 0 \+\+\+$/ {next}
diff --git a/tests/sigreturn.c b/tests/sigreturn.c
new file mode 100644
index 0000000..a84f65e
--- /dev/null
+++ b/tests/sigreturn.c
@@ -0,0 +1,32 @@
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+#include <stdlib.h>
+#include <signal.h>
+
+#ifdef ASM_SIGRTMIN
+# define RT_0 ASM_SIGRTMIN
+#else
+/* Linux kernel >= 3.18 defines SIGRTMIN to 32 on all architectures. */
+# define RT_0 32
+#endif
+
+static void handler(int sig)
+{
+}
+
+int main(void) {
+ sigset_t set;
+ sigemptyset(&set);
+ sigaddset(&set, SIGUSR2);
+ sigaddset(&set, SIGCHLD);
+ sigaddset(&set, RT_0 + 2);
+ sigaddset(&set, RT_0 + 3);
+ sigaddset(&set, RT_0 + 4);
+ sigaddset(&set, RT_0 + 26);
+ sigaddset(&set, RT_0 + 27);
+ sigprocmask(SIG_SETMASK, &set, NULL);
+ signal(SIGUSR1, handler);
+ raise(SIGUSR1);
+ return 0;
+}
diff --git a/tests/sigreturn.test b/tests/sigreturn.test
new file mode 100755
index 0000000..1e96ede
--- /dev/null
+++ b/tests/sigreturn.test
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# Check rt_sigprocmask and sigreturn/rt_sigreturn decoding.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+./sigreturn ||
+ fail_ 'sigreturn failed'
+
+args='-esignal ./sigreturn'
+$STRACE -o "$LOG" $args ||
+ fail_ "$STRACE $args does not work"
+
+grep_log()
+{
+ LC_ALL=C grep -E -x -e "$*" < "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ "$STRACE $args output mismatch"
+ }
+}
+
+mask='\[(USR2 CHLD|CHLD USR2) RT_2 RT_3 RT_4 RT_26 RT_27\]'
+rt_sigprocmask='rt_sigprocmask\(SIG_SETMASK, '"$mask"', NULL, [[:digit:]]+\) += 0'
+osf_sigprocmask='osf_sigprocmask\(SIG_SETMASK, '"$mask"'\) += 0 +\(old mask \[[^]]*\]\)'
+grep_log "$rt_sigprocmask|$osf_sigprocmask"
+grep_log '(rt_)?sigreturn\((\{mask='"$mask"'\})?\) += 0'
+
+
+exit 0
diff --git a/tests/stat.c b/tests/stat.c
new file mode 100644
index 0000000..2b04010
--- /dev/null
+++ b/tests/stat.c
@@ -0,0 +1,175 @@
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+#include <assert.h>
+#include <unistd.h>
+#include <stdio.h>
+#include <time.h>
+
+#if defined MAJOR_IN_SYSMACROS
+# include <sys/sysmacros.h>
+#elif defined MAJOR_IN_MKDEV
+# include <sys/mkdev.h>
+#else
+# include <sys/types.h>
+#endif
+
+#undef STAT_PREFIX
+#undef NR_stat
+
+#if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64
+# include <sys/stat.h>
+# define STAT_PREFIX "(stat(64)?\\(|newfstatat\\(AT_FDCWD, )"
+#else
+# include <sys/syscall.h>
+# if defined __NR_stat
+# define NR_stat __NR_stat
+# define STAT_PREFIX "stat\\("
+# elif defined __NR_newstat
+# define NR_stat __NR_newstat
+# define STAT_PREFIX "newstat\\("
+# endif
+# ifdef STAT_PREFIX
+/* for S_IFMT */
+# define stat libc_stat
+# define stat64 libc_stat64
+# include <sys/stat.h>
+# undef stat
+# undef stat64
+# undef st_atime
+# undef st_mtime
+# undef st_ctime
+
+# undef dev_t
+# undef ino_t
+# undef mode_t
+# undef nlink_t
+# undef uid_t
+# undef gid_t
+# undef off_t
+# undef loff_t
+# define dev_t __kernel_dev_t
+# define ino_t __kernel_ino_t
+# define mode_t __kernel_mode_t
+# define nlink_t __kernel_nlink_t
+# define uid_t __kernel_uid_t
+# define gid_t __kernel_gid_t
+# define off_t __kernel_off_t
+# define loff_t __kernel_loff_t
+# include <asm/stat.h>
+# endif /* STAT_PREFIX */
+#endif /* _FILE_OFFSET_BITS */
+
+#ifdef STAT_PREFIX
+
+static void
+print_ftype(unsigned int mode)
+{
+ if (S_ISREG(mode))
+ printf("S_IFREG");
+ else if (S_ISDIR(mode))
+ printf("S_IFDIR");
+ else if (S_ISCHR(mode))
+ printf("S_IFCHR");
+ else if (S_ISBLK(mode))
+ printf("S_IFBLK");
+ else
+ printf("%#o", mode & S_IFMT);
+}
+
+static void
+print_perms(unsigned int mode)
+{
+ printf("%#o", mode & ~S_IFMT);
+}
+
+static void
+print_time(time_t t)
+{
+ if (!t) {
+ printf("0");
+ return;
+ }
+
+ struct tm *p = localtime(&t);
+
+ if (p)
+ printf("%02d/%02d/%02d-%02d:%02d:%02d",
+ p->tm_year + 1900, p->tm_mon + 1, p->tm_mday,
+ p->tm_hour, p->tm_min, p->tm_sec);
+ else
+ printf("%llu", (unsigned long long) t);
+}
+
+int
+main(int ac, const char **av)
+{
+ assert(ac == 2);
+ struct stat stb;
+
+#ifdef NR_stat
+ if (sizeof(stb.st_size) > 4)
+ return 77;
+ assert(syscall(NR_stat, av[1], &stb) == 0);
+#else
+ assert(stat(av[1], &stb) == 0);
+#endif
+
+ printf(STAT_PREFIX "\"%s\", \\{", av[1]);
+ printf("st_dev=makedev\\(%u, %u\\)",
+ (unsigned int) major(stb.st_dev),
+ (unsigned int) minor(stb.st_dev));
+ printf(", st_ino=%llu", (unsigned long long) stb.st_ino);
+ printf(", st_mode=");
+ print_ftype(stb.st_mode);
+ printf("\\|");
+ print_perms(stb.st_mode);
+ printf(", st_nlink=%u", (unsigned int) stb.st_nlink);
+ printf(", st_uid=%u", (unsigned int) stb.st_uid);
+ printf(", st_gid=%u", (unsigned int) stb.st_gid);
+#ifdef HAVE_STRUCT_STAT_ST_BLKSIZE
+ printf(", st_blksize=%u", (unsigned int) stb.st_blksize);
+#endif
+#ifdef HAVE_STRUCT_STAT_ST_BLOCKS
+ printf(", st_blocks=%u", (unsigned int) stb.st_blocks);
+#endif
+
+ switch (stb.st_mode & S_IFMT) {
+ case S_IFCHR: case S_IFBLK:
+#ifdef HAVE_STRUCT_STAT_ST_RDEV
+ printf(", st_rdev=makedev\\(%u, %u\\)",
+ (unsigned int) major(stb.st_rdev),
+ (unsigned int) minor(stb.st_rdev));
+#else
+ printf(", st_size=makedev\\(%u, %u\\)",
+ (unsigned int) major(stb.st_size),
+ (unsigned int) minor(stb.st_size));
+#endif
+ break;
+ default:
+ printf(", st_size=%llu", (unsigned long long) stb.st_size);
+ }
+
+ printf(", st_atime=");
+ print_time(stb.st_atime);
+ printf(", st_mtime=");
+ print_time(stb.st_mtime);
+ printf(", st_ctime=");
+ print_time(stb.st_ctime);
+ printf("(, st_flags=[0-9]+)?");
+ printf("(, st_fstype=[^,]*)?");
+ printf("(, st_gen=[0-9]+)?");
+ printf("\\}");
+#ifndef NR_stat
+ printf("(, 0)?");
+#endif
+ printf("\\) += 0\n");
+ return 0;
+}
+
+#else /* !STAT_PREFIX */
+int main(void)
+{
+ return 77;
+}
+#endif
diff --git a/tests/stat.test b/tests/stat.test
index 5c2a578..ef57396 100755
--- a/tests/stat.test
+++ b/tests/stat.test
@@ -8,27 +8,72 @@
check_prog find
check_prog grep
+OUT="$LOG.out"
+size=46118400000
+sample=stat_sample
+
+rm -f $sample
umask 022
-truncate_cmd='dd seek=46118400000 obs=1 count=0 if=/dev/null of=sample'
-$truncate_cmd > $LOG 2>&1 ||
- { cat $LOG; framework_skip_ 'failed to create a large sparse file'; }
-rm -f sample
-$STRACE -edesc $truncate_cmd 2>&1 > /dev/null 2> $LOG &&
-LC_ALL=C grep -E -x 'ftruncate(64)?\(1, 46118400000\) += 0' $LOG > /dev/null ||
- { cat $LOG; fail_ 'strace -edesc failed to trace ftruncate/ftruncate64 properly'; }
+truncate_cmd="dd seek=$size bs=1 count=0 if=/dev/null of=$sample"
+$truncate_cmd > "$OUT" 2>&1 || {
+ cat "$OUT"
+ framework_skip_ 'failed to create a large sparse file'
+}
-LC_ALL=C grep -E -x 'lseek\(1, 46118400000, SEEK_CUR\) += 46118400000|_llseek\(1, 46118400000, \[46118400000\], SEEK_CUR\) += 0' $LOG > /dev/null ||
- { cat $LOG; fail_ 'strace -edesc failed to trace lseek/_llseek properly'; }
+find_cmd="find $sample -quit"
+$find_cmd || framework_skip_ "$find_cmd failed"
-$STRACE -efile find -L sample > /dev/null 2> $LOG &&
-LC_ALL=C grep -E -x 'stat(64)?\("sample", \{st_mode=S_IFREG\|0644, st_size=46118400000, \.\.\.\}\) += 0|(new)?fstatat(64)?\(AT_FDCWD, "sample", \{st_mode=S_IFREG\|0644, st_size=46118400000, \.\.\.\}, 0\) += 0' $LOG > /dev/null ||
- { cat $LOG; fail_ 'strace -efile failed to trace stat/stat64 properly'; }
+find_L_cmd="find -L $sample -quit"
+$find_L_cmd || framework_skip_ "$find_L_cmd failed"
-$STRACE -efile find sample > /dev/null 2> $LOG &&
-LC_ALL=C grep -E -x 'lstat(64)?\("sample", \{st_mode=S_IFREG\|0644, st_size=46118400000, \.\.\.\}\) += 0|(new)?fstatat(64)?\(AT_FDCWD, "sample", \{st_mode=S_IFREG\|0644, st_size=46118400000, \.\.\.\}, AT_SYMLINK_NOFOLLOW\) += 0' $LOG > /dev/null ||
- { cat $LOG; fail_ 'strace -efile failed to trace fstatat/fstatat64 properly'; }
+rm -f $sample
-rm -f sample
+$STRACE -o "$LOG" -edesc $truncate_cmd 2>&1 > "$OUT" 2>&1 || {
+ cat "$LOG" "$OUT"
+ fail_ "$STRACE -edesc $truncate_cmd failed"
+}
+
+rm -f "$OUT"
+
+r_ftruncate="ftruncate(64)?\\(1, $size\\) += 0"
+LC_ALL=C grep -E -x "$r_ftruncate" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ 'strace -edesc failed to trace ftruncate/ftruncate64 properly'
+}
+
+r_lseek="lseek\\(1, $size, SEEK_CUR\\) += $size"
+r_llseek="_llseek\\(1, $size, \\[$size\\], SEEK_CUR\\) += 0"
+LC_ALL=C grep -E -x "$r_lseek|$r_llseek" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ 'strace -edesc failed to trace lseek/_llseek properly'
+}
+
+$STRACE -o "$LOG" -efile $find_L_cmd || {
+ cat "$LOG"
+ fail_ "$STRACE -efile $find_L_cmd failed"
+}
+
+stat="\\{st_mode=S_IFREG\\|0644, st_size=$size, \\.\\.\\.\\}"
+r_stat="stat(64)?\\(\"$sample\", $stat\\) += 0"
+r_fstatat="(new)?fstatat(64)?\\(AT_FDCWD, \"$sample\", $stat, 0\\) += 0"
+LC_ALL=C grep -E -x "$r_stat|$r_fstatat" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ 'strace -efile failed to trace stat/stat64 properly'
+}
+
+$STRACE -o "$LOG" -efile $find_cmd || {
+ cat "$LOG"
+ fail_ "$STRACE -efile $find_cmd failed"
+}
+
+r_lstat="lstat(64)?\\(\"$sample\", $stat\\) += 0"
+r_lfstatat="(new)?fstatat(64)?\\(AT_FDCWD, \"$sample\", $stat, AT_SYMLINK_NOFOLLOW\\) += 0"
+LC_ALL=C grep -E -x "$r_lstat|$r_lfstatat" "$LOG" > /dev/null || {
+ cat "$LOG"
+ fail_ 'strace -efile failed to trace fstatat/fstatat64 properly'
+}
+
+rm -f $sample
exit 0
diff --git a/tests/stat32-v.test b/tests/stat32-v.test
new file mode 100755
index 0000000..67eb5ed
--- /dev/null
+++ b/tests/stat32-v.test
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+# Check verbose decoding of 32-bit stat syscall.
+
+. "${srcdir=.}/init.sh"
+
+check_prog dd
+check_prog grep
+check_prog touch
+
+OUT="$LOG.out"
+size=233811181
+sample=stat32_sample
+
+umask 022
+truncate_cmd="dd seek=$size bs=1 count=0 if=/dev/null of=$sample"
+$truncate_cmd > "$OUT" 2>&1 || {
+ cat "$OUT"
+ framework_skip_ 'failed to create a large sparse file'
+}
+
+./stat32 $sample > /dev/null || {
+ if [ $? -eq 77 ]; then
+ rm -f $sample "$OUT"
+ framework_skip_ '32-bit stat syscall is not available'
+ else
+ fail_ 'stat32 failed'
+ fi
+}
+
+touch -t 0102030405 $sample
+
+for f in $sample . /dev/null; do
+ args="-v -efile ./stat32 $f"
+ $STRACE -o "$LOG" $args > "$OUT" &&
+ exp_lines=$(wc -l < "$OUT") &&
+ matched_lines=$(LC_ALL=C grep -c -E -x -f "$OUT" "$LOG") &&
+ test $exp_lines -eq $matched_lines || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+ }
+done
+
+rm -f $sample "$OUT"
+
+exit 0
diff --git a/tests/stat32.c b/tests/stat32.c
new file mode 100644
index 0000000..a074251
--- /dev/null
+++ b/tests/stat32.c
@@ -0,0 +1 @@
+#include "stat.c"
diff --git a/tests/stat64-v.test b/tests/stat64-v.test
new file mode 100755
index 0000000..785403d
--- /dev/null
+++ b/tests/stat64-v.test
@@ -0,0 +1,40 @@
+#!/bin/sh
+
+# Check verbose decoding of 64-bit stat syscall.
+
+. "${srcdir=.}/init.sh"
+
+check_prog dd
+check_prog grep
+check_prog touch
+
+OUT="$LOG.out"
+size=46118400000
+sample=stat64_sample
+
+umask 022
+truncate_cmd="dd seek=$size bs=1 count=0 if=/dev/null of=$sample"
+$truncate_cmd > "$OUT" 2>&1 || {
+ cat "$OUT"
+ framework_skip_ 'failed to create a large sparse file'
+}
+
+./stat $sample > /dev/null ||
+ fail_ 'stat failed'
+
+touch -d '1970-01-01 -42 seconds' $sample
+
+for f in $sample . /dev/null; do
+ args="-v -efile ./stat $f"
+ $STRACE -o "$LOG" $args > "$OUT" &&
+ exp_lines=$(wc -l < "$OUT") &&
+ matched_lines=$(LC_ALL=C grep -c -E -x -f "$OUT" "$LOG") &&
+ test $exp_lines -eq $matched_lines || {
+ cat "$OUT" "$LOG"
+ fail_ "$STRACE $args output mismatch"
+ }
+done
+
+rm -f $sample "$OUT"
+
+exit 0
diff --git a/tests/statfs.test b/tests/statfs.test
index 9c95989..5b8cc97 100755
--- a/tests/statfs.test
+++ b/tests/statfs.test
@@ -29,6 +29,6 @@
}
}
-grep_log 'statfs(64)?' '\("/proc/self/status"(, [1-9][0-9]*)?, {f_type="PROC_SUPER_MAGIC", f_bsize=[1-9][0-9]*, f_blocks=[0-9]+, f_bfree=[0-9]+, f_bavail=[0-9]+, f_files=[0-9]+, f_ffree=[0-9]+, f_fsid={[0-9]+, [0-9]+}, f_namelen=[1-9][0-9]*(, f_frsize=[0-9]+)?(, f_flags=[0-9]+)?}\) += 0'
+grep_log 'statfs(64)?' '\("/proc/self/status"(, [1-9][0-9]*)?, \{f_type="PROC_SUPER_MAGIC", f_bsize=[1-9][0-9]*, f_blocks=[0-9]+, f_bfree=[0-9]+, f_bavail=[0-9]+, f_files=[0-9]+, f_ffree=[0-9]+, f_fsid=\{[0-9]+, [0-9]+\}, f_namelen=[1-9][0-9]*(, f_frsize=[0-9]+)?(, f_flags=[0-9]+)?\}\) += 0'
exit 0
diff --git a/tests/sun_path.test b/tests/sun_path.test
new file mode 100755
index 0000000..6ae67f4
--- /dev/null
+++ b/tests/sun_path.test
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+# Check how long sun_path addresses are traced.
+
+. "${srcdir=.}/init.sh"
+
+check_prog grep
+
+rm -f $LOG.*
+
+addr=123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678
+./net-accept-connect $addr ||
+ fail_ 'net-accept-connect failed'
+
+args="-tt -ff -ebind,connect,getsockname ./net-accept-connect $addr"
+$STRACE -o "$LOG" $args ||
+ fail_ "$STRACE $args failed"
+
+"$srcdir"/../strace-log-merge $LOG > $LOG || {
+ cat $LOG
+ fail_ 'strace-log-merge failed'
+}
+
+rm -f $LOG.*
+
+grep_log()
+{
+ local syscall="$1"; shift
+ local prefix='[1-9][0-9]* +[0-9]+:[0-9]+:[0-9]+\.[0-9]+ +'
+
+ LC_ALL=C grep -E -x "$prefix$syscall$*" $LOG > /dev/null || {
+ cat $LOG
+ fail_ "strace -enetwork failed to trace \"$syscall\" properly"
+ }
+}
+
+grep_log bind '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 110\) += 0'
+grep_log getsockname '\(0, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, \[111\]\) += 0'
+grep_log connect '\(1, \{sa_family=AF_(LOCAL|UNIX|FILE), sun_path="'$addr'"\}, 110\) += 0'
+
+exit 0
diff --git a/tests/uid.awk b/tests/uid.awk
index e8d6824..6f07b44 100644
--- a/tests/uid.awk
+++ b/tests/uid.awk
@@ -12,53 +12,43 @@
{
if (match($0, regexp, a)) {
- switch (expected) {
- case "getuid":
- uid = a[1]
- expected = "setuid"
- regexp = "^setuid" suffix "\\(" uid "\\)[[:space:]]+= 0$"
- next
- case "setuid":
- expected = "getresuid"
- regexp = "^getresuid" suffix "\\(\\[" uid "\\], \\[" uid "\\], \\[" uid "\\]\\)[[:space:]]+= 0$"
- next
- case "getresuid":
- expected = "setreuid"
- regexp = "^setreuid" suffix "\\(-1, -1\\)[[:space:]]+= 0$"
- next
- case "setreuid":
- expected = "setresuid"
- regexp = "^setresuid" suffix "\\(-1, " uid ", -1\\)[[:space:]]+= 0$"
- next
- case "setresuid":
- expected = "chown"
- regexp = "^chown" suffix "\\(\".\", -1, -1\\)[[:space:]]+= 0$"
- next
- case "chown":
- expected = "1st getgroups"
- regexp = "^getgroups" suffix "\\(0, NULL\\)[[:space:]]+= " r_uint "$"
- next
- case "1st getgroups":
- ngroups = a[1]
- switch (ngroups) {
- case "0": list=""; break
- case "1": list=r_uint; break
- default: list=r_uint "(, " r_uint "){" (ngroups - 1) "}"
- }
- expected = "2nd getgroups"
- regexp = "^getgroups" suffix "\\(" ngroups ", \\[" list "\\]\\)[[:space:]]+= " ngroups "$"
- next
- case "2nd getgroups":
- expected = "the last line"
- regexp = "^\\+\\+\\+ exited with 0 \\+\\+\\+$"
- next
- case "the last line":
- expected = "nothing"
- regexp = ""
- next
+ if (expected == "getuid") {
+ uid = a[1]
+ expected = "setuid"
+ regexp = "^setuid" suffix "\\(" uid "\\)[[:space:]]+= 0$"
+ } else if (expected == "setuid") {
+ expected = "getresuid"
+ regexp = "^getresuid" suffix "\\(\\[" uid "\\], \\[" uid "\\], \\[" uid "\\]\\)[[:space:]]+= 0$"
+ } else if (expected == "getresuid") {
+ expected = "setreuid"
+ regexp = "^setreuid" suffix "\\(-1, -1\\)[[:space:]]+= 0$"
+ } else if (expected == "setreuid") {
+ expected = "setresuid"
+ regexp = "^setresuid" suffix "\\(" uid ", -1, -1\\)[[:space:]]+= 0$"
+ } else if (expected == "setresuid") {
+ expected = "fchown"
+ regexp = "^fchown" suffix "\\(1, -1, -1\\)[[:space:]]+= 0$"
+ } else if (expected == "fchown") {
+ expected = "1st getgroups"
+ regexp = "^getgroups" suffix "\\(0, NULL\\)[[:space:]]+= " r_uint "$"
+ } else if (expected == "1st getgroups") {
+ ngroups = a[1]
+ if (ngroups == "0")
+ list=""
+ else if (ngroups == "1")
+ list=r_uint
+ else
+ list=r_uint "(, " r_uint "){" (ngroups - 1) "}"
+ expected = "2nd getgroups"
+ regexp = "^getgroups" suffix "\\(" ngroups ", \\[" list "\\]\\)[[:space:]]+= " ngroups "$"
+ } else if (expected == "2nd getgroups") {
+ expected = "the last line"
+ regexp = "^\\+\\+\\+ exited with 0 \\+\\+\\+$"
+ } else if (expected == "the last line") {
+ expected = "nothing"
+ regexp = ""
}
}
- next
}
END {
diff --git a/tests/uid.c b/tests/uid.c
index 5687dab..28f548b 100644
--- a/tests/uid.c
+++ b/tests/uid.c
@@ -14,18 +14,25 @@
&& defined(__NR_getresuid) \
&& defined(__NR_setreuid) \
&& defined(__NR_setresuid) \
- && defined(__NR_chown) \
+ && defined(__NR_fchown) \
&& defined(__NR_getgroups)
- int r, e, s;
+ int uid;
int size;
int *list = 0;
- e = syscall(__NR_getuid);
- assert(syscall(__NR_setuid, e) == 0);
- assert(syscall(__NR_getresuid, &r, &e, &s) == 0);
+ uid = syscall(__NR_getuid);
+ assert(syscall(__NR_setuid, uid) == 0);
+ {
+ /*
+ * uids returned by getresuid should be ignored
+ * to avoid 16bit vs 32bit issues.
+ */
+ int r, e, s;
+ assert(syscall(__NR_getresuid, &r, &e, &s) == 0);
+ }
assert(syscall(__NR_setreuid, -1, -1L) == 0);
- assert(syscall(__NR_setresuid, -1, e, -1L) == 0);
- assert(syscall(__NR_chown, ".", -1, -1L) == 0);
+ assert(syscall(__NR_setresuid, uid, -1, -1L) == 0);
+ assert(syscall(__NR_fchown, 1, -1, -1L) == 0);
assert((size = syscall(__NR_getgroups, 0, list)) >= 0);
assert(list = calloc(size + 1, sizeof(*list)));
assert(syscall(__NR_getgroups, size, list) == size);
diff --git a/tests/uid.test b/tests/uid.test
index e711350..d8b0261 100755
--- a/tests/uid.test
+++ b/tests/uid.test
@@ -4,7 +4,7 @@
. "${srcdir=.}/init.sh"
-check_prog awk
+check_prog gawk
s="${uid_syscall_suffix-}"
w="${uid_t_size-}"
@@ -17,14 +17,14 @@
fi
}
-syscalls="getuid$s,setuid$s,getresuid$s,setreuid$s,setresuid$s,chown$s,getgroups$s"
+syscalls="getuid$s,setuid$s,getresuid$s,setreuid$s,setresuid$s,fchown$s,getgroups$s"
args="-e trace=$syscalls"
$STRACE -o "$LOG" $args ./"$uid"|| {
cat "$LOG"
fail_ "$STRACE $args ./$uid failed"
}
-awk -f "$srcdir"/uid.awk -v suffix="$s" "$LOG" || {
+gawk -f "$srcdir"/uid.awk -v suffix="$s" "$LOG" || {
cat "$LOG"
fail_ 'unexpected output'
}
diff --git a/tests/uid16.c b/tests/uid16.c
index 820dd90..c0ef120 100644
--- a/tests/uid16.c
+++ b/tests/uid16.c
@@ -4,6 +4,7 @@
#include <assert.h>
#include <stdlib.h>
#include <unistd.h>
+#include <fcntl.h>
#include <sys/syscall.h>
int
@@ -14,7 +15,7 @@
&& defined(__NR_getresuid) \
&& defined(__NR_setreuid) \
&& defined(__NR_setresuid) \
- && defined(__NR_chown) \
+ && defined(__NR_fchown) \
&& defined(__NR_getgroups) \
\
&& defined(__NR_getuid32) \
@@ -22,7 +23,7 @@
&& defined(__NR_getresuid32) \
&& defined(__NR_setreuid32) \
&& defined(__NR_setresuid32) \
- && defined(__NR_chown32) \
+ && defined(__NR_fchown32) \
&& defined(__NR_getgroups32) \
\
&& __NR_getuid != __NR_getuid32 \
@@ -30,19 +31,41 @@
&& __NR_getresuid != __NR_getresuid32 \
&& __NR_setreuid != __NR_setreuid32 \
&& __NR_setresuid != __NR_setresuid32 \
- && __NR_chown != __NR_chown32 \
+ && __NR_fchown != __NR_fchown32 \
&& __NR_getgroups != __NR_getgroups32 \
/**/
- int r, e, s;
+ int uid;
int size;
int *list = 0;
- e = syscall(__NR_getuid);
- assert(syscall(__NR_setuid, e) == 0);
- assert(syscall(__NR_getresuid, &r, &e, &s) == 0);
+ uid = syscall(__NR_getuid);
+
+ (void) close(0);
+ if (open("/proc/sys/kernel/overflowuid", O_RDONLY) == 0) {
+ /* we trust the kernel */
+ char buf[sizeof(int)*3];
+ int n = read(0, buf, sizeof(buf) - 1);
+ if (n) {
+ buf[n] = '\0';
+ n = atoi(buf);
+ if (uid == n)
+ return 77;
+ }
+ close(0);
+ }
+
+ assert(syscall(__NR_setuid, uid) == 0);
+ {
+ /*
+ * uids returned by getresuid should be ignored
+ * to avoid 16bit vs 32bit issues.
+ */
+ int r, e, s;
+ assert(syscall(__NR_getresuid, &r, &e, &s) == 0);
+ }
assert(syscall(__NR_setreuid, -1, 0xffff) == 0);
- assert(syscall(__NR_setresuid, -1, e, 0xffff) == 0);
- assert(syscall(__NR_chown, ".", -1, 0xffff) == 0);
+ assert(syscall(__NR_setresuid, uid, -1, 0xffff) == 0);
+ assert(syscall(__NR_fchown, 1, -1, 0xffff) == 0);
assert((size = syscall(__NR_getgroups, 0, list)) >= 0);
assert(list = calloc(size + 1, sizeof(*list)));
assert(syscall(__NR_getgroups, size, list) == size);
diff --git a/tests/uid32.c b/tests/uid32.c
index 95d04ea..472461f 100644
--- a/tests/uid32.c
+++ b/tests/uid32.c
@@ -14,18 +14,18 @@
&& defined(__NR_getresuid32) \
&& defined(__NR_setreuid32) \
&& defined(__NR_setresuid32) \
- && defined(__NR_chown32) \
+ && defined(__NR_fchown32) \
&& defined(__NR_getgroups32)
int r, e, s;
int size;
int *list = 0;
- e = syscall(__NR_getuid32);
- assert(syscall(__NR_setuid32, e) == 0);
+ r = syscall(__NR_getuid32);
+ assert(syscall(__NR_setuid32, r) == 0);
assert(syscall(__NR_getresuid32, &r, &e, &s) == 0);
assert(syscall(__NR_setreuid32, -1, -1L) == 0);
- assert(syscall(__NR_setresuid32, -1, e, -1L) == 0);
- assert(syscall(__NR_chown32, ".", -1, -1L) == 0);
+ assert(syscall(__NR_setresuid32, r, -1, -1L) == 0);
+ assert(syscall(__NR_fchown32, 1, -1, -1L) == 0);
assert((size = syscall(__NR_getgroups32, 0, list)) >= 0);
assert(list = calloc(size + 1, sizeof(*list)));
assert(syscall(__NR_getgroups32, size, list) == size);
diff --git a/tests/unix-pair-send-recv.c b/tests/unix-pair-send-recv.c
new file mode 100644
index 0000000..535f8e7
--- /dev/null
+++ b/tests/unix-pair-send-recv.c
@@ -0,0 +1,57 @@
+#include <assert.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/socket.h>
+#include <sys/wait.h>
+
+static void
+transpose(char *str, int len)
+{
+ int i;
+
+ for (i = 0; i < len / 2; ++i) {
+ char c = str[i];
+ str[i] = str[len - 1 - i];
+ str[len - 1 - i] = c;
+ }
+}
+
+int
+main(int ac, char **av)
+{
+ assert(ac == 2);
+ const int len = strlen(av[1]);
+ assert(len);
+
+ (void) close(0);
+ (void) close(1);
+
+ int sv[2];
+ assert(socketpair(AF_UNIX, SOCK_STREAM, 0, sv) == 0);
+ assert(sv[0] == 0);
+ assert(sv[1] == 1);
+
+ pid_t pid = fork();
+ assert(pid >= 0);
+
+ if (pid) {
+ assert(close(1) == 0);
+ transpose(av[1], len);
+ assert(sendto(0, av[1], len, MSG_DONTROUTE, NULL, 0) == len);
+ assert(recvfrom(0, av[1], len, MSG_WAITALL, NULL, NULL) == len);
+ assert(close(0) == 0);
+
+ int status;
+ assert(waitpid(pid, &status, 0) == pid);
+ assert(status == 0);
+ } else {
+ assert(close(0) == 0);
+ assert(recvfrom(1, av[1], len, MSG_WAITALL, NULL, NULL) == len);
+ transpose(av[1], len);
+ assert(sendto(1, av[1], len, MSG_DONTROUTE, NULL, 0) == len);
+ assert(recvfrom(1, av[1], len, MSG_WAITALL, NULL, NULL) == 0);
+ assert(close(1) == 0);
+ }
+
+ return 0;
+}
diff --git a/tests/unix-yy-accept.awk b/tests/unix-yy-accept.awk
index bafee89..304c022 100644
--- a/tests/unix-yy-accept.awk
+++ b/tests/unix-yy-accept.awk
@@ -2,8 +2,9 @@
lines = 8
fail = 0
+ addrlen = length(addr) + 3
r_i = "[1-9][0-9]*"
- r_bind = "^bind\\(0<UNIX:\\[(" r_i ")\\]>, {sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"local-stream\"}, 15\\) += 0$"
+ r_bind = "^bind\\(0<UNIX:\\[(" r_i ")\\]>, \\{sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"" addr "\"\\}, " addrlen "\\) += 0$"
}
NR == 1 && /^socket\(PF_(LOCAL|UNIX|FILE), SOCK_STREAM, 0\) += 0$/ {next}
@@ -11,9 +12,9 @@
NR == 2 {
if (match($0, r_bind, a)) {
inode_listen = a[1]
- r_listen = "^listen\\(0<UNIX:\\[" inode_listen ",\"local-stream\"\\]>, 5\\) += 0$"
- r_getsockname = "^getsockname\\(0<UNIX:\\[" inode_listen ",\"local-stream\"\\]>, {sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"local-stream\"}, \\[15\\]\\) += 0$"
- r_accept = "^accept\\(0<UNIX:\\[" inode_listen ",\"local-stream\"\\]>, {sa_family=AF_(LOCAL|UNIX|FILE), NULL}, \\[2\\]\\) += 1<UNIX:\\[(" r_i ")->(" r_i "),\"local-stream\"\\]>"
+ r_listen = "^listen\\(0<UNIX:\\[" inode_listen ",\"" addr "\"\\]>, 5\\) += 0$"
+ r_getsockname = "^getsockname\\(0<UNIX:\\[" inode_listen ",\"" addr "\"\\]>, \\{sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"" addr "\"\\}, \\[" addrlen "\\]\\) += 0$"
+ r_accept = "^accept\\(0<UNIX:\\[" inode_listen ",\"" addr "\"\\]>, \\{sa_family=AF_(LOCAL|UNIX|FILE), NULL\\}, \\[2\\]\\) += 1<UNIX:\\[(" r_i ")->(" r_i "),\"" addr "\"\\]>"
next
}
}
@@ -26,8 +27,8 @@
if (r_accept != "" && match($0, r_accept, a)) {
inode_accepted = a[2]
inode_peer = a[3]
- r_close_listen = "^close\\(0<UNIX:\\[" inode_listen ",\"local-stream\"\\]>\\) += 0$"
- r_close_accepted = "^close\\(1<UNIX:\\[" inode_accepted ",\"local-stream\"\\]>\\) += 0$"
+ r_close_listen = "^close\\(0<UNIX:\\[" inode_listen ",\"" addr "\"\\]>\\) += 0$"
+ r_close_accepted = "^close\\(1<UNIX:\\[" inode_accepted ",\"" addr "\"\\]>\\) += 0$"
next
}
}
diff --git a/tests/unix-yy-connect.awk b/tests/unix-yy-connect.awk
index 173d721..4641d78 100644
--- a/tests/unix-yy-connect.awk
+++ b/tests/unix-yy-connect.awk
@@ -1,10 +1,11 @@
BEGIN {
- lines = 5
+ lines = 6
fail = 0
+ addrlen = length(addr) + 3
r_i = "[1-9][0-9]*"
- r_close_listen = "^close\\(0<UNIX:[" r_i ",\"local-stream\"]>\\) += 0$"
- r_connect = "^connect\\(1<UNIX:\\[(" r_i ")\\]>, {sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"local-stream\"}, 15\\) += 0$"
+ r_close_listen = "^close\\(0<UNIX:[" r_i ",\"" addr "\"]>\\) += 0$"
+ r_connect = "^connect\\(1<UNIX:\\[(" r_i ")\\]>, \\{sa_family=AF_(LOCAL|UNIX|FILE), sun_path=\"" addr "\"\\}, " addrlen "\\) += 0$"
}
NR == 1 && /^socket\(PF_(LOCAL|UNIX|FILE), SOCK_STREAM, 0\) += 1$/ {next}
@@ -19,7 +20,9 @@
}
}
-NR == 4 {
+NR == 4 && /^--- SIGUSR1 / {next}
+
+NR == 5 {
if (inode != "" && r_close_connected != "" && match($0, r_close_connected, a) && a[1] == inode) {
next
}
diff --git a/tests/unix-yy.test b/tests/unix-yy.test
index 1114e17..1845f55 100755
--- a/tests/unix-yy.test
+++ b/tests/unix-yy.test
@@ -14,20 +14,21 @@
rm -f $LOG.* $LOG-*
-./net-accept-connect ||
+addr=unix-yy-local-stream
+./net-accept-connect $addr ||
fail_ 'net-accept-connect failed'
./netlink_unix_diag || {
if [ $? -eq 77 ]; then
- framework_skip_ 'NETLINK_SOCK_DIAG for unix domain sockets is not available'
+ framework_skip_ 'NETLINK_SOCK_DIAG for unix domain sockets (CONFIG_UNIX_DIAG) is not available'
else
fail_ 'netlink_unix_diag failed'
fi
}
-args="-tt -ff -yy -o $LOG -eclose,network ./net-accept-connect"
-$STRACE $args ||
- fail_ "strace $args failed"
+args="-tt -ff -yy -eclose,network ./net-accept-connect $addr"
+$STRACE -o "$LOG" $args ||
+ fail_ "$STRACE $args failed"
"$srcdir"/../strace-log-merge $LOG > $LOG || {
cat $LOG
@@ -47,12 +48,12 @@
fail_ 'failed to separate logs'
}
-awk -f "$srcdir"/unix-yy-connect.awk $LOG-connect || {
+awk -f "$srcdir"/unix-yy-connect.awk -v addr=$addr $LOG-connect || {
cat $LOG-connect
fail_ "strace $args failed to decode socket descriptors properly"
}
-awk -f "$srcdir"/unix-yy-accept.awk $LOG-accept || {
+awk -f "$srcdir"/unix-yy-accept.awk -v addr=$addr $LOG-accept || {
cat $LOG-accept
fail_ "strace $args failed to decode socket descriptors properly"
}
diff --git a/time.c b/time.c
index b61a74e..6db3563 100644
--- a/time.c
+++ b/time.c
@@ -41,6 +41,16 @@
#define UTIME_OMIT ((1l << 30) - 2l)
#endif
+#if SUPPORTED_PERSONALITIES > 1
+# if defined X86_64 || defined X32
+# define current_time_t_is_compat (current_personality == 1)
+# else
+# define current_time_t_is_compat (current_wordsize == 4)
+# endif
+#else
+# define current_time_t_is_compat 0
+#endif
+
struct timeval32
{
u_int32_t tv_sec, tv_usec;
@@ -55,8 +65,7 @@
static void
tprint_timeval(struct tcb *tcp, const struct timeval *tv)
{
- tprintf("{%lu, %lu}",
- (unsigned long) tv->tv_sec, (unsigned long) tv->tv_usec);
+ tprintf("{%ju, %ju}", (uintmax_t) tv->tv_sec, (uintmax_t) tv->tv_usec);
}
void
@@ -68,7 +77,7 @@
}
static char *
-do_sprinttv(char *buf, const unsigned long sec, const unsigned long usec,
+do_sprinttv(char *buf, const uintmax_t sec, const uintmax_t usec,
const int special)
{
if (special) {
@@ -79,7 +88,7 @@
return stpcpy(buf, "UTIME_OMIT");
}
}
- return buf + sprintf(buf, "{%lu, %lu}", sec, usec);
+ return buf + sprintf(buf, "{%ju, %ju}", sec, usec);
}
char *
@@ -91,11 +100,7 @@
if (!verbose(tcp))
return buf + sprintf(buf, "%#lx", addr);
- if (bitness == BITNESS_32
-#if SUPPORTED_PERSONALITIES > 1
- || current_wordsize == 4
-#endif
- )
+ if (bitness == BITNESS_32 || current_time_t_is_compat)
{
struct timeval32 tv;
@@ -130,7 +135,7 @@
int rc;
#if SUPPORTED_PERSONALITIES > 1
- if (current_wordsize == 4) {
+ if (current_time_t_is_compat) {
struct timeval32 tv;
rc = umove(tcp, addr, &tv);
@@ -144,9 +149,9 @@
rc = umove(tcp, addr, &ts);
if (rc >= 0)
- sprintf(buf, "{%lu, %lu}",
- (unsigned long) ts.tv_sec,
- (unsigned long) ts.tv_nsec);
+ sprintf(buf, "{%ju, %ju}",
+ (uintmax_t) ts.tv_sec,
+ (uintmax_t) ts.tv_nsec);
}
if (rc < 0)
strcpy(buf, "{...}");
@@ -157,7 +162,7 @@
sys_time(struct tcb *tcp)
{
if (exiting(tcp)) {
- printnum(tcp, tcp->u_arg[0], "%ld");
+ printnum_long(tcp, tcp->u_arg[0], "%ld");
}
return 0;
}
@@ -167,8 +172,7 @@
{
if (exiting(tcp)) {
if (syserror(tcp)) {
- tprintf("%#lx, %#lx",
- tcp->u_arg[0], tcp->u_arg[1]);
+ tprintf("%#lx, %#lx", tcp->u_arg[0], tcp->u_arg[1]);
return 0;
}
printtv(tcp, tcp->u_arg[0]);
@@ -277,12 +281,7 @@
else {
int rc;
- if (bitness == BITNESS_32
-#if SUPPORTED_PERSONALITIES > 1
- || current_wordsize == 4
-#endif
- )
- {
+ if (bitness == BITNESS_32 || current_time_t_is_compat) {
struct {
struct timeval32 it_interval, it_value;
} itv;
@@ -443,7 +442,7 @@
struct timex tx;
#if SUPPORTED_PERSONALITIES > 1
- if (current_wordsize == 4)
+ if (current_time_t_is_compat)
return tprint_timex32(tcp, addr);
#endif
if (umove(tcp, addr, &tx) < 0)
@@ -461,20 +460,20 @@
#else
tprints("{modes=");
printflags(adjtimex_modes, tx.modes, "ADJ_???");
- tprintf(", offset=%ld, freq=%ld, maxerror=%ld, ",
- (long) tx.offset, (long) tx.freq, (long) tx.maxerror);
- tprintf("esterror=%lu, status=", (long) tx.esterror);
+ tprintf(", offset=%jd, freq=%jd, maxerror=%ju, esterror=%ju, status=",
+ (intmax_t) tx.offset, (intmax_t) tx.freq,
+ (uintmax_t) tx.maxerror, (uintmax_t) tx.esterror);
printflags(adjtimex_status, tx.status, "STA_???");
- tprintf(", constant=%ld, precision=%lu, ",
- (long) tx.constant, (long) tx.precision);
- tprintf("tolerance=%ld, time=", (long) tx.tolerance);
+ tprintf(", constant=%jd, precision=%ju, tolerance=%jd, time=",
+ (intmax_t) tx.constant, (uintmax_t) tx.precision,
+ (intmax_t) tx.tolerance);
tprint_timeval(tcp, &tx.time);
- tprintf(", tick=%ld, ppsfreq=%ld, jitter=%ld",
- (long) tx.tick, (long) tx.ppsfreq, (long) tx.jitter);
- tprintf(", shift=%d, stabil=%ld, jitcnt=%ld",
- tx.shift, (long) tx.stabil, (long) tx.jitcnt);
- tprintf(", calcnt=%ld, errcnt=%ld, stbcnt=%ld",
- (long) tx.calcnt, (long) tx.errcnt, (long) tx.stbcnt);
+ tprintf(", tick=%jd, ppsfreq=%jd, jitter=%jd",
+ (intmax_t) tx.tick, (intmax_t) tx.ppsfreq, (intmax_t) tx.jitter);
+ tprintf(", shift=%d, stabil=%jd, jitcnt=%jd",
+ tx.shift, (intmax_t) tx.stabil, (intmax_t) tx.jitcnt);
+ tprintf(", calcnt=%jd, errcnt=%jd, stbcnt=%jd",
+ (intmax_t) tx.calcnt, (intmax_t) tx.errcnt, (intmax_t) tx.stbcnt);
#endif
tprints("}");
return 0;
@@ -739,7 +738,7 @@
}
int
-rtc_ioctl(struct tcb *tcp, long code, long arg)
+rtc_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
switch (code) {
case RTC_ALM_SET:
diff --git a/uname.c b/uname.c
index d1b195e..74f8efb 100644
--- a/uname.c
+++ b/uname.c
@@ -7,25 +7,33 @@
{
struct utsname uname;
- if (exiting(tcp)) {
- if (syserror(tcp) || !verbose(tcp))
- tprintf("%#lx", tcp->u_arg[0]);
- else if (umove(tcp, tcp->u_arg[0], &uname) < 0)
- tprints("{...}");
- else if (!abbrev(tcp)) {
- tprintf("{sysname=\"%s\", nodename=\"%s\", ",
- uname.sysname, uname.nodename);
- tprintf("release=\"%s\", version=\"%s\", ",
- uname.release, uname.version);
- tprintf("machine=\"%s\"", uname.machine);
-#ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
- tprintf(", domainname=\"%s\"", uname.domainname);
-#endif
- tprints("}");
+ if (entering(tcp))
+ return 0;
+
+ if (syserror(tcp) || !verbose(tcp))
+ tprintf("%#lx", tcp->u_arg[0]);
+ else if (umove(tcp, tcp->u_arg[0], &uname) < 0)
+ tprints("{...}");
+ else {
+#define PRINT_UTS_MEMBER(prefix, member) \
+ tprints(prefix #member "="); \
+ print_quoted_string(uname.member, sizeof(uname.member), \
+ QUOTE_0_TERMINATED)
+
+ PRINT_UTS_MEMBER("{", sysname);
+ PRINT_UTS_MEMBER(", ", nodename);
+ if (abbrev(tcp)) {
+ tprints(", ...}");
+ return 0;
}
- else
- tprintf("{sys=\"%s\", node=\"%s\", ...}",
- uname.sysname, uname.nodename);
+ PRINT_UTS_MEMBER(", ", release);
+ PRINT_UTS_MEMBER(", ", version);
+ PRINT_UTS_MEMBER(", ", machine);
+#ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
+ PRINT_UTS_MEMBER(", ", domainname);
+#endif
+ tprints("}");
}
+
return 0;
}
diff --git a/util.c b/util.c
index b7476cf..02c5b9a 100644
--- a/util.c
+++ b/util.c
@@ -32,7 +32,6 @@
*/
#include "defs.h"
-#include <sys/user.h>
#include <sys/param.h>
#include <fcntl.h>
#if HAVE_SYS_XATTR_H
@@ -40,31 +39,8 @@
#endif
#include <sys/uio.h>
-#if defined(IA64)
-# include <asm/ptrace_offsets.h>
-# include <asm/rse.h>
-#endif
-
-#ifdef HAVE_SYS_REG_H
-# include <sys/reg.h>
-#endif
-
-#ifdef HAVE_LINUX_PTRACE_H
-# undef PTRACE_SYSCALL
-# ifdef HAVE_STRUCT_IA64_FPREG
-# define ia64_fpreg XXX_ia64_fpreg
-# endif
-# ifdef HAVE_STRUCT_PT_ALL_USER_REGS
-# define pt_all_user_regs XXX_pt_all_user_regs
-# endif
-# ifdef HAVE_STRUCT_PTRACE_PEEKSIGINFO_ARGS
-# define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args
-# endif
-# include <linux/ptrace.h>
-# undef ptrace_peeksiginfo_args
-# undef ia64_fpreg
-# undef pt_all_user_regs
-#endif
+#include "regs.h"
+#include "ptrace.h"
int
string_to_uint(const char *str)
@@ -242,39 +218,39 @@
}
/*
- * Print 64bit argument at position arg_no and return the index of the next
- * argument.
+ * Fetch 64bit argument at position arg_no and
+ * return the index of the next argument.
*/
int
-printllval(struct tcb *tcp, const char *format, int arg_no)
+getllval(struct tcb *tcp, unsigned long long *val, int arg_no)
{
#if SIZEOF_LONG > 4 && SIZEOF_LONG == SIZEOF_LONG_LONG
# if SUPPORTED_PERSONALITIES > 1
if (current_wordsize > 4) {
# endif
- tprintf(format, tcp->u_arg[arg_no]);
+ *val = tcp->u_arg[arg_no];
arg_no++;
# if SUPPORTED_PERSONALITIES > 1
} else {
# if defined(AARCH64) || defined(POWERPC64)
/* Align arg_no to the next even number. */
arg_no = (arg_no + 1) & 0xe;
-# endif
- tprintf(format, LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]));
+# endif /* AARCH64 || POWERPC64 */
+ *val = LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]);
arg_no += 2;
}
-# endif /* SUPPORTED_PERSONALITIES */
+# endif /* SUPPORTED_PERSONALITIES > 1 */
#elif SIZEOF_LONG > 4
# error Unsupported configuration: SIZEOF_LONG > 4 && SIZEOF_LONG_LONG > SIZEOF_LONG
#elif defined LINUX_MIPSN32
- tprintf(format, tcp->ext_arg[arg_no]);
+ *val = tcp->ext_arg[arg_no];
arg_no++;
#elif defined X32
if (current_personality == 0) {
- tprintf(format, tcp->ext_arg[arg_no]);
+ *val = tcp->ext_arg[arg_no];
arg_no++;
} else {
- tprintf(format, LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]));
+ *val = LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]);
arg_no += 2;
}
#else
@@ -285,7 +261,7 @@
/* Align arg_no to the next even number. */
arg_no = (arg_no + 1) & 0xe;
# endif
- tprintf(format, LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]));
+ *val = LONG_LONG(tcp->u_arg[arg_no], tcp->u_arg[arg_no + 1]);
arg_no += 2;
#endif
@@ -293,6 +269,20 @@
}
/*
+ * Print 64bit argument at position arg_no and
+ * return the index of the next argument.
+ */
+int
+printllval(struct tcb *tcp, const char *format, int arg_no)
+{
+ unsigned long long val = 0;
+
+ arg_no = getllval(tcp, &val, arg_no);
+ tprintf(format, val);
+ return arg_no;
+}
+
+/*
* Interpret `xlat' as an array of flags
* print the entries whose bits are on in `flags'
* return # of flags printed.
@@ -386,7 +376,7 @@
}
void
-printnum(struct tcb *tcp, long addr, const char *fmt)
+printnum_long(struct tcb *tcp, long addr, const char *fmt)
{
long num;
@@ -425,7 +415,7 @@
sprinttime(time_t t)
{
struct tm *tmp;
- static char buf[sizeof("yyyy/mm/dd-hh:mm:ss")];
+ static char buf[sizeof(int) * 3 * 6];
if (t == 0) {
strcpy(buf, "0");
@@ -476,28 +466,29 @@
if (show_fd_path && getfdpath(tcp, fd, path, sizeof(path)) >= 0) {
static const char socket_prefix[] = "socket:[";
const size_t socket_prefix_len = sizeof(socket_prefix) - 1;
- size_t path_len;
+ const size_t path_len = strlen(path);
+ tprintf("%d<", fd);
if (show_fd_path > 1 &&
strncmp(path, socket_prefix, socket_prefix_len) == 0 &&
- path[(path_len = strlen(path)) - 1] == ']') {
+ path[path_len - 1] == ']') {
unsigned long inodenr;
#define PROTO_NAME_LEN 32
char proto_buf[PROTO_NAME_LEN];
const char *proto =
getfdproto(tcp, fd, proto_buf, PROTO_NAME_LEN);
inodenr = strtoul(path + socket_prefix_len, NULL, 10);
- tprintf("%d<", fd);
if (!print_sockaddr_by_inode(inodenr, proto)) {
if (proto)
tprintf("%s:[%lu]", proto, inodenr);
else
tprints(path);
}
- tprints(">");
} else {
- tprintf("%d<%s>", fd, path);
+ print_quoted_string(path, path_len,
+ QUOTE_OMIT_LEADING_TRAILING_QUOTES);
}
+ tprints(">");
} else
tprintf("%d", fd);
}
@@ -505,24 +496,30 @@
/*
* Quote string `instr' of length `size'
* Write up to (3 + `size' * 4) bytes to `outstr' buffer.
- * If `len' is -1, treat `instr' as a NUL-terminated string
- * and quote at most (`size' - 1) bytes.
*
- * Returns 0 if len == -1 and NUL was seen, 1 otherwise.
- * Note that if len >= 0, always returns 1.
+ * If QUOTE_0_TERMINATED `style' flag is set,
+ * treat `instr' as a NUL-terminated string,
+ * checking up to (`size' + 1) bytes of `instr'.
+ *
+ * If QUOTE_OMIT_LEADING_TRAILING_QUOTES `style' flag is set,
+ * do not add leading and trailing quoting symbols.
+ *
+ * Returns 0 if QUOTE_0_TERMINATED is set and NUL was seen, 1 otherwise.
+ * Note that if QUOTE_0_TERMINATED is not set, always returns 1.
*/
-int
-string_quote(const char *instr, char *outstr, long len, int size)
+static int
+string_quote(const char *instr, char *outstr, const unsigned int size,
+ const unsigned int style)
{
const unsigned char *ustr = (const unsigned char *) instr;
char *s = outstr;
- int usehex, c, i, eol;
+ unsigned int i;
+ int usehex, c, eol;
- eol = 0x100; /* this can never match a char */
- if (len == -1) {
- size--;
+ if (style & QUOTE_0_TERMINATED)
eol = '\0';
- }
+ else
+ eol = 0x100; /* this can never match a char */
usehex = 0;
if (xflag > 1)
@@ -551,7 +548,8 @@
}
}
- *s++ = '\"';
+ if (!(style & QUOTE_OMIT_LEADING_TRAILING_QUOTES))
+ *s++ = '\"';
if (usehex) {
/* Hex-quote the whole string. */
@@ -624,11 +622,12 @@
}
}
- *s++ = '\"';
+ if (!(style & QUOTE_OMIT_LEADING_TRAILING_QUOTES))
+ *s++ = '\"';
*s = '\0';
/* Return zero if we printed entire ASCIZ string (didn't truncate it) */
- if (len == -1 && ustr[i] == '\0') {
+ if (style & QUOTE_0_TERMINATED && ustr[i] == '\0') {
/* We didn't see NUL yet (otherwise we'd jump to 'asciz_ended')
* but next char is NUL.
*/
@@ -638,12 +637,70 @@
return 1;
asciz_ended:
- *s++ = '\"';
+ if (!(style & QUOTE_OMIT_LEADING_TRAILING_QUOTES))
+ *s++ = '\"';
*s = '\0';
/* Return zero: we printed entire ASCIZ string (didn't truncate it) */
return 0;
}
+#ifndef ALLOCA_CUTOFF
+# define ALLOCA_CUTOFF 4032
+#endif
+#define use_alloca(n) ((n) <= ALLOCA_CUTOFF)
+
+/*
+ * Quote string `str' of length `size' and print the result.
+ *
+ * If QUOTE_0_TERMINATED `style' flag is set,
+ * treat `str' as a NUL-terminated string and
+ * quote at most (`size' - 1) bytes.
+ *
+ * If QUOTE_OMIT_LEADING_TRAILING_QUOTES `style' flag is set,
+ * do not add leading and trailing quoting symbols.
+ *
+ * Returns 0 if QUOTE_0_TERMINATED is set and NUL was seen, 1 otherwise.
+ * Note that if QUOTE_0_TERMINATED is not set, always returns 1.
+ */
+int
+print_quoted_string(const char *str, unsigned int size,
+ const unsigned int style)
+{
+ char *buf;
+ char *outstr;
+ unsigned int alloc_size;
+ int rc;
+
+ if (size && style & QUOTE_0_TERMINATED)
+ --size;
+
+ alloc_size = 4 * size;
+ if (alloc_size / 4 != size) {
+ error_msg("Out of memory");
+ tprints("???");
+ return -1;
+ }
+ alloc_size += 1 + (style & QUOTE_OMIT_LEADING_TRAILING_QUOTES ? 0 : 2);
+
+ if (use_alloca(alloc_size)) {
+ outstr = alloca(alloc_size);
+ buf = NULL;
+ } else {
+ outstr = buf = malloc(alloc_size);
+ if (!buf) {
+ error_msg("Out of memory");
+ tprints("???");
+ return -1;
+ }
+ }
+
+ rc = string_quote(str, outstr, size, style);
+ tprints(outstr);
+
+ free(buf);
+ return rc;
+}
+
/*
* Print path string specified by address `addr' and length `n'.
* If path length exceeds `n', append `...' to the output.
@@ -668,13 +725,8 @@
if (nul_seen < 0)
tprintf("%#lx", addr);
else {
- char *outstr;
-
- path[n] = '\0';
- n++;
- outstr = alloca(4 * n); /* 4*(n-1) + 3 for quotes and NUL */
- string_quote(path, outstr, -1, n);
- tprints(outstr);
+ path[n++] = '\0';
+ print_quoted_string(path, n, QUOTE_0_TERMINATED);
if (!nul_seen)
tprints("...");
}
@@ -698,6 +750,7 @@
static char *str = NULL;
static char *outstr;
unsigned int size;
+ unsigned int style;
int ellipsis;
if (!addr) {
@@ -718,31 +771,32 @@
die_out_of_memory();
}
+ size = max_strlen;
if (len == -1) {
/*
* Treat as a NUL-terminated string: fetch one byte more
- * because string_quote() quotes one byte less.
+ * because string_quote may look one byte ahead.
*/
- size = max_strlen + 1;
- if (umovestr(tcp, addr, size, str) < 0) {
+ if (umovestr(tcp, addr, size + 1, str) < 0) {
tprintf("%#lx", addr);
return;
}
+ style = QUOTE_0_TERMINATED;
}
else {
- size = max_strlen;
if (size > (unsigned long)len)
size = (unsigned long)len;
if (umoven(tcp, addr, size, str) < 0) {
tprintf("%#lx", addr);
return;
}
+ style = 0;
}
/* If string_quote didn't see NUL and (it was supposed to be ASCIZ str
* or we were requested to print more than -s NUM chars)...
*/
- ellipsis = (string_quote(str, outstr, len, size) &&
+ ellipsis = (string_quote(str, outstr, size, style) &&
(len < 0 || (unsigned long) len > max_strlen));
tprints(outstr);
@@ -915,10 +969,10 @@
* at address `addr' to our space at `laddr'
*/
int
-umoven(struct tcb *tcp, long addr, int len, char *laddr)
+umoven(struct tcb *tcp, long addr, unsigned int len, char *laddr)
{
int pid = tcp->pid;
- int n, m, nread;
+ unsigned int n, m, nread;
union {
long val;
char x[sizeof(long)];
@@ -937,11 +991,11 @@
remote[0].iov_base = (void*)addr;
local[0].iov_len = remote[0].iov_len = len;
r = process_vm_readv(pid, local, 1, remote, 1, 0);
- if (r == len)
+ if ((unsigned int) r == len)
return 0;
if (r >= 0) {
- error_msg("umoven: short read (%d < %d) @0x%lx",
- r, len, addr);
+ error_msg("umoven: short read (%u < %u) @0x%lx",
+ (unsigned int) r, len, addr);
return -1;
}
switch (errno) {
@@ -964,8 +1018,8 @@
nread = 0;
if (addr & (sizeof(long) - 1)) {
/* addr not a multiple of sizeof(long) */
- n = addr - (addr & -sizeof(long)); /* residue */
- addr &= -sizeof(long); /* residue */
+ n = addr & (sizeof(long) - 1); /* residue */
+ addr &= -sizeof(long); /* aligned address */
errno = 0;
u.val = ptrace(PTRACE_PEEKDATA, pid, (char *) addr, 0);
switch (errno) {
@@ -1002,7 +1056,7 @@
case EFAULT: case EIO: case EPERM:
/* address space is inaccessible */
if (nread) {
- perror_msg("umoven: short read (%d < %d) @0x%lx",
+ perror_msg("umoven: short read (%u < %u) @0x%lx",
nread, nread + len, addr - nread);
}
return -1;
@@ -1036,7 +1090,7 @@
* we never write past laddr[len-1]).
*/
int
-umovestr(struct tcb *tcp, long addr, int len, char *laddr)
+umovestr(struct tcb *tcp, long addr, unsigned int len, char *laddr)
{
#if SIZEOF_LONG == 4
const unsigned long x01010101 = 0x01010101ul;
@@ -1049,7 +1103,7 @@
#endif
int pid = tcp->pid;
- int n, m, nread;
+ unsigned int n, m, nread;
union {
unsigned long val;
char x[sizeof(long)];
@@ -1068,9 +1122,9 @@
remote[0].iov_base = (void*)addr;
while (len > 0) {
- int end_in_page;
+ unsigned int chunk_len;
+ unsigned int end_in_page;
int r;
- int chunk_len;
/* Don't read kilobytes: most strings are short */
chunk_len = len;
@@ -1082,9 +1136,8 @@
* (I hope there aren't arches with pages < 4K)
*/
end_in_page = ((addr + chunk_len) & 4095);
- r = chunk_len - end_in_page;
- if (r > 0) /* if chunk_len > end_in_page */
- chunk_len = r; /* chunk_len -= end_in_page */
+ if (chunk_len > end_in_page) /* crosses to the next page */
+ chunk_len -= end_in_page;
local[0].iov_len = remote[0].iov_len = chunk_len;
r = process_vm_readv(pid, local, 1, remote, 1, 0);
@@ -1123,8 +1176,8 @@
if (addr & (sizeof(long) - 1)) {
/* addr not a multiple of sizeof(long) */
- n = addr - (addr & -sizeof(long)); /* residue */
- addr &= -sizeof(long); /* residue */
+ n = addr & (sizeof(long) - 1); /* residue */
+ addr &= -sizeof(long); /* aligned address */
errno = 0;
u.val = ptrace(PTRACE_PEEKDATA, pid, (char *)addr, 0);
switch (errno) {
@@ -1204,427 +1257,3 @@
*res = val;
return 0;
}
-
-/* Note! On new kernels (about 2.5.46+), we use PTRACE_O_TRACECLONE
- * and PTRACE_O_TRACE[V]FORK for tracing children.
- * If you are adding a new arch which is only supported by newer kernels,
- * you most likely don't need to add any code below
- * beside a dummy "return 0" block in change_syscall().
- */
-
-/*
- * These #if's are huge, please indent them correctly.
- * It's easy to get confused otherwise.
- */
-
-#include "syscall.h"
-
-#ifndef CLONE_PTRACE
-# define CLONE_PTRACE 0x00002000
-#endif
-#ifndef CLONE_VFORK
-# define CLONE_VFORK 0x00004000
-#endif
-#ifndef CLONE_VM
-# define CLONE_VM 0x00000100
-#endif
-
-#ifdef IA64
-
-typedef unsigned long *arg_setup_state;
-
-static int
-arg_setup(struct tcb *tcp, arg_setup_state *state)
-{
- unsigned long cfm, sof, sol;
- long bsp;
-
- if (ia64_ia32mode) {
- /* Satisfy a false GCC warning. */
- *state = NULL;
- return 0;
- }
-
- if (upeek(tcp->pid, PT_AR_BSP, &bsp) < 0)
- return -1;
- if (upeek(tcp->pid, PT_CFM, (long *) &cfm) < 0)
- return -1;
-
- sof = (cfm >> 0) & 0x7f;
- sol = (cfm >> 7) & 0x7f;
- bsp = (long) ia64_rse_skip_regs((unsigned long *) bsp, -sof + sol);
-
- *state = (unsigned long *) bsp;
- return 0;
-}
-
-# define arg_finish_change(tcp, state) 0
-
-static int
-get_arg0(struct tcb *tcp, arg_setup_state *state, long *valp)
-{
- int ret;
-
- if (ia64_ia32mode)
- ret = upeek(tcp->pid, PT_R11, valp);
- else
- ret = umoven(tcp,
- (unsigned long) ia64_rse_skip_regs(*state, 0),
- sizeof(long), (void *) valp);
- return ret;
-}
-
-static int
-get_arg1(struct tcb *tcp, arg_setup_state *state, long *valp)
-{
- int ret;
-
- if (ia64_ia32mode)
- ret = upeek(tcp->pid, PT_R9, valp);
- else
- ret = umoven(tcp,
- (unsigned long) ia64_rse_skip_regs(*state, 1),
- sizeof(long), (void *) valp);
- return ret;
-}
-
-static int
-set_arg0(struct tcb *tcp, arg_setup_state *state, long val)
-{
- int req = PTRACE_POKEDATA;
- void *ap;
-
- if (ia64_ia32mode) {
- ap = (void *) (intptr_t) PT_R11; /* r11 == EBX */
- req = PTRACE_POKEUSER;
- } else
- ap = ia64_rse_skip_regs(*state, 0);
- errno = 0;
- ptrace(req, tcp->pid, ap, val);
- return errno ? -1 : 0;
-}
-
-static int
-set_arg1(struct tcb *tcp, arg_setup_state *state, long val)
-{
- int req = PTRACE_POKEDATA;
- void *ap;
-
- if (ia64_ia32mode) {
- ap = (void *) (intptr_t) PT_R9; /* r9 == ECX */
- req = PTRACE_POKEUSER;
- } else
- ap = ia64_rse_skip_regs(*state, 1);
- errno = 0;
- ptrace(req, tcp->pid, ap, val);
- return errno ? -1 : 0;
-}
-
-/* ia64 does not return the input arguments from functions (and syscalls)
- according to ia64 RSE (Register Stack Engine) behavior. */
-
-# define restore_arg0(tcp, state, val) ((void) (state), 0)
-# define restore_arg1(tcp, state, val) ((void) (state), 0)
-
-#elif defined(SPARC) || defined(SPARC64)
-
-# if defined(SPARC64)
-# undef PTRACE_GETREGS
-# define PTRACE_GETREGS PTRACE_GETREGS64
-# undef PTRACE_SETREGS
-# define PTRACE_SETREGS PTRACE_SETREGS64
-# endif
-
-typedef struct pt_regs arg_setup_state;
-
-# define arg_setup(tcp, state) \
- (ptrace(PTRACE_GETREGS, (tcp)->pid, (char *) (state), 0))
-# define arg_finish_change(tcp, state) \
- (ptrace(PTRACE_SETREGS, (tcp)->pid, (char *) (state), 0))
-
-# define get_arg0(tcp, state, valp) (*(valp) = (state)->u_regs[U_REG_O0], 0)
-# define get_arg1(tcp, state, valp) (*(valp) = (state)->u_regs[U_REG_O1], 0)
-# define set_arg0(tcp, state, val) ((state)->u_regs[U_REG_O0] = (val), 0)
-# define set_arg1(tcp, state, val) ((state)->u_regs[U_REG_O1] = (val), 0)
-# define restore_arg0(tcp, state, val) 0
-
-#else /* other architectures */
-
-# if defined S390 || defined S390X
-/* Note: this is only true for the `clone' system call, which handles
- arguments specially. We could as well say that its first two arguments
- are swapped relative to other architectures, but that would just be
- another #ifdef in the calls. */
-# define arg0_offset PT_GPR3
-# define arg1_offset PT_ORIGGPR2
-# define restore_arg0(tcp, state, val) ((void) (state), 0)
-# define restore_arg1(tcp, state, val) ((void) (state), 0)
-# define arg0_index 1
-# define arg1_index 0
-# elif defined(ALPHA) || defined(MIPS)
-# define arg0_offset REG_A0
-# define arg1_offset (REG_A0+1)
-# elif defined(POWERPC)
-# define arg0_offset (sizeof(unsigned long)*PT_R3)
-# define arg1_offset (sizeof(unsigned long)*PT_R4)
-# define restore_arg0(tcp, state, val) ((void) (state), 0)
-# elif defined(HPPA)
-# define arg0_offset PT_GR26
-# define arg1_offset (PT_GR26-4)
-# elif defined(X86_64) || defined(X32)
-# define arg0_offset ((long)(8*(current_personality ? RBX : RDI)))
-# define arg1_offset ((long)(8*(current_personality ? RCX : RSI)))
-# elif defined(SH)
-# define arg0_offset (4*(REG_REG0+4))
-# define arg1_offset (4*(REG_REG0+5))
-# elif defined(SH64)
- /* ABI defines arg0 & 1 in r2 & r3 */
-# define arg0_offset (REG_OFFSET+16)
-# define arg1_offset (REG_OFFSET+24)
-# define restore_arg0(tcp, state, val) 0
-# elif defined CRISV10 || defined CRISV32
-# define arg0_offset (4*PT_R11)
-# define arg1_offset (4*PT_ORIG_R10)
-# define restore_arg0(tcp, state, val) 0
-# define restore_arg1(tcp, state, val) 0
-# define arg0_index 1
-# define arg1_index 0
-# else
-# define arg0_offset 0
-# define arg1_offset 4
-# if defined ARM
-# define restore_arg0(tcp, state, val) 0
-# endif
-# endif
-
-typedef int arg_setup_state;
-
-# define arg_setup(tcp, state) (0)
-# define arg_finish_change(tcp, state) 0
-# define get_arg0(tcp, cookie, valp) (upeek((tcp)->pid, arg0_offset, (valp)))
-# define get_arg1(tcp, cookie, valp) (upeek((tcp)->pid, arg1_offset, (valp)))
-
-static int
-set_arg0(struct tcb *tcp, void *cookie, long val)
-{
- return ptrace(PTRACE_POKEUSER, tcp->pid, (char*)arg0_offset, val);
-}
-
-static int
-set_arg1(struct tcb *tcp, void *cookie, long val)
-{
- return ptrace(PTRACE_POKEUSER, tcp->pid, (char*)arg1_offset, val);
-}
-
-#endif /* architectures */
-
-#ifndef restore_arg0
-# define restore_arg0(tcp, state, val) set_arg0((tcp), (state), (val))
-#endif
-#ifndef restore_arg1
-# define restore_arg1(tcp, state, val) set_arg1((tcp), (state), (val))
-#endif
-
-#ifndef arg0_index
-# define arg0_index 0
-# define arg1_index 1
-#endif
-
-static int
-change_syscall(struct tcb *tcp, arg_setup_state *state, int new)
-{
-#if defined(I386)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(ORIG_EAX * 4), new) < 0)
- return -1;
- return 0;
-#elif defined(X86_64)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(ORIG_RAX * 8), new) < 0)
- return -1;
- return 0;
-#elif defined(X32)
- /* setbpt/clearbpt never used: */
- /* X32 is only supported since about linux-3.0.30 */
-#elif defined(POWERPC)
- if (ptrace(PTRACE_POKEUSER, tcp->pid,
- (char*)(sizeof(unsigned long)*PT_R0), new) < 0)
- return -1;
- return 0;
-#elif defined(S390) || defined(S390X)
- /* s390 linux after 2.4.7 has a hook in entry.S to allow this */
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(PT_GPR2), new) < 0)
- return -1;
- return 0;
-#elif defined(M68K)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(4*PT_ORIG_D0), new) < 0)
- return -1;
- return 0;
-#elif defined(SPARC) || defined(SPARC64)
- state->u_regs[U_REG_G1] = new;
- return 0;
-#elif defined(MIPS)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(REG_V0), new) < 0)
- return -1;
- return 0;
-#elif defined(ALPHA)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(REG_A3), new) < 0)
- return -1;
- return 0;
-#elif defined(AVR32)
- /* setbpt/clearbpt never used: */
- /* AVR32 is only supported since about linux-2.6.19 */
-#elif defined(BFIN)
- /* setbpt/clearbpt never used: */
- /* Blackfin is only supported since about linux-2.6.23 */
-#elif defined(IA64)
- if (ia64_ia32mode) {
- switch (new) {
- case 2:
- break; /* x86 SYS_fork */
- case SYS_clone:
- new = 120;
- break;
- default:
- fprintf(stderr, "%s: unexpected syscall %d\n",
- __FUNCTION__, new);
- return -1;
- }
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(PT_R1), new) < 0)
- return -1;
- } else if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(PT_R15), new) < 0)
- return -1;
- return 0;
-#elif defined(HPPA)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(PT_GR20), new) < 0)
- return -1;
- return 0;
-#elif defined(SH)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(4*(REG_REG0+3)), new) < 0)
- return -1;
- return 0;
-#elif defined(SH64)
- /* Top half of reg encodes the no. of args n as 0x1n.
- Assume 0 args as kernel never actually checks... */
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(REG_SYSCALL),
- 0x100000 | new) < 0)
- return -1;
- return 0;
-#elif defined(CRISV10) || defined(CRISV32)
- if (ptrace(PTRACE_POKEUSER, tcp->pid, (char*)(4*PT_R9), new) < 0)
- return -1;
- return 0;
-#elif defined(ARM)
- /* Some kernels support this, some (pre-2.6.16 or so) don't. */
-# ifndef PTRACE_SET_SYSCALL
-# define PTRACE_SET_SYSCALL 23
-# endif
- if (ptrace(PTRACE_SET_SYSCALL, tcp->pid, 0, new & 0xffff) != 0)
- return -1;
- return 0;
-#elif defined(AARCH64)
- /* setbpt/clearbpt never used: */
- /* AARCH64 is only supported since about linux-3.0.31 */
-#elif defined(TILE)
- /* setbpt/clearbpt never used: */
- /* Tilera CPUs are only supported since about linux-2.6.34 */
-#elif defined(MICROBLAZE)
- /* setbpt/clearbpt never used: */
- /* microblaze is only supported since about linux-2.6.30 */
-#elif defined(OR1K)
- /* never reached; OR1K is only supported by kernels since 3.1.0. */
-#elif defined(METAG)
- /* setbpt/clearbpt never used: */
- /* Meta is only supported since linux-3.7 */
-#elif defined(XTENSA)
- /* setbpt/clearbpt never used: */
- /* Xtensa is only supported since linux 2.6.13 */
-#elif defined(ARC)
- /* setbpt/clearbpt never used: */
- /* ARC only supported since 3.9 */
-#else
-#warning Do not know how to handle change_syscall for this architecture
-#endif /* architecture */
- return -1;
-}
-
-int
-setbpt(struct tcb *tcp)
-{
- static int clone_scno[SUPPORTED_PERSONALITIES] = { SYS_clone };
- arg_setup_state state;
-
- if (tcp->flags & TCB_BPTSET) {
- fprintf(stderr, "PANIC: TCB already set in pid %u\n", tcp->pid);
- return -1;
- }
-
- /*
- * It's a silly kludge to initialize this with a search at runtime.
- * But it's better than maintaining another magic thing in the
- * godforsaken tables.
- */
- if (clone_scno[current_personality] == 0) {
- unsigned int i;
- for (i = 0; i < nsyscalls; ++i)
- if (sysent[i].sys_func == sys_clone) {
- clone_scno[current_personality] = i;
- break;
- }
- }
-
- if (tcp->s_ent->sys_func == sys_fork) {
- if (arg_setup(tcp, &state) < 0
- || get_arg0(tcp, &state, &tcp->inst[0]) < 0
- || get_arg1(tcp, &state, &tcp->inst[1]) < 0
- || change_syscall(tcp, &state,
- clone_scno[current_personality]) < 0
- || set_arg0(tcp, &state, CLONE_PTRACE|SIGCHLD) < 0
- || set_arg1(tcp, &state, 0) < 0
- || arg_finish_change(tcp, &state) < 0)
- return -1;
- tcp->u_arg[arg0_index] = CLONE_PTRACE|SIGCHLD;
- tcp->u_arg[arg1_index] = 0;
- tcp->flags |= TCB_BPTSET;
- return 0;
- }
-
- if (tcp->s_ent->sys_func == sys_clone) {
- /* ia64 calls directly `clone (CLONE_VFORK | CLONE_VM)'
- contrary to x86 vfork above. Even on x86 we turn the
- vfork semantics into plain fork - each application must not
- depend on the vfork specifics according to POSIX. We would
- hang waiting for the parent resume otherwise. We need to
- clear also CLONE_VM but only in the CLONE_VFORK case as
- otherwise we would break pthread_create. */
-
- long new_arg0 = (tcp->u_arg[arg0_index] | CLONE_PTRACE);
- if (new_arg0 & CLONE_VFORK)
- new_arg0 &= ~(unsigned long)(CLONE_VFORK | CLONE_VM);
- if (arg_setup(tcp, &state) < 0
- || set_arg0(tcp, &state, new_arg0) < 0
- || arg_finish_change(tcp, &state) < 0)
- return -1;
- tcp->inst[0] = tcp->u_arg[arg0_index];
- tcp->inst[1] = tcp->u_arg[arg1_index];
- tcp->flags |= TCB_BPTSET;
- return 0;
- }
-
- fprintf(stderr, "PANIC: setbpt for syscall %ld on %u???\n",
- tcp->scno, tcp->pid);
- return -1;
-}
-
-int
-clearbpt(struct tcb *tcp)
-{
- arg_setup_state state;
- if (arg_setup(tcp, &state) < 0
- || change_syscall(tcp, &state, tcp->scno) < 0
- || restore_arg0(tcp, &state, tcp->inst[0]) < 0
- || restore_arg1(tcp, &state, tcp->inst[1]) < 0
- || arg_finish_change(tcp, &state))
- if (errno != ESRCH)
- return -1;
- tcp->flags &= ~TCB_BPTSET;
- return 0;
-}
diff --git a/v4l2.c b/v4l2.c
index 7d5a3fa..ae1ebb8 100644
--- a/v4l2.c
+++ b/v4l2.c
@@ -31,6 +31,7 @@
#include <stdint.h>
#include <sys/ioctl.h>
+#include <linux/types.h>
#include <linux/videodev2.h>
/* some historical constants */
#ifndef V4L2_CID_HCENTER
@@ -68,10 +69,49 @@
static void print_pixelformat(uint32_t fourcc)
{
+ union {
+ uint32_t pixelformat;
+ unsigned char cc[sizeof(uint32_t)];
+ } u = {
+ .pixelformat =
#if WORDS_BIGENDIAN
- fourcc = htole32(fourcc);
+ htole32(fourcc)
+#else
+ fourcc
#endif
- tprintf("%.4s", (char*)&fourcc);
+ };
+ unsigned int i;
+
+ tprints("v4l2_fourcc(");
+ for (i = 0; i < sizeof(u.cc); ++i) {
+ unsigned int c = u.cc[i];
+
+ if (i)
+ tprints(", ");
+ if (c == ' ' ||
+ (c >= '0' && c <= '9') ||
+ (c >= 'A' && c <= 'Z') ||
+ (c >= 'a' && c <= 'z')) {
+ char sym[] = {
+ '\'',
+ u.cc[i],
+ '\''
+ };
+ tprints(sym);
+ } else {
+ char hex[] = {
+ '\'',
+ '\\',
+ 'x',
+ "0123456789abcdef"[c >> 4],
+ "0123456789abcdef"[c & 0xf],
+ '\'',
+ '\0'
+ };
+ tprints(hex);
+ }
+ }
+ tprints(")");
}
static void print_v4l2_format_fmt(const struct v4l2_format *f)
@@ -126,7 +166,9 @@
/* TODO: Complete this switch statement */
case V4L2_BUF_TYPE_VIDEO_OVERLAY:
+#if HAVE_DECL_V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY
case V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY:
+#endif
tprints("win={???}");
break;
@@ -147,7 +189,7 @@
}
int
-v4l2_ioctl(struct tcb *tcp, unsigned long code, long arg)
+v4l2_ioctl(struct tcb *tcp, const unsigned int code, long arg)
{
if (!verbose(tcp))
return 0;
@@ -158,10 +200,19 @@
if (entering(tcp) || syserror(tcp) || umove(tcp, arg, &caps) < 0)
return 0;
- tprintf(", {driver=\"%s\", card=\"%s\", bus_info=\"%s\", "
- "version=%u.%u.%u, capabilities=", caps.driver, caps.card,
- caps.bus_info, (caps.version >> 16) & 0xFF,
- (caps.version >> 8) & 0xFF, caps.version & 0xFF);
+ tprints(", {driver=");
+ print_quoted_string((const char *) caps.driver,
+ sizeof(caps.driver), QUOTE_0_TERMINATED);
+ tprints(", card=");
+ print_quoted_string((const char *) caps.card,
+ sizeof(caps.card), QUOTE_0_TERMINATED);
+ tprints(", bus_info=");
+ print_quoted_string((const char *) caps.bus_info,
+ sizeof(caps.bus_info), QUOTE_0_TERMINATED);
+ tprintf(", version=%u.%u.%u, capabilities=",
+ (caps.version >> 16) & 0xFF,
+ (caps.version >> 8) & 0xFF,
+ caps.version & 0xFF);
printflags(v4l2_device_capabilities_flags, caps.capabilities,
"V4L2_CAP_???");
#ifdef V4L2_CAP_DEVICE_CAPS
@@ -173,6 +224,7 @@
return 1;
}
+#ifdef VIDIOC_ENUM_FRAMESIZES
case VIDIOC_ENUM_FRAMESIZES: /* decode on exit */ {
struct v4l2_frmsizeenum s;
@@ -202,6 +254,7 @@
tprints("}");
return 1;
}
+#endif /* VIDIOC_ENUM_FRAMESIZES */
case VIDIOC_G_FMT:
case VIDIOC_S_FMT:
@@ -237,8 +290,11 @@
tprints(", flags=");
printflags(v4l2_format_description_flags, f.flags,
"V4L2_FMT_FLAG_???");
- tprintf(", description=\"%s\", pixelformat=",
- f.description);
+ tprints(", description=");
+ print_quoted_string((const char *) f.description,
+ sizeof(f.description),
+ QUOTE_0_TERMINATED);
+ tprints(", pixelformat=");
print_pixelformat(f.pixelformat);
}
tprints("}");
@@ -298,11 +354,13 @@
if (entering(tcp)
|| (exiting(tcp) && tcp->auxstr && !syserror(tcp))) {
tprints(exiting(tcp) ? " => " : ", {id=");
+#ifdef V4L2_CTRL_FLAG_NEXT_CTRL
tcp->auxstr = (c.id & V4L2_CTRL_FLAG_NEXT_CTRL) ? "" : NULL;
if (tcp->auxstr) {
tprints("V4L2_CTRL_FLAG_NEXT_CTRL|");
c.id &= ~V4L2_CTRL_FLAG_NEXT_CTRL;
}
+#endif
printxval(v4l2_control_ids, c.id, "V4L2_CID_???");
}
if (exiting(tcp)) {
@@ -310,9 +368,13 @@
tprints(", type=");
printxval(v4l2_control_types, c.type,
"V4L2_CTRL_TYPE_???");
- tprintf(", name=\"%s\", minimum=%i, maximum=%i, step=%i, "
+ tprints(", name=");
+ print_quoted_string((const char *) c.name,
+ sizeof(c.name),
+ QUOTE_0_TERMINATED);
+ tprintf(", minimum=%i, maximum=%i, step=%i, "
"default_value=%i, flags=",
- c.name, c.minimum, c.maximum,
+ c.minimum, c.maximum,
c.step, c.default_value);
printflags(v4l2_control_flags, c.flags,
"V4L2_CTRL_FLAG_???");
@@ -336,6 +398,7 @@
return 1;
}
+#ifdef VIDIOC_S_EXT_CTRLS
case VIDIOC_S_EXT_CTRLS:
case VIDIOC_TRY_EXT_CTRLS:
case VIDIOC_G_EXT_CTRLS: {
@@ -372,7 +435,7 @@
}
tprints("{id=");
printxval(v4l2_control_ids, ctrl.id, "V4L2_CID_???");
-#if HAVE_DECL_V4L2_CTRL_TYPE_STRING
+# if HAVE_DECL_V4L2_CTRL_TYPE_STRING
tprintf(", size=%u", ctrl.size);
if (ctrl.size > 0) {
if (must_print_values) {
@@ -380,11 +443,11 @@
printstr(tcp, (long) ctrl.string, ctrl.size);
}
} else
-#endif
+# endif
{
if (must_print_values) {
- tprintf(", value=%i, value64=%lli", ctrl.value,
- ctrl.value64);
+ tprintf(", value=%i, value64=%lld", ctrl.value,
+ (long long) ctrl.value64);
}
}
tprints("}");
@@ -392,6 +455,7 @@
tprints("]}");
return 1;
}
+#endif /* VIDIOC_S_EXT_CTRLS */
case VIDIOC_ENUMSTD: {
struct v4l2_standard s;
@@ -402,7 +466,10 @@
tprintf(", {index=%i", s.index);
else {
if (!syserror(tcp)) {
- tprintf(", name=\"%s\"", s.name);
+ tprints(", name=");
+ print_quoted_string((const char *) s.name,
+ sizeof(s.name),
+ QUOTE_0_TERMINATED);
tprintf(", frameperiod=" FMT_FRACT, ARGS_FRACT(s.frameperiod));
tprintf(", framelines=%i", s.framelines);
}
@@ -420,7 +487,7 @@
if (umove(tcp, arg, &s) < 0)
return 0;
if ((code == VIDIOC_S_STD) == entering(tcp))
- tprintf(", std=%#llx", s);
+ tprintf(", std=%#llx", (unsigned long long) s);
return 1;
}
@@ -431,7 +498,10 @@
return 0;
tprintf(", {index=%i", i.index);
if (!syserror(tcp)) {
- tprintf(", name=\"%s\", type=", i.name);
+ tprints(", name=");
+ print_quoted_string((const char *) i.name,
+ sizeof(i.name), QUOTE_0_TERMINATED);
+ tprints(", type=");
printxval(v4l2_input_types, i.type,
"V4L2_INPUT_TYPE_???");
}
@@ -450,6 +520,7 @@
return 1;
}
+#ifdef VIDIOC_ENUM_FRAMEINTERVALS
case VIDIOC_ENUM_FRAMEINTERVALS: {
struct v4l2_frmivalenum f;
@@ -480,6 +551,7 @@
tprints("}");
return 1;
}
+#endif /* VIDIOC_ENUM_FRAMEINTERVALS */
case VIDIOC_CROPCAP: {
struct v4l2_cropcap c;
@@ -561,9 +633,9 @@
b.length, b.bytesused);
printflags(v4l2_buf_flags, b.flags, "V4L2_BUF_FLAG_???");
if (code == VIDIOC_DQBUF)
- tprintf(", timestamp = {%lu.%06lu}",
- b.timestamp.tv_sec,
- b.timestamp.tv_usec);
+ tprintf(", timestamp = {%ju.%06ju}",
+ (uintmax_t)b.timestamp.tv_sec,
+ (uintmax_t)b.timestamp.tv_usec);
tprints(", ...");
}
tprints("}");
diff --git a/wait.c b/wait.c
index 5380864..08e3397 100644
--- a/wait.c
+++ b/wait.c
@@ -29,6 +29,12 @@
#ifndef W_EXITCODE
# define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
#endif
+#ifndef W_CONTINUED
+# define W_CONTINUED 0xffff
+#endif
+
+#include "ptrace.h"
+#include "xlat/ptrace_events.h"
static int
printstatus(int status)
@@ -41,9 +47,11 @@
* are no wait status constructors it will have to do.
*/
if (WIFSTOPPED(status)) {
- tprintf("[{WIFSTOPPED(s) && WSTOPSIG(s) == %s}",
- signame(WSTOPSIG(status)));
- status &= ~W_STOPCODE(WSTOPSIG(status));
+ int sig = WSTOPSIG(status);
+ tprintf("[{WIFSTOPPED(s) && WSTOPSIG(s) == %s%s}",
+ signame(sig & 0x7f),
+ sig & 0x80 ? " | 0x80" : "");
+ status &= ~W_STOPCODE(sig);
}
else if (WIFSIGNALED(status)) {
tprintf("[{WIFSIGNALED(s) && WTERMSIG(s) == %s%s}",
@@ -57,15 +65,29 @@
exited = 1;
status &= ~W_EXITCODE(WEXITSTATUS(status), 0);
}
+#ifdef WIFCONTINUED
+ else if (WIFCONTINUED(status)) {
+ tprints("[{WIFCONTINUED(s)}");
+ status &= ~W_CONTINUED;
+ }
+#endif
else {
tprintf("[%#x]", status);
return 0;
}
- if (status == 0)
- tprints("]");
- else
- tprintf(" | %#x]", status);
+ if (status) {
+ unsigned int event = (unsigned int) status >> 16;
+ if (event) {
+ tprints(" | ");
+ printxval(ptrace_events, event, "PTRACE_EVENT_???");
+ tprints(" << 16");
+ status &= 0xffff;
+ }
+ if (status)
+ tprintf(" | %#x", status);
+ }
+ tprints("]");
return exited;
}
diff --git a/xattr.c b/xattr.c
index 42c9be8..60419e9 100644
--- a/xattr.c
+++ b/xattr.c
@@ -15,40 +15,43 @@
unsigned long insize,
unsigned long size)
{
+ char *buf;
+ unsigned int len;
+
if (insize == 0)
- failed = 1;
- if (!failed) {
- unsigned long capacity = 4 * size + 1;
- unsigned char *buf = (capacity < size) ? NULL : malloc(capacity);
- if (buf == NULL || /* probably a bogus size argument */
- umoven(tcp, arg, size, (char *) &buf[3 * size]) < 0) {
- failed = 1;
- }
- else {
- unsigned char *out = buf;
- unsigned char *in = &buf[3 * size];
- size_t i;
- for (i = 0; i < size; ++i) {
- if (in[i] >= ' ' && in[i] <= 0x7e)
- *out++ = in[i];
- else {
-#define tohex(n) "0123456789abcdef"[n]
- *out++ = '\\';
- *out++ = 'x';
- *out++ = tohex(in[i] / 16);
- *out++ = tohex(in[i] % 16);
- }
- }
- /* Don't print terminating NUL if there is one. */
- if (i > 0 && in[i - 1] == '\0')
- out -= 4;
- *out = '\0';
- tprintf(", \"%s\", %ld", buf, insize);
- }
- free(buf);
+ goto failed;
+
+ len = size;
+ if (size != (unsigned long) len)
+ goto failed;
+
+ if (!len) {
+ tprintf(", \"\", %ld", insize);
+ return;
}
- if (failed)
- tprintf(", 0x%lx, %ld", arg, insize);
+
+ buf = malloc(len);
+ if (!buf)
+ goto failed;
+
+ if (umoven(tcp, arg, len, buf) < 0) {
+ free(buf);
+ goto failed;
+ }
+
+ /* Don't print terminating NUL if there is one. */
+ if (buf[len - 1] == '\0')
+ --len;
+
+ tprints(", ");
+ print_quoted_string(buf, len, 0);
+ tprintf(", %ld", insize);
+
+ free(buf);
+ return;
+
+failed:
+ tprintf(", 0x%lx, %ld", arg, insize);
}
int
diff --git a/xlat/bootflags1.in b/xlat/bootflags1.in
index d2b5f9f..4204823 100644
--- a/xlat/bootflags1.in
+++ b/xlat/bootflags1.in
@@ -1 +1 @@
-LINUX_REBOOT_MAGIC1
+LINUX_REBOOT_MAGIC1 0xfee1dead
diff --git a/xlat/bootflags2.in b/xlat/bootflags2.in
index 56ad023..8daa342 100644
--- a/xlat/bootflags2.in
+++ b/xlat/bootflags2.in
@@ -1,4 +1,4 @@
-LINUX_REBOOT_MAGIC2
-LINUX_REBOOT_MAGIC2A
-LINUX_REBOOT_MAGIC2B
-LINUX_REBOOT_MAGIC2C
+LINUX_REBOOT_MAGIC2 672274793
+LINUX_REBOOT_MAGIC2A 85072278
+LINUX_REBOOT_MAGIC2B 369367448
+LINUX_REBOOT_MAGIC2C 537993216
diff --git a/xlat/bootflags3.in b/xlat/bootflags3.in
index d13ab87..c0337e8 100644
--- a/xlat/bootflags3.in
+++ b/xlat/bootflags3.in
@@ -1,8 +1,8 @@
-LINUX_REBOOT_CMD_RESTART
-LINUX_REBOOT_CMD_HALT
-LINUX_REBOOT_CMD_CAD_ON
-LINUX_REBOOT_CMD_CAD_OFF
-LINUX_REBOOT_CMD_POWER_OFF
-LINUX_REBOOT_CMD_RESTART2
-LINUX_REBOOT_CMD_SW_SUSPEND
-LINUX_REBOOT_CMD_KEXEC
+LINUX_REBOOT_CMD_RESTART 0x01234567
+LINUX_REBOOT_CMD_HALT 0xCDEF0123
+LINUX_REBOOT_CMD_CAD_ON 0x89ABCDEF
+LINUX_REBOOT_CMD_CAD_OFF 0x00000000
+LINUX_REBOOT_CMD_POWER_OFF 0x4321FEDC
+LINUX_REBOOT_CMD_RESTART2 0xA1B2C3D4
+LINUX_REBOOT_CMD_SW_SUSPEND 0xD000FCE2
+LINUX_REBOOT_CMD_KEXEC 0x45584543
diff --git a/xlat/bpf_class.in b/xlat/bpf_class.in
new file mode 100644
index 0000000..f8bd3d7
--- /dev/null
+++ b/xlat/bpf_class.in
@@ -0,0 +1,8 @@
+BPF_LD
+BPF_LDX
+BPF_ST
+BPF_STX
+BPF_ALU
+BPF_JMP
+BPF_RET
+BPF_MISC
diff --git a/xlat/bpf_miscop.in b/xlat/bpf_miscop.in
new file mode 100644
index 0000000..c9703b1
--- /dev/null
+++ b/xlat/bpf_miscop.in
@@ -0,0 +1,2 @@
+BPF_TAX
+BPF_TXA
diff --git a/xlat/bpf_mode.in b/xlat/bpf_mode.in
new file mode 100644
index 0000000..10adecd
--- /dev/null
+++ b/xlat/bpf_mode.in
@@ -0,0 +1,7 @@
+BPF_IMM
+BPF_ABS
+BPF_IND
+BPF_MEM
+BPF_LEN
+BPF_MSH
+BPF_XADD
diff --git a/xlat/bpf_op_alu.in b/xlat/bpf_op_alu.in
new file mode 100644
index 0000000..e43aec6
--- /dev/null
+++ b/xlat/bpf_op_alu.in
@@ -0,0 +1,13 @@
+BPF_ADD
+BPF_SUB
+BPF_MUL
+BPF_DIV
+BPF_OR
+BPF_AND
+BPF_LSH
+BPF_RSH
+BPF_NEG
+BPF_MOD
+BPF_XOR
+BPF_MOV
+BPF_ARSH
diff --git a/xlat/bpf_op_jmp.in b/xlat/bpf_op_jmp.in
new file mode 100644
index 0000000..456c0af
--- /dev/null
+++ b/xlat/bpf_op_jmp.in
@@ -0,0 +1,10 @@
+BPF_JA
+BPF_JEQ
+BPF_JGT
+BPF_JGE
+BPF_JSET
+BPF_JNE
+BPF_JSGT
+BPF_JSGE
+BPF_CALL
+BPF_EXIT
diff --git a/xlat/bpf_rval.in b/xlat/bpf_rval.in
new file mode 100644
index 0000000..44e137e
--- /dev/null
+++ b/xlat/bpf_rval.in
@@ -0,0 +1,3 @@
+BPF_K
+BPF_X
+BPF_A
diff --git a/xlat/bpf_size.in b/xlat/bpf_size.in
new file mode 100644
index 0000000..5e0a508
--- /dev/null
+++ b/xlat/bpf_size.in
@@ -0,0 +1,4 @@
+BPF_W
+BPF_H
+BPF_B
+BPF_DW
diff --git a/xlat/bpf_src.in b/xlat/bpf_src.in
new file mode 100644
index 0000000..ede6abb
--- /dev/null
+++ b/xlat/bpf_src.in
@@ -0,0 +1,2 @@
+BPF_K
+BPF_X
diff --git a/xlat/bsg_protocol.in b/xlat/bsg_protocol.in
new file mode 100644
index 0000000..d47f15b
--- /dev/null
+++ b/xlat/bsg_protocol.in
@@ -0,0 +1 @@
+BSG_PROTOCOL_SCSI
diff --git a/xlat/bsg_subprotocol.in b/xlat/bsg_subprotocol.in
new file mode 100644
index 0000000..5e63cd0
--- /dev/null
+++ b/xlat/bsg_subprotocol.in
@@ -0,0 +1,3 @@
+BSG_SUB_PROTOCOL_SCSI_CMD
+BSG_SUB_PROTOCOL_SCSI_TMF
+BSG_SUB_PROTOCOL_SCSI_TRANSPORT
diff --git a/xlat/cap.in b/xlat/cap.in
new file mode 100644
index 0000000..bbac8d3
--- /dev/null
+++ b/xlat/cap.in
@@ -0,0 +1,39 @@
+#unconditional
+CAP_CHOWN
+CAP_DAC_OVERRIDE
+CAP_DAC_READ_SEARCH
+CAP_FOWNER
+CAP_FSETID
+CAP_KILL
+CAP_SETGID
+CAP_SETUID
+CAP_SETPCAP
+CAP_LINUX_IMMUTABLE
+CAP_NET_BIND_SERVICE
+CAP_NET_BROADCAST
+CAP_NET_ADMIN
+CAP_NET_RAW
+CAP_IPC_LOCK
+CAP_IPC_OWNER
+CAP_SYS_MODULE
+CAP_SYS_RAWIO
+CAP_SYS_CHROOT
+CAP_SYS_PTRACE
+CAP_SYS_PACCT
+CAP_SYS_ADMIN
+CAP_SYS_BOOT
+CAP_SYS_NICE
+CAP_SYS_RESOURCE
+CAP_SYS_TIME
+CAP_SYS_TTY_CONFIG
+CAP_MKNOD
+CAP_LEASE
+CAP_AUDIT_WRITE
+CAP_AUDIT_CONTROL
+CAP_SETFCAP
+CAP_MAC_OVERRIDE
+CAP_MAC_ADMIN
+CAP_SYSLOG
+CAP_WAKE_ALARM
+CAP_BLOCK_SUSPEND
+CAP_AUDIT_READ
diff --git a/xlat/capabilities.in b/xlat/cap_mask0.in
similarity index 100%
rename from xlat/capabilities.in
rename to xlat/cap_mask0.in
diff --git a/xlat/capabilities1.in b/xlat/cap_mask1.in
similarity index 100%
rename from xlat/capabilities1.in
rename to xlat/cap_mask1.in
diff --git a/xlat/evdev_abs.in b/xlat/evdev_abs.in
new file mode 100644
index 0000000..ec8c2f4
--- /dev/null
+++ b/xlat/evdev_abs.in
@@ -0,0 +1,41 @@
+ABS_X
+ABS_Y
+ABS_Z
+ABS_RX
+ABS_RY
+ABS_RZ
+ABS_THROTTLE
+ABS_RUDDER
+ABS_WHEEL
+ABS_GAS
+ABS_BRAKE
+ABS_HAT0X
+ABS_HAT0Y
+ABS_HAT1X
+ABS_HAT1Y
+ABS_HAT2X
+ABS_HAT2Y
+ABS_HAT3X
+ABS_HAT3Y
+ABS_PRESSURE
+ABS_DISTANCE
+ABS_TILT_X
+ABS_TILT_Y
+ABS_TOOL_WIDTH
+ABS_VOLUME
+ABS_MISC
+ABS_MT_SLOT
+ABS_MT_TOUCH_MAJOR
+ABS_MT_TOUCH_MINOR
+ABS_MT_WIDTH_MAJOR
+ABS_MT_WIDTH_MINOR
+ABS_MT_ORIENTATION
+ABS_MT_POSITION_X
+ABS_MT_POSITION_Y
+ABS_MT_TOOL_TYPE
+ABS_MT_BLOB_ID
+ABS_MT_TRACKING_ID
+ABS_MT_PRESSURE
+ABS_MT_DISTANCE
+ABS_MT_TOOL_X
+ABS_MT_TOOL_Y
diff --git a/xlat/evdev_autorepeat.in b/xlat/evdev_autorepeat.in
new file mode 100644
index 0000000..ac8b8fb
--- /dev/null
+++ b/xlat/evdev_autorepeat.in
@@ -0,0 +1,2 @@
+REP_DELAY
+REP_PERIOD
diff --git a/xlat/evdev_ev.in b/xlat/evdev_ev.in
new file mode 100644
index 0000000..0974b59
--- /dev/null
+++ b/xlat/evdev_ev.in
@@ -0,0 +1,12 @@
+EV_SYN
+EV_KEY
+EV_REL
+EV_ABS
+EV_MSC
+EV_SW
+EV_LED
+EV_SND
+EV_REP
+EV_FF
+EV_PWR
+EV_FF_STATUS
diff --git a/xlat/evdev_ff_status.in b/xlat/evdev_ff_status.in
new file mode 100644
index 0000000..3f88710
--- /dev/null
+++ b/xlat/evdev_ff_status.in
@@ -0,0 +1,2 @@
+FF_STATUS_STOPPED
+FF_STATUS_PLAYING
diff --git a/xlat/evdev_ff_types.in b/xlat/evdev_ff_types.in
new file mode 100644
index 0000000..c6714f8
--- /dev/null
+++ b/xlat/evdev_ff_types.in
@@ -0,0 +1,16 @@
+FF_RUMBLE
+FF_PERIODIC
+FF_CONSTANT
+FF_SPRING
+FF_FRICTION
+FF_DAMPER
+FF_INERTIA
+FF_RAMP
+FF_SQUARE
+FF_TRIANGLE
+FF_SINE
+FF_SAW_UP
+FF_SAW_DOWN
+FF_CUSTOM
+FF_GAIN
+FF_AUTOCENTER
diff --git a/xlat/evdev_keycode.in b/xlat/evdev_keycode.in
new file mode 100644
index 0000000..531c8be
--- /dev/null
+++ b/xlat/evdev_keycode.in
@@ -0,0 +1,570 @@
+KEY_RESERVED
+KEY_ESC
+KEY_1
+KEY_2
+KEY_3
+KEY_4
+KEY_5
+KEY_6
+KEY_7
+KEY_8
+KEY_9
+KEY_0
+KEY_MINUS
+KEY_EQUAL
+KEY_BACKSPACE
+KEY_TAB
+KEY_Q
+KEY_W
+KEY_E
+KEY_R
+KEY_T
+KEY_Y
+KEY_U
+KEY_I
+KEY_O
+KEY_P
+KEY_LEFTBRACE
+KEY_RIGHTBRACE
+KEY_ENTER
+KEY_LEFTCTRL
+KEY_A
+KEY_S
+KEY_D
+KEY_F
+KEY_G
+KEY_H
+KEY_J
+KEY_K
+KEY_L
+KEY_SEMICOLON
+KEY_APOSTROPHE
+KEY_GRAVE
+KEY_LEFTSHIFT
+KEY_BACKSLASH
+KEY_Z
+KEY_X
+KEY_C
+KEY_V
+KEY_B
+KEY_N
+KEY_M
+KEY_COMMA
+KEY_DOT
+KEY_SLASH
+KEY_RIGHTSHIFT
+KEY_KPASTERISK
+KEY_LEFTALT
+KEY_SPACE
+KEY_CAPSLOCK
+KEY_F1
+KEY_F2
+KEY_F3
+KEY_F4
+KEY_F5
+KEY_F6
+KEY_F7
+KEY_F8
+KEY_F9
+KEY_F10
+KEY_NUMLOCK
+KEY_SCROLLLOCK
+KEY_KP7
+KEY_KP8
+KEY_KP9
+KEY_KPMINUS
+KEY_KP4
+KEY_KP5
+KEY_KP6
+KEY_KPPLUS
+KEY_KP1
+KEY_KP2
+KEY_KP3
+KEY_KP0
+KEY_KPDOT
+
+KEY_ZENKAKUHANKAKU
+KEY_102ND
+KEY_F11
+KEY_F12
+KEY_RO
+KEY_KATAKANA
+KEY_HIRAGANA
+KEY_HENKAN
+KEY_KATAKANAHIRAGANA
+KEY_MUHENKAN
+KEY_KPJPCOMMA
+KEY_KPENTER
+KEY_RIGHTCTRL
+KEY_KPSLASH
+KEY_SYSRQ
+KEY_RIGHTALT
+KEY_LINEFEED
+KEY_HOME
+KEY_UP
+KEY_PAGEUP
+KEY_LEFT
+KEY_RIGHT
+KEY_END
+KEY_DOWN
+KEY_PAGEDOWN
+KEY_INSERT
+KEY_DELETE
+KEY_MACRO
+KEY_MUTE
+KEY_VOLUMEDOWN
+KEY_VOLUMEUP
+KEY_POWER
+KEY_KPEQUAL
+KEY_KPPLUSMINUS
+KEY_PAUSE
+KEY_SCALE
+
+KEY_KPCOMMA
+KEY_HANGEUL
+KEY_HANGUEL
+KEY_HANJA
+KEY_YEN
+KEY_LEFTMETA
+KEY_RIGHTMETA
+KEY_COMPOSE
+
+KEY_STOP
+KEY_AGAIN
+KEY_PROPS
+KEY_UNDO
+KEY_FRONT
+KEY_COPY
+KEY_OPEN
+KEY_PASTE
+KEY_FIND
+KEY_CUT
+KEY_HELP
+KEY_MENU
+KEY_CALC
+KEY_SETUP
+KEY_SLEEP
+KEY_WAKEUP
+KEY_FILE
+KEY_SENDFILE
+KEY_DELETEFILE
+KEY_XFER
+KEY_PROG1
+KEY_PROG2
+KEY_WWW
+KEY_MSDOS
+KEY_COFFEE
+KEY_DIRECTION
+KEY_CYCLEWINDOWS
+KEY_MAIL
+KEY_BOOKMARKS
+KEY_COMPUTER
+KEY_BACK
+KEY_FORWARD
+KEY_CLOSECD
+KEY_EJECTCD
+KEY_EJECTCLOSECD
+KEY_NEXTSONG
+KEY_PLAYPAUSE
+KEY_PREVIOUSSONG
+KEY_STOPCD
+KEY_RECORD
+KEY_REWIND
+KEY_PHONE
+KEY_ISO
+KEY_CONFIG
+KEY_HOMEPAGE
+KEY_REFRESH
+KEY_EXIT
+KEY_MOVE
+KEY_EDIT
+KEY_SCROLLUP
+KEY_SCROLLDOWN
+KEY_KPLEFTPAREN
+KEY_KPRIGHTPAREN
+KEY_NEW
+KEY_REDO
+
+KEY_F13
+KEY_F14
+KEY_F15
+KEY_F16
+KEY_F17
+KEY_F18
+KEY_F19
+KEY_F20
+KEY_F21
+KEY_F22
+KEY_F23
+KEY_F24
+
+KEY_PLAYCD
+KEY_PAUSECD
+KEY_PROG3
+KEY_PROG4
+KEY_DASHBOARD
+KEY_SUSPEND
+KEY_CLOSE
+KEY_PLAY
+KEY_FASTFORWARD
+KEY_BASSBOOST
+KEY_PRINT
+KEY_HP
+KEY_CAMERA
+KEY_SOUND
+KEY_QUESTION
+KEY_EMAIL
+KEY_CHAT
+KEY_SEARCH
+KEY_CONNECT
+KEY_FINANCE
+KEY_SPORT
+KEY_SHOP
+KEY_ALTERASE
+KEY_CANCEL
+KEY_BRIGHTNESSDOWN
+KEY_BRIGHTNESSUP
+KEY_MEDIA
+
+KEY_SWITCHVIDEOMODE
+
+KEY_KBDILLUMTOGGLE
+KEY_KBDILLUMDOWN
+KEY_KBDILLUMUP
+
+KEY_SEND
+KEY_REPLY
+KEY_FORWARDMAIL
+KEY_SAVE
+KEY_DOCUMENTS
+
+KEY_BATTERY
+
+KEY_BLUETOOTH
+KEY_WLAN
+KEY_UWB
+
+KEY_UNKNOWN
+
+KEY_VIDEO_NEXT
+KEY_VIDEO_PREV
+KEY_BRIGHTNESS_CYCLE
+KEY_BRIGHTNESS_AUTO
+KEY_BRIGHTNESS_ZERO
+KEY_DISPLAY_OFF
+
+KEY_WWAN
+KEY_WIMAX
+KEY_RFKILL
+
+KEY_MICMUTE
+
+BTN_0
+BTN_1
+BTN_2
+BTN_3
+BTN_4
+BTN_5
+BTN_6
+BTN_7
+BTN_8
+BTN_9
+
+BTN_MOUSE
+BTN_LEFT
+BTN_RIGHT
+BTN_MIDDLE
+BTN_SIDE
+BTN_EXTRA
+BTN_FORWARD
+BTN_BACK
+BTN_TASK
+
+BTN_JOYSTICK
+BTN_TRIGGER
+BTN_THUMB
+BTN_THUMB2
+BTN_TOP
+BTN_TOP2
+BTN_PINKIE
+BTN_BASE
+BTN_BASE2
+BTN_BASE3
+BTN_BASE4
+BTN_BASE5
+BTN_BASE6
+BTN_DEAD
+
+BTN_GAMEPAD
+BTN_SOUTH
+BTN_A
+BTN_EAST
+BTN_B
+BTN_C
+BTN_NORTH
+BTN_X
+BTN_WEST
+BTN_Y
+BTN_Z
+BTN_TL
+BTN_TR
+BTN_TL2
+BTN_TR2
+BTN_SELECT
+BTN_START
+BTN_MODE
+BTN_THUMBL
+BTN_THUMBR
+
+BTN_DIGI
+BTN_TOOL_PEN
+BTN_TOOL_RUBBER
+BTN_TOOL_BRUSH
+BTN_TOOL_PENCIL
+BTN_TOOL_AIRBRUSH
+BTN_TOOL_FINGER
+BTN_TOOL_MOUSE
+BTN_TOOL_LENS
+BTN_TOOL_QUINTTAP
+BTN_TOUCH
+BTN_STYLUS
+BTN_STYLUS2
+BTN_TOOL_DOUBLETAP
+BTN_TOOL_TRIPLETAP
+BTN_TOOL_QUADTAP
+
+BTN_WHEEL
+BTN_GEAR_DOWN
+BTN_GEAR_UP
+
+KEY_OK
+KEY_SELECT
+KEY_GOTO
+KEY_CLEAR
+KEY_POWER2
+KEY_OPTION
+KEY_INFO
+KEY_TIME
+KEY_VENDOR
+KEY_ARCHIVE
+KEY_PROGRAM
+KEY_CHANNEL
+KEY_FAVORITES
+KEY_EPG
+KEY_PVR
+KEY_MHP
+KEY_LANGUAGE
+KEY_TITLE
+KEY_SUBTITLE
+KEY_ANGLE
+KEY_ZOOM
+KEY_MODE
+KEY_KEYBOARD
+KEY_SCREEN
+KEY_PC
+KEY_TV
+KEY_TV2
+KEY_VCR
+KEY_VCR2
+KEY_SAT
+KEY_SAT2
+KEY_CD
+KEY_TAPE
+KEY_RADIO
+KEY_TUNER
+KEY_PLAYER
+KEY_TEXT
+KEY_DVD
+KEY_AUX
+KEY_MP3
+KEY_AUDIO
+KEY_VIDEO
+KEY_DIRECTORY
+KEY_LIST
+KEY_MEMO
+KEY_CALENDAR
+KEY_RED
+KEY_GREEN
+KEY_YELLOW
+KEY_BLUE
+KEY_CHANNELUP
+KEY_CHANNELDOWN
+KEY_FIRST
+KEY_LAST
+KEY_AB
+KEY_NEXT
+KEY_RESTART
+KEY_SLOW
+KEY_SHUFFLE
+KEY_BREAK
+KEY_PREVIOUS
+KEY_DIGITS
+KEY_TEEN
+KEY_TWEN
+KEY_VIDEOPHONE
+KEY_GAMES
+KEY_ZOOMIN
+KEY_ZOOMOUT
+KEY_ZOOMRESET
+KEY_WORDPROCESSOR
+KEY_EDITOR
+KEY_SPREADSHEET
+KEY_GRAPHICSEDITOR
+KEY_PRESENTATION
+KEY_DATABASE
+KEY_NEWS
+KEY_VOICEMAIL
+KEY_ADDRESSBOOK
+KEY_MESSENGER
+KEY_DISPLAYTOGGLE
+KEY_BRIGHTNESS_TOGGLE
+KEY_SPELLCHECK
+KEY_LOGOFF
+
+KEY_DOLLAR
+KEY_EURO
+
+KEY_FRAMEBACK
+KEY_FRAMEFORWARD
+KEY_CONTEXT_MENU
+KEY_MEDIA_REPEAT
+KEY_10CHANNELSUP
+KEY_10CHANNELSDOWN
+KEY_IMAGES
+
+KEY_DEL_EOL
+KEY_DEL_EOS
+KEY_INS_LINE
+KEY_DEL_LINE
+
+KEY_FN
+KEY_FN_ESC
+KEY_FN_F1
+KEY_FN_F2
+KEY_FN_F3
+KEY_FN_F4
+KEY_FN_F5
+KEY_FN_F6
+KEY_FN_F7
+KEY_FN_F8
+KEY_FN_F9
+KEY_FN_F10
+KEY_FN_F11
+KEY_FN_F12
+KEY_FN_1
+KEY_FN_2
+KEY_FN_D
+KEY_FN_E
+KEY_FN_F
+KEY_FN_S
+KEY_FN_B
+
+KEY_BRL_DOT1
+KEY_BRL_DOT2
+KEY_BRL_DOT3
+KEY_BRL_DOT4
+KEY_BRL_DOT5
+KEY_BRL_DOT6
+KEY_BRL_DOT7
+KEY_BRL_DOT8
+KEY_BRL_DOT9
+KEY_BRL_DOT10
+
+KEY_NUMERIC_0
+KEY_NUMERIC_1
+KEY_NUMERIC_2
+KEY_NUMERIC_3
+KEY_NUMERIC_4
+KEY_NUMERIC_5
+KEY_NUMERIC_6
+KEY_NUMERIC_7
+KEY_NUMERIC_8
+KEY_NUMERIC_9
+KEY_NUMERIC_STAR
+KEY_NUMERIC_POUND
+
+KEY_CAMERA_FOCUS
+KEY_WPS_BUTTON
+
+KEY_TOUCHPAD_TOGGLE
+KEY_TOUCHPAD_ON
+KEY_TOUCHPAD_OFF
+
+KEY_CAMERA_ZOOMIN
+KEY_CAMERA_ZOOMOUT
+KEY_CAMERA_UP
+KEY_CAMERA_DOWN
+KEY_CAMERA_LEFT
+KEY_CAMERA_RIGHT
+
+KEY_ATTENDANT_ON
+KEY_ATTENDANT_OFF
+KEY_ATTENDANT_TOGGLE
+KEY_LIGHTS_TOGGLE
+
+BTN_DPAD_UP
+BTN_DPAD_DOWN
+BTN_DPAD_LEFT
+BTN_DPAD_RIGHT
+
+KEY_ALS_TOGGLE
+
+KEY_BUTTONCONFIG
+KEY_TASKMANAGER
+KEY_JOURNAL
+KEY_CONTROLPANEL
+KEY_APPSELECT
+KEY_SCREENSAVER
+KEY_VOICECOMMAND
+
+KEY_BRIGHTNESS_MIN
+KEY_BRIGHTNESS_MAX
+
+KEY_KBDINPUTASSIST_PREV
+KEY_KBDINPUTASSIST_NEXT
+KEY_KBDINPUTASSIST_PREVGROUP
+KEY_KBDINPUTASSIST_NEXTGROUP
+KEY_KBDINPUTASSIST_ACCEPT
+KEY_KBDINPUTASSIST_CANCEL
+
+BTN_TRIGGER_HAPPY
+BTN_TRIGGER_HAPPY1
+BTN_TRIGGER_HAPPY2
+BTN_TRIGGER_HAPPY3
+BTN_TRIGGER_HAPPY4
+BTN_TRIGGER_HAPPY5
+BTN_TRIGGER_HAPPY6
+BTN_TRIGGER_HAPPY7
+BTN_TRIGGER_HAPPY8
+BTN_TRIGGER_HAPPY9
+BTN_TRIGGER_HAPPY10
+BTN_TRIGGER_HAPPY11
+BTN_TRIGGER_HAPPY12
+BTN_TRIGGER_HAPPY13
+BTN_TRIGGER_HAPPY14
+BTN_TRIGGER_HAPPY15
+BTN_TRIGGER_HAPPY16
+BTN_TRIGGER_HAPPY17
+BTN_TRIGGER_HAPPY18
+BTN_TRIGGER_HAPPY19
+BTN_TRIGGER_HAPPY20
+BTN_TRIGGER_HAPPY21
+BTN_TRIGGER_HAPPY22
+BTN_TRIGGER_HAPPY23
+BTN_TRIGGER_HAPPY24
+BTN_TRIGGER_HAPPY25
+BTN_TRIGGER_HAPPY26
+BTN_TRIGGER_HAPPY27
+BTN_TRIGGER_HAPPY28
+BTN_TRIGGER_HAPPY29
+BTN_TRIGGER_HAPPY30
+BTN_TRIGGER_HAPPY31
+BTN_TRIGGER_HAPPY32
+BTN_TRIGGER_HAPPY33
+BTN_TRIGGER_HAPPY34
+BTN_TRIGGER_HAPPY35
+BTN_TRIGGER_HAPPY36
+BTN_TRIGGER_HAPPY37
+BTN_TRIGGER_HAPPY38
+BTN_TRIGGER_HAPPY39
+BTN_TRIGGER_HAPPY40
diff --git a/xlat/evdev_leds.in b/xlat/evdev_leds.in
new file mode 100644
index 0000000..c085ed3
--- /dev/null
+++ b/xlat/evdev_leds.in
@@ -0,0 +1,11 @@
+LED_NUML
+LED_CAPSL
+LED_SCROLLL
+LED_COMPOSE
+LED_KANA
+LED_SLEEP
+LED_SUSPEND
+LED_MUTE
+LED_MISC
+LED_MAIL
+LED_CHARGING
diff --git a/xlat/evdev_misc.in b/xlat/evdev_misc.in
new file mode 100644
index 0000000..385ee4d
--- /dev/null
+++ b/xlat/evdev_misc.in
@@ -0,0 +1,6 @@
+MSC_SERIAL
+MSC_PULSELED
+MSC_GESTURE
+MSC_RAW
+MSC_SCAN
+MSC_TIMESTAMP
diff --git a/xlat/evdev_mtslots.in b/xlat/evdev_mtslots.in
new file mode 100644
index 0000000..eedf688
--- /dev/null
+++ b/xlat/evdev_mtslots.in
@@ -0,0 +1,15 @@
+ABS_MT_SLOT
+ABS_MT_TOUCH_MAJOR
+ABS_MT_TOUCH_MINOR
+ABS_MT_WIDTH_MAJOR
+ABS_MT_WIDTH_MINOR
+ABS_MT_ORIENTATION
+ABS_MT_POSITION_X
+ABS_MT_POSITION_Y
+ABS_MT_TOOL_TYPE
+ABS_MT_BLOB_ID
+ABS_MT_TRACKING_ID
+ABS_MT_PRESSURE
+ABS_MT_DISTANCE
+ABS_MT_TOOL_X
+ABS_MT_TOOL_Y
diff --git a/xlat/evdev_prop.in b/xlat/evdev_prop.in
new file mode 100644
index 0000000..fa4f721
--- /dev/null
+++ b/xlat/evdev_prop.in
@@ -0,0 +1,6 @@
+INPUT_PROP_POINTER
+INPUT_PROP_DIRECT
+INPUT_PROP_BUTTONPAD
+INPUT_PROP_SEMI_MT
+INPUT_PROP_TOPBUTTONPAD
+INPUT_PROP_POINTING_STICK
diff --git a/xlat/evdev_relative_axes.in b/xlat/evdev_relative_axes.in
new file mode 100644
index 0000000..7158d47
--- /dev/null
+++ b/xlat/evdev_relative_axes.in
@@ -0,0 +1,10 @@
+REL_X
+REL_Y
+REL_Z
+REL_RX
+REL_RY
+REL_RZ
+REL_HWHEEL
+REL_DIAL
+REL_WHEEL
+REL_MISC
diff --git a/xlat/evdev_snd.in b/xlat/evdev_snd.in
new file mode 100644
index 0000000..eaebe3c
--- /dev/null
+++ b/xlat/evdev_snd.in
@@ -0,0 +1,3 @@
+SND_CLICK
+SND_BELL
+SND_TONE
diff --git a/xlat/evdev_switch.in b/xlat/evdev_switch.in
new file mode 100644
index 0000000..381d838
--- /dev/null
+++ b/xlat/evdev_switch.in
@@ -0,0 +1,16 @@
+SW_LID
+SW_TABLET_MODE
+SW_HEADPHONE_INSERT
+SW_RFKILL_ALL
+SW_RADIO
+SW_MICROPHONE_INSERT
+SW_DOCK
+SW_LINEOUT_INSERT
+SW_JACK_PHYSICAL_INSERT
+SW_VIDEOOUT_INSERT
+SW_CAMERA_LENS_COVER
+SW_KEYPAD_SLIDE
+SW_FRONT_PROXIMITY
+SW_ROTATE_LOCK
+SW_LINEIN_INSERT
+SW_MUTE_DEVICE
diff --git a/xlat/evdev_sync.in b/xlat/evdev_sync.in
new file mode 100644
index 0000000..39c2e4a
--- /dev/null
+++ b/xlat/evdev_sync.in
@@ -0,0 +1,4 @@
+SYN_REPORT
+SYN_CONFIG
+SYN_MT_REPORT
+SYN_DROPPED
diff --git a/xlat/fan_classes.in b/xlat/fan_classes.in
index d9f24de..e7cd307 100644
--- a/xlat/fan_classes.in
+++ b/xlat/fan_classes.in
@@ -1,3 +1,3 @@
-FAN_CLASS_NOTIF
-FAN_CLASS_CONTENT
-FAN_CLASS_PRE_CONTENT
+FAN_CLASS_NOTIF 0x00000000
+FAN_CLASS_CONTENT 0x00000004
+FAN_CLASS_PRE_CONTENT 0x00000008
diff --git a/xlat/fan_event_flags.in b/xlat/fan_event_flags.in
index 79c6b2b..c8d4552 100644
--- a/xlat/fan_event_flags.in
+++ b/xlat/fan_event_flags.in
@@ -1,11 +1,10 @@
-FAN_ACCESS
-FAN_MODIFY
-FAN_CLOSE
-FAN_CLOSE_WRITE
-FAN_CLOSE_NOWRITE
-FAN_OPEN
-FAN_Q_OVERFLOW
-FAN_OPEN_PERM
-FAN_ACCESS_PERM
-FAN_ONDIR
-FAN_EVENT_ON_CHILD
+FAN_ACCESS 0x00000001
+FAN_MODIFY 0x00000002
+FAN_CLOSE_WRITE 0x00000008
+FAN_CLOSE_NOWRITE 0x00000010
+FAN_OPEN 0x00000020
+FAN_Q_OVERFLOW 0x00004000
+FAN_OPEN_PERM 0x00010000
+FAN_ACCESS_PERM 0x00020000
+FAN_ONDIR 0x40000000
+FAN_EVENT_ON_CHILD 0x08000000
diff --git a/xlat/fan_init_flags.in b/xlat/fan_init_flags.in
index 2752269..ca33039 100644
--- a/xlat/fan_init_flags.in
+++ b/xlat/fan_init_flags.in
@@ -1,4 +1,4 @@
-FAN_CLOEXEC
-FAN_NONBLOCK
-FAN_UNLIMITED_QUEUE
-FAN_UNLIMITED_MARKS
+FAN_CLOEXEC 0x00000001
+FAN_NONBLOCK 0x00000002
+FAN_UNLIMITED_QUEUE 0x00000010
+FAN_UNLIMITED_MARKS 0x00000020
diff --git a/xlat/fan_mark_flags.in b/xlat/fan_mark_flags.in
index 4526665..134af4b 100644
--- a/xlat/fan_mark_flags.in
+++ b/xlat/fan_mark_flags.in
@@ -1,8 +1,8 @@
-FAN_MARK_ADD
-FAN_MARK_REMOVE
-FAN_MARK_DONT_FOLLOW
-FAN_MARK_ONLYDIR
-FAN_MARK_MOUNT
-FAN_MARK_IGNORED_MASK
-FAN_MARK_IGNORED_SURV_MODIFY
-FAN_MARK_FLUSH
+FAN_MARK_ADD 0x00000001
+FAN_MARK_REMOVE 0x00000002
+FAN_MARK_DONT_FOLLOW 0x00000004
+FAN_MARK_ONLYDIR 0x00000008
+FAN_MARK_MOUNT 0x00000010
+FAN_MARK_IGNORED_MASK 0x00000020
+FAN_MARK_IGNORED_SURV_MODIFY 0x00000040
+FAN_MARK_FLUSH 0x00000080
diff --git a/xlat/fileflags.in b/xlat/fileflags.in
deleted file mode 100644
index e69de29..0000000
--- a/xlat/fileflags.in
+++ /dev/null
diff --git a/xlat/gen.sh b/xlat/gen.sh
index f217840..8754a03 100755
--- a/xlat/gen.sh
+++ b/xlat/gen.sh
@@ -1,6 +1,7 @@
#!/bin/sh
-usage() {
+usage()
+{
cat <<EOF
Usage: $0 <input> <output>
@@ -10,7 +11,41 @@
exit 1
}
-gen_header() {
+cond_xlat()
+{
+ local line val m def xlat
+ line="$1"; shift
+
+ val="$(printf %s "${line}" | sed -n 's/^\([^[:space:]]\+\).*$/\1/p')"
+ m="${val%%|*}"
+ def="$(printf %s "${line}" |
+ sed -n 's/^[^[:space:]]\+[[:space:]]\+\([^[:space:]].*\)$/\1/p')"
+
+ if [ "${m}" = "${m#1<<}" ]; then
+ xlat="XLAT(${val}),"
+ else
+ m="${m#1<<}"
+ xlat=" { ${val}, \"${m}\" },"
+ fi
+
+ if [ -z "${def}" ]; then
+ cat <<-EOF
+ #if defined(${m}) || (defined(HAVE_DECL_${m}) && HAVE_DECL_${m})
+ ${xlat}
+ #endif
+ EOF
+ else
+ cat <<-EOF
+ #if !(defined(${m}) || (defined(HAVE_DECL_${m}) && HAVE_DECL_${m}))
+ # define ${m} ${def}
+ #endif
+ ${xlat}
+ EOF
+ fi
+}
+
+gen_header()
+{
local input="$1" output="$2" name="$3"
echo "generating ${output}"
(
@@ -38,23 +73,22 @@
unterminated=1
;;
[A-Z_]*) # symbolic constants
- local m="${line%%|*}"
- [ -n "${unconditional}" ] ||
- echo "#if defined(${m}) || (defined(HAVE_DECL_${m}) && HAVE_DECL_${m})"
- echo " XLAT(${line}),"
- [ -n "${unconditional}" ] ||
- echo "#endif"
+ if [ -n "${unconditional}" ]; then
+ echo " XLAT(${line}),"
+ else
+ cond_xlat "${line}"
+ fi
;;
'1<<'[A-Z_]*) # symbolic constants with shift
- local m="${line#1<<}"
- [ -n "${unconditional}" ] ||
- echo "#if defined(${m}) || (defined(HAVE_DECL_${m}) && HAVE_DECL_${m})"
- echo " { ${line}, \"${m}\" },"
- [ -n "${unconditional}" ] ||
- echo "#endif"
+ m="${line%% *}"
+ if [ -n "${unconditional}" ]; then
+ echo " { ${line}, \"${line#1<<}\" },"
+ else
+ cond_xlat "${line}"
+ fi
;;
[0-9]*) # numeric constants
- echo " XLAT(${line}),"
+ echo " XLAT(${line}),"
;;
*) # verbatim lines
echo "${line}"
@@ -62,15 +96,16 @@
esac
done < "${input}"
if [ -n "${unterminated}" ]; then
- echo " /* this array should remain not NULL-terminated */"
+ echo " /* this array should remain not NULL-terminated */"
else
- echo " XLAT_END"
+ echo " XLAT_END"
fi
echo "};"
) >"${output}"
}
-gen_make() {
+gen_make()
+{
local output="$1"
local name
shift
@@ -90,7 +125,8 @@
) >"${output}"
}
-gen_git() {
+gen_git()
+{
local output="$1"
shift
echo "generating ${output}"
@@ -100,7 +136,8 @@
) >"${output}"
}
-main() {
+main()
+{
case $# in
0) set -- "${0%/*}" "${0%/*}" ;;
2) ;;
@@ -110,6 +147,10 @@
local input="$1"
local output="$2"
local name
+ local jobs=0
+ local ncpus="$(getconf _NPROCESSORS_ONLN)"
+ [ "${ncpus}" -ge 1 ] ||
+ ncpus=1
if [ -d "${input}" ]; then
local f names=
@@ -119,6 +160,11 @@
name=${name%.in}
gen_header "${f}" "${output}/${name}.h" "${name}" &
names="${names} ${name}"
+ : $(( jobs += 1 ))
+ if [ ${jobs} -ge ${ncpus} ]; then
+ jobs=0
+ wait
+ fi
done
gen_git "${output}/.gitignore" ${names}
gen_make "${output}/Makemodule.am" ${names}
diff --git a/xlat/getrandom_flags.in b/xlat/getrandom_flags.in
new file mode 100644
index 0000000..7b77c5a
--- /dev/null
+++ b/xlat/getrandom_flags.in
@@ -0,0 +1,12 @@
+#unconditional
+
+#ifndef GRND_NONBLOCK
+# define GRND_NONBLOCK 1
+#endif
+
+#ifndef GRND_RANDOM
+# define GRND_RANDOM 2
+#endif
+
+GRND_NONBLOCK
+GRND_RANDOM
diff --git a/xlat/inotify_flags.in b/xlat/inotify_flags.in
index 605b864..db1d839 100644
--- a/xlat/inotify_flags.in
+++ b/xlat/inotify_flags.in
@@ -1,23 +1,21 @@
-IN_ACCESS
-IN_MODIFY
-IN_ATTRIB
-IN_CLOSE
-IN_CLOSE_WRITE
-IN_CLOSE_NOWRITE
-IN_OPEN
-IN_MOVE
-IN_MOVED_FROM
-IN_MOVED_TO
-IN_CREATE
-IN_DELETE
-IN_DELETE_SELF
-IN_MOVE_SELF
-IN_UNMOUNT
-IN_Q_OVERFLOW
-IN_IGNORED
-IN_ONLYDIR
-IN_DONT_FOLLOW
-IN_EXCL_UNLINK
-IN_MASK_ADD
-IN_ISDIR
-IN_ONESHOT
+IN_ACCESS 0x00000001
+IN_MODIFY 0x00000002
+IN_ATTRIB 0x00000004
+IN_CLOSE_WRITE 0x00000008
+IN_CLOSE_NOWRITE 0x00000010
+IN_OPEN 0x00000020
+IN_MOVED_FROM 0x00000040
+IN_MOVED_TO 0x00000080
+IN_CREATE 0x00000100
+IN_DELETE 0x00000200
+IN_DELETE_SELF 0x00000400
+IN_MOVE_SELF 0x00000800
+IN_UNMOUNT 0x00002000
+IN_Q_OVERFLOW 0x00004000
+IN_IGNORED 0x00008000
+IN_ONLYDIR 0x01000000
+IN_DONT_FOLLOW 0x02000000
+IN_EXCL_UNLINK 0x04000000
+IN_MASK_ADD 0x20000000
+IN_ISDIR 0x40000000
+IN_ONESHOT 0x80000000
diff --git a/xlat/ioctl_dirs.in b/xlat/ioctl_dirs.in
new file mode 100644
index 0000000..4c97a86
--- /dev/null
+++ b/xlat/ioctl_dirs.in
@@ -0,0 +1,3 @@
+_IOC_READ
+_IOC_WRITE
+_IOC_NONE
diff --git a/xlat/kexec_arch_values.in b/xlat/kexec_arch_values.in
index 92ae8ae..66d25bf 100644
--- a/xlat/kexec_arch_values.in
+++ b/xlat/kexec_arch_values.in
@@ -1,11 +1,12 @@
-KEXEC_ARCH_DEFAULT
-KEXEC_ARCH_386
-KEXEC_ARCH_X86_64
-KEXEC_ARCH_PPC
-KEXEC_ARCH_PPC64
-KEXEC_ARCH_IA_64
-KEXEC_ARCH_ARM
-KEXEC_ARCH_S390
-KEXEC_ARCH_SH
-KEXEC_ARCH_MIPS_LE
-KEXEC_ARCH_MIPS
+KEXEC_ARCH_DEFAULT ( 0 << 16)
+KEXEC_ARCH_386 ( 3 << 16)
+KEXEC_ARCH_68K ( 4 << 16)
+KEXEC_ARCH_X86_64 (62 << 16)
+KEXEC_ARCH_PPC (20 << 16)
+KEXEC_ARCH_PPC64 (21 << 16)
+KEXEC_ARCH_IA_64 (50 << 16)
+KEXEC_ARCH_ARM (40 << 16)
+KEXEC_ARCH_S390 (22 << 16)
+KEXEC_ARCH_SH (42 << 16)
+KEXEC_ARCH_MIPS_LE (10 << 16)
+KEXEC_ARCH_MIPS ( 8 << 16)
diff --git a/xlat/kexec_flags.in b/xlat/kexec_flags.in
deleted file mode 100644
index 43eb497..0000000
--- a/xlat/kexec_flags.in
+++ /dev/null
@@ -1,2 +0,0 @@
-KEXEC_ON_CRASH
-KEXEC_PRESERVE_CONTEXT
diff --git a/xlat/kexec_load_flags.in b/xlat/kexec_load_flags.in
new file mode 100644
index 0000000..4fa8b68
--- /dev/null
+++ b/xlat/kexec_load_flags.in
@@ -0,0 +1,2 @@
+KEXEC_ON_CRASH 0x00000001
+KEXEC_PRESERVE_CONTEXT 0x00000002
diff --git a/xlat/key_perms.in b/xlat/key_perms.in
index f7e8edb..c96a9ed 100644
--- a/xlat/key_perms.in
+++ b/xlat/key_perms.in
@@ -1,28 +1,28 @@
-KEY_POS_VIEW
-KEY_POS_READ
-KEY_POS_WRITE
-KEY_POS_SEARCH
-KEY_POS_LINK
-KEY_POS_SETATTR
-KEY_POS_ALL
-KEY_USR_VIEW
-KEY_USR_READ
-KEY_USR_WRITE
-KEY_USR_SEARCH
-KEY_USR_LINK
-KEY_USR_SETATTR
-KEY_USR_ALL
-KEY_GRP_VIEW
-KEY_GRP_READ
-KEY_GRP_WRITE
-KEY_GRP_SEARCH
-KEY_GRP_LINK
-KEY_GRP_SETATTR
-KEY_GRP_ALL
-KEY_OTH_VIEW
-KEY_OTH_READ
-KEY_OTH_WRITE
-KEY_OTH_SEARCH
-KEY_OTH_LINK
-KEY_OTH_SETATTR
-KEY_OTH_ALL
+KEY_POS_VIEW 0x01000000
+KEY_POS_READ 0x02000000
+KEY_POS_WRITE 0x04000000
+KEY_POS_SEARCH 0x08000000
+KEY_POS_LINK 0x10000000
+KEY_POS_SETATTR 0x20000000
+KEY_POS_ALL 0x3f000000
+KEY_USR_VIEW 0x00010000
+KEY_USR_READ 0x00020000
+KEY_USR_WRITE 0x00040000
+KEY_USR_SEARCH 0x00080000
+KEY_USR_LINK 0x00100000
+KEY_USR_SETATTR 0x00200000
+KEY_USR_ALL 0x003f0000
+KEY_GRP_VIEW 0x00000100
+KEY_GRP_READ 0x00000200
+KEY_GRP_WRITE 0x00000400
+KEY_GRP_SEARCH 0x00000800
+KEY_GRP_LINK 0x00001000
+KEY_GRP_SETATTR 0x00002000
+KEY_GRP_ALL 0x00003f00
+KEY_OTH_VIEW 0x00000001
+KEY_OTH_READ 0x00000002
+KEY_OTH_WRITE 0x00000004
+KEY_OTH_SEARCH 0x00000008
+KEY_OTH_LINK 0x00000010
+KEY_OTH_SETATTR 0x00000020
+KEY_OTH_ALL 0x0000003f
diff --git a/xlat/key_reqkeys.in b/xlat/key_reqkeys.in
index 6da0ff7..747e440 100644
--- a/xlat/key_reqkeys.in
+++ b/xlat/key_reqkeys.in
@@ -1,9 +1,9 @@
-KEY_REQKEY_DEFL_NO_CHANGE
-KEY_REQKEY_DEFL_DEFAULT
-KEY_REQKEY_DEFL_THREAD_KEYRING
-KEY_REQKEY_DEFL_PROCESS_KEYRING
-KEY_REQKEY_DEFL_SESSION_KEYRING
-KEY_REQKEY_DEFL_USER_KEYRING
-KEY_REQKEY_DEFL_USER_SESSION_KEYRING
-KEY_REQKEY_DEFL_GROUP_KEYRING
-KEY_REQKEY_DEFL_REQUESTOR_KEYRING
+KEY_REQKEY_DEFL_NO_CHANGE -1
+KEY_REQKEY_DEFL_DEFAULT 0
+KEY_REQKEY_DEFL_THREAD_KEYRING 1
+KEY_REQKEY_DEFL_PROCESS_KEYRING 2
+KEY_REQKEY_DEFL_SESSION_KEYRING 3
+KEY_REQKEY_DEFL_USER_KEYRING 4
+KEY_REQKEY_DEFL_USER_SESSION_KEYRING 5
+KEY_REQKEY_DEFL_GROUP_KEYRING 6
+KEY_REQKEY_DEFL_REQUESTOR_KEYRING 7
diff --git a/xlat/key_spec.in b/xlat/key_spec.in
index 942b7ef..3e87954 100644
--- a/xlat/key_spec.in
+++ b/xlat/key_spec.in
@@ -1,8 +1,8 @@
-KEY_SPEC_THREAD_KEYRING
-KEY_SPEC_PROCESS_KEYRING
-KEY_SPEC_SESSION_KEYRING
-KEY_SPEC_USER_KEYRING
-KEY_SPEC_USER_SESSION_KEYRING
-KEY_SPEC_GROUP_KEYRING
-KEY_SPEC_REQKEY_AUTH_KEY
-KEY_SPEC_REQUESTOR_KEYRING
+KEY_SPEC_THREAD_KEYRING -1
+KEY_SPEC_PROCESS_KEYRING -2
+KEY_SPEC_SESSION_KEYRING -3
+KEY_SPEC_USER_KEYRING -4
+KEY_SPEC_USER_SESSION_KEYRING -5
+KEY_SPEC_GROUP_KEYRING -6
+KEY_SPEC_REQKEY_AUTH_KEY -7
+KEY_SPEC_REQUESTOR_KEYRING -8
diff --git a/xlat/keyctl_commands.in b/xlat/keyctl_commands.in
index 33daf51..beb3b1d 100644
--- a/xlat/keyctl_commands.in
+++ b/xlat/keyctl_commands.in
@@ -1,23 +1,23 @@
-KEYCTL_GET_KEYRING_ID
-KEYCTL_JOIN_SESSION_KEYRING
-KEYCTL_UPDATE
-KEYCTL_REVOKE
-KEYCTL_CHOWN
-KEYCTL_SETPERM
-KEYCTL_DESCRIBE
-KEYCTL_CLEAR
-KEYCTL_LINK
-KEYCTL_UNLINK
-KEYCTL_SEARCH
-KEYCTL_READ
-KEYCTL_INSTANTIATE
-KEYCTL_NEGATE
-KEYCTL_SET_REQKEY_KEYRING
-KEYCTL_SET_TIMEOUT
-KEYCTL_ASSUME_AUTHORITY
-KEYCTL_GET_SECURITY
-KEYCTL_SESSION_TO_PARENT
-KEYCTL_REJECT
-KEYCTL_INSTANTIATE_IOV
-KEYCTL_INVALIDATE
-KEYCTL_GET_PERSISTENT
+KEYCTL_GET_KEYRING_ID 0
+KEYCTL_JOIN_SESSION_KEYRING 1
+KEYCTL_UPDATE 2
+KEYCTL_REVOKE 3
+KEYCTL_CHOWN 4
+KEYCTL_SETPERM 5
+KEYCTL_DESCRIBE 6
+KEYCTL_CLEAR 7
+KEYCTL_LINK 8
+KEYCTL_UNLINK 9
+KEYCTL_SEARCH 10
+KEYCTL_READ 11
+KEYCTL_INSTANTIATE 12
+KEYCTL_NEGATE 13
+KEYCTL_SET_REQKEY_KEYRING 14
+KEYCTL_SET_TIMEOUT 15
+KEYCTL_ASSUME_AUTHORITY 16
+KEYCTL_GET_SECURITY 17
+KEYCTL_SESSION_TO_PARENT 18
+KEYCTL_REJECT 19
+KEYCTL_INSTANTIATE_IOV 20
+KEYCTL_INVALIDATE 21
+KEYCTL_GET_PERSISTENT 22
diff --git a/xlat/packet_mreq_type.in b/xlat/packet_mreq_type.in
new file mode 100644
index 0000000..0d6adfe
--- /dev/null
+++ b/xlat/packet_mreq_type.in
@@ -0,0 +1,4 @@
+PACKET_MR_MULTICAST
+PACKET_MR_PROMISC
+PACKET_MR_ALLMULTI
+PACKET_MR_UNICAST
diff --git a/xlat/pr_mce_kill.in b/xlat/pr_mce_kill.in
new file mode 100644
index 0000000..574e55f
--- /dev/null
+++ b/xlat/pr_mce_kill.in
@@ -0,0 +1,2 @@
+PR_MCE_KILL_CLEAR 0
+PR_MCE_KILL_SET 1
diff --git a/xlat/pr_mce_kill_policy.in b/xlat/pr_mce_kill_policy.in
new file mode 100644
index 0000000..510b566
--- /dev/null
+++ b/xlat/pr_mce_kill_policy.in
@@ -0,0 +1,3 @@
+PR_MCE_KILL_LATE 0
+PR_MCE_KILL_EARLY 1
+PR_MCE_KILL_DEFAULT 2
diff --git a/xlat/pr_set_mm.in b/xlat/pr_set_mm.in
new file mode 100644
index 0000000..191ba8d
--- /dev/null
+++ b/xlat/pr_set_mm.in
@@ -0,0 +1,15 @@
+PR_SET_MM_START_CODE 1
+PR_SET_MM_END_CODE 2
+PR_SET_MM_START_DATA 3
+PR_SET_MM_END_DATA 4
+PR_SET_MM_START_STACK 5
+PR_SET_MM_START_BRK 6
+PR_SET_MM_BRK 7
+PR_SET_MM_ARG_START 8
+PR_SET_MM_ARG_END 9
+PR_SET_MM_ENV_START 10
+PR_SET_MM_ENV_END 11
+PR_SET_MM_AUXV 12
+PR_SET_MM_EXE_FILE 13
+PR_SET_MM_MAP 14
+PR_SET_MM_MAP_SIZE 15
diff --git a/xlat/pr_tsc.in b/xlat/pr_tsc.in
new file mode 100644
index 0000000..d03aafc
--- /dev/null
+++ b/xlat/pr_tsc.in
@@ -0,0 +1,2 @@
+PR_TSC_ENABLE 1
+PR_TSC_SIGSEGV 2
diff --git a/xlat/pr_unalign_flags.in b/xlat/pr_unalign_flags.in
new file mode 100644
index 0000000..0d3f2ff
--- /dev/null
+++ b/xlat/pr_unalign_flags.in
@@ -0,0 +1,2 @@
+PR_UNALIGN_NOPRINT 1
+PR_UNALIGN_SIGBUS 2
diff --git a/xlat/prctl_options.in b/xlat/prctl_options.in
index 478bea6..a23207c 100644
--- a/xlat/prctl_options.in
+++ b/xlat/prctl_options.in
@@ -1,60 +1,43 @@
-PR_MAXPROCS
-PR_ISBLOCKED
-PR_SETSTACKSIZE
-PR_GETSTACKSIZE
-PR_MAXPPROCS
-PR_UNBLKONEXEC
-PR_ATOMICSIM
-PR_SETEXITSIG
-PR_RESIDENT
-PR_ATTACHADDR
-PR_DETACHADDR
-PR_TERMCHILD
-PR_GETSHMASK
-PR_GETNSHARE
-PR_COREPID
-PR_ATTACHADDRPERM
-PR_PTHREADEXIT
-PR_SET_PDEATHSIG
-PR_GET_PDEATHSIG
-PR_GET_DUMPABLE
-PR_SET_DUMPABLE
-PR_GET_UNALIGN
-PR_SET_UNALIGN
-PR_GET_KEEPCAPS
-PR_SET_KEEPCAPS
-PR_GET_FPEMU
-PR_SET_FPEMU
-PR_GET_FPEXC
-PR_SET_FPEXC
-PR_GET_TIMING
-PR_SET_TIMING
-PR_SET_NAME
-PR_GET_NAME
-PR_GET_ENDIAN
-PR_SET_ENDIAN
-PR_GET_SECCOMP
-PR_SET_SECCOMP
-PR_CAPBSET_READ
-PR_CAPBSET_DROP
-PR_GET_TSC
-PR_SET_TSC
-PR_GET_SECUREBITS
-PR_SET_SECUREBITS
-PR_SET_TIMERSLACK
-PR_GET_TIMERSLACK
-PR_TASK_PERF_EVENTS_DISABLE
-PR_TASK_PERF_EVENTS_ENABLE
-PR_MCE_KILL
-PR_MCE_KILL_GET
-PR_SET_MM
-PR_SET_PTRACER
-PR_SET_CHILD_SUBREAPER
-PR_GET_CHILD_SUBREAPER
-PR_SET_NO_NEW_PRIVS
-PR_GET_NO_NEW_PRIVS
-PR_GET_TID_ADDRESS
-PR_SET_THP_DISABLE
-PR_GET_THP_DISABLE
-PR_MPX_ENABLE_MANAGEMENT
-PR_MPX_DISABLE_MANAGEMENT
+PR_SET_PDEATHSIG 1
+PR_GET_PDEATHSIG 2
+PR_GET_DUMPABLE 3
+PR_SET_DUMPABLE 4
+PR_GET_UNALIGN 5
+PR_SET_UNALIGN 6
+PR_GET_KEEPCAPS 7
+PR_SET_KEEPCAPS 8
+PR_GET_FPEMU 9
+PR_SET_FPEMU 10
+PR_GET_FPEXC 11
+PR_SET_FPEXC 12
+PR_GET_TIMING 13
+PR_SET_TIMING 14
+PR_SET_NAME 15
+PR_GET_NAME 16
+PR_GET_ENDIAN 19
+PR_SET_ENDIAN 20
+PR_GET_SECCOMP 21
+PR_SET_SECCOMP 22
+PR_CAPBSET_READ 23
+PR_CAPBSET_DROP 24
+PR_GET_TSC 25
+PR_SET_TSC 26
+PR_GET_SECUREBITS 27
+PR_SET_SECUREBITS 28
+PR_SET_TIMERSLACK 29
+PR_GET_TIMERSLACK 30
+PR_TASK_PERF_EVENTS_DISABLE 31
+PR_TASK_PERF_EVENTS_ENABLE 32
+PR_MCE_KILL 33
+PR_MCE_KILL_GET 34
+PR_SET_MM 35
+PR_SET_PTRACER 0x59616d61
+PR_SET_CHILD_SUBREAPER 36
+PR_GET_CHILD_SUBREAPER 37
+PR_SET_NO_NEW_PRIVS 38
+PR_GET_NO_NEW_PRIVS 39
+PR_GET_TID_ADDRESS 40
+PR_SET_THP_DISABLE 41
+PR_GET_THP_DISABLE 42
+PR_MPX_ENABLE_MANAGEMENT 43
+PR_MPX_DISABLE_MANAGEMENT 44
diff --git a/xlat/ptrace_cmds.in b/xlat/ptrace_cmds.in
index 9408c15..e28a5df 100644
--- a/xlat/ptrace_cmds.in
+++ b/xlat/ptrace_cmds.in
@@ -32,3 +32,67 @@
PTRACE_PEEKSIGINFO
PTRACE_GETSIGMASK
PTRACE_SETSIGMASK
+/* arch-specific */
+PTRACE_GET_THREAD_AREA
+PTRACE_SET_THREAD_AREA
+PTRACE_OLDSETOPTIONS
+PTRACE_GETFDPIC
+PTRACE_SINGLEBLOCK
+/* arm */
+PTRACE_GETWMMXREGS
+PTRACE_SETWMMXREGS
+PTRACE_GETCRUNCHREGS
+PTRACE_SETCRUNCHREGS
+PTRACE_GETVFPREGS
+PTRACE_SETVFPREGS
+PTRACE_GETHBPREGS
+PTRACE_SETHBPREGS
+/* ia64 */
+PTRACE_OLD_GETSIGINFO
+PTRACE_OLD_SETSIGINFO
+/* mips */
+PTRACE_PEEKTEXT_3264
+PTRACE_PEEKDATA_3264
+PTRACE_POKETEXT_3264
+PTRACE_POKEDATA_3264
+PTRACE_GET_THREAD_AREA_3264
+PTRACE_GET_WATCH_REGS
+PTRACE_SET_WATCH_REGS
+/* powerpc */
+PTRACE_GETEVRREGS
+PTRACE_SETEVRREGS
+PTRACE_GETVSRREGS
+PTRACE_SETVSRREGS
+PTRACE_GET_DEBUGREG
+PTRACE_SET_DEBUGREG
+/* s390 */
+PTRACE_PEEKUSR_AREA
+PTRACE_POKEUSR_AREA
+PTRACE_PEEKTEXT_AREA
+PTRACE_PEEKDATA_AREA
+PTRACE_POKETEXT_AREA
+PTRACE_POKEDATA_AREA
+PTRACE_GET_LAST_BREAK
+PTRACE_PEEK_SYSTEM_CALL
+PTRACE_POKE_SYSTEM_CALL
+PTRACE_ENABLE_TE
+PTRACE_DISABLE_TE
+PTRACE_TE_ABORT_RAND
+/* sh */
+PTRACE_GETDSPREGS
+PTRACE_SETDSPREGS
+/* sparc */
+PTRACE_SPARC_DETACH
+PTRACE_READDATA
+PTRACE_WRITEDATA
+PTRACE_READTEXT
+PTRACE_WRITETEXT
+PTRACE_GETFPAREGS
+PTRACE_SETFPAREGS
+/* x86 */
+PTRACE_ARCH_PRCTL
+PTRACE_SYSEMU
+PTRACE_SYSEMU_SINGLESTEP
+/* xtensa */
+PTRACE_GETXTREGS
+PTRACE_SETXTREGS
diff --git a/xlat/ptrace_events.in b/xlat/ptrace_events.in
new file mode 100644
index 0000000..a772e3c
--- /dev/null
+++ b/xlat/ptrace_events.in
@@ -0,0 +1,10 @@
+PTRACE_EVENT_FORK
+PTRACE_EVENT_VFORK
+PTRACE_EVENT_CLONE
+PTRACE_EVENT_EXEC
+PTRACE_EVENT_VFORK_DONE
+PTRACE_EVENT_EXIT
+PTRACE_EVENT_SECCOMP
+PTRACE_EVENT_STOP
+/* tile */
+PTRACE_EVENT_MIGRATE
diff --git a/xlat/ptrace_setoptions_flags.in b/xlat/ptrace_setoptions_flags.in
index d8cfa2f..197d3ce 100644
--- a/xlat/ptrace_setoptions_flags.in
+++ b/xlat/ptrace_setoptions_flags.in
@@ -7,3 +7,5 @@
PTRACE_O_TRACEEXIT
PTRACE_O_TRACESECCOMP
PTRACE_O_EXITKILL
+/* tile */
+PTRACE_O_TRACEMIGRATE
diff --git a/xlat/scmvals.in b/xlat/scmvals.in
index 04322e8..86d9a15 100644
--- a/xlat/scmvals.in
+++ b/xlat/scmvals.in
@@ -1,2 +1,3 @@
SCM_RIGHTS
SCM_CREDENTIALS
+SCM_SECURITY
diff --git a/xlat/secbits.in b/xlat/secbits.in
new file mode 100644
index 0000000..b1c8237
--- /dev/null
+++ b/xlat/secbits.in
@@ -0,0 +1,6 @@
+SECBIT_NOROOT (1 << 0)
+SECBIT_NOROOT_LOCKED (1 << 1)
+SECBIT_NO_SETUID_FIXUP (1 << 2)
+SECBIT_NO_SETUID_FIXUP_LOCKED (1 << 3)
+SECBIT_KEEP_CAPS (1 << 4)
+SECBIT_KEEP_CAPS_LOCKED (1 << 5)
diff --git a/xlat/seccomp_filter_flags.in b/xlat/seccomp_filter_flags.in
new file mode 100644
index 0000000..83482d0
--- /dev/null
+++ b/xlat/seccomp_filter_flags.in
@@ -0,0 +1 @@
+SECCOMP_FILTER_FLAG_TSYNC 1
diff --git a/xlat/seccomp_mode.in b/xlat/seccomp_mode.in
new file mode 100644
index 0000000..eed9fae
--- /dev/null
+++ b/xlat/seccomp_mode.in
@@ -0,0 +1,3 @@
+SECCOMP_MODE_DISABLED 0
+SECCOMP_MODE_STRICT 1
+SECCOMP_MODE_FILTER 2
diff --git a/xlat/seccomp_ops.in b/xlat/seccomp_ops.in
new file mode 100644
index 0000000..c3320af
--- /dev/null
+++ b/xlat/seccomp_ops.in
@@ -0,0 +1,2 @@
+SECCOMP_SET_MODE_STRICT 0
+SECCOMP_SET_MODE_FILTER 1
diff --git a/xlat/seccomp_ret_action.in b/xlat/seccomp_ret_action.in
new file mode 100644
index 0000000..6212dcb
--- /dev/null
+++ b/xlat/seccomp_ret_action.in
@@ -0,0 +1,5 @@
+SECCOMP_RET_KILL
+SECCOMP_RET_TRAP
+SECCOMP_RET_ERRNO
+SECCOMP_RET_TRACE
+SECCOMP_RET_ALLOW
diff --git a/xlat/socketlayers.in b/xlat/socketlayers.in
index 419c305..94bbe52 100644
--- a/xlat/socketlayers.in
+++ b/xlat/socketlayers.in
@@ -1,5 +1,5 @@
SOL_IP
-SOL_ICMP
+SOL_SOCKET
SOL_TCP
SOL_UDP
SOL_IPV6
@@ -30,5 +30,5 @@
SOL_RDS
SOL_IUCV
SOL_CAIF
-SOL_SOCKET
-#unterminated
+SOL_ALG
+SOL_NFC
diff --git a/xlat/sockoptions.in b/xlat/sockoptions.in
index 9778a85..256d5fc 100644
--- a/xlat/sockoptions.in
+++ b/xlat/sockoptions.in
@@ -6,6 +6,7 @@
SO_BSDCOMPAT
SO_DEBUG
SO_DETACH_FILTER
+SO_DOMAIN
SO_DONTROUTE
SO_ERROR
SO_ICS
@@ -13,18 +14,23 @@
SO_KEEPALIVE
SO_LINGER
SO_LISTENING
+SO_MARK
SO_MGMT
+SO_NOFCS
SO_NO_CHECK
SO_OOBINLINE
SO_ORDREL
SO_PARALLELSVR
SO_PASSCRED
+SO_PASSSEC
SO_PEERCRED
SO_PEERNAME
SO_PEERSEC
SO_PRIORITY
+SO_PROTOCOL
SO_PROTOTYPE
SO_RCVBUF
+SO_RCVBUFFORCE
SO_RCVLOWAT
SO_RCVTIMEO
SO_RDWR
@@ -35,8 +41,11 @@
SO_SECURITY_ENCRYPTION_TRANSPORT
SO_SEMA
SO_SNDBUF
+SO_SNDBUFFORCE
SO_SNDLOWAT
SO_SNDTIMEO
SO_TIMESTAMP
+SO_TIMESTAMPING
+SO_TIMESTAMPNS
SO_TYPE
SO_USELOOPBACK
diff --git a/xlat/timerfdflags.in b/xlat/timerfdflags.in
index e4e2b10..6c934bd 100644
--- a/xlat/timerfdflags.in
+++ b/xlat/timerfdflags.in
@@ -1,21 +1,8 @@
/* The Linux userspace headers didn't export these for a long time. */
-#ifndef TFD_TIMER_ABSTIME
-# define TFD_TIMER_ABSTIME (1 << 0)
+TFD_TIMER_ABSTIME (1 << 0)
+TFD_TIMER_CANCEL_ON_SET (1 << 1)
+#ifdef O_CLOEXEC
+TFD_CLOEXEC O_CLOEXEC
#endif
-TFD_TIMER_ABSTIME
-
-#ifndef TFD_TIMER_CANCEL_ON_SET
-# define TFD_TIMER_CANCEL_ON_SET (1 << 1)
-#endif
-TFD_TIMER_CANCEL_ON_SET
-
-#ifndef TFD_CLOEXEC
-# define TFD_CLOEXEC O_CLOEXEC
-#endif
-TFD_CLOEXEC
-
-#ifndef TFD_NONBLOCK
-# define TFD_NONBLOCK O_NONBLOCK
-#endif
-TFD_NONBLOCK
+TFD_NONBLOCK O_NONBLOCK