Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Mar 2017 08:34:41 +0000 (UTC)
From:      =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <royger@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r315666 - stable/11/sys/dev/xen/timer
Message-ID:  <201703210834.v2L8YfCD005907@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: royger
Date: Tue Mar 21 08:34:41 2017
New Revision: 315666
URL: https://svnweb.freebsd.org/changeset/base/315666

Log:
  MFC r314094:
  
  xen/timer: mark the Xen PV timer as not safe for suspension
  
  Submitted by:		Liuyingdong <liuyingdong@huawei.com>
  Reviewed by:		royger

Modified:
  stable/11/sys/dev/xen/timer/timer.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/xen/timer/timer.c
==============================================================================
--- stable/11/sys/dev/xen/timer/timer.c	Tue Mar 21 08:30:06 2017	(r315665)
+++ stable/11/sys/dev/xen/timer/timer.c	Tue Mar 21 08:34:41 2017	(r315666)
@@ -417,8 +417,20 @@ xentimer_attach(device_t dev)
 	/* Register the timecounter. */
 	sc->tc.tc_name = "XENTIMER";
 	sc->tc.tc_quality = XENTIMER_QUALITY;
-	sc->tc.tc_flags = TC_FLAGS_SUSPEND_SAFE;
 	/*
+	 * FIXME: due to the lack of ordering during resume, FreeBSD cannot
+	 * guarantee that the Xen PV timer is resumed before any other device
+	 * attempts to make use of it, so mark it as not safe for suspension
+	 * (ie: remove the TC_FLAGS_SUSPEND_SAFE flag).
+	 *
+	 * NB: This was not a problem in previous FreeBSD versions because the
+	 * timer was directly attached to the nexus, but it is an issue now
+	 * that the timer is attached to the xenpv bus, and thus resumed
+	 * later.
+	 *
+	 * sc->tc.tc_flags = TC_FLAGS_SUSPEND_SAFE;
+	 */
+    	/*
 	 * The underlying resolution is in nanoseconds, since the timer info
 	 * scales TSC frequencies using a fraction that represents time in
 	 * terms of nanoseconds.



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