Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[dsdp-tcf-dev] [Bug 284873] New: [tcf][agent] Zerocopy splice from file descriptor

https://bugs.eclipse.org/bugs/show_bug.cgi?id=284873  
Product/Component: Target Management / TCF
           Summary: [tcf][agent] Zerocopy splice from file descriptor
           Product: Target Management
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: TCF
        AssignedTo: dsdp.tm.tcf-inbox@xxxxxxxxxxx
        ReportedBy: michael.sills.lavoie@xxxxxxxxx
         QAContact: martin.oberhuber@xxxxxxxxxxxxx
                CC: eugene.tarassov@xxxxxxxxxxxxx


Created an attachment (id=142774)
 --> (https://bugs.eclipse.org/bugs/attachment.cgi?id=142774)
Zerocopy splice from file descriptor patch.

This is the patch for the function to copy a block from a file descriptor using
the splice system call under Linux that we talked about in
http://dev.eclipse.org/mhonarc/lists/dsdp-tcf-dev/msg00083.html. It is now
possible to send data with the framework without any copy. This implementation
adds the splice_block function to the output stream. It is implemented in the
channel_tcp file. I also extended JSON to support it. I also slightly changed
the name of the zero copy function that I created in the bug 282734 :
https://bugs.eclipse.org/bugs/show_bug.cgi?id=282734 to get rid of a syntax
error.

This patch has been applied and tested on svn revision 760 of the c agent under
Linux. This functionality will not work on Windows and VXWorks because this
system call is specific to Linux. On the systems that don't support it, the
framework will send the data using the ZeroCopy functionality if it's
available, or the base64 encoding if it's not.

What do you think about it ? Comments, suggestions?

Legal Message: I, Michael Sills-Lavoie, declare that I developed attached code
from scratch, without referencing any 3rd party materials except material
licensed under the EPL and EDL. I am authorized by my employer, École
Polytechnique de Montréal, to make this contribution under the EPL and EDL.

The École Polytechnique de Montréal is a member of the Eclipse Associate and
Eclipse Membership At Large communities.


-- 
Configure bugmail: https://bugs.eclipse.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.

Back to the top