A small fix for if_em.c, if_igb.c, if_ixgbe.c
Yonghyeon PYUN
pyunyh at gmail.com
Mon Dec 2 02:23:45 UTC 2013
On Fri, Nov 29, 2013 at 06:24:12PM +0100, Michael Tuexen wrote:
> Dear all,
>
> ifnet(9) says regarding if_transmit():
>
> Transmit a packet on an interface or queue it if the interface is
> in use. This function will return ENOBUFS if the devices software
> and hardware queues are both full.
>
> The drivers for em, igb and ixgbe might also return an error even
> in the case the packet was enqueued. The attached patches fix this
> issue.
How do you know the packet is successfully enqueued but driver
returns an error? Do non-buf-ring-aware drivers also show the same
behavior?
>
> Any comments?
I'm afraid the patch you posted ignores any errors(i.e.
m_defrag(9), bus_dma(9) etc) happened during TX processing.
>
> Jack: What do you think? Would you prefer to commit the fix if
> you think it is acceptable?
>
> Best regards
> Michael
More information about the freebsd-net
mailing list