From owner-freebsd-net@FreeBSD.ORG Mon May 26 17:02:12 2014 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 33F41F76 for ; Mon, 26 May 2014 17:02:12 +0000 (UTC) Received: from onelab2.iet.unipi.it (onelab2.iet.unipi.it [131.114.59.238]) by mx1.freebsd.org (Postfix) with ESMTP id E9E5727C4 for ; Mon, 26 May 2014 17:02:11 +0000 (UTC) Received: by onelab2.iet.unipi.it (Postfix, from userid 275) id C5E5C7300A; Mon, 26 May 2014 19:06:43 +0200 (CEST) Date: Mon, 26 May 2014 19:06:43 +0200 From: Luigi Rizzo To: Prashant Upadhyaya Subject: Re: Regarding Netmap in VM Message-ID: <20140526170643.GE40172@onelab2.iet.unipi.it> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-net@freebsd.org X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 May 2014 17:02:12 -0000 On Thu, May 22, 2014 at 09:28:45AM +0530, Prashant Upadhyaya wrote: > Hi, > > Suppose I am on x86 with Intel 82599 NIC. > Now I spawn a VM (running FreeBSD as guest OS with Netmap support) > For better I/O performance, I have two main choices -- > > 1. Pass the 82599 NIC as a PCI passthrough device into the VM > 2. Use SRIOV VF of 82599 into the VM > > Question is, will Netmap be able to utilize both the above environments > when I run the userspace application in the guest OS in the VM, or will > there be any issues. if i remember well we do not have sriov vf support yet in freebsd so you should follow the pci-passthrough approach. It should probably work, i am not 100% sure who is in charge of programming the IOMMU for the guest os when accessing a device through pci passthrough. If this part is missing, the symptoms you should see is that packets will have all bytes set to 0x00 cheers luigi