search for: unmap_and_move

Displaying 20 results from an estimated 61 matches for "unmap_and_move".

Did you mean: __unmap_and_move
2016 Apr 04
2
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...is patch cleans it up to divide two semantic(ie, put and putback). > If migration is successful, use put_page instead of putback_lru_page and > use putback_lru_page only on failure. That makes code more readable > and doesn't add overhead in put_page. So effectively when we return from unmap_and_move() the page is either put_page or putback_lru_page() and the page is gone from under us.
2016 Apr 04
2
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...is patch cleans it up to divide two semantic(ie, put and putback). > If migration is successful, use put_page instead of putback_lru_page and > use putback_lru_page only on failure. That makes code more readable > and doesn't add overhead in put_page. So effectively when we return from unmap_and_move() the page is either put_page or putback_lru_page() and the page is gone from under us.
2016 Mar 11
0
[PATCH v1 01/19] mm: use put_page to free page instead of putback_lru_page
...han at kernel.org> --- mm/migrate.c | 49 ++++++++++++++++++++++++++++++------------------- 1 file changed, 30 insertions(+), 19 deletions(-) diff --git a/mm/migrate.c b/mm/migrate.c index 3ad0fea5c438..bf31ea9ffaf8 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -907,6 +907,14 @@ static int __unmap_and_move(struct page *page, struct page *newpage, put_anon_vma(anon_vma); unlock_page(page); out: + /* If migration is scucessful, move newpage to right list */ + if (rc == MIGRATEPAGE_SUCCESS) { + if (unlikely(__is_movable_balloon_page(newpage))) + put_page(newpage); + else + putback_lru_page(n...
2016 Mar 30
0
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...an at kernel.org> --- mm/migrate.c | 50 +++++++++++++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/mm/migrate.c b/mm/migrate.c index 6c822a7b27e0..53529c805752 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -913,6 +913,14 @@ static int __unmap_and_move(struct page *page, struct page *newpage, put_anon_vma(anon_vma); unlock_page(page); out: + /* If migration is successful, move newpage to right list */ + if (rc == MIGRATEPAGE_SUCCESS) { + if (unlikely(__is_movable_balloon_page(newpage))) + put_page(newpage); + else + putback_lru_page(n...
2016 Apr 04
1
mm/hwpoison: fix wrong num_poisoned_pages account
...t;n-horiguchi at ah.jp.nec.com> > > > >Acked-by: Vlastimil Babka <vbabka at suse.cz> > > > >Signed-off-by: Minchan Kim <minchan at kernel.org> > > > > > > [...] > > > > > > >@@ -974,28 +986,28 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > > > > list_del(&page->lru); > > > > dec_zone_page_state(page, NR_ISOLATED_ANON + > > > > page_is_file_cache(page)); > > > >- /* Soft-offlined page shouldn't go through lru cache list */ > > >...
2016 Apr 04
1
mm/hwpoison: fix wrong num_poisoned_pages account
...t;n-horiguchi at ah.jp.nec.com> > > > >Acked-by: Vlastimil Babka <vbabka at suse.cz> > > > >Signed-off-by: Minchan Kim <minchan at kernel.org> > > > > > > [...] > > > > > > >@@ -974,28 +986,28 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > > > > list_del(&page->lru); > > > > dec_zone_page_state(page, NR_ISOLATED_ANON + > > > > page_is_file_cache(page)); > > > >- /* Soft-offlined page shouldn't go through lru cache list */ > > >...
2012 Aug 06
6
[PATCH v5 0/3] make balloon pages movable by compaction
Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest, thus imposing performance penalties associated with the reduced number of transparent huge pages that could be used by the guest workload. This patch-set follows the main idea discussed at 2012 LSFMMS session: "Ballooning for transparent huge
2012 Aug 06
6
[PATCH v5 0/3] make balloon pages movable by compaction
Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest, thus imposing performance penalties associated with the reduced number of transparent huge pages that could be used by the guest workload. This patch-set follows the main idea discussed at 2012 LSFMMS session: "Ballooning for transparent huge
2016 Apr 01
2
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...se.de> > Cc: Hugh Dickins <hughd at google.com> > Cc: Naoya Horiguchi <n-horiguchi at ah.jp.nec.com> > Acked-by: Vlastimil Babka <vbabka at suse.cz> > Signed-off-by: Minchan Kim <minchan at kernel.org> [...] > @@ -974,28 +986,28 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > list_del(&page->lru); > dec_zone_page_state(page, NR_ISOLATED_ANON + > page_is_file_cache(page)); > - /* Soft-offlined page shouldn't go through lru cache list */ > + } > + > + /* > + * If migration is successful, drop th...
2016 Apr 01
2
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...se.de> > Cc: Hugh Dickins <hughd at google.com> > Cc: Naoya Horiguchi <n-horiguchi at ah.jp.nec.com> > Acked-by: Vlastimil Babka <vbabka at suse.cz> > Signed-off-by: Minchan Kim <minchan at kernel.org> [...] > @@ -974,28 +986,28 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > list_del(&page->lru); > dec_zone_page_state(page, NR_ISOLATED_ANON + > page_is_file_cache(page)); > - /* Soft-offlined page shouldn't go through lru cache list */ > + } > + > + /* > + * If migration is successful, drop th...
2016 Apr 04
0
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...p to divide two semantic(ie, put and putback). > > If migration is successful, use put_page instead of putback_lru_page and > > use putback_lru_page only on failure. That makes code more readable > > and doesn't add overhead in put_page. > So effectively when we return from unmap_and_move() the page is either > put_page or putback_lru_page() and the page is gone from under us. I didn't get your point. Could you elaborate it more what you want to say about this patch?
2016 Mar 30
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...} /* * When successful, old pagecache page->mapping must be cleared before @@ -782,6 +899,7 @@ static int move_to_new_page(struct page *newpage, struct page *page, if (!PageAnon(page)) page->mapping = NULL; } +out: return rc; } @@ -960,6 +1078,8 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, put_new_page(newpage, private); else put_page(newpage); + if (PageMovable(page)) + __ClearPageMovable(page); goto out; } @@ -1000,8 +1120,26 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, num_poisoned_pages_inc(); } } else...
2016 Apr 04
0
[PATCH v3 01/16] mm: use put_page to free page instead of putback_lru_page
...<hughd at google.com> > >Cc: Naoya Horiguchi <n-horiguchi at ah.jp.nec.com> > >Acked-by: Vlastimil Babka <vbabka at suse.cz> > >Signed-off-by: Minchan Kim <minchan at kernel.org> > > [...] > > >@@ -974,28 +986,28 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > > list_del(&page->lru); > > dec_zone_page_state(page, NR_ISOLATED_ANON + > > page_is_file_cache(page)); > >- /* Soft-offlined page shouldn't go through lru cache list */ > >+ } > >+ > >+ /* > >+ * If...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...e->mapping must be cleared before > @@ -782,6 +899,7 @@ static int move_to_new_page(struct page *newpage, struct page *page, > if (!PageAnon(page)) > page->mapping = NULL; > } > +out: > return rc; > } > > @@ -960,6 +1078,8 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > put_new_page(newpage, private); > else > put_page(newpage); > + if (PageMovable(page)) > + __ClearPageMovable(page); > goto out; > } > > @@ -1000,8 +1120,26 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_pag...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...e->mapping must be cleared before > @@ -782,6 +899,7 @@ static int move_to_new_page(struct page *newpage, struct page *page, > if (!PageAnon(page)) > page->mapping = NULL; > } > +out: > return rc; > } > > @@ -960,6 +1078,8 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > put_new_page(newpage, private); > else > put_page(newpage); > + if (PageMovable(page)) > + __ClearPageMovable(page); > goto out; > } > > @@ -1000,8 +1120,26 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_pag...
2012 Nov 07
8
[PATCH v11 0/7] make balloon pages movable by compaction
Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest, thus imposing performance penalties associated with the reduced number of transparent huge pages that could be used by the guest workload. This patch-set follows the main idea discussed at 2012 LSFMMS session: "Ballooning for transparent huge
2012 Nov 07
8
[PATCH v11 0/7] make balloon pages movable by compaction
Memory fragmentation introduced by ballooning might reduce significantly the number of 2MB contiguous memory blocks that can be used within a guest, thus imposing performance penalties associated with the reduced number of transparent huge pages that could be used by the guest workload. This patch-set follows the main idea discussed at 2012 LSFMMS session: "Ballooning for transparent huge
2016 Apr 04
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...> >@@ -782,6 +899,7 @@ static int move_to_new_page(struct page *newpage, struct page *page, > > if (!PageAnon(page)) > > page->mapping = NULL; > > } > >+out: > > return rc; > > } > > > >@@ -960,6 +1078,8 @@ static ICE_noinline int unmap_and_move(new_page_t get_new_page, > > put_new_page(newpage, private); > > else > > put_page(newpage); > >+ if (PageMovable(page)) > >+ __ClearPageMovable(page); > > goto out; > > } > > > >@@ -1000,8 +1120,26 @@ static ICE_noinline int...
2012 Jun 25
5
[PATCH 0/4] make balloon pages movable by compaction
This patchset follows the main idea discussed at 2012 LSFMMS section: "Ballooning for transparent huge pages" -- http://lwn.net/Articles/490114/ to introduce the required changes to the virtio_balloon driver, as well as changes to the core compaction & migration bits, in order to allow memory balloon pages become movable within a guest. Rafael Aquini (4): mm: introduce compaction
2012 Jun 25
5
[PATCH 0/4] make balloon pages movable by compaction
This patchset follows the main idea discussed at 2012 LSFMMS section: "Ballooning for transparent huge pages" -- http://lwn.net/Articles/490114/ to introduce the required changes to the virtio_balloon driver, as well as changes to the core compaction & migration bits, in order to allow memory balloon pages become movable within a guest. Rafael Aquini (4): mm: introduce compaction