Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[dsdp-tcf-dev] [Bug 282840] New: Zero copy transfer

https://bugs.eclipse.org/bugs/show_bug.cgi?id=282840  
Product/Component: Target Management / TCF
           Summary: Zero copy transfer
           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: felix.burton@xxxxxxxxxxxxx


Created an attachment (id=141077)
 --> (https://bugs.eclipse.org/bugs/attachment.cgi?id=141077)
Patch to add zero copy transfer

Here is a first implementation of the functionality we talked about to transfer
data without copy in
http://dev.eclipse.org/mhonarc/lists/dsdp-tcf-dev/msg00081.html for the c
agent. This implementation adds the write_bloc function to the output stream. I
also enhanced the channel_tcp and extended JSON to support it. In order to read
the new binary format, I modified the inputbuf.*. Since those modifications
aren't backward compatible, I added a new service called "tcf2". If the
receiver peer announces this service, then the new TCP channel marker and JSON
extensions are used, otherwise the implementation falls back to non-zero copy
mode.

I haven't added a function to copy a block from a file or a pipe using the
splice function like we talked in
http://dev.eclipse.org/mhonarc/lists/dsdp-tcf-dev/msg00083.html yet. This will
be easy to add in the future since the receiver side will already support it.

This patch has been applied and tested on svn revision 751 of the c agent under
Linux. This functionality will probably work on Windows and VXWorks too but it
has not been tested. Once tested, it would be easy to add the other working
configuration in the config.h file.

#define SERVICE_TCF2            (TARGET_UNIX)

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