From: "Michael S. Tsirkin" <mst@redhat.com>
To: Wei Wang <wei.w.wang@intel.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, 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
Subject: [virtio-dev] Re: [PATCH v14 4/5] mm: support reporting free page blocks
Date: Fri, 18 Aug 2017 20:23:05 +0300 [thread overview]
Message-ID: <20170818201946-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1502940416-42944-5-git-send-email-wei.w.wang@intel.com>
On Thu, Aug 17, 2017 at 11:26:55AM +0800, Wei Wang wrote:
> This patch adds support to walk through the free page blocks in the
> system and report them via a callback function. Some page blocks may
> leave the free list after zone->lock is released, so it is the caller's
> responsibility to either detect or prevent the use of such pages.
>
> Signed-off-by: Wei Wang <wei.w.wang@intel.com>
> Signed-off-by: Liang Li <liang.z.li@intel.com>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> ---
> include/linux/mm.h | 6 ++++++
> mm/page_alloc.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 46b9ac5..cd29b9f 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -1835,6 +1835,12 @@ extern void free_area_init_node(int nid, unsigned long * zones_size,
> unsigned long zone_start_pfn, unsigned long *zholes_size);
> extern void free_initmem(void);
>
> +extern void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
> + unsigned long pfn,
> + unsigned long nr_pages));
> +
> /*
> * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK)
> * into the buddy system. The freed pages will be poisoned with pattern
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 6d00f74..a721a35 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4762,6 +4762,50 @@ void show_free_areas(unsigned int filter, nodemask_t *nodemask)
> show_swap_cache_info();
> }
>
> +/**
> + * walk_free_mem_block - Walk through the free page blocks in the system
> + * @opaque1: the context passed from the caller
> + * @min_order: the minimum order of free lists to check
> + * @visit: the callback function given by the caller
> + *
> + * The function is used to walk through the free page blocks in the system,
> + * and each free page block is reported to the caller via the @visit callback.
> + * Please note:
> + * 1) The function is used to report hints of free pages, so the caller should
> + * not use those reported pages after the callback returns.
> + * 2) The callback is invoked with the zone->lock being held, so it should not
> + * block and should finish as soon as possible.
> + */
> +void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
You can just avoid opaque2 completely I think, then opaque1 can
be renamed opaque.
> + unsigned long pfn,
> + unsigned long nr_pages))
> +{
> + struct zone *zone;
> + struct page *page;
> + struct list_head *list;
> + unsigned int order;
> + enum migratetype mt;
> + unsigned long pfn, flags;
> +
> + for_each_populated_zone(zone) {
> + for (order = MAX_ORDER - 1;
> + order < MAX_ORDER && order >= min_order; order--) {
> + for (mt = 0; mt < MIGRATE_TYPES; mt++) {
> + spin_lock_irqsave(&zone->lock, flags);
> + list = &zone->free_area[order].free_list[mt];
> + list_for_each_entry(page, list, lru) {
> + pfn = page_to_pfn(page);
> + visit(opaque1, pfn, 1 << order);
My only concern here is inability of callback to
1. break out of list
2. remove page from the list
So I would make the callback bool, and I would use
list_for_each_entry_safe.
> + }
> + spin_unlock_irqrestore(&zone->lock, flags);
> + }
> + }
> + }
> +}
> +EXPORT_SYMBOL_GPL(walk_free_mem_block);
> +
> static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
> {
> zoneref->zone = zone;
> --
> 2.7.4
---------------------------------------------------------------------
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: "Michael S. Tsirkin" <mst@redhat.com>
To: Wei Wang <wei.w.wang@intel.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, 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
Subject: Re: [PATCH v14 4/5] mm: support reporting free page blocks
Date: Fri, 18 Aug 2017 20:23:05 +0300 [thread overview]
Message-ID: <20170818201946-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1502940416-42944-5-git-send-email-wei.w.wang@intel.com>
On Thu, Aug 17, 2017 at 11:26:55AM +0800, Wei Wang wrote:
> This patch adds support to walk through the free page blocks in the
> system and report them via a callback function. Some page blocks may
> leave the free list after zone->lock is released, so it is the caller's
> responsibility to either detect or prevent the use of such pages.
>
> Signed-off-by: Wei Wang <wei.w.wang@intel.com>
> Signed-off-by: Liang Li <liang.z.li@intel.com>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> ---
> include/linux/mm.h | 6 ++++++
> mm/page_alloc.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 46b9ac5..cd29b9f 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -1835,6 +1835,12 @@ extern void free_area_init_node(int nid, unsigned long * zones_size,
> unsigned long zone_start_pfn, unsigned long *zholes_size);
> extern void free_initmem(void);
>
> +extern void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
> + unsigned long pfn,
> + unsigned long nr_pages));
> +
> /*
> * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK)
> * into the buddy system. The freed pages will be poisoned with pattern
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 6d00f74..a721a35 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4762,6 +4762,50 @@ void show_free_areas(unsigned int filter, nodemask_t *nodemask)
> show_swap_cache_info();
> }
>
> +/**
> + * walk_free_mem_block - Walk through the free page blocks in the system
> + * @opaque1: the context passed from the caller
> + * @min_order: the minimum order of free lists to check
> + * @visit: the callback function given by the caller
> + *
> + * The function is used to walk through the free page blocks in the system,
> + * and each free page block is reported to the caller via the @visit callback.
> + * Please note:
> + * 1) The function is used to report hints of free pages, so the caller should
> + * not use those reported pages after the callback returns.
> + * 2) The callback is invoked with the zone->lock being held, so it should not
> + * block and should finish as soon as possible.
> + */
> +void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
You can just avoid opaque2 completely I think, then opaque1 can
be renamed opaque.
> + unsigned long pfn,
> + unsigned long nr_pages))
> +{
> + struct zone *zone;
> + struct page *page;
> + struct list_head *list;
> + unsigned int order;
> + enum migratetype mt;
> + unsigned long pfn, flags;
> +
> + for_each_populated_zone(zone) {
> + for (order = MAX_ORDER - 1;
> + order < MAX_ORDER && order >= min_order; order--) {
> + for (mt = 0; mt < MIGRATE_TYPES; mt++) {
> + spin_lock_irqsave(&zone->lock, flags);
> + list = &zone->free_area[order].free_list[mt];
> + list_for_each_entry(page, list, lru) {
> + pfn = page_to_pfn(page);
> + visit(opaque1, pfn, 1 << order);
My only concern here is inability of callback to
1. break out of list
2. remove page from the list
So I would make the callback bool, and I would use
list_for_each_entry_safe.
> + }
> + spin_unlock_irqrestore(&zone->lock, flags);
> + }
> + }
> + }
> +}
> +EXPORT_SYMBOL_GPL(walk_free_mem_block);
> +
> static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
> {
> zoneref->zone = zone;
> --
> 2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Wei Wang <wei.w.wang@intel.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, 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
Subject: Re: [PATCH v14 4/5] mm: support reporting free page blocks
Date: Fri, 18 Aug 2017 20:23:05 +0300 [thread overview]
Message-ID: <20170818201946-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1502940416-42944-5-git-send-email-wei.w.wang@intel.com>
On Thu, Aug 17, 2017 at 11:26:55AM +0800, Wei Wang wrote:
> This patch adds support to walk through the free page blocks in the
> system and report them via a callback function. Some page blocks may
> leave the free list after zone->lock is released, so it is the caller's
> responsibility to either detect or prevent the use of such pages.
>
> Signed-off-by: Wei Wang <wei.w.wang@intel.com>
> Signed-off-by: Liang Li <liang.z.li@intel.com>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> ---
> include/linux/mm.h | 6 ++++++
> mm/page_alloc.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 46b9ac5..cd29b9f 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -1835,6 +1835,12 @@ extern void free_area_init_node(int nid, unsigned long * zones_size,
> unsigned long zone_start_pfn, unsigned long *zholes_size);
> extern void free_initmem(void);
>
> +extern void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
> + unsigned long pfn,
> + unsigned long nr_pages));
> +
> /*
> * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK)
> * into the buddy system. The freed pages will be poisoned with pattern
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 6d00f74..a721a35 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4762,6 +4762,50 @@ void show_free_areas(unsigned int filter, nodemask_t *nodemask)
> show_swap_cache_info();
> }
>
> +/**
> + * walk_free_mem_block - Walk through the free page blocks in the system
> + * @opaque1: the context passed from the caller
> + * @min_order: the minimum order of free lists to check
> + * @visit: the callback function given by the caller
> + *
> + * The function is used to walk through the free page blocks in the system,
> + * and each free page block is reported to the caller via the @visit callback.
> + * Please note:
> + * 1) The function is used to report hints of free pages, so the caller should
> + * not use those reported pages after the callback returns.
> + * 2) The callback is invoked with the zone->lock being held, so it should not
> + * block and should finish as soon as possible.
> + */
> +void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
You can just avoid opaque2 completely I think, then opaque1 can
be renamed opaque.
> + unsigned long pfn,
> + unsigned long nr_pages))
> +{
> + struct zone *zone;
> + struct page *page;
> + struct list_head *list;
> + unsigned int order;
> + enum migratetype mt;
> + unsigned long pfn, flags;
> +
> + for_each_populated_zone(zone) {
> + for (order = MAX_ORDER - 1;
> + order < MAX_ORDER && order >= min_order; order--) {
> + for (mt = 0; mt < MIGRATE_TYPES; mt++) {
> + spin_lock_irqsave(&zone->lock, flags);
> + list = &zone->free_area[order].free_list[mt];
> + list_for_each_entry(page, list, lru) {
> + pfn = page_to_pfn(page);
> + visit(opaque1, pfn, 1 << order);
My only concern here is inability of callback to
1. break out of list
2. remove page from the list
So I would make the callback bool, and I would use
list_for_each_entry_safe.
> + }
> + spin_unlock_irqrestore(&zone->lock, flags);
> + }
> + }
> + }
> +}
> +EXPORT_SYMBOL_GPL(walk_free_mem_block);
> +
> static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
> {
> zoneref->zone = zone;
> --
> 2.7.4
--
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: "Michael S. Tsirkin" <mst@redhat.com>
To: Wei Wang <wei.w.wang@intel.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, 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
Subject: Re: [Qemu-devel] [PATCH v14 4/5] mm: support reporting free page blocks
Date: Fri, 18 Aug 2017 20:23:05 +0300 [thread overview]
Message-ID: <20170818201946-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <1502940416-42944-5-git-send-email-wei.w.wang@intel.com>
On Thu, Aug 17, 2017 at 11:26:55AM +0800, Wei Wang wrote:
> This patch adds support to walk through the free page blocks in the
> system and report them via a callback function. Some page blocks may
> leave the free list after zone->lock is released, so it is the caller's
> responsibility to either detect or prevent the use of such pages.
>
> Signed-off-by: Wei Wang <wei.w.wang@intel.com>
> Signed-off-by: Liang Li <liang.z.li@intel.com>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: Michael S. Tsirkin <mst@redhat.com>
> ---
> include/linux/mm.h | 6 ++++++
> mm/page_alloc.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 50 insertions(+)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index 46b9ac5..cd29b9f 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -1835,6 +1835,12 @@ extern void free_area_init_node(int nid, unsigned long * zones_size,
> unsigned long zone_start_pfn, unsigned long *zholes_size);
> extern void free_initmem(void);
>
> +extern void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
> + unsigned long pfn,
> + unsigned long nr_pages));
> +
> /*
> * Free reserved pages within range [PAGE_ALIGN(start), end & PAGE_MASK)
> * into the buddy system. The freed pages will be poisoned with pattern
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 6d00f74..a721a35 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -4762,6 +4762,50 @@ void show_free_areas(unsigned int filter, nodemask_t *nodemask)
> show_swap_cache_info();
> }
>
> +/**
> + * walk_free_mem_block - Walk through the free page blocks in the system
> + * @opaque1: the context passed from the caller
> + * @min_order: the minimum order of free lists to check
> + * @visit: the callback function given by the caller
> + *
> + * The function is used to walk through the free page blocks in the system,
> + * and each free page block is reported to the caller via the @visit callback.
> + * Please note:
> + * 1) The function is used to report hints of free pages, so the caller should
> + * not use those reported pages after the callback returns.
> + * 2) The callback is invoked with the zone->lock being held, so it should not
> + * block and should finish as soon as possible.
> + */
> +void walk_free_mem_block(void *opaque1,
> + unsigned int min_order,
> + void (*visit)(void *opaque2,
You can just avoid opaque2 completely I think, then opaque1 can
be renamed opaque.
> + unsigned long pfn,
> + unsigned long nr_pages))
> +{
> + struct zone *zone;
> + struct page *page;
> + struct list_head *list;
> + unsigned int order;
> + enum migratetype mt;
> + unsigned long pfn, flags;
> +
> + for_each_populated_zone(zone) {
> + for (order = MAX_ORDER - 1;
> + order < MAX_ORDER && order >= min_order; order--) {
> + for (mt = 0; mt < MIGRATE_TYPES; mt++) {
> + spin_lock_irqsave(&zone->lock, flags);
> + list = &zone->free_area[order].free_list[mt];
> + list_for_each_entry(page, list, lru) {
> + pfn = page_to_pfn(page);
> + visit(opaque1, pfn, 1 << order);
My only concern here is inability of callback to
1. break out of list
2. remove page from the list
So I would make the callback bool, and I would use
list_for_each_entry_safe.
> + }
> + spin_unlock_irqrestore(&zone->lock, flags);
> + }
> + }
> + }
> +}
> +EXPORT_SYMBOL_GPL(walk_free_mem_block);
> +
> static void zoneref_set_zone(struct zone *zone, struct zoneref *zoneref)
> {
> zoneref->zone = zone;
> --
> 2.7.4
next prev parent reply other threads:[~2017-08-18 17:23 UTC|newest]
Thread overview: 115+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-17 3:26 [virtio-dev] [PATCH v14 0/5] Virtio-balloon Enhancement Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` [PATCH v14 1/5] lib/xbitmap: Introduce xbitmap Wei Wang
2017-08-17 3:26 ` [virtio-dev] " Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-19 20:30 ` kbuild test robot
2017-08-19 20:30 ` kbuild test robot
2017-08-19 20:30 ` [Qemu-devel] " kbuild test robot
2017-08-19 20:30 ` kbuild test robot
2017-08-17 3:26 ` [virtio-dev] [PATCH v14 2/5] lib/xbitmap: add xb_find_next_bit() and xb_zero() Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` [virtio-dev] [PATCH v14 3/5] virtio-balloon: VIRTIO_BALLOON_F_SG Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-18 2:22 ` [virtio-dev] " Michael S. Tsirkin
2017-08-18 2:22 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 2:22 ` Michael S. Tsirkin
2017-08-18 2:22 ` Michael S. Tsirkin
2017-08-18 7:39 ` [virtio-dev] " Wei Wang
2017-08-18 7:39 ` [Qemu-devel] " Wei Wang
2017-08-18 7:39 ` Wei Wang
2017-08-18 7:39 ` Wei Wang
2017-08-21 20:22 ` Michael S. Tsirkin
2017-08-21 20:22 ` [virtio-dev] " Michael S. Tsirkin
2017-08-21 20:22 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-21 20:22 ` Michael S. Tsirkin
2017-08-21 20:22 ` Michael S. Tsirkin
2017-08-18 7:39 ` Wei Wang
2017-08-18 2:22 ` Michael S. Tsirkin
2017-08-19 21:37 ` kbuild test robot
2017-08-19 21:37 ` [Qemu-devel] " kbuild test robot
2017-08-19 21:37 ` kbuild test robot
2017-08-19 21:37 ` kbuild test robot
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` [PATCH v14 4/5] mm: support reporting free page blocks Wei Wang
2017-08-17 3:26 ` [virtio-dev] " Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-18 13:46 ` Michal Hocko
2017-08-18 13:46 ` [Qemu-devel] " Michal Hocko
2017-08-18 13:46 ` Michal Hocko
2017-08-21 6:12 ` Wei Wang
2017-08-21 6:12 ` [virtio-dev] " Wei Wang
2017-08-21 6:12 ` [Qemu-devel] " Wei Wang
2017-08-21 6:12 ` Wei Wang
2017-08-21 6:12 ` Wei Wang
2017-08-21 6:14 ` Michal Hocko
2017-08-21 6:14 ` [Qemu-devel] " Michal Hocko
2017-08-21 6:14 ` Michal Hocko
2017-08-21 6:14 ` Michal Hocko
2017-08-18 13:46 ` Michal Hocko
2017-08-18 17:23 ` Michael S. Tsirkin [this message]
2017-08-18 17:23 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 17:23 ` Michael S. Tsirkin
2017-08-18 17:23 ` Michael S. Tsirkin
2017-08-21 6:18 ` Michal Hocko
2017-08-21 6:18 ` Michal Hocko
2017-08-21 6:18 ` [Qemu-devel] " Michal Hocko
2017-08-21 6:18 ` Michal Hocko
2017-08-18 17:23 ` Michael S. Tsirkin
2017-08-17 3:26 ` [virtio-dev] [PATCH v14 5/5] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_VQ Wei Wang
2017-08-17 3:26 ` [Qemu-devel] " Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-17 3:26 ` Wei Wang
2017-08-18 2:13 ` Michael S. Tsirkin
2017-08-18 2:13 ` [virtio-dev] " Michael S. Tsirkin
2017-08-18 2:13 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 2:13 ` Michael S. Tsirkin
2017-08-18 2:13 ` Michael S. Tsirkin
2017-08-18 8:41 ` [virtio-dev] " Wei Wang
2017-08-18 8:41 ` [Qemu-devel] " Wei Wang
2017-08-18 8:41 ` Wei Wang
2017-08-18 8:41 ` Wei Wang
2017-08-18 18:26 ` [virtio-dev] " Michael S. Tsirkin
2017-08-18 18:26 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 18:26 ` Michael S. Tsirkin
2017-08-18 18:26 ` Michael S. Tsirkin
2017-08-21 5:21 ` [virtio-dev] " Wei Wang
2017-08-21 5:21 ` [Qemu-devel] " Wei Wang
2017-08-21 5:21 ` Wei Wang
2017-08-21 5:21 ` Wei Wang
2017-08-21 5:21 ` Wei Wang
2017-08-18 18:26 ` Michael S. Tsirkin
2017-08-18 8:41 ` Wei Wang
2017-08-18 2:28 ` Michael S. Tsirkin
2017-08-18 2:28 ` [virtio-dev] " Michael S. Tsirkin
2017-08-18 2:28 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 2:28 ` Michael S. Tsirkin
2017-08-18 2:28 ` Michael S. Tsirkin
2017-08-18 8:36 ` Wei Wang
2017-08-18 8:36 ` [virtio-dev] " Wei Wang
2017-08-18 8:36 ` [Qemu-devel] " Wei Wang
2017-08-18 8:36 ` Wei Wang
2017-08-18 8:36 ` Wei Wang
2017-08-18 18:10 ` [virtio-dev] " Michael S. Tsirkin
2017-08-18 18:10 ` [Qemu-devel] " Michael S. Tsirkin
2017-08-18 18:10 ` Michael S. Tsirkin
2017-08-18 18:10 ` Michael S. Tsirkin
2017-08-21 5:28 ` [virtio-dev] " Wei Wang
2017-08-21 5:28 ` Wei Wang
2017-08-21 5:28 ` [Qemu-devel] " Wei Wang
2017-08-21 5:28 ` Wei Wang
2017-08-21 5:28 ` Wei Wang
2017-08-21 5:28 ` Wei Wang
2017-08-18 18:10 ` Michael S. Tsirkin
2017-08-17 3:26 ` 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=20170818201946-mutt-send-email-mst@kernel.org \
--to=mst@redhat.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=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quan.xu@aliyun.com \
--cc=virtio-dev@lists.oasis-open.org \
--cc=virtualization@lists.linux-foundation.org \
--cc=wei.w.wang@intel.com \
--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.