Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 03 Jan 2015 15:23:24 +0300
From:      "Alexander V. Chernikov" <melifaro@yandex-team.ru>
To:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: cxgbe and netmap
Message-ID:  <54A7DF3C.7090905@yandex-team.ru>
In-Reply-To: <20150102184640.GB28813@ox>
References:  <54A6BFFE.5080103@yandex-team.ru> <20150102184640.GB28813@ox>

next in thread | previous in thread | raw e-mail | index | archive | help
On 02.01.2015 21:46, Navdeep Parhar wrote:
> On Fri, Jan 02, 2015 at 06:57:50PM +0300, Alexander V. Chernikov wrote:
>> Hello list!
>>
>> FreeBSD has netmap support for chelsio T5 cards, which is amazing.
>> The great thing about implementation is that you can play with
>> traffic-generating applications without affecting "main" OS interface,
>> which has always been a problem for Intel cards.
>> However, this approach (having additional netmap-only ifp) turns to be a
>> bit problematic for netmap-based networking elements participating in
>> routing.
>>
>> In Intel case you can configure all your interfaces, run routing daemon,
>> run netmap application and punt all to-host traffic  to kernel via host
>> pipes.
>> It looks like I can't do this using current implementation: mac
>> addresses are different for main/netmap interfaces so I can't run
>> routing daemon on main interface (or sub-interfaces).
>> I also can't run routing daemon on top of ncxgbe* interface since it
>> appears to ignore non-netmap-derived traffic..
>>
>> Is it possible to make ncxgbe* interfaces behave more like ordinary ones?
>>
> Yes, I need to write a simple transmit and receive handler for the
> non-netmap traffic on the ncxgbe/ncxl interfaces.  This is a bit
> complicated because the normal rx runs in a mode where 1 rx buffer does
> not always equal 1 rx frame.
>
> Now that netmap is in GENERIC, it may be best to carve out a separate
> cxgbe_netmap module that can be loaded by those who want to use netmap
> on top of cxgbe/cxl hardware.  So no more magic 'n' interfaces by
> default (some people were caught by surprise at the sudden appearance of
> the 'n' interfaces on HEAD), and fully functional 'n' interfaces as soon
> as you load the additional module.
>
> What do you and other netmap users think?  I'm open to taking this
Having loadable netmap support would be great - this approach looks
much more flexible.
> driver's netmap support in whatever direction the users want it to go.
>
> Regards,
> Navdeep




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?54A7DF3C.7090905>