Re: using software TSO on non-TSO capable netdevices

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <herbert@...>
Cc: <bhutchings@...>, <buytenh@...>, <netdev@...>, <akarkare@...>, <nico@...>, <dale@...>
Date: Sunday, August 3, 2008 - 4:19 am

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Thu, 31 Jul 2008 21:27:35 +0800


I took a brief look into this, and yes NIU would benefit a lot from
what the sfc driver is doing and using sw GSO in general.

I think that, in order to work out, the driver has to provide a pool
of DMA buffers to use in some generic fashion.

It seems likely that it's best to give the driver the largest amount
of flexibility wrt. the DMA bits.  There are two reasonable ways for
them to implement a header buffer pool:

1) A big coherent DMA block that gets chopped up into fixed size pieces.

2) A free list of kmalloc() buffers that get DMA mapped dynamically
   (because such dynamic DMA mappings transfer faster than coherent ones
   on some systems).

But anyways, we don't want to be in the business of enforcing one way
or the other in whatever interface we come up with.

So likely what we'll do is have the driver say it can do hw TSO and
then at ->hard_start_xmit() time it calls into the sw GSO engine,
passing header buffers in along the way.

I would start hacking on this beast but I haven't yet come up with
a clean way to share a lot of code with the existing sw GSO engine.
That's the key to implementing this properly.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Wed Jul 30, 7:50 pm)
Re: using software TSO on non-TSO capable netdevices, Rick Jones, (Thu Jul 31, 1:00 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 1:45 pm)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Wed Jul 30, 7:56 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Wed Jul 30, 8:41 pm)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Wed Jul 30, 10:29 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Wed Jul 30, 10:36 pm)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Wed Jul 30, 11:03 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 6:14 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Thu Jul 31, 6:16 am)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 8:25 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Thu Jul 31, 8:35 am)
Re: using software TSO on non-TSO capable netdevices, Ben Hutchings, (Thu Jul 31, 9:19 am)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Thu Jul 31, 9:27 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Sun Aug 3, 4:19 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Thu Aug 7, 2:07 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Thu Aug 7, 6:44 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Aug 7, 7:50 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Fri Sep 12, 12:08 am)
Re: using software TSO on non-TSO capable netdevices, Ilpo Järvinen, (Thu Jul 31, 2:55 am)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 5:39 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Wed Jul 30, 9:10 pm)
Re: using software TSO on non-TSO capable netdevices, Ilpo Järvinen, (Thu Jul 31, 3:34 am)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 5:50 am)
Re: using software TSO on non-TSO capable netdevices, Ilpo Järvinen, (Thu Jul 31, 6:27 am)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Wed Jul 30, 9:45 pm)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Wed Jul 30, 11:54 pm)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 5:45 am)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Thu Jul 31, 6:55 am)
Re: using software TSO on non-TSO capable netdevices, Lennert Buytenhek, (Thu Jul 31, 8:37 am)
Re: using software TSO on non-TSO capable netdevices, Herbert Xu, (Thu Jul 31, 8:59 am)
Re: using software TSO on non-TSO capable netdevices, David Miller, (Sun Aug 3, 4:23 am)