From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Lyr45-0001mD-VH for qemu-devel@nongnu.org; Tue, 28 Apr 2009 13:25:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Lyr41-0001kK-17 for qemu-devel@nongnu.org; Tue, 28 Apr 2009 13:25:53 -0400 Received: from [199.232.76.173] (port=54996 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Lyr40-0001kG-V6 for qemu-devel@nongnu.org; Tue, 28 Apr 2009 13:25:48 -0400 Received: from e6.ny.us.ibm.com ([32.97.182.146]:47903) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Lyr40-0002C9-NQ for qemu-devel@nongnu.org; Tue, 28 Apr 2009 13:25:48 -0400 Received: from d01relay02.pok.ibm.com (d01relay02.pok.ibm.com [9.56.227.234]) by e6.ny.us.ibm.com (8.13.1/8.13.1) with ESMTP id n3SHRiDx015920 for ; Tue, 28 Apr 2009 13:27:44 -0400 Received: from d01av02.pok.ibm.com (d01av02.pok.ibm.com [9.56.224.216]) by d01relay02.pok.ibm.com (8.13.8/8.13.8/NCO v9.2) with ESMTP id n3SHPi9H091734 for ; Tue, 28 Apr 2009 13:25:44 -0400 Received: from d01av02.pok.ibm.com (loopback [127.0.0.1]) by d01av02.pok.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n3SHNstV012331 for ; Tue, 28 Apr 2009 13:23:54 -0400 Message-ID: <49F73C15.7090504@us.ibm.com> Date: Tue, 28 Apr 2009 12:25:41 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH 9/9] Introduce VLANClientState::cleanup() References: <1239812969-8320-2-git-send-email-markmc@redhat.com> <200904281308.26203.paul@codesourcery.com> <49F732F4.6020708@codemonkey.ws> <200904281817.56416.paul@codesourcery.com> In-Reply-To: <200904281817.56416.paul@codesourcery.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paul Brook Cc: Mark McLoughlin , Marcelo Tosatti , qemu-devel@nongnu.org, Markus Armbruster Paul Brook wrote: >> 1) Network backend is created. As part of the configuration of the >> backend, a unique device identifier is associated with it. >> 2) A PCI device is created. >> a) The PCI device creates one or more Network frontends. Each >> frontend carries the device identifier and perhaps something like a port >> id. b) When the PCI device is destroyed, it destroys any frontends it owns. >> > > This sounds about right, though I'm not entirely sure what you mean > by "network backend". backend ~= vlan in the current implementation? > Roughly, VLANClientState would be the backend. There are too many details about VLAN though in VLANClientState today beyond the name. Ideally, the network backend would just consistent of an interface to submit packets, register buffers to receive packets, an interface to negotiate/enable features (GSO, checksum offload), and a means to get configuration information (MAC address). Today, you're given a VLAN and then you create a VLANClient from the VLAN. That's too much implementation detail to live in the devices IMHO. Regards, Anthony Liguori