On Fri, Apr 11, 2014 at 05:57:41PM +0000, Venkatesan, Venky wrote: > Agree that the patch sets are a step towards fixing that, but there is a lot > more to be done on this. Could we start discussion on what the "ideal" > abstraction should be? I'd like to pool those into a formal proposal that we > can discuss and drive through a series of patches to make that happen. Even > semi-freezing anything prior to that would be premature. > Well, just to throw something out there, what about starting with the net_device structure in the kernel, and removing things that are unnecessecary? That might give us a good starting point to see what else is needed Neil
> -Venky > > -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Neil Horman > Sent: Friday, April 11, 2014 10:47 AM > To: Stephen Hemminger > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] Poor device abstraction's > > On Fri, Apr 11, 2014 at 10:33:31AM -0700, Stephen Hemminger wrote: > > One of my pet peeve's is that the device driver config does not > > abstract the properties of the Ethernet device. The existing > > parameters match those of Intel's Ethernet hardware but not much else. > > It also makes it hard to write generic applications. If the > > application has to query the device driver name string and insert > > different parameters for igb, igbvf, ixgbe and vmxnet3 then the API was > > designed wrong. > > > I agree. I think the patches that recently got integrated from Olivier are a > step toward fixing that, but theres some more work to be done. > > Neil > > > Specific examples: > > * the "descriptors" argument to rx/tx is interpreted as a hardware > > resource > > not the number of packets. An application really wants to say "you may > > buffer > > up to 100us of packets" not have to guess what the underlying driver > > does. > > > > * the rthresh/wthresh/pthresh are PCI device artifacts and correct value > > is > > different for each HW device shouldn't be exposed to application. The > > API > > should be something like "device may burst up to N packets and/or T > > latency". > > > > These seems like issues of a transition from a cool toy to talk to > > Intel hardware to a useful application infrastructure. > > > > That is why I would hate to see the existing Intel device centric API > > frozen. > > >