DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Question regarding PMDs
@ 2013-07-31 21:23 Patrick Mahan
  2013-07-31 21:35 ` Stephen Hemminger
  0 siblings, 1 reply; 2+ messages in thread
From: Patrick Mahan @ 2013-07-31 21:23 UTC (permalink / raw)
  To: dev

Okay, I wadding into the process of writing a poll-mode driver for DPDK. 

First question, is the use of the UIO device a requirement (outside of the need for interrupt support) since it is possible to map the PCI bars via /dev/mem?

Second question, is it expected that the NIC hardware would already have been initialized by the kernel driver for that device? Say to load microcode on an intelligent NIC?

I am sure to have more when the water level gets above my head ;-)

Thanks,

Patrick 

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [dpdk-dev] Question regarding PMDs
  2013-07-31 21:23 [dpdk-dev] Question regarding PMDs Patrick Mahan
@ 2013-07-31 21:35 ` Stephen Hemminger
  0 siblings, 0 replies; 2+ messages in thread
From: Stephen Hemminger @ 2013-07-31 21:35 UTC (permalink / raw)
  To: Patrick Mahan; +Cc: dev

On Wed, 31 Jul 2013 14:23:40 -0700
Patrick Mahan <mahan@mahan.org> wrote:

> Okay, I wadding into the process of writing a poll-mode driver for DPDK. 
> 
> First question, is the use of the UIO device a requirement (outside of the need for interrupt support) since it is possible to map the PCI bars via /dev/mem?

Not really, the 6wind virtio driver doesn't bother (because it uses I/O ports).
But if you want link state interrupt then you need UIO support.
Plus if you use UIO, then there is protection against overlapping usage between
user mode and kernel drivers which matters especially if doing blacklisting.

The whole memory mapping approach in DPDK needs to be hardened with something
stronger like using the IOMMU. Recent kernels support something called VFIO
which could be used. This is a base PCI level change, not a something each driver
should have to worry about.

  http://lwn.net/Articles/474088/


> 
> Second question, is it expected that the NIC hardware would already have been initialized by the kernel driver for that device? Say to load microcode on an intelligent NIC?

If you need firmware then yes, the linux firmware loader is a lot easier
than doing it yourself. I wouldn't assume more than that.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-07-31 21:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-07-31 21:23 [dpdk-dev] Question regarding PMDs Patrick Mahan
2013-07-31 21:35 ` Stephen Hemminger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).