[dpdk-dev] Poor device abstraction's
Venkatesan, Venky
venky.venkatesan at intel.com
Fri Apr 11 19:57:41 CEST 2014
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.
-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.
>
More information about the dev
mailing list