From owner-freebsd-stable@FreeBSD.ORG Tue Sep 26 09:11:14 2006 Return-Path: X-Original-To: stable@freebsd.org Delivered-To: freebsd-stable@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2585B16A403 for ; Tue, 26 Sep 2006 09:11:14 +0000 (UTC) (envelope-from viktor.rosendahl@saunalahti.fi) Received: from gw02.mail.saunalahti.fi (gw02.mail.saunalahti.fi [195.197.172.116]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5D7FB43D77 for ; Tue, 26 Sep 2006 09:11:06 +0000 (GMT) (envelope-from viktor.rosendahl@saunalahti.fi) Received: from [10.1.1.3] (unknown [195.238.197.99]) by gw02.mail.saunalahti.fi (Postfix) with ESMTP id C27E813903F for ; Tue, 26 Sep 2006 12:11:03 +0300 (EEST) From: Viktor Rosendahl To: stable@freebsd.org Date: Tue, 26 Sep 2006 12:05:57 +0300 User-Agent: KMail/1.9.3 MIME-Version: 1.0 Content-Type: Multipart/Mixed; boundary="Boundary-00=_11OGF3JsTDmUTwn" Message-Id: <200609261205.57901.viktor.rosendahl@saunalahti.fi> X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: Subject: /usr/src/sys/i386/i386/local_apic.c and status of ULE X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Sep 2006 09:11:14 -0000 --Boundary-00=_11OGF3JsTDmUTwn Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi all, I wonder, what is the status of the ULE scheduler? Is it supposed to work at all? I upgraded my -stable system some time ago and it started to hang at the end of the boot process, right before the mounting of the root device. I found out that the immediate cause was a change in /usr/src/sys/i386/i386/local_apic.c. I attach a patch that reverts the change, so that you can see what I am talking about. However, it only hangs if I use the ULE scheduler. That's why I wonder whether the ULE scheduler is supposed to work or not. Now, I understand that it might very well depend on some additional local condition. Thus, I also attach my dmesg (of a successful boot) and my kernel configuration file. best regards, Viktor --Boundary-00=_11OGF3JsTDmUTwn Content-Type: text/x-diff; charset="us-ascii"; name="apic.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="apic.diff" diff -Naur src/sys/i386/i386/local_apic.c src.fixed/sys/i386/i386/local_apic.c --- src/sys/i386/i386/local_apic.c Sun Sep 24 02:56:22 2006 +++ src.fixed/sys/i386/i386/local_apic.c Sun Mar 19 13:53:42 2006 @@ -610,18 +610,6 @@ lapic_handle_timer(struct clockframe frame) { struct lapic *la; - -#ifdef SMP - /* - * Don't do any accounting for the disabled HTT cores, since it - * will provide misleading numbers for the userland. - * - * No locking is necessary here, since even if we loose the race - * when hlt_cpus_mask changes it is not a big deal, really. - */ - if ((hlt_cpus_mask & (1 << PCPU_GET(cpuid))) != 0) - return; -#endif la = &lapics[PCPU_GET(apic_id)]; (*la->la_timer_count)++; --Boundary-00=_11OGF3JsTDmUTwn--