svn commit: r313539 - stable/11/lib/libc/x86/sys

Ngie Cooper ngie at FreeBSD.org
Fri Feb 10 07:38:40 UTC 2017


Author: ngie
Date: Fri Feb 10 07:38:39 2017
New Revision: 313539
URL: https://svnweb.freebsd.org/changeset/base/313539

Log:
  MFC r312418,r312422:
  
  r312418:
  
  Conditionalize hyperv support in gettimeofday(2) based on MK_HYPERV
  
  The effect at runtime is negligible as the hyperv timer isn't available
  except when hyperv is loaded.
  
  This is a prerequisite for conditionalizing the header build/install out
  of the build
  
  r312422:
  
  Only conditionally add in hyperv support if we're building amd64
  
  This unbreaks the build because the assembly is written for x64.
  
  Pointyhat to:	ngie

Modified:
  stable/11/lib/libc/x86/sys/Makefile.inc
  stable/11/lib/libc/x86/sys/__vdso_gettc.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/lib/libc/x86/sys/Makefile.inc
==============================================================================
--- stable/11/lib/libc/x86/sys/Makefile.inc	Fri Feb 10 07:32:40 2017	(r313538)
+++ stable/11/lib/libc/x86/sys/Makefile.inc	Fri Feb 10 07:38:39 2017	(r313539)
@@ -4,3 +4,7 @@
 
 SRCS+= \
 	__vdso_gettc.c
+
+.if ${MACHINE_CPUARCH} == "amd64" && ${MK_HYPERV} != "no"
+CFLAGS+=	-DWANT_HYPERV
+.endif

Modified: stable/11/lib/libc/x86/sys/__vdso_gettc.c
==============================================================================
--- stable/11/lib/libc/x86/sys/__vdso_gettc.c	Fri Feb 10 07:32:40 2017	(r313538)
+++ stable/11/lib/libc/x86/sys/__vdso_gettc.c	Fri Feb 10 07:38:39 2017	(r313539)
@@ -46,7 +46,7 @@ __FBSDID("$FreeBSD$");
 #include <machine/cpufunc.h>
 #include <machine/specialreg.h>
 #include <dev/acpica/acpi_hpet.h>
-#ifdef __amd64__
+#ifdef WANT_HYPERV
 #include <dev/hyperv/hyperv.h>
 #endif
 #include "libc_private.h"
@@ -158,7 +158,7 @@ __vdso_init_hpet(uint32_t u)
 		munmap((void *)new_map, PAGE_SIZE);
 }
 
-#ifdef __amd64__
+#ifdef WANT_HYPERV
 
 #define HYPERV_REFTSC_DEVPATH	"/dev/" HYPERV_REFTSC_DEVNAME
 
@@ -217,7 +217,7 @@ __vdso_hyperv_tsc(struct hyperv_reftsc *
 	return (ENOSYS);
 }
 
-#endif	/* __amd64__ */
+#endif	/* WANT_HYPERV */
 
 #pragma weak __vdso_gettc
 int
@@ -246,7 +246,7 @@ __vdso_gettc(const struct vdso_timehands
 			return (ENOSYS);
 		*tc = *(volatile uint32_t *)(map + HPET_MAIN_COUNTER);
 		return (0);
-#ifdef __amd64__
+#ifdef WANT_HYPERV
 	case VDSO_TH_ALGO_X86_HVTSC:
 		if (hyperv_ref_tsc == NULL)
 			__vdso_init_hyperv_tsc();


More information about the svn-src-all mailing list