aboutsummaryrefslogtreecommitdiff
path: root/sys/modules/linux/Makefile
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2018-04-24 12:50:21 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2018-04-24 12:50:21 +0000
commit0cde66af7805988ea16f6c48394cf01d2f4f46f3 (patch)
treefc604d5692889b94bf448e0d772b59769a10049d /sys/modules/linux/Makefile
parente673a4ec4c89d223455d8d5de719ac333ef3827d (diff)
downloadsrc-0cde66af7805988ea16f6c48394cf01d2f4f46f3.tar.gz
src-0cde66af7805988ea16f6c48394cf01d2f4f46f3.zip
Fix futexes on i386 after the 4/4G split.
Use proper method to access userspace. For now, only the slow copyout path is implemented. Reported and tested by: tijl (previous version) Sponsored by: The FreeBSD Foundation
Notes
Notes: svn path=/head/; revision=332930
Diffstat (limited to 'sys/modules/linux/Makefile')
-rw-r--r--sys/modules/linux/Makefile10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile
index 4055fcb3c8ad..e49b8da15a99 100644
--- a/sys/modules/linux/Makefile
+++ b/sys/modules/linux/Makefile
@@ -17,8 +17,12 @@ SRCS= linux_fork.c linux${SFX}_dummy.c linux_file.c linux_event.c \
linux${SFX}_sysvec.c linux_uid16.c linux_time.c \
linux_timer.c linux_vdso.c \
opt_inet6.h opt_compat.h opt_posix.h opt_usb.h vnode_if.h \
- device_if.h bus_if.h \
- linux${SFX}_support.s
+ device_if.h bus_if.h
+.if ${MACHINE_CPUARCH} == "amd64"
+SRCS+= linux${SFX}_support.s
+.else
+SRCS+= linux_copyout.c
+.endif
DPSRCS= assym.inc linux${SFX}_genassym.c
# XXX: for assym.inc
@@ -56,11 +60,11 @@ linux${SFX}_locore.o: linux${SFX}_assym.h assym.inc
-Wl,-soname=${VDSO}.so.1,--eh-frame-hdr,-warn-common \
${.IMPSRC} -o ${.TARGET}
+.if ${MACHINE_CPUARCH} == "amd64"
linux${SFX}_support.o: linux${SFX}_assym.h assym.inc
${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \
${.IMPSRC} -o ${.TARGET}
-.if ${MACHINE_CPUARCH} == "amd64"
${VDSO}.so: linux${SFX}_locore.o
${OBJCOPY} --input-target binary --output-target elf64-x86-64-freebsd \
--binary-architecture i386 linux${SFX}_locore.o ${.TARGET}