From: Zoltan Kiss <zoltan.kiss@linaro.org>
To: "Xie, Huawei" <huawei.xie@intel.com>,
Nikita Kalyazin <n.kalyazin@samsung.com>,
"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] data copy in vhost-user
Date: Tue, 28 Apr 2015 13:24:25 +0100 [thread overview]
Message-ID: <553F7BF9.1010505@linaro.org> (raw)
In-Reply-To: <C37D651A908B024F974696C65296B57B0F45DBE0@SHSMSX101.ccr.corp.intel.com>
On 28/04/15 02:22, Xie, Huawei wrote:
>
>
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zoltan Kiss
>> Sent: Tuesday, April 28, 2015 12:27 AM
>> To: Nikita Kalyazin; dev@dpdk.org
>> Subject: Re: [dpdk-dev] data copy in vhost-user
>>
>>
>>
>> On 27/04/15 12:54, Nikita Kalyazin wrote:
>>> Hi,
>>>
>>>
>>> As far as I understand, DPDK vhost-user implementation requires data copy
>> for either RX or TX (rte_vhost_dequeue_burst() and
>> rte_vhost_enqueue_burst()). It means that two data copies are needed to
>> transfer a packet from one VM to another.
>>>
>>> Why is not it possible to eliminate one of the copies (e.g.,
>> rte_vhost_enqueue_burst() might set up a reference at vring descriptor to
>> mbuf's data rather than copying the data)?
> This had been added to the to-do list. We could delay the copy until the real copy is needed.
>>
>> I'm just guessing, but in case of VM-to-VM traffic the receiving one
>> could hold onto the buffer indefinitely, preventing the sender to reuse
>> the buffer. That could lead to a DoS in some cases, and shutting down
>> the sender would be also tricky. At least in case of Xen
>> netback/netfront that's the reason. A reasonable solution for this
>> problem is to make sure the buffer is swapped out with a copy after a
>> finite time.
> Do you mean we associate a timeout for the buffer?
Yes, I think xen-netback had such a version once, but it was removed. As
far as I know the overhead and complexity of handling these timeouts
were too severe.
I might be wrong about this, I don't know if this problem applies here
as well or not.
>>
>> Regards,
>>
>> Zoltan
next prev parent reply other threads:[~2015-04-28 12:24 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-27 11:54 Nikita Kalyazin
2015-04-27 16:26 ` Zoltan Kiss
2015-04-28 1:22 ` Xie, Huawei
2015-04-28 12:24 ` Zoltan Kiss [this message]
2015-04-29 7:41 ` Nikita Kalyazin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=553F7BF9.1010505@linaro.org \
--to=zoltan.kiss@linaro.org \
--cc=dev@dpdk.org \
--cc=huawei.xie@intel.com \
--cc=n.kalyazin@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).