Messages in this thread | | | Date | Fri, 24 Aug 2012 11:04:16 -0400 | From | Rik van Riel <> | Subject | Re: [RFC] mm: support MIGRATE_DISCARD |
| |
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
| |