From: Wei Wang <wei.w.wang@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
kvm@vger.kernel.org, linux-mm@kvack.org, mhocko@kernel.org,
akpm@linux-foundation.org, mawilcox@microsoft.com,
david@redhat.com, penguin-kernel@I-love.SAKURA.ne.jp,
cornelia.huck@de.ibm.com, mgorman@techsingularity.net,
aarcange@redhat.com, amit.shah@redhat.com, pbonzini@redhat.com,
willy@infradead.org, liliang.opensource@gmail.com,
yang.zhang.wz@gmail.com, quan.xu@aliyun.com,
Nitesh Narayan Lal <nilal@redhat.com>,
Rik van Riel <riel@redhat.com>
Subject: [virtio-dev] Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
Date: Mon, 20 Nov 2017 19:42:40 +0800 [thread overview]
Message-ID: <5A12BFB0.5030402@intel.com> (raw)
In-Reply-To: <20171113192309-mutt-send-email-mst@kernel.org>
On 11/14/2017 01:32 AM, Michael S. Tsirkin wrote:
> You should Cc Nitesh who is working on a related feature.
OK, I'll do. We have two more issues which haven't been discussed yet,
please have a check below.
>
> On Mon, Nov 13, 2017 at 06:34:48PM +0800, Wei Wang wrote:
>> Ping for comments, thanks.
>>
>> On 11/03/2017 04:13 PM, Wei Wang wrote:
>>> +static void virtballoon_cmd_report_free_page_start(struct virtio_balloon *vb)
>>> +{
>>> + unsigned long flags;
>>> +
>>> + vb->report_free_page_stop = false;
> this flag is used a lot outside any locks. Why is this safe?
> Please add some comments explaining access to this flag.
I will revert the logic as suggested: vb->report_free_page. Also plan to
simplify its usage as below.
The flag is set or cleared in the config handler according to the
new_cmd_id given
by the host:
new_cmd_id=0: WRITE_ONCE(vb->report_free_page,
false); // stop reporting
new_cmd_id != old_cmd_id: WRITE_ONCE(vb->report_free_page, true); //
start reporting
The flag is read by virtio_balloon_send_free_pages() - the callback to
report free pages:
if (!READ_ONCE(vb->report_free_page))
return false;
I don't find where it could be unsafe then (the flag is written by the
config handler only).
>
>>> +}
>>> +
>>> static inline s64 towards_target(struct virtio_balloon *vb)
>>> {
>>> s64 target;
>>> @@ -597,42 +673,147 @@ static void update_balloon_size_func(struct work_struct *work)
>>> queue_work(system_freezable_wq, work);
>>> }
>>> -static int init_vqs(struct virtio_balloon *vb)
>>> +static bool virtio_balloon_send_free_pages(void *opaque, unsigned long pfn,
>>> + unsigned long nr_pages)
>>> {
>>> - struct virtqueue *vqs[3];
>>> - vq_callback_t *callbacks[] = { balloon_ack, balloon_ack, stats_request };
>>> - static const char * const names[] = { "inflate", "deflate", "stats" };
>>> - int err, nvqs;
>>> + struct virtio_balloon *vb = (struct virtio_balloon *)opaque;
>>> + void *addr = (void *)pfn_to_kaddr(pfn);
> How do we know all free pages have a kaddr?
For x86_64, it works well since the kernel has all the physical memory
mapped already. But for 32-bit kernel, yes, the high memory usually
isn't mapped and thus no kaddr. Essentially, this pfn_to_kaddr convert
isn't necessary, we do it here because the current API that virtio has
is based on "struct scatterlist", which takes a kaddr, and this kaddr is
then convert back to physical address in virtqueue_add() when assigning
to desc->addr.
I think a better solution would be to add a new API, which directly
assigns the caller's guest physical address to desc->addr, similar to
the previous implementation "add_one_chunk()"
(https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg02452.html).
But we can change that to a general virtio API:
virtqueue_add_one_desc(struct virtqueue *_vq, u64 base_addr, u32 size,
bool in_desc, void *data);
What do you think?
Best,
Wei
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
WARNING: multiple messages have this Message-ID (diff)
From: Wei Wang <wei.w.wang@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
kvm@vger.kernel.org, linux-mm@kvack.org, mhocko@kernel.org,
akpm@linux-foundation.org, mawilcox@microsoft.com,
david@redhat.com, penguin-kernel@I-love.SAKURA.ne.jp,
cornelia.huck@de.ibm.com, mgorman@techsingularity.net,
aarcange@redhat.com, amit.shah@redhat.com, pbonzini@redhat.com,
willy@infradead.org, liliang.opensource@gmail.com,
yang.zhang.wz@gmail.com, quan.xu@aliyun.com,
Nitesh Narayan Lal <nilal@redhat.com>,
Rik van Riel <riel@redhat.com>
Subject: Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
Date: Mon, 20 Nov 2017 19:42:40 +0800 [thread overview]
Message-ID: <5A12BFB0.5030402@intel.com> (raw)
In-Reply-To: <20171113192309-mutt-send-email-mst@kernel.org>
On 11/14/2017 01:32 AM, Michael S. Tsirkin wrote:
> You should Cc Nitesh who is working on a related feature.
OK, I'll do. We have two more issues which haven't been discussed yet,
please have a check below.
>
> On Mon, Nov 13, 2017 at 06:34:48PM +0800, Wei Wang wrote:
>> Ping for comments, thanks.
>>
>> On 11/03/2017 04:13 PM, Wei Wang wrote:
>>> +static void virtballoon_cmd_report_free_page_start(struct virtio_balloon *vb)
>>> +{
>>> + unsigned long flags;
>>> +
>>> + vb->report_free_page_stop = false;
> this flag is used a lot outside any locks. Why is this safe?
> Please add some comments explaining access to this flag.
I will revert the logic as suggested: vb->report_free_page. Also plan to
simplify its usage as below.
The flag is set or cleared in the config handler according to the
new_cmd_id given
by the host:
new_cmd_id=0: WRITE_ONCE(vb->report_free_page,
false); // stop reporting
new_cmd_id != old_cmd_id: WRITE_ONCE(vb->report_free_page, true); //
start reporting
The flag is read by virtio_balloon_send_free_pages() - the callback to
report free pages:
if (!READ_ONCE(vb->report_free_page))
return false;
I don't find where it could be unsafe then (the flag is written by the
config handler only).
>
>>> +}
>>> +
>>> static inline s64 towards_target(struct virtio_balloon *vb)
>>> {
>>> s64 target;
>>> @@ -597,42 +673,147 @@ static void update_balloon_size_func(struct work_struct *work)
>>> queue_work(system_freezable_wq, work);
>>> }
>>> -static int init_vqs(struct virtio_balloon *vb)
>>> +static bool virtio_balloon_send_free_pages(void *opaque, unsigned long pfn,
>>> + unsigned long nr_pages)
>>> {
>>> - struct virtqueue *vqs[3];
>>> - vq_callback_t *callbacks[] = { balloon_ack, balloon_ack, stats_request };
>>> - static const char * const names[] = { "inflate", "deflate", "stats" };
>>> - int err, nvqs;
>>> + struct virtio_balloon *vb = (struct virtio_balloon *)opaque;
>>> + void *addr = (void *)pfn_to_kaddr(pfn);
> How do we know all free pages have a kaddr?
For x86_64, it works well since the kernel has all the physical memory
mapped already. But for 32-bit kernel, yes, the high memory usually
isn't mapped and thus no kaddr. Essentially, this pfn_to_kaddr convert
isn't necessary, we do it here because the current API that virtio has
is based on "struct scatterlist", which takes a kaddr, and this kaddr is
then convert back to physical address in virtqueue_add() when assigning
to desc->addr.
I think a better solution would be to add a new API, which directly
assigns the caller's guest physical address to desc->addr, similar to
the previous implementation "add_one_chunk()"
(https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg02452.html).
But we can change that to a general virtio API:
virtqueue_add_one_desc(struct virtqueue *_vq, u64 base_addr, u32 size,
bool in_desc, void *data);
What do you think?
Best,
Wei
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Wei Wang <wei.w.wang@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
kvm@vger.kernel.org, linux-mm@kvack.org, mhocko@kernel.org,
akpm@linux-foundation.org, mawilcox@microsoft.com,
david@redhat.com, penguin-kernel@I-love.SAKURA.ne.jp,
cornelia.huck@de.ibm.com, mgorman@techsingularity.net,
aarcange@redhat.com, amit.shah@redhat.com, pbonzini@redhat.com,
willy@infradead.org, liliang.opensource@gmail.com,
yang.zhang.wz@gmail.com, quan.xu@aliyun.com,
Nitesh Narayan Lal <nilal@redhat.com>,
Rik van Riel <riel@redhat.com>
Subject: Re: [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
Date: Mon, 20 Nov 2017 19:42:40 +0800 [thread overview]
Message-ID: <5A12BFB0.5030402@intel.com> (raw)
In-Reply-To: <20171113192309-mutt-send-email-mst@kernel.org>
On 11/14/2017 01:32 AM, Michael S. Tsirkin wrote:
> You should Cc Nitesh who is working on a related feature.
OK, I'll do. We have two more issues which haven't been discussed yet,
please have a check below.
>
> On Mon, Nov 13, 2017 at 06:34:48PM +0800, Wei Wang wrote:
>> Ping for comments, thanks.
>>
>> On 11/03/2017 04:13 PM, Wei Wang wrote:
>>> +static void virtballoon_cmd_report_free_page_start(struct virtio_balloon *vb)
>>> +{
>>> + unsigned long flags;
>>> +
>>> + vb->report_free_page_stop = false;
> this flag is used a lot outside any locks. Why is this safe?
> Please add some comments explaining access to this flag.
I will revert the logic as suggested: vb->report_free_page. Also plan to
simplify its usage as below.
The flag is set or cleared in the config handler according to the
new_cmd_id given
by the host:
new_cmd_id=0: WRITE_ONCE(vb->report_free_page,
false); // stop reporting
new_cmd_id != old_cmd_id: WRITE_ONCE(vb->report_free_page, true); //
start reporting
The flag is read by virtio_balloon_send_free_pages() - the callback to
report free pages:
if (!READ_ONCE(vb->report_free_page))
return false;
I don't find where it could be unsafe then (the flag is written by the
config handler only).
>
>>> +}
>>> +
>>> static inline s64 towards_target(struct virtio_balloon *vb)
>>> {
>>> s64 target;
>>> @@ -597,42 +673,147 @@ static void update_balloon_size_func(struct work_struct *work)
>>> queue_work(system_freezable_wq, work);
>>> }
>>> -static int init_vqs(struct virtio_balloon *vb)
>>> +static bool virtio_balloon_send_free_pages(void *opaque, unsigned long pfn,
>>> + unsigned long nr_pages)
>>> {
>>> - struct virtqueue *vqs[3];
>>> - vq_callback_t *callbacks[] = { balloon_ack, balloon_ack, stats_request };
>>> - static const char * const names[] = { "inflate", "deflate", "stats" };
>>> - int err, nvqs;
>>> + struct virtio_balloon *vb = (struct virtio_balloon *)opaque;
>>> + void *addr = (void *)pfn_to_kaddr(pfn);
> How do we know all free pages have a kaddr?
For x86_64, it works well since the kernel has all the physical memory
mapped already. But for 32-bit kernel, yes, the high memory usually
isn't mapped and thus no kaddr. Essentially, this pfn_to_kaddr convert
isn't necessary, we do it here because the current API that virtio has
is based on "struct scatterlist", which takes a kaddr, and this kaddr is
then convert back to physical address in virtqueue_add() when assigning
to desc->addr.
I think a better solution would be to add a new API, which directly
assigns the caller's guest physical address to desc->addr, similar to
the previous implementation "add_one_chunk()"
(https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg02452.html).
But we can change that to a general virtio API:
virtqueue_add_one_desc(struct virtqueue *_vq, u64 base_addr, u32 size,
bool in_desc, void *data);
What do you think?
Best,
Wei
WARNING: multiple messages have this Message-ID (diff)
From: Wei Wang <wei.w.wang@intel.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org,
kvm@vger.kernel.org, linux-mm@kvack.org, mhocko@kernel.org,
akpm@linux-foundation.org, mawilcox@microsoft.com,
david@redhat.com, penguin-kernel@I-love.SAKURA.ne.jp,
cornelia.huck@de.ibm.com, mgorman@techsingularity.net,
aarcange@redhat.com, amit.shah@redhat.com, pbonzini@redhat.com,
willy@infradead.org, liliang.opensource@gmail.com,
yang.zhang.wz@gmail.com, quan.xu@aliyun.com,
Nitesh Narayan Lal <nilal@redhat.com>,
Rik van Riel <riel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ
Date: Mon, 20 Nov 2017 19:42:40 +0800 [thread overview]
Message-ID: <5A12BFB0.5030402@intel.com> (raw)
In-Reply-To: <20171113192309-mutt-send-email-mst@kernel.org>
On 11/14/2017 01:32 AM, Michael S. Tsirkin wrote:
> You should Cc Nitesh who is working on a related feature.
OK, I'll do. We have two more issues which haven't been discussed yet,
please have a check below.
>
> On Mon, Nov 13, 2017 at 06:34:48PM +0800, Wei Wang wrote:
>> Ping for comments, thanks.
>>
>> On 11/03/2017 04:13 PM, Wei Wang wrote:
>>> +static void virtballoon_cmd_report_free_page_start(struct virtio_balloon *vb)
>>> +{
>>> + unsigned long flags;
>>> +
>>> + vb->report_free_page_stop = false;
> this flag is used a lot outside any locks. Why is this safe?
> Please add some comments explaining access to this flag.
I will revert the logic as suggested: vb->report_free_page. Also plan to
simplify its usage as below.
The flag is set or cleared in the config handler according to the
new_cmd_id given
by the host:
new_cmd_id=0: WRITE_ONCE(vb->report_free_page,
false); // stop reporting
new_cmd_id != old_cmd_id: WRITE_ONCE(vb->report_free_page, true); //
start reporting
The flag is read by virtio_balloon_send_free_pages() - the callback to
report free pages:
if (!READ_ONCE(vb->report_free_page))
return false;
I don't find where it could be unsafe then (the flag is written by the
config handler only).
>
>>> +}
>>> +
>>> static inline s64 towards_target(struct virtio_balloon *vb)
>>> {
>>> s64 target;
>>> @@ -597,42 +673,147 @@ static void update_balloon_size_func(struct work_struct *work)
>>> queue_work(system_freezable_wq, work);
>>> }
>>> -static int init_vqs(struct virtio_balloon *vb)
>>> +static bool virtio_balloon_send_free_pages(void *opaque, unsigned long pfn,
>>> + unsigned long nr_pages)
>>> {
>>> - struct virtqueue *vqs[3];
>>> - vq_callback_t *callbacks[] = { balloon_ack, balloon_ack, stats_request };
>>> - static const char * const names[] = { "inflate", "deflate", "stats" };
>>> - int err, nvqs;
>>> + struct virtio_balloon *vb = (struct virtio_balloon *)opaque;
>>> + void *addr = (void *)pfn_to_kaddr(pfn);
> How do we know all free pages have a kaddr?
For x86_64, it works well since the kernel has all the physical memory
mapped already. But for 32-bit kernel, yes, the high memory usually
isn't mapped and thus no kaddr. Essentially, this pfn_to_kaddr convert
isn't necessary, we do it here because the current API that virtio has
is based on "struct scatterlist", which takes a kaddr, and this kaddr is
then convert back to physical address in virtqueue_add() when assigning
to desc->addr.
I think a better solution would be to add a new API, which directly
assigns the caller's guest physical address to desc->addr, similar to
the previous implementation "add_one_chunk()"
(https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg02452.html).
But we can change that to a general virtio API:
virtqueue_add_one_desc(struct virtqueue *_vq, u64 base_addr, u32 size,
bool in_desc, void *data);
What do you think?
Best,
Wei
next prev parent reply other threads:[~2017-11-20 11:40 UTC|newest]
Thread overview: 158+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-03 8:13 [virtio-dev] [PATCH v17 0/6] Virtio-balloon Enhancement Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` [PATCH v17 1/6] lib/xbitmap: Introduce xbitmap Wei Wang
2017-11-03 8:13 ` [virtio-dev] " Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 10:55 ` Tetsuo Handa
2017-11-03 10:55 ` [Qemu-devel] " Tetsuo Handa
2017-11-03 10:55 ` Tetsuo Handa
2017-11-06 8:15 ` Wei Wang
2017-11-06 8:15 ` [virtio-dev] " Wei Wang
2017-11-06 8:15 ` [Qemu-devel] " Wei Wang
2017-11-06 8:15 ` Wei Wang
2017-11-06 8:15 ` Wei Wang
2017-11-03 10:55 ` Tetsuo Handa
2017-11-03 8:13 ` [virtio-dev] [PATCH v17 2/6] radix tree test suite: add tests for xbitmap Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-06 17:00 ` Matthew Wilcox
2017-11-06 17:00 ` Matthew Wilcox
2017-11-06 17:00 ` [Qemu-devel] " Matthew Wilcox
2017-11-06 17:00 ` Matthew Wilcox
2017-11-29 14:20 ` [virtio-dev] " Wei Wang
2017-11-29 14:20 ` [Qemu-devel] " Wei Wang
2017-11-29 14:20 ` Wei Wang
2017-11-29 14:20 ` Wei Wang
2017-11-29 14:20 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` [PATCH v17 3/6] mm/balloon_compaction.c: split balloon page allocation and enqueue Wei Wang
2017-11-03 8:13 ` [virtio-dev] " Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 10:59 ` Tetsuo Handa
2017-11-03 10:59 ` [Qemu-devel] " Tetsuo Handa
2017-11-03 10:59 ` Tetsuo Handa
2017-11-03 10:59 ` Tetsuo Handa
2017-11-03 8:13 ` [PATCH v17 4/6] virtio-balloon: VIRTIO_BALLOON_F_SG Wei Wang
2017-11-03 8:13 ` [virtio-dev] " Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 11:25 ` Tetsuo Handa
2017-11-03 11:25 ` [Qemu-devel] " Tetsuo Handa
2017-11-03 11:25 ` Tetsuo Handa
2017-11-04 11:09 ` [virtio-dev] " Wei Wang
2017-11-04 11:09 ` [Qemu-devel] " Wei Wang
2017-11-04 11:09 ` Wei Wang
2017-11-04 11:09 ` Wei Wang
2017-11-04 11:09 ` Wei Wang
2017-11-04 11:28 ` Tetsuo Handa
2017-11-04 11:28 ` Tetsuo Handa
2017-11-04 11:28 ` [Qemu-devel] " Tetsuo Handa
2017-11-04 11:28 ` Tetsuo Handa
2017-11-06 8:21 ` [virtio-dev] " Wei Wang
2017-11-06 8:21 ` [Qemu-devel] " Wei Wang
2017-11-06 8:21 ` Wei Wang
2017-11-06 8:21 ` Wei Wang
2017-11-06 8:21 ` Wei Wang
2017-11-03 11:25 ` Tetsuo Handa
2017-11-03 8:13 ` [PATCH v17 5/6] mm: support reporting free page blocks Wei Wang
2017-11-03 8:13 ` [virtio-dev] " Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` [virtio-dev] [PATCH v17 6/6] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ Wei Wang
2017-11-03 8:13 ` [Qemu-devel] " Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-03 8:13 ` Wei Wang
2017-11-13 10:34 ` Wei Wang
2017-11-13 10:34 ` [virtio-dev] " Wei Wang
2017-11-13 10:34 ` [Qemu-devel] " Wei Wang
2017-11-13 10:34 ` Wei Wang
2017-11-13 10:34 ` Wei Wang
2017-11-13 17:32 ` Michael S. Tsirkin
2017-11-13 17:32 ` [virtio-dev] " Michael S. Tsirkin
2017-11-13 17:32 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-13 17:32 ` Michael S. Tsirkin
2017-11-13 17:32 ` Michael S. Tsirkin
2017-11-14 12:02 ` [virtio-dev] " Wei Wang
2017-11-14 12:02 ` [Qemu-devel] " Wei Wang
2017-11-14 12:02 ` Wei Wang
2017-11-14 12:02 ` Wei Wang
2017-11-14 21:21 ` Michael S. Tsirkin
2017-11-14 21:21 ` [virtio-dev] " Michael S. Tsirkin
2017-11-14 21:21 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-14 21:21 ` Michael S. Tsirkin
2017-11-14 21:21 ` Michael S. Tsirkin
2017-11-15 3:47 ` Wei Wang
2017-11-15 3:47 ` [virtio-dev] " Wei Wang
2017-11-15 3:47 ` [Qemu-devel] " Wei Wang
2017-11-15 3:47 ` Wei Wang
2017-11-15 3:47 ` Wei Wang
2017-11-15 13:26 ` [virtio-dev] " Michael S. Tsirkin
2017-11-15 13:26 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-15 13:26 ` Michael S. Tsirkin
2017-11-15 13:26 ` Michael S. Tsirkin
2017-11-16 11:59 ` [virtio-dev] " Wei Wang
2017-11-16 11:59 ` [Qemu-devel] " Wei Wang
2017-11-16 11:59 ` Wei Wang
2017-11-16 11:59 ` Wei Wang
2017-11-16 11:59 ` Wei Wang
2017-11-15 13:26 ` Michael S. Tsirkin
2017-11-14 12:02 ` Wei Wang
2017-11-20 11:42 ` Wei Wang
2017-11-20 11:42 ` Wei Wang [this message]
2017-11-20 11:42 ` [Qemu-devel] " Wei Wang
2017-11-20 11:42 ` Wei Wang
2017-11-20 11:42 ` Wei Wang
2017-11-15 20:32 ` [virtio-dev] " Michael S. Tsirkin
2017-11-15 20:32 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-15 20:32 ` Michael S. Tsirkin
2017-11-15 20:32 ` Michael S. Tsirkin
2017-11-15 20:32 ` Michael S. Tsirkin
2017-11-16 13:27 ` [virtio-dev] " Wei Wang
2017-11-16 13:27 ` Wei Wang
2017-11-16 13:27 ` [Qemu-devel] " Wei Wang
2017-11-16 13:27 ` Wei Wang
2017-11-16 13:27 ` Wei Wang
2017-11-17 11:35 ` Wei Wang
2017-11-17 11:35 ` [Qemu-devel] " Wei Wang
2017-11-17 11:35 ` Wei Wang
2017-11-17 11:35 ` Wei Wang
2017-11-17 11:35 ` Wei Wang
2017-11-17 11:48 ` [virtio-dev] " Wei Wang
2017-11-17 11:48 ` [Qemu-devel] " Wei Wang
2017-11-17 11:48 ` Wei Wang
2017-11-17 11:48 ` Wei Wang
2017-11-17 11:48 ` Wei Wang
2017-11-17 12:44 ` Michael S. Tsirkin
2017-11-17 12:44 ` Michael S. Tsirkin
2017-11-17 12:44 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-17 12:44 ` Michael S. Tsirkin
2017-11-17 12:44 ` Michael S. Tsirkin
2017-11-17 12:44 ` Michael S. Tsirkin
2017-11-18 5:22 ` [virtio-dev] " Wang, Wei W
2017-11-18 5:22 ` [Qemu-devel] " Wang, Wei W
2017-11-18 5:22 ` Wang, Wei W
2017-11-18 5:22 ` Wang, Wei W
2017-11-18 5:22 ` Wang, Wei W
2017-11-19 15:11 ` Michael S. Tsirkin
2017-11-19 15:11 ` Michael S. Tsirkin
2017-11-19 15:11 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-19 15:11 ` Michael S. Tsirkin
2017-11-19 15:11 ` Michael S. Tsirkin
2017-11-19 15:11 ` Michael S. Tsirkin
2017-11-18 5:22 ` Wang, Wei W
2017-11-17 11:35 ` Wei Wang
2017-11-17 13:18 ` Michael S. Tsirkin
2017-11-17 13:18 ` [Qemu-devel] " Michael S. Tsirkin
2017-11-17 13:18 ` Michael S. Tsirkin
2017-11-17 13:18 ` Michael S. Tsirkin
2017-11-17 13:18 ` Michael S. Tsirkin
2017-11-03 8:13 ` Wei Wang
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=5A12BFB0.5030402@intel.com \
--to=wei.w.wang@intel.com \
--cc=aarcange@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=amit.shah@redhat.com \
--cc=cornelia.huck@de.ibm.com \
--cc=david@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=liliang.opensource@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mawilcox@microsoft.com \
--cc=mgorman@techsingularity.net \
--cc=mhocko@kernel.org \
--cc=mst@redhat.com \
--cc=nilal@redhat.com \
--cc=pbonzini@redhat.com \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
--cc=qemu-devel@nongnu.org \
--cc=quan.xu@aliyun.com \
--cc=riel@redhat.com \
--cc=virtio-dev@lists.oasis-open.org \
--cc=virtualization@lists.linux-foundation.org \
--cc=willy@infradead.org \
--cc=yang.zhang.wz@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.