[PATCH v6 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-08 Thread Rafael Aquini
. This patch introduces the helper functions as well as the necessary changes to teach compaction and migration bits how to cope with pages which are part of a guest memory balloon, in order to make them movable by memory compaction procedures. Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux

[PATCH v6 0/3] make balloon pages movable by compaction

2012-08-08 Thread Rafael Aquini
aware of ballooned pages and allow memory balloon pages become movable within a guest, thus avoiding the aforementioned fragmentation issue Rafael Aquini (3): mm: introduce compaction and migration for virtio ballooned pages virtio_balloon: introduce migration primitives to balloon pages mm: add

[PATCH v6 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-08-08 Thread Rafael Aquini
against concurrent list handling operations; Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 138 +--- include/linux/virtio_balloon.h | 4 ++ 2 files changed, 134 insertions(+), 8 deletions(-) diff

Re: [PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
On Mon, Aug 06, 2012 at 03:06:49PM -0400, Rik van Riel wrote: > > Just a plain rename would work. > Ok, I will rename it. > >+static inline bool is_balloon_page(struct page *page) > >+{ > >+return (page->mapping && page->mapping == balloon_mapping); > >+} > > As an aside, since you are

Re: [PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
On Mon, Aug 06, 2012 at 02:38:23PM -0400, Rik van Riel wrote: > On 08/06/2012 09:56 AM, Rafael Aquini wrote: > > >@@ -846,6 +861,21 @@ static int unmap_and_move(new_page_t get_new_page, > >unsigned long private, > > goto out; > > > >

[PATCH v5 3/3] mm: add vm event counters for balloon pages compaction

2012-08-06 Thread Rafael Aquini
This patch is only for testing report purposes and shall be dropped in case of the rest of this patchset getting accepted for merging. Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 2 ++ mm/compaction.c | 1 + mm

[PATCH v5 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-08-06 Thread Rafael Aquini
against concurrent list handling operations; Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 138 +--- include/linux/virtio_balloon.h | 4 ++ 2 files changed, 134 insertions(+), 8 deletions(-) diff --git a/drivers

[PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
. This patch introduces the helper functions as well as the necessary changes to teach compaction and migration bits how to cope with pages which are part of a guest memory balloon, in order to make them movable by memory compaction procedures. Signed-off-by: Rafael Aquini --- include/linux/mm.h | 26

[PATCH v5 0/3] make balloon pages movable by compaction

2012-08-06 Thread Rafael Aquini
ose subsystems aware of ballooned pages and allow memory balloon pages become movable within a guest, thus avoiding the aforementioned fragmentation issue Rafael Aquini (3): mm: introduce compaction and migration for virtio ballooned pages virtio_balloon: introduce migration primitives to ball

[PATCH v5 0/3] make balloon pages movable by compaction

2012-08-06 Thread Rafael Aquini
aware of ballooned pages and allow memory balloon pages become movable within a guest, thus avoiding the aforementioned fragmentation issue Rafael Aquini (3): mm: introduce compaction and migration for virtio ballooned pages virtio_balloon: introduce migration primitives to balloon pages mm: add

[PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
. This patch introduces the helper functions as well as the necessary changes to teach compaction and migration bits how to cope with pages which are part of a guest memory balloon, in order to make them movable by memory compaction procedures. Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux

[PATCH v5 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-08-06 Thread Rafael Aquini
against concurrent list handling operations; Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 138 +--- include/linux/virtio_balloon.h | 4 ++ 2 files changed, 134 insertions(+), 8 deletions(-) diff

[PATCH v5 3/3] mm: add vm event counters for balloon pages compaction

2012-08-06 Thread Rafael Aquini
This patch is only for testing report purposes and shall be dropped in case of the rest of this patchset getting accepted for merging. Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 2 ++ mm/compaction.c

Re: [PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
On Mon, Aug 06, 2012 at 02:38:23PM -0400, Rik van Riel wrote: On 08/06/2012 09:56 AM, Rafael Aquini wrote: @@ -846,6 +861,21 @@ static int unmap_and_move(new_page_t get_new_page, unsigned long private, goto out; rc = __unmap_and_move(page, newpage, force

Re: [PATCH v5 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-06 Thread Rafael Aquini
On Mon, Aug 06, 2012 at 03:06:49PM -0400, Rik van Riel wrote: Just a plain rename would work. Ok, I will rename it. +static inline bool is_balloon_page(struct page *page) +{ +return (page-mapping page-mapping == balloon_mapping); +} As an aside, since you are only comparing

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-03 Thread Rafael Aquini
On Mon, Jul 23, 2012 at 11:33:32AM +0900, Minchan Kim wrote: > Look at memory-hotplug, offline_page calls has_unmovable_pages, scan_lru_pages > and do_migrate_range which calls isolate_lru_page. They consider only LRU > pages > to migratable ones. > As promised, I looked into those bits. Yes,

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-03 Thread Rafael Aquini
On Wed, Aug 01, 2012 at 04:53:47PM -0400, Rik van Riel wrote: > On 07/23/2012 02:19 PM, Rafael Aquini wrote: > > >In a glance, I believe this whole dance you're suggesting might just be too > >much > >of an overcomplication, and the best approach would be simply teac

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-03 Thread Rafael Aquini
On Wed, Aug 01, 2012 at 04:53:47PM -0400, Rik van Riel wrote: On 07/23/2012 02:19 PM, Rafael Aquini wrote: In a glance, I believe this whole dance you're suggesting might just be too much of an overcomplication, and the best approach would be simply teaching the hotplug bits about

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-08-03 Thread Rafael Aquini
On Mon, Jul 23, 2012 at 11:33:32AM +0900, Minchan Kim wrote: Look at memory-hotplug, offline_page calls has_unmovable_pages, scan_lru_pages and do_migrate_range which calls isolate_lru_page. They consider only LRU pages to migratable ones. As promised, I looked into those bits. Yes, they

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-23 Thread Rafael Aquini
On Mon, Jul 23, 2012 at 11:33:32AM +0900, Minchan Kim wrote: > Hi Rafael, > > On Fri, Jul 20, 2012 at 04:48:59PM -0300, Rafael Aquini wrote: > > Howdy Minchan, > > > > Once again, thanks for raising such valuable feedback over here. > > > > On Wed, Jul 18

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-23 Thread Rafael Aquini
On Mon, Jul 23, 2012 at 11:33:32AM +0900, Minchan Kim wrote: Hi Rafael, On Fri, Jul 20, 2012 at 04:48:59PM -0300, Rafael Aquini wrote: Howdy Minchan, Once again, thanks for raising such valuable feedback over here. On Wed, Jul 18, 2012 at 02:48:24PM +0900, Minchan Kim wrote

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-20 Thread Rafael Aquini
Howdy Minchan, Once again, thanks for raising such valuable feedback over here. On Wed, Jul 18, 2012 at 02:48:24PM +0900, Minchan Kim wrote: > > +/* __isolate_lru_page() counterpart for a ballooned page */ > > +static bool isolate_balloon_page(struct page *page) > > +{ > > + if

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-20 Thread Rafael Aquini
Howdy Minchan, Once again, thanks for raising such valuable feedback over here. On Wed, Jul 18, 2012 at 02:48:24PM +0900, Minchan Kim wrote: +/* __isolate_lru_page() counterpart for a ballooned page */ +static bool isolate_balloon_page(struct page *page) +{ + if

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-19 Thread Rafael Aquini
On Wed, Jul 18, 2012 at 06:29:44PM -0700, Andrew Morton wrote: > On Wed, 18 Jul 2012 22:00:48 -0300 Rafael Aquini wrote: > > > > So the function needs a better name - one which communicates that it is > > > a balloon page *for the purposes of processing by the compact

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-19 Thread Rafael Aquini
On Wed, Jul 18, 2012 at 06:29:44PM -0700, Andrew Morton wrote: On Wed, 18 Jul 2012 22:00:48 -0300 Rafael Aquini aqu...@redhat.com wrote: So the function needs a better name - one which communicates that it is a balloon page *for the purposes of processing by the compaction code

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-18 Thread Rafael Aquini
On Wed, Jul 18, 2012 at 04:12:39PM -0700, Andrew Morton wrote: > On Wed, 18 Jul 2012 20:07:07 -0300 > Rafael Aquini wrote: > > > > > > > > +} > > > > +#else > > > > +static inline bool is_balloon_page(struct page *page)

Re: [PATCH v4 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-07-18 Thread Rafael Aquini
Howdy Andrew, Thanks for taking the time to go through this work and provide me with such good feedback. On Wed, Jul 18, 2012 at 03:49:08PM -0700, Andrew Morton wrote: > On Tue, 17 Jul 2012 13:50:42 -0300 > Rafael Aquini wrote: > > > Besides making balloon pages movable at

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-18 Thread Rafael Aquini
Howdy Andrew, Thanks for taking the time to go through this work and provide me with such good feedback. On Wed, Jul 18, 2012 at 03:46:05PM -0700, Andrew Morton wrote: > On Tue, 17 Jul 2012 13:50:41 -0300 > Rafael Aquini wrote: > > > This patch introduces the helper fu

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-18 Thread Rafael Aquini
Howdy Andrew, Thanks for taking the time to go through this work and provide me with such good feedback. On Wed, Jul 18, 2012 at 03:46:05PM -0700, Andrew Morton wrote: On Tue, 17 Jul 2012 13:50:41 -0300 Rafael Aquini aqu...@redhat.com wrote: This patch introduces the helper functions

Re: [PATCH v4 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-07-18 Thread Rafael Aquini
Howdy Andrew, Thanks for taking the time to go through this work and provide me with such good feedback. On Wed, Jul 18, 2012 at 03:49:08PM -0700, Andrew Morton wrote: On Tue, 17 Jul 2012 13:50:42 -0300 Rafael Aquini aqu...@redhat.com wrote: Besides making balloon pages movable

Re: [PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-18 Thread Rafael Aquini
On Wed, Jul 18, 2012 at 04:12:39PM -0700, Andrew Morton wrote: On Wed, 18 Jul 2012 20:07:07 -0300 Rafael Aquini aqu...@redhat.com wrote: +} +#else +static inline bool is_balloon_page(struct page *page) { return false; } +static inline bool isolate_balloon_page

[PATCH v4 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-07-17 Thread Rafael Aquini
pages list against concurrent list handling operations; Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 145 --- include/linux/virtio_balloon.h |4 ++ 2 files changed, 141 insertions(+), 8 deletions(-) diff --git

[PATCH v4 3/3] mm: add vm event counters for balloon pages compaction

2012-07-17 Thread Rafael Aquini
This patch is only for testing report purposes and shall be dropped in case of the rest of this patchset getting accepted for merging. Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c |1 + include/linux/vm_event_item.h |2 ++ mm/compaction.c |1

[PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-17 Thread Rafael Aquini
This patch introduces the helper functions as well as the necessary changes to teach compaction and migration bits how to cope with pages which are part of a guest memory balloon, in order to make them movable by memory compaction procedures. Signed-off-by: Rafael Aquini --- include/linux/mm.h

[PATCH v4 0/3] make balloon pages movable by compaction

2012-07-17 Thread Rafael Aquini
ose subsystems aware of ballooned pages and allow memory balloon pages become movable within a guest, thus avoiding the aforementioned fragmentation issue Rafael Aquini (3): mm: introduce compaction and migration for virtio ballooned pages virtio_balloon: introduce migration primitives to ball

[PATCH v4 0/3] make balloon pages movable by compaction

2012-07-17 Thread Rafael Aquini
aware of ballooned pages and allow memory balloon pages become movable within a guest, thus avoiding the aforementioned fragmentation issue Rafael Aquini (3): mm: introduce compaction and migration for virtio ballooned pages virtio_balloon: introduce migration primitives to balloon pages mm: add

[PATCH v4 1/3] mm: introduce compaction and migration for virtio ballooned pages

2012-07-17 Thread Rafael Aquini
This patch introduces the helper functions as well as the necessary changes to teach compaction and migration bits how to cope with pages which are part of a guest memory balloon, in order to make them movable by memory compaction procedures. Signed-off-by: Rafael Aquini aqu...@redhat.com

[PATCH v4 3/3] mm: add vm event counters for balloon pages compaction

2012-07-17 Thread Rafael Aquini
This patch is only for testing report purposes and shall be dropped in case of the rest of this patchset getting accepted for merging. Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c |1 + include/linux/vm_event_item.h |2 ++ mm/compaction.c

[PATCH v4 2/3] virtio_balloon: introduce migration primitives to balloon pages

2012-07-17 Thread Rafael Aquini
pages list against concurrent list handling operations; Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 145 --- include/linux/virtio_balloon.h |4 ++ 2 files changed, 141 insertions(+), 8

<    2   3   4   5   6   7