From owner-freebsd-amd64@FreeBSD.ORG Thu Sep 21 15:45:46 2006 Return-Path: X-Original-To: freebsd-amd64@freebsd.org Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D176E16A412 for ; Thu, 21 Sep 2006 15:45:46 +0000 (UTC) (envelope-from cracauer@koef.zs64.net) Received: from koef.zs64.net (koef.zs64.net [212.12.50.230]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3AF8F43D46 for ; Thu, 21 Sep 2006 15:45:45 +0000 (GMT) (envelope-from cracauer@koef.zs64.net) Received: from koef.zs64.net (koef.zs64.net [212.12.50.230]) by koef.zs64.net (8.13.8/8.13.8) with ESMTP id k8LFja3t051617; Thu, 21 Sep 2006 17:45:36 +0200 (CEST) (envelope-from cracauer@koef.zs64.net) Received: (from cracauer@localhost) by koef.zs64.net (8.13.8/8.13.8/Submit) id k8LFjSY2051614; Thu, 21 Sep 2006 11:45:28 -0400 (EDT) (envelope-from cracauer) Date: Thu, 21 Sep 2006 11:45:28 -0400 From: Martin Cracauer To: Danny Braniss Message-ID: <20060921154528.GA51442@cons.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.2i Cc: Christos Zoulas , freebsd-amd64@freebsd.org, am-utils@fsl.cs.sunysb.edu Subject: Re: mlockall() failes on amd64 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Sep 2006 15:45:46 -0000 Danny Braniss wrote on Sat, Sep 16, 2006 at 07:17:11PM +0300: > > On Sep 16, 2:55pm, danny@cs.huji.ac.il (Danny Braniss) wrote: > > -- Subject: mlockall() failes on amd64 > > > > | with am-utils 6.1.5, on a amd64 6.1-STABLE kernel i see: > > | Couldn't lock process pages in memory using mlockall() > > | while it's ok on a i386: > > | Locked process pages in memory > > | > > > > We should really fix amd to print the errno string when system calls > > fail; now we can only scratch our heads. > > > > christos > sorry, here is the full message: > Couldn't lock process pages in memory using mlockall(): Resource temporarily > unavailable > > or error = EAGAIN (ED :-) I didn't read the code, but one thing to check is that there is enough paging space to move all dirty/cow/anonymous pages from all other processes to to make room for your current process (including file-backed pages which might not yet be in). I imagine that on AMD64 some programs might overcommit much more since it's "free" (you won't run out of virtual address space). But mlockall will choke on it. Martin -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer http://www.cons.org/cracauer/ FreeBSD - where you want to go, today. http://www.freebsd.org/