All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gioh Kim <gioh.kim@lge.com>
To: jlayton@poochiereds.net, bfields@fieldses.org, vbabka@suse.cz,
	iamjoonsoo.kim@lge.com, viro@zeniv.linux.org.uk, mst@redhat.com,
	koct9i@gmail.com, minchan@kernel.org, aquini@redhat.com,
	linux-fsdevel@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	linux-mm@kvack.org
Cc: gunho.lee@lge.com, akpm@linux-foundation.org,
	Gioh Kim <gurugio@hanmail.net>, Gioh Kim <gioh.kim@lge.com>
Subject: [RFCv3 5/5] mm: remove direct calling of migration
Date: Tue,  7 Jul 2015 13:36:25 +0900	[thread overview]
Message-ID: <1436243785-24105-6-git-send-email-gioh.kim@lge.com> (raw)
In-Reply-To: <1436243785-24105-1-git-send-email-gioh.kim@lge.com>

From: Gioh Kim <gurugio@hanmail.net>

Migration is completely generalized so that migrating mobile page
is processed with lru-pages in move_to_new_page.

Signed-off-by: Gioh Kim <gioh.kim@lge.com>
---
 mm/balloon_compaction.c |  8 --------
 mm/migrate.c            | 13 -------------
 2 files changed, 21 deletions(-)

