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>