From owner-freebsd-threads@FreeBSD.ORG Sun Nov 16 11:30:21 2003 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C4D4416A4CE; Sun, 16 Nov 2003 11:30:21 -0800 (PST) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB98343FB1; Sun, 16 Nov 2003 11:30:20 -0800 (PST) (envelope-from eischen@vigrid.com) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mail.pcnet.com (8.12.10/8.12.1) with ESMTP id hAGJUK1G003660; Sun, 16 Nov 2003 14:30:20 -0500 (EST) Date: Sun, 16 Nov 2003 14:30:20 -0500 (EST) From: Daniel Eischen X-Sender: eischen@pcnet5.pcnet.com To: Marcel Moolenaar In-Reply-To: <20031116182219.GB60377@dhcp01.pn.xcllnt.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: threads@freebsd.org cc: davidxu@freebsd.org Subject: Re: KSE/ia64 broken X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Nov 2003 19:30:21 -0000 On Sun, 16 Nov 2003, Marcel Moolenaar wrote: > On Sun, Nov 16, 2003 at 12:18:33PM -0500, Daniel Eischen wrote: > > > > Are you sure there's not an ia64 kernel bug or ia64 context > > restoring bug? > > There's nothing pointing in that direction yet. I keep thinking > that the case is related to having TP per thread on ia64, while > it's per KSE on i386. If you noop the spinlock/spinunlock, the problem still occurs. > > The critical region may be the malloc spinlock being held > > and the reason it blocked perhaps due to a page fault. Is > > it possible that the blocked context is incorrectly marked, > > or that it is just not being resumed properly? > > The likelylood that it's incorrectly marked is larger than > the likelyhood that it's improperly resumed. What should I be looking at, [um]c_flags? $ simple Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x8, name initial thread Switching out thread 6000000000014000, state 0 Threads in waiting queue: Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x3, name initial thread Switching out thread 6000000000014000, state 0 Threads in waiting queue: Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x3, name initial thread Switching out thread 6000000000014000, state 0 Threads in waiting queue: Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x3, name initial thread Switching out thread 6000000000014000, state 0 Threads in waiting queue: ... -- Dan Eischen