freebsd-dev/sys/compat/linux
Alexander Motin fcaf473cfc Overhaul CAM SG driver IOCTL interfaces.
Make it really work for native FreeBSD programs.  Before this it was broken
for years due to different number of pointer dereferences in Linux and
FreeBSD IOCTL paths, permanently returning errors to FreeBSD programs.
This change breaks the driver FreeBSD IOCTL ABI, making it more strict,
but since it was not working any way -- who bother.

Add shims for 32-bit programs on 64-bit host, translating the argument
of the SG_IO IOCTL for both FreeBSD and Linux ABIs.

With this change I was able to run 32-bit Linux sg3_utils tools and simple
32 and 64-bit FreeBSD test tools on both 32 and 64-bit FreeBSD systems.

MFC after:	1 month
2014-06-02 19:53:53 +00:00
..
check_error.d - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00
check_internal_locks.d - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00
linux_dtrace.h dtrace sdt: remove the ugly sname parameter of SDT_PROBE_DEFINE 2013-11-26 08:46:27 +00:00
linux_emul.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_emul.h - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00
linux_file.c Update kernel inclusions of capability.h to use capsicum.h instead; some 2014-03-16 10:55:57 +00:00
linux_file.h Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h 2013-01-29 18:41:30 +00:00
linux_fork.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_futex.c Glibc was switched to the FUTEX_WAIT_BITSET op and CLOCK_REALTIME 2014-05-31 14:58:53 +00:00
linux_futex.h Yet another unimplemented futex operation, print out about. 2011-01-31 06:06:23 +00:00
linux_getcwd.c The NetBSD Foundation has granted permission to remove clause 3 and 4 from 2010-03-01 17:20:04 +00:00
linux_ioctl.c Overhaul CAM SG driver IOCTL interfaces. 2014-06-02 19:53:53 +00:00
linux_ioctl.h Add some missing LIBUSB IOCTL conversion codes. 2013-07-14 10:13:01 +00:00
linux_ipc.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
linux_ipc.h Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h 2013-01-29 18:41:30 +00:00
linux_mib.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_mib.h Staticize functions which are not used somewhere else, move the 2011-03-15 13:40:47 +00:00
linux_misc.c Rename global cnt to vm_cnt to avoid shadowing. 2014-03-22 10:26:09 +00:00
linux_misc.h Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h 2013-01-29 18:41:30 +00:00
linux_signal.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
linux_signal.h Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h 2013-01-29 18:41:30 +00:00
linux_socket.c Update kernel inclusions of capability.h to use capsicum.h instead; some 2014-03-16 10:55:57 +00:00
linux_socket.h Reduce duplication between i386/linux/linux.h and amd64/linux32/linux.h 2013-01-29 18:41:30 +00:00
linux_stats.c Remove direct access to si_name. 2012-02-10 12:35:57 +00:00
linux_sysctl.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_sysproto.h
linux_time.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_uid16.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_util.c - For kernel compiled only with KDTRACE_HOOKS and not any lock debugging 2013-11-25 07:38:45 +00:00
linux_util.h - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00
linux_videodev2_compat.h Commit the missing linux_videdev2_compat.h (lost somewhere between 2011-05-04 13:09:20 +00:00
linux_videodev_compat.h This is v4l support for the linuxulator. This allows to access FreeBSD 2009-12-04 21:06:54 +00:00
stats_timing.d - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00
trace_futexes.d - >500 static DTrace probes for the linuxulator 2012-05-05 19:42:38 +00:00