[PATCH v12 2/7] mm: redefine address_space.assoc_mapping

2012-11-11 Thread Rafael Aquini
data structures through ->private_data. Also, all users of old ->assoc_mapping element are converted to reflect its new name and type change (->private_data). Signed-off-by: Rafael Aquini --- fs/buffer.c| 12 ++-- fs/gfs2/glock.c| 2 +- fs/inode.c | 2 +-

[PATCH v12 7/7] mm: add vm event counters for balloon pages compaction

2012-11-11 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini --- include/linux/balloon_compaction.h | 7 +++ include/linux/vm_event_item.h | 7 ++- mm/balloon_compaction.c| 2 ++ mm/migrate.c

[PATCH v12 4/7] mm: introduce compaction and migration for ballooned pages

2012-11-11 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 Acked-by: Mel Gorman --- mm

[PATCH v12 0/7] make balloon pages movable by compaction

2012-11-11 Thread Rafael Aquini
17 Compaction stalls 747 499 Compaction success 244 145 Compaction failures 503 354 Compaction pages moved 370888 474837 Compaction move failure 77378 65259 ===END stress-highalloc Rafael Aquini (7)

[PATCH v12 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-11 Thread Rafael Aquini
providing protection against concurrent access introduced by parallel memory migration threads. - balloon_lock (mutex) : synchronizes the access demand to elements of struct virtio_balloon and its queue operations; Signed-off-by: Rafael Aquini Acked-by: Michael S. Tsirkin

[PATCH v12 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-11 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini Acked-by: Mel Gorman --- include/linux/balloon_compaction.h | 256

[PATCH v12 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-11 Thread Rafael Aquini
This patch introduces MIGRATEPAGE_SUCCESS as the default return code for address_space_operations.migratepage() method and documents the expected return code for the same method in failure cases. Signed-off-by: Rafael Aquini --- fs/hugetlbfs/inode.c| 4 ++-- include/linux/migrate.h | 7

[PATCH v12 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-11 Thread Rafael Aquini
This patch introduces MIGRATEPAGE_SUCCESS as the default return code for address_space_operations.migratepage() method and documents the expected return code for the same method in failure cases. Signed-off-by: Rafael Aquini aqu...@redhat.com --- fs/hugetlbfs/inode.c| 4 ++-- include/linux

[PATCH v12 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-11 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini aqu...@redhat.com Acked-by: Mel Gorman m...@csn.ul.ie --- include

[PATCH v12 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-11 Thread Rafael Aquini
providing protection against concurrent access introduced by parallel memory migration threads. - balloon_lock (mutex) : synchronizes the access demand to elements of struct virtio_balloon and its queue operations; Signed-off-by: Rafael Aquini aqu...@redhat.com Acked-by: Michael

[PATCH v12 0/7] make balloon pages movable by compaction

2012-11-11 Thread Rafael Aquini
747 499 Compaction success 244 145 Compaction failures 503 354 Compaction pages moved 370888 474837 Compaction move failure 77378 65259 ===END stress-highalloc Rafael Aquini (7): mm: adjust

[PATCH v12 4/7] mm: introduce compaction and migration for ballooned pages

2012-11-11 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 Acked-by: Mel

[PATCH v12 6/7] mm: introduce putback_movable_pages()

2012-11-11 Thread Rafael Aquini
putback_movable_pages() to properly cope with cases where the isolated pageset contains ballooned pages and LRU pages, thus fixing the mentioned inelegant hack around putback_lru_pages(). Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/migrate.h | 2 ++ mm/compaction.c

[PATCH v12 2/7] mm: redefine address_space.assoc_mapping

2012-11-11 Thread Rafael Aquini
data structures through -private_data. Also, all users of old -assoc_mapping element are converted to reflect its new name and type change (-private_data). Signed-off-by: Rafael Aquini aqu...@redhat.com --- fs/buffer.c| 12 ++-- fs/gfs2/glock.c| 2 +- fs/inode.c | 2

[PATCH v12 7/7] mm: add vm event counters for balloon pages compaction

2012-11-11 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/balloon_compaction.h | 7 +++ include/linux/vm_event_item.h | 7 ++- mm/balloon_compaction.c| 2

Re: [PATCH v12 0/7] make balloon pages movable by compaction

2012-11-11 Thread Rafael Aquini
On Sun, Nov 11, 2012 at 05:01:13PM -0200, Rafael Aquini wrote: Change log: v12: * Address last suggestions on sorting the barriers usage out (Mel Gorman); * Fix reported build breakages for CONFIG_BALLOON_COMPACTION=n (Andrew Morton); * Enhance commentary on the locking scheme

Re: [PATCH v11 7/7] mm: add vm event counters for balloon pages compaction

2012-11-11 Thread Rafael Aquini
On Sat, Nov 10, 2012 at 05:55:38PM +0200, Michael S. Tsirkin wrote: mutex_unlock(vb-balloon_lock); + balloon_event_count(COMPACTBALLOONMIGRATED); return MIGRATEPAGE_BALLOON_SUCCESS; } Looks like any ballon would need to do this. Can this chunk go into caller instead?

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 04:23:27PM +, Mel Gorman wrote: > On Fri, Nov 09, 2012 at 12:53:22PM -0200, Rafael Aquini wrote: > > > > > > If you get the barrier issue sorted out then feel free to add > > > > > > Acked-by: Mel Gorman > > > &

Re: [PATCH v11 7/7] mm: add vm event counters for balloon pages compaction

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 12:20:33PM +, Mel Gorman wrote: > On Wed, Nov 07, 2012 at 01:05:54AM -0200, Rafael Aquini wrote: > > This patch introduces a new set of vm event counters to keep track of > > ballooned pages compaction activity. > > > > Signed-off-by: Raf

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 12:11:33PM +, Mel Gorman wrote: > > +/* > > + * balloon_page_insert - insert a page into the balloon's page list and > > make > > + * the page->mapping assignment accordingly. > > + * @page: page to be assigned as a 'balloon page' > > + * @mapping

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 12:11:33PM +, Mel Gorman wrote: +/* + * balloon_page_insert - insert a page into the balloon's page list and make + * the page-mapping assignment accordingly. + * @page: page to be assigned as a 'balloon page' + * @mapping : allocated

Re: [PATCH v11 7/7] mm: add vm event counters for balloon pages compaction

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 12:20:33PM +, Mel Gorman wrote: On Wed, Nov 07, 2012 at 01:05:54AM -0200, Rafael Aquini wrote: This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini aqu...@redhat.com Other

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-09 Thread Rafael Aquini
On Fri, Nov 09, 2012 at 04:23:27PM +, Mel Gorman wrote: On Fri, Nov 09, 2012 at 12:53:22PM -0200, Rafael Aquini wrote: SNIP If you get the barrier issue sorted out then feel free to add Acked-by: Mel Gorman m...@csn.ul.ie I believe we can drop the barriers stuff

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Thu, Nov 08, 2012 at 09:32:18AM +1030, Rusty Russell wrote: > The first one can be delayed, the second one can be delayed if the host > didn't ask for VIRTIO_BALLOON_F_MUST_TELL_HOST (qemu doesn't). > > We could implement a proper request queue for these, and return -EAGAIN > if the queue

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 04:11:46PM -0800, Andrew Morton wrote: > On Thu, 08 Nov 2012 09:32:18 +1030 > Rusty Russell wrote: > > > Rafael Aquini writes: > > > + * virtballoon_migratepage - perform the balloon page migration on > > > behalf of > > >

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 11:58:10AM -0800, Andrew Morton wrote: > On Wed, 7 Nov 2012 01:05:52 -0200 > Rafael Aquini wrote: > > > Memory fragmentation introduced by ballooning might reduce significantly > > the number of 2MB contiguous memory blocks that can be used wit

Re: [PATCH v11 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 11:56:10AM -0800, Andrew Morton wrote: > On Wed, 7 Nov 2012 01:05:48 -0200 > Rafael Aquini wrote: > > > This patch introduces MIGRATEPAGE_SUCCESS as the default return code > > for address_space_operations.migratepage() method and documents the >

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 01:02:07PM -0800, Andrew Morton wrote: > On Wed, 7 Nov 2012 01:05:50 -0200 > Rafael Aquini wrote: > > > Memory fragmentation introduced by ballooning might reduce significantly > > the number of 2MB contiguous memory blocks that can be used wit

Re: [PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 01:02:07PM -0800, Andrew Morton wrote: On Wed, 7 Nov 2012 01:05:50 -0200 Rafael Aquini aqu...@redhat.com wrote: Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest

Re: [PATCH v11 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 11:56:10AM -0800, Andrew Morton wrote: On Wed, 7 Nov 2012 01:05:48 -0200 Rafael Aquini aqu...@redhat.com wrote: This patch introduces MIGRATEPAGE_SUCCESS as the default return code for address_space_operations.migratepage() method and documents the expected

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 11:58:10AM -0800, Andrew Morton wrote: On Wed, 7 Nov 2012 01:05:52 -0200 Rafael Aquini aqu...@redhat.com wrote: Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Wed, Nov 07, 2012 at 04:11:46PM -0800, Andrew Morton wrote: On Thu, 08 Nov 2012 09:32:18 +1030 Rusty Russell ru...@rustcorp.com.au wrote: Rafael Aquini aqu...@redhat.com writes: + * virtballoon_migratepage - perform the balloon page migration on behalf

Re: [PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-07 Thread Rafael Aquini
On Thu, Nov 08, 2012 at 09:32:18AM +1030, Rusty Russell wrote: The first one can be delayed, the second one can be delayed if the host didn't ask for VIRTIO_BALLOON_F_MUST_TELL_HOST (qemu doesn't). We could implement a proper request queue for these, and return -EAGAIN if the queue fills.

[PATCH v11 0/7] make balloon pages movable by compaction

2012-11-06 Thread Rafael Aquini
17 Compaction stalls 747 499 Compaction success 244 145 Compaction failures 503 354 Compaction pages moved 370888 474837 Compaction move failure 77378 65259 ===END stress-highalloc Rafael Aquini (7)

[PATCH v11 2/7] mm: redefine address_space.assoc_mapping

2012-11-06 Thread Rafael Aquini
data structures through ->private_data. Also, all users of old ->assoc_mapping element are converted to reflect its new name and type change. Signed-off-by: Rafael Aquini --- fs/buffer.c| 12 ++-- fs/gfs2/glock.c| 2 +- fs/inode.c | 2 +- fs/nilfs2/page.c

[PATCH v11 6/7] mm: introduce putback_movable_pages()

2012-11-06 Thread Rafael Aquini
this patch introduces putback_movable_pages() to properly cope with cases where the isolated pageset contains ballooned pages and LRU pages, thus fixing the mentioned inelegant hack around putback_lru_pages(). Signed-off-by: Rafael Aquini --- include/linux/migrate.h | 2 ++ mm/compaction.c | 6

[PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-06 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini --- include/linux/balloon_compaction.h | 220

[PATCH v11 7/7] mm: add vm event counters for balloon pages compaction

2012-11-06 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 8 +++- mm/balloon_compaction.c | 2 ++ mm/migrate.c

[PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-06 Thread Rafael Aquini
providing protection against concurrent access introduced by parallel memory migration threads. - balloon_lock (mutex) : synchronizes the access demand to elements of struct virtio_balloon and its queue operations; Signed-off-by: Rafael Aquini --- drivers/virtio

[PATCH v11 4/7] mm: introduce compaction and migration for ballooned pages

2012-11-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 --- mm/compaction.c | 21

[PATCH v11 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-06 Thread Rafael Aquini
This patch introduces MIGRATEPAGE_SUCCESS as the default return code for address_space_operations.migratepage() method and documents the expected return code for the same method in failure cases. Signed-off-by: Rafael Aquini --- fs/hugetlbfs/inode.c| 4 ++-- include/linux/migrate.h | 7

[PATCH v11 1/7] mm: adjust address_space_operations.migratepage() return code

2012-11-06 Thread Rafael Aquini
This patch introduces MIGRATEPAGE_SUCCESS as the default return code for address_space_operations.migratepage() method and documents the expected return code for the same method in failure cases. Signed-off-by: Rafael Aquini aqu...@redhat.com --- fs/hugetlbfs/inode.c| 4 ++-- include/linux

[PATCH v11 4/7] mm: introduce compaction and migration for ballooned pages

2012-11-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 --- mm

[PATCH v11 5/7] virtio_balloon: introduce migration primitives to balloon pages

2012-11-06 Thread Rafael Aquini
providing protection against concurrent access introduced by parallel memory migration threads. - balloon_lock (mutex) : synchronizes the access demand to elements of struct virtio_balloon and its queue operations; Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers

[PATCH v11 7/7] mm: add vm event counters for balloon pages compaction

2012-11-06 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 8 +++- mm/balloon_compaction.c | 2 ++ mm

[PATCH v11 3/7] mm: introduce a common interface for balloon pages mobility

2012-11-06 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/balloon_compaction.h | 220

[PATCH v11 6/7] mm: introduce putback_movable_pages()

2012-11-06 Thread Rafael Aquini
putback_movable_pages() to properly cope with cases where the isolated pageset contains ballooned pages and LRU pages, thus fixing the mentioned inelegant hack around putback_lru_pages(). Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/migrate.h | 2 ++ mm/compaction.c

[PATCH v11 2/7] mm: redefine address_space.assoc_mapping

2012-11-06 Thread Rafael Aquini
data structures through -private_data. Also, all users of old -assoc_mapping element are converted to reflect its new name and type change. Signed-off-by: Rafael Aquini aqu...@redhat.com --- fs/buffer.c| 12 ++-- fs/gfs2/glock.c| 2 +- fs/inode.c | 2 +- fs/nilfs2

[PATCH v11 0/7] make balloon pages movable by compaction

2012-11-06 Thread Rafael Aquini
747 499 Compaction success 244 145 Compaction failures 503 354 Compaction pages moved 370888 474837 Compaction move failure 77378 65259 ===END stress-highalloc Rafael Aquini (7): mm: adjust

Re: [ 0/4] 3.0.51-stable review

2012-11-03 Thread Rafael Aquini
On Fri, Nov 02, 2012 at 09:07:11PM -0700, Greg Kroah-Hartman wrote: > > > > Howdy Greg, > > > > Somehow the following patch is missing for this series submission: > > > Len Brown > > > x86: Remove the ancient and deprecated disable_hlt() and enable_hlt() > > > facility > > > > I glanced

Re: [ 0/4] 3.0.51-stable review

2012-11-03 Thread Rafael Aquini
On Fri, Nov 02, 2012 at 09:07:11PM -0700, Greg Kroah-Hartman wrote: Howdy Greg, Somehow the following patch is missing for this series submission: Len Brown len.br...@intel.com x86: Remove the ancient and deprecated disable_hlt() and enable_hlt() facility I glanced at

Re: [ 0/4] 3.0.51-stable review

2012-11-02 Thread Rafael Aquini
On Fri, Nov 02, 2012 at 10:06:04AM -0700, Greg Kroah-Hartman wrote: > This is the start of the stable review cycle for the 3.0.51 release. > There are 4 patches in this series, all will be posted as a response > to this one. If anyone has any issues with these being applied, please > let me know.

Re: [ 0/4] 3.0.51-stable review

2012-11-02 Thread Rafael Aquini
On Fri, Nov 02, 2012 at 10:06:04AM -0700, Greg Kroah-Hartman wrote: This is the start of the stable review cycle for the 3.0.51 release. There are 4 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.

Re: [PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-25 Thread Rafael Aquini
On Tue, Sep 25, 2012 at 02:40:24AM +0200, Michael S. Tsirkin wrote: > > @@ -139,9 +158,15 @@ static void fill_balloon(struct virtio_balloon *vb, > > size_t num) > > break; > > } > > set_page_pfns(vb->pfns + vb->num_pfns, page); > > -

Re: [PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-25 Thread Rafael Aquini
On Tue, Sep 25, 2012 at 03:05:49AM +0200, Michael S. Tsirkin wrote: > If these are all under page lock these barriers just confuse things, > because they are almost never enough by themselves. > So in that case it would be better to drop them and document > usage as you are going to. > Would the

Re: [PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-25 Thread Rafael Aquini
On Tue, Sep 25, 2012 at 03:05:49AM +0200, Michael S. Tsirkin wrote: If these are all under page lock these barriers just confuse things, because they are almost never enough by themselves. So in that case it would be better to drop them and document usage as you are going to. Would the

Re: [PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-25 Thread Rafael Aquini
On Tue, Sep 25, 2012 at 02:40:24AM +0200, Michael S. Tsirkin wrote: @@ -139,9 +158,15 @@ static void fill_balloon(struct virtio_balloon *vb, size_t num) break; } set_page_pfns(vb-pfns + vb-num_pfns, page); - vb-num_pages +=

Re: [PATCH 9/9] mm: compaction: Restart compaction from near where it left off

2012-09-21 Thread Rafael Aquini
points and will > update the cached restart points until a page is isolated or a pageblock > is skipped that would have been scanned by synchronous compaction. > > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --- Acked-by: Rafael Aquini -- To unsubscribe from this

Re: [PATCH 8/9] mm: compaction: Cache if a pageblock was scanned and no pages were isolated

2012-09-21 Thread Rafael Aquini
ntil memory pressure is relieved would > cause compaction to continually fail instead of using reclaim/compaction > to try allocate the page. The time-based mechanism is clumsy but a better > option is not obvious. > > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --

Re: [PATCH 7/9] Revert "mm: have order > 0 compaction start off where it left"

2012-09-21 Thread Rafael Aquini
nners. > > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --- Acked-by: Rafael Aquini -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.

Re: [PATCH 6/9] mm: compaction: Acquire the zone->lock as late as possible

2012-09-21 Thread Rafael Aquini
e lock for as long as possible. In the > event there are no free pages in the pageblock then the lock will not be > acquired at all which reduces contention on zone->lock. > > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --- Acked-by: Rafael Aquini -- To unsubscribe fro

Re: [PATCH 5/9] mm: compaction: Acquire the zone->lru_lock as late as possible

2012-09-21 Thread Rafael Aquini
r as long as possible. If there are no LRU pages or the only > LRU pages are transhuge then the LRU lock will not be acquired at all > which reduces contention on zone->lru_lock. > > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --- Acked-by: Rafael Aquini -- To unsu

Re: [PATCH 4/9] mm: compaction: Abort compaction loop if lock is contended or run too long

2012-09-21 Thread Rafael Aquini
ngeli > Signed-off-by: Shaohua Li > Signed-off-by: Mel Gorman > Acked-by: Rik van Riel > --- Acked-by: Rafael Aquini -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at

Re: [PATCH 3/9] Revert "mm: compaction: abort compaction loop if lock is contended or run too long"

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:17AM +0100, Mel Gorman wrote: > This reverts > mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long.patch > as it is replaced by a later patch in the series. > > Signed-off-by: Mel Gorman Acked-by: Rafael Aquini -- To u

Re: [PATCH 2/9] Revert "mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long-fix"

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:16AM +0100, Mel Gorman wrote: > This reverts > mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long-fix > as it is replaced by a later patch in the series. > > Signed-off-by: Mel Gorman Acked-by: Rafael Aquini -- To unsubscribe

Re: [PATCH 1/9] Revert "mm: compaction: check lock contention first before taking lock"

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:15AM +0100, Mel Gorman wrote: > This reverts > mm-compaction-check-lock-contention-first-before-taking-lock.patch as it > is replaced by a later patch in the series. > > Signed-off-by: Mel Gorman Acked-by: Rafael Aquini -- To unsubscribe from

Re: [PATCH 1/9] Revert mm: compaction: check lock contention first before taking lock

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:15AM +0100, Mel Gorman wrote: This reverts mm-compaction-check-lock-contention-first-before-taking-lock.patch as it is replaced by a later patch in the series. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rafael Aquini aqu...@redhat.com

Re: [PATCH 2/9] Revert mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long-fix

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:16AM +0100, Mel Gorman wrote: This reverts mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long-fix as it is replaced by a later patch in the series. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rafael Aquini aqu...@redhat.com

Re: [PATCH 3/9] Revert mm: compaction: abort compaction loop if lock is contended or run too long

2012-09-21 Thread Rafael Aquini
On Fri, Sep 21, 2012 at 11:46:17AM +0100, Mel Gorman wrote: This reverts mm-compaction-abort-compaction-loop-if-lock-is-contended-or-run-too-long.patch as it is replaced by a later patch in the series. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rafael Aquini aqu...@redhat.com

Re: [PATCH 4/9] mm: compaction: Abort compaction loop if lock is contended or run too long

2012-09-21 Thread Rafael Aquini
...@fusionio.com Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http

Re: [PATCH 5/9] mm: compaction: Acquire the zone-lru_lock as late as possible

2012-09-21 Thread Rafael Aquini
LRU pages are transhuge then the LRU lock will not be acquired at all which reduces contention on zone-lru_lock. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line

Re: [PATCH 6/9] mm: compaction: Acquire the zone-lock as late as possible

2012-09-21 Thread Rafael Aquini
. In the event there are no free pages in the pageblock then the lock will not be acquired at all which reduces contention on zone-lock. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from

Re: [PATCH 7/9] Revert mm: have order 0 compaction start off where it left

2012-09-21 Thread Rafael Aquini
...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH 8/9] mm: compaction: Cache if a pageblock was scanned and no pages were isolated

2012-09-21 Thread Rafael Aquini
allocate the page. The time-based mechanism is clumsy but a better option is not obvious. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel

Re: [PATCH 9/9] mm: compaction: Restart compaction from near where it left off

2012-09-21 Thread Rafael Aquini
is skipped that would have been scanned by synchronous compaction. Signed-off-by: Mel Gorman mgor...@suse.de Acked-by: Rik van Riel r...@redhat.com --- Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message

Re: [PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-18 Thread Rafael Aquini
On Mon, Sep 17, 2012 at 03:15:43PM -0700, Andrew Morton wrote: > > +/* return code to identify when a ballooned page has been migrated */ > > +#define BALLOON_MIGRATION_RETURN 0xba1100 > > I didn't really spend enough time to work out why this was done this > way, but I know a hack when I see

Re: [PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-18 Thread Rafael Aquini
On Mon, Sep 17, 2012 at 03:15:52PM -0700, Andrew Morton wrote: > > + /* Number of balloon pages isolated from 'pages' list for compaction */ > > + unsigned int num_isolated_pages; > > Is it utterly inconceivable that this counter could exceed 4G, ever? > > > /* Number of balloon pages

Re: [PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-18 Thread Rafael Aquini
On Mon, Sep 17, 2012 at 03:15:52PM -0700, Andrew Morton wrote: + /* Number of balloon pages isolated from 'pages' list for compaction */ + unsigned int num_isolated_pages; Is it utterly inconceivable that this counter could exceed 4G, ever? /* Number of balloon pages we've told

Re: [PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-18 Thread Rafael Aquini
On Mon, Sep 17, 2012 at 03:15:43PM -0700, Andrew Morton wrote: +/* return code to identify when a ballooned page has been migrated */ +#define BALLOON_MIGRATION_RETURN 0xba1100 I didn't really spend enough time to work out why this was done this way, but I know a hack when I see one!

[PATCH v10 2/5] mm: introduce compaction and migration for ballooned pages

2012-09-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 --- mm/compaction.c | 47

[PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-17 Thread Rafael Aquini
bookmarking elements (list and atomic counters) against the potential memory compaction concurrency; Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 305 +--- 1 file changed, 286 insertions

[PATCH v10 5/5] mm: add vm event counters for balloon pages compaction

2012-09-17 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 8 +++- mm/balloon_compaction.c | 2 ++ mm/migrate.c

[PATCH v10 4/5] mm: introduce putback_movable_pages()

2012-09-17 Thread Rafael Aquini
this patch introduces putback_movable_pages() to properly cope with cases where the isolated pageset contains ballooned pages and LRU pages, thus fixing the mentioned inelegant hack around putback_lru_pages(). Signed-off-by: Rafael Aquini --- include/linux/migrate.h | 2 ++ mm/compaction.c |

[PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-17 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini --- include/linux/balloon_compaction.h | 147

[PATCH v10 0/5] make balloon pages movable by compaction

2012-09-17 Thread Rafael Aquini
5 Compaction stalls 1378 968 Compaction success 406 595 Compaction failures 972 373 Compaction pages moved 3104073 1790932 Compaction move failure 92713 41252 ===END stress-highalloc Rafael Aquini (5): mm: intr

[PATCH v10 0/5] make balloon pages movable by compaction

2012-09-17 Thread Rafael Aquini
1378 968 Compaction success 406 595 Compaction failures 972 373 Compaction pages moved 3104073 1790932 Compaction move failure 92713 41252 ===END stress-highalloc Rafael Aquini (5): mm: introduce a common interface

[PATCH v10 1/5] mm: introduce a common interface for balloon pages mobility

2012-09-17 Thread Rafael Aquini
. This patch introduces a common interface to help a balloon driver on making its page set movable to compaction, and thus allowing the system to better leverage the compation efforts on memory defragmentation. Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/balloon_compaction.h | 147

[PATCH v10 4/5] mm: introduce putback_movable_pages()

2012-09-17 Thread Rafael Aquini
putback_movable_pages() to properly cope with cases where the isolated pageset contains ballooned pages and LRU pages, thus fixing the mentioned inelegant hack around putback_lru_pages(). Signed-off-by: Rafael Aquini aqu...@redhat.com --- include/linux/migrate.h | 2 ++ mm/compaction.c

[PATCH v10 5/5] mm: add vm event counters for balloon pages compaction

2012-09-17 Thread Rafael Aquini
This patch introduces a new set of vm event counters to keep track of ballooned pages compaction activity. Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 1 + include/linux/vm_event_item.h | 8 +++- mm/balloon_compaction.c | 2 ++ mm

[PATCH v10 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-09-17 Thread Rafael Aquini
bookmarking elements (list and atomic counters) against the potential memory compaction concurrency; Signed-off-by: Rafael Aquini aqu...@redhat.com --- drivers/virtio/virtio_balloon.c | 305 +--- 1 file changed

[PATCH v10 2/5] mm: introduce compaction and migration for ballooned pages

2012-09-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 --- mm

Re: [PATCH -mm] enable CONFIG_COMPACTION by default

2012-09-13 Thread Rafael Aquini
_bool y > select MIGRATION > depends on MMU > help > Acked-by: Rafael Aquini -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Re: [PATCH -mm] enable CONFIG_COMPACTION by default

2012-09-13 Thread Rafael Aquini
help Acked-by: Rafael Aquini aqu...@redhat.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Re: [PATCH v9 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-08-28 Thread Rafael Aquini
On Tue, Aug 28, 2012 at 08:57:16PM +0300, Michael S. Tsirkin wrote: > Sorry I do not understand what you are saying here. So find > a different locking strategy. > > For example something like: > > wait_event(vb->config_change, > ({ > lock >

Re: [PATCH v9 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-08-28 Thread Rafael Aquini
On Tue, Aug 28, 2012 at 06:54:10PM +0300, Michael S. Tsirkin wrote: > On Mon, Aug 27, 2012 at 04:47:13PM -0300, Rafael Aquini wrote: > > On Sun, Aug 26, 2012 at 10:42:44AM +0300, Michael S. Tsirkin wrote: > > > > > > Reading two atomics and doing math? Result can ev

Re: [PATCH v9 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-08-28 Thread Rafael Aquini
On Tue, Aug 28, 2012 at 06:54:10PM +0300, Michael S. Tsirkin wrote: On Mon, Aug 27, 2012 at 04:47:13PM -0300, Rafael Aquini wrote: On Sun, Aug 26, 2012 at 10:42:44AM +0300, Michael S. Tsirkin wrote: Reading two atomics and doing math? Result can even be negative. I did not look at use

Re: [PATCH v9 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-08-28 Thread Rafael Aquini
On Tue, Aug 28, 2012 at 08:57:16PM +0300, Michael S. Tsirkin wrote: Sorry I do not understand what you are saying here. So find a different locking strategy. For example something like: wait_event(vb-config_change, ({ lock if

Re: [PATCH v9 1/5] mm: introduce a common interface for balloon pages mobility

2012-08-27 Thread Rafael Aquini
On Sun, Aug 26, 2012 at 10:55:58AM +0300, Michael S. Tsirkin wrote: > On Sat, Aug 25, 2012 at 02:24:56AM -0300, Rafael Aquini wrote: > > Memory fragmentation introduced by ballooning might reduce significantly > > the number of 2MB contiguous memory blocks that can be used within a

Re: [PATCH v9 0/5] make balloon pages movable by compaction

2012-08-27 Thread Rafael Aquini
On Sun, Aug 26, 2012 at 06:44:23PM +0300, Michael S. Tsirkin wrote: > > I am simply asking how was this patchset tested. > It would be nice to have this info in commit log. > Since this is an optimization patch it is strange > to see one with no numbers at all. > For example, you probably run

Re: [PATCH v9 3/5] virtio_balloon: introduce migration primitives to balloon pages

2012-08-27 Thread Rafael Aquini
On Sun, Aug 26, 2012 at 10:42:44AM +0300, Michael S. Tsirkin wrote: > > Reading two atomics and doing math? Result can even be negative. > I did not look at use closely but it looks suspicious. Doc on atomic_read says: " The read is atomic in that the return value is guaranteed to be one of the

<    1   2   3   4   5   6   7   >