From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Iremonger, Bernard" Subject: Re: [RFC PATCH 0/6] remove pci driver from vdevs Date: Tue, 1 Sep 2015 13:38:02 +0000 Message-ID: <8CEF83825BEC744B83065625E567D7C219F49ACE@IRSMSX108.ger.corp.intel.com> References: <20150831125940.GC32518@hmsreliant.think-freely.org> <2129387.iCBeS9Cg7R@xps13> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: "dev@dpdk.org" To: Thomas Monjalon , Neil Horman Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id BA6FF377E for ; Tue, 1 Sep 2015 15:38:05 +0200 (CEST) In-Reply-To: <2129387.iCBeS9Cg7R@xps13> Content-Language: en-US List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Neil, Thomas, > > You didn't remove the relationship of the ethdev to the pci driver > > though, which is really the problem, An ethdev may reside on any > > number of bus types (pci/usb/vmbus/virt/none).=20 =20 > > Whats really needed is a way to associate an ethdev with an arbitrary = bus > > > Please see email below from 6Wind > > > > > > http://dpdk.org/ml/archives/dev/2015-July/022107.html > > > > > I think you misread that. I think all Thomas is asking for (correct > > me if I'm wrong Thomas), is for someone to start refactoring the > > ethdev registration code so that we can have a single init path > > without the need for wierd typing and differentiation at init time. > > We just need to > > start thinking about how to make bus registration independent of > > ethernet device registration, and while your patch series sort of > > eliminates some of that, its really not a proper refactoring of the > > sort I think Thomas is asking for. I am just trying to distill what the actual requirement is from the above d= iscussion. (1) Remove relationship of the ethdev to the pci driver. (2) Refactor ethdev registration code so that there is a single init path. (3) Make bus registration independent of ethdev registration. (4) Change all (17) PMD's to use the modified structures. The rte_eal_driver_registration() code is in librte_eal, untouched as yet= by this patch set. The rte_eth_driver_registration() code is in librte_ether. Should the pci fields be removed from the struct rte_eth_dev{} and struct e= th_driver{}, and put somewhere else or replaced with a union of bus types and drivers? Regards, Bernard.