Re: [RFC] mm: support MIGRATE_DISCARD

From: Rik van Riel
Date: Fri Aug 24 2012 - 11:04:30 EST


On 08/24/2012 12:25 AM, Minchan Kim wrote:
This patch introudes MIGRATE_DISCARD mode in migration.
It drops *unmapped clean cache pages* instead of migration so that

Am I confused, or does the code not match the changelog?

It looks like it is still trying to discard mapped page cache pages:

+ file = page_is_file_cache(page);
+ ttu_flags = TTU_IGNORE_ACCESS;
+retry:
+ if (!(mode & MIGRATE_DISCARD) || !file || PageDirty(page))
+ ttu_flags |= (TTU_MIGRATION | TTU_IGNORE_MLOCK);
+ else
+ discard_mode = true;
+
/* Establish migration ptes or remove ptes */
- try_to_unmap(page, TTU_MIGRATION|TTU_IGNORE_MLOCK|TTU_IGNORE_ACCESS);
+ rc = try_to_unmap(page, ttu_flags);

skip_unmap:
- if (!page_mapped(page))
- rc = move_to_new_page(newpage, page, remap_swapcache, mode);
+ if (rc == SWAP_SUCCESS) {
+ if (!discard_mode)
+ rc = move_to_new_page(newpage, page,
+ remap_swapcache, mode);
+ else {
+
+ rc = discard_page(page);
+ goto uncharge;
+ }



--
All rights reversed
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/