From owner-freebsd-hackers@FreeBSD.ORG Wed Jul 4 13:48:40 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CB1CF16A46F for ; Wed, 4 Jul 2007 13:48:40 +0000 (UTC) (envelope-from n.cormier@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.179]) by mx1.freebsd.org (Postfix) with ESMTP id 8682813C4BF for ; Wed, 4 Jul 2007 13:48:40 +0000 (UTC) (envelope-from n.cormier@gmail.com) Received: by py-out-1112.google.com with SMTP id u77so4328962pyb for ; Wed, 04 Jul 2007 06:48:39 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=mqT6jjIOfnhCkG3g60FnOoNdYDmRvb2OXYti8nYfXhdSlolefHqPLOKECJNF/kbjS8glnbeyFVhQsN5eJQORe5f1yYiYg8ntLp0jICxu2MngIfh/6pU0Ds5cJI60Ge+p1A5x6NjM76Gn9BRDuYisxJDVAMGDAjRe7WfJM+sFNOg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=kezuUouqvqjuFiP/nVju5OEo84Qe9XRX0075IhOtZepz4laVa1n9TL0+MkfY99vKqXZbTHCZOGB1DTxuhCJbJpnruxOo9u4UrqKdNm46J0MDp/AgE/SjYHWsZzidkdeobrWOENLtk4jBwsXCt2i2Oa7IRszMZugYJpdnC/LjM88= Received: by 10.35.101.1 with SMTP id d1mr9781390pym.1183556919450; Wed, 04 Jul 2007 06:48:39 -0700 (PDT) Received: by 10.35.40.11 with HTTP; Wed, 4 Jul 2007 06:48:39 -0700 (PDT) Message-ID: Date: Wed, 4 Jul 2007 15:48:39 +0200 From: "Nicolas Cormier" To: "Robert Watson" In-Reply-To: <20070704141257.M37059@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20070704091349.T42421@fledge.watson.org> <20070704120624.W37059@fledge.watson.org> <20070704141257.M37059@fledge.watson.org> Cc: freebsd-hackers@freebsd.org Subject: Re: p_vmspace in syscall X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Jul 2007 13:48:40 -0000 On 7/4/07, Robert Watson wrote: > What do you mean by a network allocator? How do you plan to use these pages? First I just want to access a local copy of a distant buffer. After the goal is to share memory between hosts (no concurrent access). > If you haven't already, you should look at the zero-copy socket code in > uipc_cow.c. The main criticism of this approach has been that it uses > copy-on-write, leading to potential IPIs for VM shootdowns, etc. An > alternative, more along the lines of IO-Lite, would be to allow user space to > explicitly abandon the page on send, then map a new page to replace it. In > which case you might consider a variation on the send system call that accepts > only page-aligned arguments and has the effect of unmapping the pages that are > sent. In neither case, on the transmit side, does this require an > modification to the kernel memory allocator. > > The receive side has always been more tricky to deal with... > Ok I will take a look at uipc_cow.c, Thank you -- Nicolas Cormier