Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 Jan 2016 15:57:29 +0000 (UTC)
From:      Dmitry Chagin <dchagin@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r293523 - stable/10/sys/compat/linux
Message-ID:  <201601091557.u09FvT23028754@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dchagin
Date: Sat Jan  9 15:57:28 2016
New Revision: 293523
URL: https://svnweb.freebsd.org/changeset/base/293523

Log:
  MFC r283417:
  
  Add 64 bit support to the vdso.

Modified:
  stable/10/sys/compat/linux/linux_vdso.c
  stable/10/sys/compat/linux/linux_vdso.h
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/compat/linux/linux_vdso.c
==============================================================================
--- stable/10/sys/compat/linux/linux_vdso.c	Sat Jan  9 15:56:01 2016	(r293522)
+++ stable/10/sys/compat/linux/linux_vdso.c	Sat Jan  9 15:57:28 2016	(r293523)
@@ -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: stable/10/sys/compat/linux/linux_vdso.h
==============================================================================
--- stable/10/sys/compat/linux/linux_vdso.h	Sat Jan  9 15:56:01 2016	(r293522)
+++ stable/10/sys/compat/linux/linux_vdso.h	Sat Jan  9 15:57:28 2016	(r293523)
@@ -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)				\



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201601091557.u09FvT23028754>