svn commit: r283417 - head/sys/compat/linux
Dmitry Chagin
dchagin at FreeBSD.org
Sun May 24 15:45:38 UTC 2015
Author: dchagin
Date: Sun May 24 15:45:36 2015
New Revision: 283417
URL: https://svnweb.freebsd.org/changeset/base/283417
Log:
Add 64 bit support to the vdso.
Differential Revision: https://reviews.freebsd.org/D1069
Reviewed by: trasz
Modified:
head/sys/compat/linux/linux_vdso.c
head/sys/compat/linux/linux_vdso.h
Modified: head/sys/compat/linux/linux_vdso.c
==============================================================================
--- head/sys/compat/linux/linux_vdso.c Sun May 24 15:44:41 2015 (r283416)
+++ head/sys/compat/linux/linux_vdso.c Sun May 24 15:45:36 2015 (r283417)
@@ -29,7 +29,11 @@ __FBSDID("$FreeBSD$");
#include "opt_compat.h"
+#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32))
#define __ELF_WORD_SIZE 32
+#else
+#define __ELF_WORD_SIZE 64
+#endif
#include <sys/param.h>
#include <sys/systm.h>
@@ -135,7 +139,7 @@ __elfN(linux_vdso_fixup)(struct sysentve
}
void
-__elfN(linux_vdso_reloc)(struct sysentvec *sv, int vdso_adjust)
+__elfN(linux_vdso_reloc)(struct sysentvec *sv, long vdso_adjust)
{
struct linux_vdso_sym *lsym;
Elf_Ehdr *ehdr;
Modified: head/sys/compat/linux/linux_vdso.h
==============================================================================
--- head/sys/compat/linux/linux_vdso.h Sun May 24 15:44:41 2015 (r283416)
+++ head/sys/compat/linux/linux_vdso.h Sun May 24 15:45:36 2015 (r283417)
@@ -41,7 +41,7 @@ struct linux_vdso_sym {
vm_object_t __elfN(linux_shared_page_init)(char **);
void __elfN(linux_shared_page_fini)(vm_object_t);
void __elfN(linux_vdso_fixup)(struct sysentvec *);
-void __elfN(linux_vdso_reloc)(struct sysentvec *, int);
+void __elfN(linux_vdso_reloc)(struct sysentvec *, long);
void __elfN(linux_vdso_sym_init)(struct linux_vdso_sym *);
#define LINUX_VDSO_SYM_INTPTR(name) \
More information about the svn-src-head
mailing list