Date: Mon, 25 Mar 2002 13:41:29 -0800 From: Lars Eggert <larse@ISI.EDU> To: Matthew Luckie <mjl@nlanr.net> Cc: freebsd-net@freebsd.org Subject: Re: ip_output and ENOBUFS Message-ID: <3C9F9989.4070201@isi.edu> References: <Pine.BSF.4.21.0203251313060.88720-100000@mave.nlanr.net>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] Matthew Luckie wrote: > I have written a syscall that creates a packet in kernel-space, > timestamps it, and then sends it via ip_output > > If the user-space application uses this system call faster than the > packets can be sent, ip_output will return ENOBUFS. > > Is there a mechanism to tell when ip_output should be called again? > Ideally, I would block until such time as i could send it via ip_output You probably get that because the outbound interface queue gets full, so you want to block your caller until space becomes available there. There currently is no such mechanism (AFAIK, and talking about -STABLE here), but it's not too much work to add. Not sure if this is really useful though. Ususally the NIC doesn't limit your transmission speed, it's losses inside the network that do. Also, why a new system call? Is it that much more efficient than RawIP? Lars -- Lars Eggert <larse@isi.edu> Information Sciences Institute http://www.isi.edu/larse/ University of Southern California [-- Attachment #2 --] 0 *H 010 + 0 *H 00G0 *H 010 UZA10UWestern Cape10U Cape Town10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 2000.8.300 010824164000Z 020824164000Z0T10 UEggert1 0U*Lars10ULars Eggert10 *H larse@isi.edu00 *H 0 |\Pw v~~FDooӦA\- Cˀ4.)&{肋,z(ܷر߈T7_'txGH^tt/ҹB8%t<#ֲN V0T0*+e!0 00L2uMyffBNUbNJJcdZ2s0U0 larse@isi.edu0U0 0 *H aJPMՒ ]cѭC+kS+wZ1gY",YT41 j6:~℩D~Kؚl=u(ՎM?cF7@}T00G0 *H 010 UZA10UWestern Cape10U Cape Town10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 2000.8.300 010824164000Z 020824164000Z0T10 UEggert1 0U*Lars10ULars Eggert10 *H larse@isi.edu00 *H 0 |\Pw v~~FDooӦA\- Cˀ4.)&{肋,z(ܷر߈T7_'txGH^tt/ҹB8%t<#ֲN V0T0*+e!0 00L2uMyffBNUbNJJcdZ2s0U0 larse@isi.edu0U0 0 *H aJPMՒ ]cѭC+kS+wZ1gY",YT41 j6:~℩D~Kؚl=u(ՎM?cF7@}T0)00 *H 010 UZA10UWestern Cape10U Cape Town10U Thawte Consulting1(0&UCertification Services Division1$0"UThawte Personal Freemail CA1+0) *H personal-freemail@thawte.com0 000830000000Z 020829235959Z010 UZA10UWestern Cape10U Cape Town10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 2000.8.3000 *H 0 32c %E>nx'gڈD)c5*mp<ܮto034qmOe KaU5u'rװ|CBPQ<9TIf - ki N0L0)U"0 010UPrivateLabel1-2970U0 0U0 *H so&e4KYbDI j&*bctmSK8P:l4撜n# KrgPo.XPWՈ9[9}4%MjÑ/<RbH100010 UZA10UWestern Cape10U Cape Town10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 2000.8.30G0 + a0 *H 1 *H 0 *H 1 020325214130Z0# *H 1i.ẹ0R *H 1E0C0 *H 0*H 0 *H @0+0 *H (0*H 1010 UZA10UWestern Cape10U Cape Town10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 2000.8.30G0 *H /T6Y6W,xdGYp_]=<=%Fl8_^/3`-dԋW2|=*ioaܔ}Y@a~)8Py<3ɬhelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C9F9989.4070201>
