search for: out_putpage

Displaying 20 results from an estimated 41 matches for "out_putpage".

2015 Jul 27
2
[PATCH 2/4] mm/compaction: enable mobile-page migration
...being (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the mobile page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) > + goto out_not_isolated; > + ret = page->mapping->a_ops->isolatepage(page, mode); > + if (!ret) > + goto out_not_isolated; > + unlock_page(page); > + return ret; > + >...
2015 Jul 27
2
[PATCH 2/4] mm/compaction: enable mobile-page migration
...being (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the mobile page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) > + goto out_not_isolated; > + ret = page->mapping->a_ops->isolatepage(page, mode); > + if (!ret) > + goto out_not_isolated; > + unlock_page(page); > + return ret; > + >...
2015 Jul 31
1
[PATCH 2/4] mm/compaction: enable mobile-page migration
...being (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the mobile page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) > + goto out_not_isolated; I cannot know how isolate_mobilepage is called by upper layer because this patch doesn't include it. Anyway, why we need such many checks to prove it's mobile page?...
2015 Jul 31
1
[PATCH 2/4] mm/compaction: enable mobile-page migration
...being (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the mobile page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) > + goto out_not_isolated; I cannot know how isolate_mobilepage is called by upper layer because this patch doesn't include it. Anyway, why we need such many checks to prove it's mobile page?...
2015 Jul 13
0
[PATCH 2/4] mm/compaction: enable mobile-page migration
...ady isolated mobile page + * being (wrongly) re-isolated while it is under migration, + * or to avoid attempting to isolate pages being released, + * lets be sure we have the page lock + * before proceeding with the mobile page isolation steps. + */ + if (unlikely(!trylock_page(page))) + goto out_putpage; + + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) + goto out_not_isolated; + ret = page->mapping->a_ops->isolatepage(page, mode); + if (!ret) + goto out_not_isolated; + unlock_page(page); + return ret; + +out_not_isolated: + unlock_page(page); +out_putp...
2016 Mar 30
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...ge, thus avoiding a nasty leakage. + */ + if (unlikely(!get_page_unless_zero(page))) + goto out; + + /* + * Check PG_movable before holding a PG_lock because page's owner + * assumes anybody doesn't touch PG_lock of newly allocated page. + */ + if (unlikely(!PageMovable(page))) + goto out_putpage; + /* + * As movable pages are not isolated from LRU lists, concurrent + * compaction threads can race against page migration functions + * as well as race against the releasing a page. + * + * In order to avoid having an already isolated movable page + * being (wrongly) re-isolated while it...
2015 Jul 27
0
[PATCH 2/4] mm/compaction: enable mobile-page migration
...* or to avoid attempting to isolate pages being released, >> + * lets be sure we have the page lock >> + * before proceeding with the mobile page isolation steps. >> + */ >> + if (unlikely(!trylock_page(page))) >> + goto out_putpage; >> + >> + if (!(mobile_page(page) && page->mapping->a_ops->isolatepage)) >> + goto out_not_isolated; >> + ret = page->mapping->a_ops->isolatepage(page, mode); >> + if (!ret) >> + goto out_no...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...+ if (unlikely(!get_page_unless_zero(page))) > + goto out; > + > + /* > + * Check PG_movable before holding a PG_lock because page's owner > + * assumes anybody doesn't touch PG_lock of newly allocated page. > + */ > + if (unlikely(!PageMovable(page))) > + goto out_putpage; > + /* > + * As movable pages are not isolated from LRU lists, concurrent > + * compaction threads can race against page migration functions > + * as well as race against the releasing a page. > + * > + * In order to avoid having an already isolated movable page > + * be...
2016 Apr 01
2
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
...+ if (unlikely(!get_page_unless_zero(page))) > + goto out; > + > + /* > + * Check PG_movable before holding a PG_lock because page's owner > + * assumes anybody doesn't touch PG_lock of newly allocated page. > + */ > + if (unlikely(!PageMovable(page))) > + goto out_putpage; > + /* > + * As movable pages are not isolated from LRU lists, concurrent > + * compaction threads can race against page migration functions > + * as well as race against the releasing a page. > + * > + * In order to avoid having an already isolated movable page > + * be...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...eing (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the movable page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!PageMovable(page) || PageIsolated(page)) > + goto out_no_isolated; > + > + ret = page->mapping->a_ops->isolate_page(page, mode); > + if (!ret) > + goto out_no_isolated; > + > + WARN_ON_ONCE(!PageIsolated(page)); > + unlock_page(page); > + re...
2016 Mar 22
2
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...eing (wrongly) re-isolated while it is under migration, > + * or to avoid attempting to isolate pages being released, > + * lets be sure we have the page lock > + * before proceeding with the movable page isolation steps. > + */ > + if (unlikely(!trylock_page(page))) > + goto out_putpage; > + > + if (!PageMovable(page) || PageIsolated(page)) > + goto out_no_isolated; > + > + ret = page->mapping->a_ops->isolate_page(page, mode); > + if (!ret) > + goto out_no_isolated; > + > + WARN_ON_ONCE(!PageIsolated(page)); > + unlock_page(page); > + re...
2016 Apr 04
0
[PATCH v3 02/16] mm/compaction: support non-lru movable page migration
..._zero(page))) > >+ goto out; > >+ > >+ /* > >+ * Check PG_movable before holding a PG_lock because page's owner > >+ * assumes anybody doesn't touch PG_lock of newly allocated page. > >+ */ > >+ if (unlikely(!PageMovable(page))) > >+ goto out_putpage; > >+ /* > >+ * As movable pages are not isolated from LRU lists, concurrent > >+ * compaction threads can race against page migration functions > >+ * as well as race against the releasing a page. > >+ * > >+ * In order to avoid having an already isolated m...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...> > + * or to avoid attempting to isolate pages being released, > > > + * lets be sure we have the page lock > > > + * before proceeding with the movable page isolation steps. > > > + */ > > > + if (unlikely(!trylock_page(page))) > > > + goto out_putpage; > > > + > > > + if (!PageMovable(page) || PageIsolated(page)) > > > + goto out_no_isolated; > > > + > > > + ret = page->mapping->a_ops->isolate_page(page, mode); > > > + if (!ret) > > > + goto out_no_isolated; > > >...
2016 Mar 23
1
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...> > + * or to avoid attempting to isolate pages being released, > > > + * lets be sure we have the page lock > > > + * before proceeding with the movable page isolation steps. > > > + */ > > > + if (unlikely(!trylock_page(page))) > > > + goto out_putpage; > > > + > > > + if (!PageMovable(page) || PageIsolated(page)) > > > + goto out_no_isolated; > > > + > > > + ret = page->mapping->a_ops->isolate_page(page, mode); > > > + if (!ret) > > > + goto out_no_isolated; > > >...
2015 Jul 13
14
[PATCH 0/4] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for
2015 Jul 13
14
[PATCH 0/4] enable migration of driver pages
From: Gioh Kim <gurugio at hanmail.net> Hello, This series try to enable migration of non-LRU pages, such as driver's page. My ARM-based platform occured severe fragmentation problem after long-term (several days) test. Sometimes even order-3 page allocation failed. It has memory size 512MB ~ 1024MB. 30% ~ 40% memory is consumed for graphic processing and 20~30 memory is reserved for
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
.../* > + * Check PageMovable before holding a PG_lock because page's owner > + * assumes anybody doesn't touch PG_lock of newly allocated page > + * so unconditionally grapping the lock ruins page's owner side. > + */ > + if (unlikely(!__PageMovable(page))) > + goto out_putpage; > + /* > + * As movable pages are not isolated from LRU lists, concurrent > + * compaction threads can race against page migration functions > + * as well as race against the releasing a page. > + * > + * In order to avoid having an already isolated movable page > + * be...
2016 May 27
2
[PATCH v6 02/12] mm: migrate: support non-lru movable page migration
.../* > + * Check PageMovable before holding a PG_lock because page's owner > + * assumes anybody doesn't touch PG_lock of newly allocated page > + * so unconditionally grapping the lock ruins page's owner side. > + */ > + if (unlikely(!__PageMovable(page))) > + goto out_putpage; > + /* > + * As movable pages are not isolated from LRU lists, concurrent > + * compaction threads can race against page migration functions > + * as well as race against the releasing a page. > + * > + * In order to avoid having an already isolated movable page > + * be...
2016 Mar 21
0
[PATCH v2 13/18] mm/compaction: support non-lru movable page migration
...y isolated movable page + * being (wrongly) re-isolated while it is under migration, + * or to avoid attempting to isolate pages being released, + * lets be sure we have the page lock + * before proceeding with the movable page isolation steps. + */ + if (unlikely(!trylock_page(page))) + goto out_putpage; + + if (!PageMovable(page) || PageIsolated(page)) + goto out_no_isolated; + + ret = page->mapping->a_ops->isolate_page(page, mode); + if (!ret) + goto out_no_isolated; + + WARN_ON_ONCE(!PageIsolated(page)); + unlock_page(page); + return ret; + +out_no_isolated: + unlock_page(page); +out...
2016 Mar 11
0
[PATCH v1 02/19] mm/compaction: support non-lru movable page migration
...y isolated movable page + * being (wrongly) re-isolated while it is under migration, + * or to avoid attempting to isolate pages being released, + * lets be sure we have the page lock + * before proceeding with the movable page isolation steps. + */ + if (unlikely(!trylock_page(page))) + goto out_putpage; + + if (!PageMovable(page) || PageIsolated(page)) + goto out_no_isolated; + + ret = page->mapping->a_ops->isolate_page(page, mode); + if (!ret) + goto out_no_isolated; + + WARN_ON_ONCE(!PageIsolated(page)); + unlock_page(page); + return ret; + +out_no_isolated: + unlock_page(page); +out...