dev.dpdk.org archive mirror
 help / color / mirror / Atom feed
From: Linhaifeng <haifeng.lin-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
To: "Xie,
	Huawei" <huawei.xie-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	"'Tetsuya Mukawa'"
	<mukawa-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>,
	"dev-VfR2kkLFssw@public.gmane.org"
	<dev-VfR2kkLFssw@public.gmane.org>,
	lilijun <jerry.lilijun-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>,
	zhangkun <zhang.zhangkun-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
Subject: Re: vhost-user technical isssues
Date: Fri, 14 Nov 2014 10:24:03 +0800	[thread overview]
Message-ID: <546567C3.4040403@huawei.com> (raw)
In-Reply-To: <C37D651A908B024F974696C65296B57B0F302730-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>



On 2014/11/14 9:28, Xie, Huawei wrote:
> 
> 
>> -----Original Message-----
>> From: Linhaifeng [mailto:haifeng.lin-hv44wF8Li93QT0dZR+AlfA@public.gmane.org]
>> Sent: Wednesday, November 12, 2014 11:28 PM
>> To: Xie, Huawei; 'Tetsuya Mukawa'; dev-VfR2kkLFssw@public.gmane.org
>> Subject: Re: [dpdk-dev] vhost-user technical isssues
>>
>>
>>
>> On 2014/11/12 5:37, Xie, Huawei wrote:
>>> Hi Tetsuya:
>>> There are two major technical issues in my mind for vhost-user
>> implementation.
>>>
>>> 1) memory region map
>>> Vhost-user passes us file fd and offset for each memory region. Unfortunately
>> the mmap offset is "very" wrong. I discovered this issue long time ago, and also
>> found
>>> that I couldn't mmap the huge page file even with correct offset(need double
>> check).
>>> Just now I find that people reported this issue on Nov 3.
>>> [Qemu-devel] [PULL 27/29] vhost-user: fix mmap offset calculation
>>> Anyway, I turned to the same idea used in our DPDK vhost-cuse: only use the fd
>> for region(0) to map the  whole file.
>>> I think we should use this way temporarily to support qemu-2.1 as it has that
>> bug.
>>>
>>
>> the size of region 0 is not same as the file size. may be you should mmap the
>> other region.
> Haifeng:
> 
> Will calculate the maximum memory size, and use any file fd to mmap it.
> Here we assume the fds for different regions actually point to the same file.

actually there may be two hugepage files created by qemu.
one day i create a 4G VM found qemu create 2 hugepage file and send them to vhost-user.
you can try to test it.

> 
> In theory we should use the fd for each region to map each memory region.
> In fact we could map once. This will also save address space for 1GB huge page
> due to mmap alignment requirement.
>>
>> region 0:
>>         gpa = 0x0
>>         size = 655360
>>         ua = 0x2aaaaac00000
>>         offset = 0
>>
>> region 1:// use this region to mmap.BTW how to avoid mmap twice when there
>> are two devices?
>>         gpa = 0xC0000
>>         size = 2146697216
>>         ua = 0x2aaaaacc0000
>>         offset = 786432
> 
> What do you mean by two devices?
>>
>>

e.g there are two vhost-user backends in a VM, we will receive two SET_MEM_TABLE messages, actually we only need mmap once in one message.

I think qemu should add a new message to send all hugepage fd and size once.
as this we not need to mmap and calculate memory in set_mem_table message.

>>
>>> 2) what message is the indicator for vhost start/release?
>>> Previously  for vhost-cuse, it has SET_BACKEND message.
>>> What we should do for vhost-user?
>>> SET_VRING_KICK for start?
>>> What about for release?
>>> Unlike the kernel virtio, the DPDK virtio in guest could be restarted.
>>>
>>> Thoughts?
>>>
>>> -huawei
>>>
>>>
>>
>> --
>> Regards,
>> Haifeng
> 
> 
> .
> 

-- 
Regards,
Haifeng

  parent reply	other threads:[~2014-11-14  2:24 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-11 21:37 vhost-user technical isssues Xie, Huawei
     [not found] ` <C37D651A908B024F974696C65296B57B0F2F19EF-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2014-11-12  4:12   ` Tetsuya Mukawa
     [not found]     ` <5462DE39.1070006-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-13  6:30       ` Linhaifeng
     [not found]         ` <54645007.3010301-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  2:30           ` Tetsuya Mukawa
     [not found]             ` <54656950.1050204-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-14  3:13               ` Linhaifeng
     [not found]                 ` <54657365.7090504-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  3:40                   ` Tetsuya Mukawa
     [not found]                     ` <546579A3.3010804-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-14  4:05                       ` Tetsuya Mukawa
2014-11-14  4:42                       ` Linhaifeng
     [not found]                         ` <54658853.2090100-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  5:12                           ` Tetsuya Mukawa
     [not found]                             ` <54658F55.4070409-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-14  5:30                               ` Linhaifeng
     [not found]                                 ` <54659361.6000702-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  6:57                                   ` Tetsuya Mukawa
     [not found]                                     ` <5465A7C2.7080208-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-14 10:59                                       ` Xie, Huawei
     [not found]                                         ` <C37D651A908B024F974696C65296B57B0F303CAA-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2014-11-17  6:14                                           ` Tetsuya Mukawa
2014-11-14  0:22       ` Xie, Huawei
     [not found]         ` <C37D651A908B024F974696C65296B57B0F30265D-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2014-11-14  2:52           ` Tetsuya Mukawa
     [not found]             ` <54656E87.8090801-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org>
2014-11-15  1:42               ` Xie, Huawei
2014-11-13  6:12   ` Linhaifeng
2014-11-13  6:27   ` Linhaifeng
     [not found]     ` <54644F5E.8080407-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  1:28       ` Xie, Huawei
     [not found]         ` <C37D651A908B024F974696C65296B57B0F302730-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2014-11-14  2:24           ` Linhaifeng [this message]
     [not found]             ` <546567C3.4040403-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>
2014-11-14  2:35               ` Tetsuya Mukawa
2014-11-14  6:24               ` Xie, Huawei

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=546567C3.4040403@huawei.com \
    --to=haifeng.lin-hv44wf8li93qt0dzr+alfa@public.gmane.org \
    --cc=dev-VfR2kkLFssw@public.gmane.org \
    --cc=huawei.xie-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=jerry.lilijun-hv44wF8Li93QT0dZR+AlfA@public.gmane.org \
    --cc=mukawa-AlSX/UN32fvPDbFq/vQRIQ@public.gmane.org \
    --cc=zhang.zhangkun-hv44wF8Li93QT0dZR+AlfA@public.gmane.org \
    /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).