A small fix for if_em.c, if_igb.c, if_ixgbe.c

Adrian Chadd adrian at freebsd.org
Mon Dec 9 19:37:10 UTC 2013


Jack / John - thoughts?


-a

On 8 December 2013 19:44, Adrian Chadd <adrian at freebsd.org> wrote:
> .. I'm saying that we should have if_transmit( )return an error only
> on the current packet, and 0 if it was queued.
>
> We don't have a mechanism to say that a queued packet actually made it
> onto the wire. Whether we should is a different discussion.
>
> Ie, after thinking about this some more, I'd like to:
>
> * change if_transmit in these drivers to do exactly what you suggest -
> it should return an error only if the given packet couldn't be queued.
> It shouldn't matter whether it is later transmitted or not - we don't
> have a feedback mechanism for that.
> * figure out a very specific definition of what xxx_mq_start_locked()
> should return - my gut feeling is an error if it couldn't queue a
> frame, and 0 if it dispatched a frame to the hardware - and then make
> the code match this definition.
>
>
>
> -adrian


More information about the freebsd-net mailing list