Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Nov 2013 14:39:51 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        Julian Elischer <julian@freebsd.org>
Cc:        Michael Tuexen <Michael.Tuexen@lurchi.franken.de>, "freebsd-net@freebsd.org list" <freebsd-net@freebsd.org>
Subject:   Re: ip_output()/if_output() behaviour
Message-ID:  <CAJ-VmonJijEvrftE6SfUrK7vONXOAY62usik7mFfzo9zHmqt0g@mail.gmail.com>
In-Reply-To: <5298BD5D.3020203@freebsd.org>
References:  <BF7B04F7-0D45-4708-99A8-8BE030109CEC@lurchi.franken.de> <CAJ-Vmo=Jsf=7uXxwJ=Md5KLFpvSYAcaaNrq%2BbHsw75nfSG_ZaQ@mail.gmail.com> <B7E3AA58-172A-4D20-B625-95C4712D46E7@lurchi.franken.de> <52987E27.10503@freebsd.org> <8C291076-5F03-4406-B689-A3185E6DD313@lurchi.franken.de> <5298BD5D.3020203@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
+1


On 29 November 2013 08:14, Julian Elischer <julian@freebsd.org> wrote:

>> ifnet(9) says:
>>
>>             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.  ...
>>
>> So I guess returning ENOBUFS when the packet was queued is wrong...
>
> I think it is.
>
> ENOBUFS means "I couldn't proceed due to no buffers"
> not "I used up the last one on this operation".

Yes, it's wrong. ENOBUFS means "couldn't queue; no buffers." Please
provide a diff against igb and I'll make sure Jack/Intel get it into
(his, freebsd) tree.

Thanks!



-adrian



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