svn commit: r323472 - in stable/11/sys: dev/xen/timer isa x86/isa

Ian Lepore ian at FreeBSD.org
Mon Sep 11 22:40:01 UTC 2017


Author: ian
Date: Mon Sep 11 22:39:59 2017
New Revision: 323472
URL: https://svnweb.freebsd.org/changeset/base/323472

Log:
  MFC r322411:
  
  Stop calling atrtc_set() from the xen timer clock_settime() method.  That
  removes the only reference to atrtc_set() from outside of atrtc.c, so make
  it static.
  
  The xen timer driver registers as a realtime clock with 1us resolution.  In
  the past that resulted in only the xen timer's clock_settime() getting
  called, so it would call atrtc_set() to set the hardware clock as well.  As
  of r32090, the clock_settime() method of all registered realtime clocks gets
  called, so the xen driver no longer needs to chain-call the lower-resolution
  driver.
  
  Thanks to royger@ for talking me through the xen stuff, and for testing.

Modified:
  stable/11/sys/dev/xen/timer/timer.c
  stable/11/sys/isa/rtc.h
  stable/11/sys/x86/isa/atrtc.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/xen/timer/timer.c
==============================================================================
--- stable/11/sys/dev/xen/timer/timer.c	Mon Sep 11 22:35:20 2017	(r323471)
+++ stable/11/sys/dev/xen/timer/timer.c	Mon Sep 11 22:39:59 2017	(r323472)
@@ -64,8 +64,6 @@ __FBSDID("$FreeBSD$");
 
 #include <dev/xen/timer/timer.h>
 
-#include <isa/rtc.h>
-
 #include "clock_if.h"
 
 static devclass_t xentimer_devclass;
@@ -228,9 +226,6 @@ xentimer_settime(device_t dev __unused, struct timespe
 	 */
 	if (!xen_initial_domain())
 		return (0);
-
-	/* Set the native RTC. */
-	atrtc_set(ts);
 
 	settime.cmd = XENPF_settime64;
 	settime.u.settime64.mbz = 0;

Modified: stable/11/sys/isa/rtc.h
==============================================================================
--- stable/11/sys/isa/rtc.h	Mon Sep 11 22:35:20 2017	(r323471)
+++ stable/11/sys/isa/rtc.h	Mon Sep 11 22:39:59 2017	(r323472)
@@ -118,7 +118,6 @@ extern	int atrtcclock_disable;
 int	rtcin(int reg);
 void	atrtc_restore(void);
 void	writertc(int reg, u_char val);
-void	atrtc_set(struct timespec *ts);
 #endif
 
 #endif /* _I386_ISA_RTC_H_ */

Modified: stable/11/sys/x86/isa/atrtc.c
==============================================================================
--- stable/11/sys/x86/isa/atrtc.c	Mon Sep 11 22:35:20 2017	(r323471)
+++ stable/11/sys/x86/isa/atrtc.c	Mon Sep 11 22:39:59 2017	(r323472)
@@ -159,7 +159,7 @@ atrtc_restore(void)
 	rtcin(RTC_INTR);
 }
 
-void
+static void
 atrtc_set(struct timespec *ts)
 {
 	struct clocktime ct;


More information about the svn-src-all mailing list