From owner-p4-projects Wed Jan 1 14:26:24 2003 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2725D37B405; Wed, 1 Jan 2003 14:26:19 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B41D537B401 for ; Wed, 1 Jan 2003 14:26:18 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6AA5D43EB2 for ; Wed, 1 Jan 2003 14:26:18 -0800 (PST) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h01MQIfh035404 for ; Wed, 1 Jan 2003 14:26:18 -0800 (PST) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h01MQHEa035401 for perforce@freebsd.org; Wed, 1 Jan 2003 14:26:17 -0800 (PST) Date: Wed, 1 Jan 2003 14:26:17 -0800 (PST) Message-Id: <200301012226.h01MQHEa035401@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar Subject: PERFORCE change 23031 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://perforce.freebsd.org/chv.cgi?CH=23031 Change 23031 by marcel@marcel_nfs on 2003/01/01 14:25:52 I cannot convince myself that reloading cr.itm with a delta of cr.itm and not a delta of cr.itc without the logic to detect missed interrupts is not going to harm. Revert the change and add a comment. We should really use cr.itm, but we need to check for missed interrupts so that we don't reload with a value that is smaller than the current counter and thus don't get timer interrupts until the 64-bit counter wraps. Affected files ... .. //depot/projects/ia64/sys/ia64/ia64/interrupt.c#22 edit Differences ... ==== //depot/projects/ia64/sys/ia64/ia64/interrupt.c#22 (text+ko) ==== @@ -128,14 +128,16 @@ /* Only the BSP runs the real clock */ if (PCPU_GET(cpuid) == 0) { #endif - ia64_set_itm(ia64_get_itm() + itm_reload); + /* XXX don't reload ITM based on ITC. */ + ia64_set_itm(ia64_get_itc() + itm_reload); hardclock((struct clockframe *)framep); /* divide hz (1024) by 8 to get stathz (128) */ if ((++schedclk2 & 0x7) == 0) statclock((struct clockframe *)framep); #ifdef SMP } else { - ia64_set_itm(ia64_get_itm() + itm_reload); + /* XXX don't reload ITM based on ITC. */ + ia64_set_itm(ia64_get_itc() + itm_reload); mtx_lock_spin(&sched_lock); hardclock_process(curthread, TRAPF_USERMODE(framep)); if ((schedclk2 & 0x7) == 0) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message