From owner-freebsd-mips@FreeBSD.ORG Sat Jun 19 10:18:35 2010 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 38A37106566B for ; Sat, 19 Jun 2010 10:18:35 +0000 (UTC) (envelope-from juli@clockworksquid.com) Received: from mail-gy0-f182.google.com (mail-gy0-f182.google.com [209.85.160.182]) by mx1.freebsd.org (Postfix) with ESMTP id EE9D48FC14 for ; Sat, 19 Jun 2010 10:18:34 +0000 (UTC) Received: by gyh20 with SMTP id 20so1988714gyh.13 for ; Sat, 19 Jun 2010 03:18:34 -0700 (PDT) Received: by 10.220.124.66 with SMTP id t2mr797236vcr.186.1276942714118; Sat, 19 Jun 2010 03:18:34 -0700 (PDT) MIME-Version: 1.0 Sender: juli@clockworksquid.com Received: by 10.220.191.67 with HTTP; Sat, 19 Jun 2010 03:18:14 -0700 (PDT) In-Reply-To: References: <20100617.100235.195066307596264499.imp@bsdimp.com> <4B66E1A4-E2A5-471F-9FA4-38B506797272@lakerest.net> <20100617.110504.200754750200158040.imp@bsdimp.com> <763BEBBB-B85A-44CE-BFEE-0BADEFF3C185@lakerest.net> From: Juli Mallett Date: Sat, 19 Jun 2010 03:18:14 -0700 X-Google-Sender-Auth: pAAZ3Gl7SsxRr723RO2_xd4AAGg Message-ID: To: Neel Natu Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Cc: Alan Cox , freebsd-mips@freebsd.org Subject: Re: Merging 64 bit changes to -HEAD - part 2 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Jun 2010 10:18:35 -0000 On Fri, Jun 18, 2010 at 12:41, Neel Natu wrote: > Hi JC, > > But what you really want here is to eliminate the intr_disable() and > intr_restore() and keep sched_pin() and =A0sched_unpin(). Are you sure? I'm not. By disabling interrupts we only have to ensure that the fault path on any address we might access within those routines doesn't need to use the large memory map. This isn't trivial, but I think we can acquire a reasonable confidence about it. If we merely pin, we have to ensure that nothing else that can run (including interrupts and threads that run via preemption) that would access the large memory map =97 given that this includes routines like pmap_zero_page, I think there's good reason for caution. Disabling interrupts is more conservative, but I think rightly-so. I may be mistaken. Thanks, Juli.