[dpdk-dev] [RFC v2 1/9] usertools: add DPDK config lib python library

Bruce Richardson bruce.richardson at intel.com
Fri Nov 16 17:10:26 CET 2018


On Fri, Nov 16, 2018 at 04:58:10PM +0100, Thomas Monjalon wrote:
> 16/11/2018 16:43, Burakov, Anatoly:
> > On 16-Nov-18 2:55 PM, Thomas Monjalon wrote:
> > > 16/11/2018 15:37, Burakov, Anatoly:
> > >> On 16-Nov-18 2:13 PM, Richardson, Bruce wrote:
> > >>> From: Wiles, Keith
> > >>>>> On Nov 16, 2018, at 5:49 AM, Burakov, Anatoly
> > >>>>> On 16-Nov-18 12:45 AM, Stephen Hemminger wrote:
> > >>>>>> Anatoly Burakov <anatoly.burakov at intel.com> wrote:
> > >>>>>>> This is a placeholder for Python library abstracting away many of
> > >>>>>>> mundane details DPDK configuration scripts have to deal with. We
> > >>>>>>> need __init__.py file to make the subdirectory a package so that
> > >>>>>>> Python scripts in usertools/ can find their dependencies.
> > >>>>>>>
> > >>>>>>> Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
> > >>>>>>
> > >>>>>> Doing this a better than current code, but can we go farther?
> > >>>>>> I would like DPDK to get out of doing binds directly and switch to
> > >>>>>> using driverctl which also handles persistent rebind on reboot.
> > >>>>>
> > >>>>> Wasn't the objection that it's not available everywhere? (for the
> > >>>>> record, i have no horse in the race - i don't much care exactly how
> > >>>>> it's done)
> > >>>>
> > >>>> If it works on FreeBSD and Linux then I am all for it. On windows does it
> > >>>> support this method too?
> > >>>
> > >>> Binding and unbinding is completely different on each OS. FreeBSD has no overlap
> > >>> of scripts with Linux, so replacing some of our tools with driverctl won't affect
> > >>> that OS.
> > >>>
> > >>> /Bruce
> > >>
> > >> ...however, we could abstract that away in our tools, and use
> > >> OS-appropriate tools independently of what we're running on. There could
> > >> still be value in fixing devbind everyone knows and love to work on all
> > >> OS's without too much hassle :)
> > > 
> > > Yes, easier script is always better.
> > > 
> > > Another thought, I would like we think about integrating binding/unbinding
> > > code inside EAL and bus drivers, and manage it via the PMDs.
> > > There could be an option to bind on scan and unbind on rte_dev_remove.
> > 
> > I didn't like it back when it was a thing, and i don't particularly like 
> > this idea now, to be honest. Port binding should not be under purview of 
> > the application, but is firmly in the domain of system administrator 
> > IMO. I don't think it's our place to change system configuration while 
> > we're running.
> 
> Yes I agree, administration should be done separately.
> However, there are 3 scenarios to manage properly:
> 	- hotplug: can it be configured in advance?

I think using driverctl could help here. Only if a device is automatically
bound to a suitable kernel driver, DPDK should hotplug it in.

> 	- dynamically release device to kernel
> 	- some drivers can share a device with the kernel
> 
> 


More information about the dev mailing list