On Wed, 2013-02-27 at 21:17 +0200, Eliezer Tamir wrote:
> On 27/02/2013 20:47, Tom Herbert wrote:
> > On Wed, Feb 27, 2013 at 10:13 AM, Stephen Hemminger
> > <[email protected]> wrote:
> >>
> >> Have you looked at netmap? Seems like a cleaner user API for this.
> >>
> > That might be a bit orthogonal to this. I believe the intent it to
> > allow spin polling from socket calls without API change.
>
> Exactly.
>
> BTW, an interesting alternative to netmap would be to map a VF into
> userspace. (you would need to pre-allocate DMA memory regions and all of
> that RDMA-like stuff)
Unless the hardware has separate event rings for completions, userland
is presumably going to need to be able to rewrite the DMA descriptor
rings. At which point you have to restrict the VF's DMA with an IOMMU,
and might as well let userland allocate and assign DMA buffers
dynamically.
(In OpenOnload this is called 'scalable buffer mode' as an IOMMU allows
mapping more buffers than the on-board buffer table on the SFC9000
family. The catch is that an IOMMU has higher latency.)
Ben.
--
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.