Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Oct 2017 19:20:38 +0000 (UTC)
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r324501 - head/sys/dev/acpica/Osd
Message-ID:  <201710101920.v9AJKcto041749@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jkim
Date: Tue Oct 10 19:20:38 2017
New Revision: 324501
URL: https://svnweb.freebsd.org/changeset/base/324501

Log:
  Do not check whether AcpiOsGetTimer() is called during boot.
  
  From ACPICA 20170929, AcpiOsGetTimer() should be available early because
  While() loop timeout mechanism was reimplemented with it.  Unfortunately,
  it means AcpiLoadTables() may cause panic when a While() loop is executed.
  After having lengthy discussions with ACPICA developers, I have concluded
  that dummy timecounter is good enough for the purpose and it is the least
  intrusive solution for now.  Also, they reminded me the ACPI specification
  implies OS timer function should be available before loading tables.

Modified:
  head/sys/dev/acpica/Osd/OsdSchedule.c

Modified: head/sys/dev/acpica/Osd/OsdSchedule.c
==============================================================================
--- head/sys/dev/acpica/Osd/OsdSchedule.c	Tue Oct 10 19:14:40 2017	(r324500)
+++ head/sys/dev/acpica/Osd/OsdSchedule.c	Tue Oct 10 19:20:38 2017	(r324501)
@@ -274,9 +274,6 @@ AcpiOsGetTimer(void)
     struct bintime bt;
     UINT64 t;
 
-    /* XXX During early boot there is no (decent) timer available yet. */
-    KASSERT(cold == 0, ("acpi: timer op not yet supported during boot"));
-
     binuptime(&bt);
     t = (uint64_t)bt.sec * 10000000;
     t += ((uint64_t)10000000 * (uint32_t)(bt.frac >> 32)) >> 32;



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