diff --git a/mm/balloon_compaction.c b/mm/balloon_compaction.c
index 0dd0b0d..9d07ed9 100644
--- a/mm/balloon_compaction.c
+++ b/mm/balloon_compaction.c
@@ -170,13 +170,6 @@ int balloon_page_migrate(struct address_space *mapping,
 	if (!isolated_balloon_page(page))
 		return rc;
 
-	/*
-	 * Block others from accessing the 'newpage' when we get around to
-	 * establishing additional references. We should be the only one
-	 * holding a reference to the 'newpage' at this point.
-	 */
-	BUG_ON(!trylock_page(newpage));
-
 	if (WARN_ON(!__is_movable_balloon_page(page))) {
 		dump_page(page, "not movable balloon page");
 		unlock_page(newpage);
@@ -186,7 +179,6 @@ int balloon_page_migrate(struct address_space *mapping,
 	if (balloon && balloon->migratepage)
 		rc = balloon->migratepage(balloon, newpage, page, mode);
 
-	unlock_page(newpage);
 	return rc;
 }
 
diff --git a/mm/migrate.c b/mm/migrate.c
index e22be67..b82539b 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -844,19 +844,6 @@ static int __unmap_and_move(struct page *page, struct page *newpage,
 		}
 	}
 
-	if (unlikely(mobile_page(page))) {
-		/*
-		 * A mobile page does not need any special attention from
-		 * physical to virtual reverse mapping procedures.
-		 * Skip any attempt to unmap PTEs or to remap swap cache,
-		 * in order to avoid burning cycles at rmap level, and perform
-		 * the page migration right away (proteced by page lock).
-		 */
-		rc = page->mapping->a_ops->migratepage(page->mapping,
-						       newpage, page, mode);
-		goto out_unlock;
-	}
-
 	/*
 	 * Corner case handling:
 	 * 1. When a new swap-cache page is read into, it is added to the LRU
-- 
2.1.4


WARNING: multiple messages have this Message-ID (diff)
From: Gioh Kim <gioh.kim@lge.com>
To: jlayton@poochiereds.net, bfields@fieldses.org, vbabka@suse.cz,
	iamjoonsoo.kim@lge.com, viro@zeniv.linux.org.uk, mst@redhat.com,
	koct9i@gmail.com, minchan@kernel.org, aquini@redhat.com,
	linux-fsdevel@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	linux-mm@kvack.org
Cc: gunho.lee@lge.com, akpm@linux-foundation.org,
	Gioh Kim <gurugio@hanmail.net>, Gioh Kim <gioh.kim@lge.com>
Subject: [RFCv3 5/5] mm: remove direct calling of migration
Date: Tue,  7 Jul 2015 13:36:25 +0900	[thread overview]
Message-ID: <1436243785-24105-6-git-send-email-gioh.kim@lge.com> (raw)
In-Reply-To: <1436243785-24105-1-git-send-email-gioh.kim@lge.com>

From: Gioh Kim <gurugio@hanmail.net>

Migration is completely generalized so that migrating mobile page
is processed with lru-pages in move_to_new_page.

Signed-off-by: Gioh Kim <gioh.kim@lge.com>
---
 mm/balloon_compaction.c |  8 --------
 mm/migrate.c            | 13 -------------
 2 files changed, 21 deletions(-)

diff --git a/mm/balloon_compaction.c b/mm/balloon_compaction.c
index 0dd0b0d..9d07ed9 100644
--- a/mm/balloon_compaction.c
+++ b/mm/balloon_compaction.c
@@ -170,13 +170,6 @@ int balloon_page_migrate(struct address_space *mapping,
 	if (!isolated_balloon_page(page))
 		return rc;
 
-	/*
-	 * Block others from accessing the 'newpage' when we get around to
-	 * establishing additional references. We should be the only one
-	 * holding a reference to the 'newpage' at this point.
-	 */
-	BUG_ON(!trylock_page(newpage));
-
 	if (WARN_ON(!__is_movable_balloon_page(page))) {
 		dump_page(page, "not movable balloon page");
 		unlock_page(newpage);
@@ -186,7 +179,6 @@ int balloon_page_migrate(struct address_space *mapping,
 	if (balloon && balloon->migratepage)
 		rc = balloon->migratepage(balloon, newpage, page, mode);
 
-	unlock_page(newpage);
 	return rc;
 }
 
diff --git a/mm/migrate.c b/mm/migrate.c
index e22be67..b82539b 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -844,19 +844,6 @@ static int __unmap_and_move(struct page *page, struct page *newpage,
 		}
 	}
 
-	if (unlikely(mobile_page(page))) {
-		/*
-		 * A mobile page does not need any special attention from
-		 * physical to virtual reverse mapping procedures.
-		 * Skip any attempt to unmap PTEs or to remap swap cache,
-		 * in order to avoid burning cycles at rmap level, and perform
-		 * the page migration right away (proteced by page lock).
-		 */
-		rc = page->mapping->a_ops->migratepage(page->mapping,
-						       newpage, page, mode);
-		goto out_unlock;
-	}
-
 	/*
 	 * Corner case handling:
 	 * 1. When a new swap-cache page is read into, it is added to the LRU
-- 
2.1.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>

  parent reply	other threads:[~2015-07-07  4:35 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-07  4:36 [RFCv3 0/5] enable migration of driver pages Gioh Kim
2015-07-07  4:36 ` Gioh Kim
2015-07-07  4:36 ` [RFCv3 1/5] fs/anon_inodes: new interface to create new inode Gioh Kim
2015-07-07  4:36   ` Gioh Kim
2015-07-07  4:36 ` [RFCv3 2/5] mm/compaction: enable mobile-page migration Gioh Kim
2015-07-07  4:36   ` Gioh Kim
2015-07-10 13:07   ` Konstantin Khlebnikov
2015-07-10 13:07     ` Konstantin Khlebnikov
2015-07-13  8:45     ` Gioh Kim
2015-07-13  8:45       ` Gioh Kim
2015-07-13  8:45     ` Gioh Kim
2015-07-10 13:07   ` Konstantin Khlebnikov
2015-07-10 13:41   ` Konstantin Khlebnikov
2015-07-10 13:41     ` Konstantin Khlebnikov
2015-07-10 13:41   ` Konstantin Khlebnikov
2015-07-07  4:36 ` Gioh Kim
2015-07-07  4:36 ` [RFCv3 3/5] mm/balloon: apply mobile page migratable into balloon Gioh Kim
2015-07-07  4:36 ` Gioh Kim
2015-07-07  4:36   ` Gioh Kim
2015-07-09  8:07   ` Michael S. Tsirkin
2015-07-09  8:07   ` Michael S. Tsirkin
2015-07-09  8:07     ` Michael S. Tsirkin
2015-07-09  8:07     ` Michael S. Tsirkin
2015-07-10  0:21     ` Gioh Kim
2015-07-10  0:21       ` Gioh Kim
2015-07-10  0:21       ` Gioh Kim
2015-07-10 13:29   ` Konstantin Khlebnikov
2015-07-10 13:29   ` Konstantin Khlebnikov
2015-07-10 13:29     ` Konstantin Khlebnikov
2015-07-10 13:29     ` Konstantin Khlebnikov
2015-07-07  4:36 ` [RFCv3 4/5] mm: call generic migration callbacks Gioh Kim
2015-07-07  4:36 ` Gioh Kim
2015-07-07  4:36   ` Gioh Kim
2015-07-07  4:36 ` Gioh Kim [this message]
2015-07-07  4:36   ` [RFCv3 5/5] mm: remove direct calling of migration Gioh Kim
2015-07-07  4:36 ` Gioh Kim
2015-07-07 22:37 ` [RFCv3 0/5] enable migration of driver pages Andrew Morton
2015-07-07 22:37   ` Andrew Morton
2015-07-07 22:37   ` Andrew Morton
2015-07-08  0:02   ` Gioh Kim
2015-07-08  0:02     ` Gioh Kim
2015-07-08  0:02     ` Gioh Kim
2015-07-08  0:07     ` Andrew Morton
2015-07-08  0:07       ` Andrew Morton
2015-07-08  0:07       ` Andrew Morton
2015-07-08  0:19       ` Gioh Kim
2015-07-08  0:19       ` Gioh Kim
2015-07-08  0:19         ` Gioh Kim
2015-07-08  0:35         ` Minchan Kim
2015-07-08  0:35           ` Minchan Kim
2015-07-08  0:35           ` Minchan Kim
2015-07-08 22:47         ` Dave Airlie
2015-07-08 22:47         ` Dave Airlie
2015-07-08 22:47           ` Dave Airlie
2015-07-08 22:47           ` Dave Airlie
2015-07-08 23:55           ` Gioh Kim
2015-07-08 23:55             ` Gioh Kim
2015-07-08 23:55             ` Gioh Kim
2015-07-09 13:08             ` Daniel Vetter
2015-07-09 13:08             ` Daniel Vetter
2015-07-09 13:08               ` Daniel Vetter
2015-07-09 13:08               ` Daniel Vetter
2015-07-09 13:33               ` Ville Syrjälä
2015-07-09 13:33                 ` Ville Syrjälä
2015-07-09 13:33                 ` Ville Syrjälä
2015-07-09 14:02                 ` Kirill A. Shutemov
2015-07-09 14:02                 ` Kirill A. Shutemov
2015-07-09 14:02                   ` Kirill A. Shutemov
2015-07-09 14:02                   ` Kirill A. Shutemov
2015-07-09 13:33               ` Ville Syrjälä
2015-07-10  0:02               ` Gioh Kim
2015-07-10  0:02               ` Gioh Kim
2015-07-10  0:02                 ` Gioh Kim
2015-07-10  0:02                 ` Gioh Kim
2015-07-08 23:55           ` Gioh Kim
2015-07-08  0:07     ` Andrew Morton
2015-07-08  0:02   ` Gioh Kim
2015-07-09  1:00 ` Rafael Aquini
2015-07-09  1:00 ` Rafael Aquini
2015-07-09  1:00   ` Rafael Aquini
2015-07-09  1:00   ` Rafael Aquini

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=1436243785-24105-6-git-send-email-gioh.kim@lge.com \
    --to=gioh.kim@lge.com \
    --cc=akpm@linux-foundation.org \
    --cc=aquini@redhat.com \
    --cc=bfields@fieldses.org \
    --cc=gunho.lee@lge.com \
    --cc=gurugio@hanmail.net \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=jlayton@poochiereds.net \
    --cc=koct9i@gmail.com \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=minchan@kernel.org \
    --cc=mst@redhat.com \
    --cc=vbabka@suse.cz \
    --cc=viro@zeniv.linux.org.uk \
    --cc=virtualization@lists.linux-foundation.org \
    /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.