summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_mib.c
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2004-08-16 07:28:16 +0000
committertjr <tjr@FreeBSD.org>2004-08-16 07:28:16 +0000
commit6d0528abdfecb0a45eec1ee51b594803b1e11866 (patch)
tree8df9260c749ffef486077cca195f2e786112fc5d /sys/compat/linux/linux_mib.c
parente6930a385cee9ccad60b87c385ea268f880443c3 (diff)
downloadFreeBSD-src-6d0528abdfecb0a45eec1ee51b594803b1e11866.zip
FreeBSD-src-6d0528abdfecb0a45eec1ee51b594803b1e11866.tar.gz
Changes to MI Linux emulation code necessary to run 32-bit Linux binaries
on AMD64, and the general case where the emulated platform has different size pointers than we use natively: - declare certain structure members as l_uintptr_t and use the new PTRIN and PTROUT macros to convert to and from native pointers. - declare some structures __packed on amd64 when the layout would differ from that used on i386. - include <machine/../linux32/linux.h> instead of <machine/../linux/linux.h> if compiling with COMPAT_LINUX32. This will need to be revisited before 32-bit and 64-bit Linux emulation support can coexist in the same kernel. - other small scattered changes. This should be a no-op on i386 and Alpha.
Diffstat (limited to 'sys/compat/linux/linux_mib.c')
-rw-r--r--sys/compat/linux/linux_mib.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/compat/linux/linux_mib.c b/sys/compat/linux/linux_mib.c
index ce1a708..8ebf68d 100644
--- a/sys/compat/linux/linux_mib.c
+++ b/sys/compat/linux/linux_mib.c
@@ -39,7 +39,13 @@ __FBSDID("$FreeBSD$");
#include <sys/lock.h>
#include <sys/mutex.h>
+#include "opt_compat.h"
+
+#if !COMPAT_LINUX32
#include <machine/../linux/linux.h>
+#else
+#include <machine/../linux32/linux.h>
+#endif
#include <compat/linux/linux_mib.h>
struct linux_prison {
OpenPOWER on IntegriCloud