aboutsummaryrefslogtreecommitdiff
path: root/sys/conf
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2007-05-23 08:33:06 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2007-05-23 08:33:06 +0000
commit1c182de9a99afd152c548bda64ab626a1b9f5a3e (patch)
tree9e0211f55a99ffc4fef4f84e9c3b74e63cc9cbc6 /sys/conf
parentd75d56060e0bb6ae2d9b44e26fb050c6fd82c299 (diff)
downloadsrc-1c182de9a99afd152c548bda64ab626a1b9f5a3e.tar.gz
src-1c182de9a99afd152c548bda64ab626a1b9f5a3e.zip
Move futex support code from <arch>/support.s into linux compat directory.
Implement all futex atomic operations in assembler to not depend on the fuword() that does not allow to distinguish between -1 and failure return. Correctly return 0 from atomic operations on success. In collaboration with: rdivacky Tested by: Scot Hetzel <swhetzel gmail com>, Milos Vyletel <mvyletel mzm cz> Sponsored by: Google SoC 2007
Notes
Notes: svn path=/head/; revision=169895
Diffstat (limited to 'sys/conf')
-rw-r--r--sys/conf/files.amd643
-rw-r--r--sys/conf/files.i3861
-rw-r--r--sys/conf/files.pc981
3 files changed, 4 insertions, 1 deletions
diff --git a/sys/conf/files.amd64 b/sys/conf/files.amd64
index 1eaef539be20..e2a74bd89db7 100644
--- a/sys/conf/files.amd64
+++ b/sys/conf/files.amd64
@@ -231,9 +231,10 @@ amd64/linux32/linux32_dummy.c optional compat_linux32
amd64/linux32/linux32_locore.s optional compat_linux32 \
dependency "linux32_assym.h"
amd64/linux32/linux32_machdep.c optional compat_linux32
+amd64/linux32/linux32_support.s optional compat_linux32
amd64/linux32/linux32_sysent.c optional compat_linux32
amd64/linux32/linux32_sysvec.c optional compat_linux32
-compat/linux/linux_emul.c optional compat_linux32
+compat/linux/linux_emul.c optional compat_linux32
compat/linux/linux_file.c optional compat_linux32
compat/linux/linux_futex.c optional compat_linux32
compat/linux/linux_getcwd.c optional compat_linux32
diff --git a/sys/conf/files.i386 b/sys/conf/files.i386
index d2999a61bbbb..15de89ae96e5 100644
--- a/sys/conf/files.i386
+++ b/sys/conf/files.i386
@@ -345,6 +345,7 @@ i386/linux/linux_locore.s optional compat_linux \
dependency "linux_assym.h"
i386/linux/linux_machdep.c optional compat_linux
i386/linux/linux_ptrace.c optional compat_linux
+i386/linux/linux_support.s optional compat_linux
i386/linux/linux_sysent.c optional compat_linux
i386/linux/linux_sysvec.c optional compat_linux
i386/pci/pci_bus.c optional pci
diff --git a/sys/conf/files.pc98 b/sys/conf/files.pc98
index e1caa4b09601..ccfe7ba88e37 100644
--- a/sys/conf/files.pc98
+++ b/sys/conf/files.pc98
@@ -221,6 +221,7 @@ i386/linux/linux_locore.s optional compat_linux \
dependency "linux_assym.h"
i386/linux/linux_machdep.c optional compat_linux
i386/linux/linux_ptrace.c optional compat_linux
+i386/linux/linux_support.s optional compat_linux
i386/linux/linux_sysent.c optional compat_linux
i386/linux/linux_sysvec.c optional compat_linux
i386/pci/pci_bus.c optional pci