From owner-p4-projects Wed Jul 10 8:25:32 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CBEC737B40B; Wed, 10 Jul 2002 08:25:27 -0700 (PDT) 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 6563437B409 for ; Wed, 10 Jul 2002 08:25:27 -0700 (PDT) Received: from mail.speakeasy.net (mail12.speakeasy.net [216.254.0.212]) by mx1.FreeBSD.org (Postfix) with ESMTP id B30E243E3B for ; Wed, 10 Jul 2002 08:25:20 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 13702 invoked from network); 10 Jul 2002 15:25:19 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) by mail12.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 10 Jul 2002 15:25:19 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.11.6/8.11.6) with ESMTP id g6AFPI001415; Wed, 10 Jul 2002 11:25:18 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.2 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: Date: Wed, 10 Jul 2002 11:25:27 -0400 (EDT) From: John Baldwin To: Julian Elischer Subject: Re: PERFORCE change 13995 for review Cc: 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 On 09-Jul-2002 Julian Elischer wrote: > this looks "odd" Unfortuantely user_ldt_free has a weird rule with sched_lock: it drops it. user_ldt_alloc() has a weirder one in that it drops it if it returns NULL. > ==== //depot/projects/smpng/sys/i386/i386/machdep.c#40 (text+ko) ==== > > @@ -825,8 +825,11 @@ > struct trapframe *regs = td->td_frame; > struct pcb *pcb = td->td_pcb; > > + mtx_lock_spin(&sched_lock); > if (td->td_proc->p_md.md_ldt) > user_ldt_free(td); > + else > + mtx_unlock_spin(&sched_lock); > > bzero((char *)regs, sizeof(struct trapframe)); > regs->tf_eip = entry; > > > does user_ldt_free(td) release the sched lock? > > > -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message