Re: sendfile(2) SF_NOPUSH flag proposal

From: Terry Lambert (tlambert2_at_mindspring.com)
Date: 05/29/03

  • Next message: Igor Sysoev: "Re: sendfile(2) SF_NOPUSH flag proposal"
    Date: Wed, 28 May 2003 22:56:21 -0700
    To: Igor Sysoev <is@rambler-co.ru>
    
    

    Igor Sysoev wrote:
    > > will result in you sleeping with PRUS_MORETOCOME set, but with
    > > no more being sent because the send buffer doesn't get emptied,
    > > as it's waiting for more data to send.
    >
    > But as I understand PRUS_MORETOCOME is not set if socket is non-blocking.

    Then the bug is still not fixed by setting it, since your total
    send size might be less than `sysctl net.inet.tcp.sendspace`.

    You guys should really just have a buffer finalize function
    that gets called on block/return cases, and impute the flags
    you need on the socket while it's being used for sendfile.

    -- Terry
    _______________________________________________
    freebsd-arch@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-arch
    To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"


  • Next message: Igor Sysoev: "Re: sendfile(2) SF_NOPUSH flag proposal"

    Relevant Pages

    • Re: serving a file to a client --- background fcopy read fileevent event puts socket cha
      ... invokes a callback when there's both data waiting and somewhere to ... probably not -size (although having -size pre-load the input buffer ... you can't even observe the progress of the [fcopy] from outside (ie. ... The division of functionality I mentioned should have negligible impact ...
      (comp.lang.tcl)
    • Completion ports and sockets - scaling my app
      ... First chunk 1 is put on his way by WSASend. ... Such an application must, however, take great care to ensure that it posts multiple overlapped sends, instead of waiting for one overlapped send to complete before posting another. ... If it had another buffer already posted, the transport would be able to use that buffer immediately and ... By implementing some kind of sequence numbering scheme? ...
      (microsoft.public.win32.programmer.networks)
    • XFS related hang (was Re: How to send a break? - dump from frozen 64bit linux)
      ... we're waiting here on a synchronisation variable that'll ... that'd be called by the I/O completion handler on the buffer ... waiting for the driver to wake us up when its done. ... we aren't seeing the I/O completion here for some reason... ...
      (Linux-Kernel)
    • Re: Piping between 2 threads
      ... I have the following pipe buffer shared between threads. ... 1 - R starts waiting on write event. ... Use a ringbuffer of buffer pointers. ...
      (comp.programming)
    • Re: Can NetworkStream.Write() block?
      ... myNetworkStream.BeginWrite(bytebuffer, int offset, int size) since all that does is create a backlog of BeginWrite threads all waiting to complete. ... In general, you can assume asynchronous calls are *more* efficient than their synchronous companions, since those *always* take up a thread (namely the thread waiting for completion) while the asynchronous ones generally only take up a thread when executing the completion callback. ... The overlapped requests are simply queued until there's an opportunity to process them. ...
      (microsoft.public.dotnet.languages.csharp)