On Mon, Aug 06, 2012 at 02:38:23PM -0400, Rik van Riel wrote:On 08/06/2012 09:56 AM, Rafael Aquini wrote:Keeping is_balloon_page() as is, and itroducing this new movable_balloon_page()
@@ -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, offlining, mode);
+
+ if (unlikely(is_balloon_page(newpage)&&
+ balloon_compaction_enabled())) {
Could that be collapsed into one movable_balloon_page(newpage) function
call?
function call, or just doing a plain rename, as Andrew has first suggested?
+static inline bool is_balloon_page(struct page *page)
+{
+ return (page->mapping && page->mapping == balloon_mapping);
+}