Re: NETIF_F_GSO_SOFTWARE vs NETIF_F_GSO

From: Jason A. Donenfeld
Date: Thu Nov 05 2015 - 10:01:05 EST


Hi Herbert,

Thanks for your response!

On Thu, Nov 5, 2015 at 1:15 PM, Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> wrote:
> The NETIF_F_GSO flag turns on software GSO which should be on
> anyway. So that could be why it seems to make no difference.

GSO is on by default? That makes sense, okay.

>
> NETIF_F_GSO_SOFTWARE is actually a collection of bits that lists
> the protocols for which we support software GSO. The bits themselves
> are in fact an indication that the hardware supports GSO directly.
> So by turning them on you're electing to receive GSO packets
> directly.

Right -- I saw the expansion in the header file -- it gets the various
TSOs plus UFO. So what this means is that the packet hasn't yet been
split up? So were I to add this option, then my driver would have to
be responsible for splitting up the super-packets manually? In which
case, there would be no performance benefit in using it, since GSO
already does this just prior to ndo_start_xmit? Or would there be a
performance benefit in receiving the super-packets and splitting them
myself?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/