[dpdk-dev] [dpdk-users] IGB_UIO: PCI Resources Management

Alejandro Lucero alejandro.lucero at netronome.com
Thu Jan 12 13:58:06 CET 2017


On Thu, Jan 12, 2017 at 12:22 PM, Ferruh Yigit <ferruh.yigit at intel.com>
wrote:

> On 1/12/2017 12:12 PM, Alejandro Lucero wrote:
> >
> >
> > On Thu, Jan 12, 2017 at 11:55 AM, Ferruh Yigit <ferruh.yigit at intel.com
> > <mailto:ferruh.yigit at intel.com>> wrote:
> >
> >     On 12/9/2016 8:54 AM, Gregory Etelson wrote:
> >     > Hello,
> >     >
> >     > IGB_UIO driver does not close port PCI activities after DPDK
> process exits.
> >     > DPDK API provides rte_eth_dev_close() to manage port PCI,
> >     > but it can be skipped if process receives SIGKILL signal
> >
> >     I guess I understand the problem.
> >
> >
> > This is a known problem, but it is not just a UIO problem, and this
> > patch does not solve it, maybe it just solves part of it.
> >
> > In fact, a DPDK program crashing could imply the NIC DMAing after that
> > and after that memory was assigned to another program.
>
> Yes.
> Can there be a way to stop NIC DMA, (or prevent it access to mem
> anymore) when app crashes?
> I think that is what this patch is looking for.
>
>
But with the patch, it just happens when igb_uio module is removed. I guess
this is good for then loading or binding the device to another module, but
that does not solve the problem about stopping the NIC asap.

As I see it, the EAL should catch signals forcing always to close ports,
even when no signal, because it could be just the app exiting without error
but the port/NIC able to receive packets. But for SIGKILL, that would not
be enough. So we need something else for always calling a destructor before
fully exiting.



> >
> >
> >
> >
> >     > The patches below provide IGB_UIO release callback and IXGBEVF
> release function
> >
> >     But adding ixgbe specific code into igb_uio may not be good idea.
> >     Can be anything done one upper layer, pci layer, generic to all
> drivers?
> >
> >
> > This  module is not just being used for Intel cards, so this addition
> > will break, at least, the NFP PMD support.
> >
> > I was told to use igb_uio instead of adding a new NFP uio driver, so I
> > guess that implies this igb_uio driver should be considered not only a
> > igb driver.
>
> No it is generic, I think names has igb_ just for historical reasons.
>

Great.


>
> >
> >
> >     > With the patches, each time DPDK process terminates,
> >     > UIO release callback will trigger port PCI close.
> >     > On the down side, patched IGB_UIO can be bound to a single adapter
> type
> >     >
> >     > Regards,
> >     > Gregory
> >
> >     <...>
> >
> >
>
>


More information about the dev mailing list