Commit e7a1aaf2 authored by Yu Zhao's avatar Yu Zhao Committed by Linus Torvalds

mm: replace list_move_tail() with add_page_to_lru_list_tail()

This is a cleanup patch that replaces two historical uses of
list_move_tail() with relatively recent add_page_to_lru_list_tail().

Link: http://lkml.kernel.org/r/20190716212436.7137-1-yuzhao@google.comSigned-off-by: default avatarYu Zhao <yuzhao@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent d8c6546b
...@@ -515,7 +515,6 @@ static void lru_deactivate_file_fn(struct page *page, struct lruvec *lruvec, ...@@ -515,7 +515,6 @@ static void lru_deactivate_file_fn(struct page *page, struct lruvec *lruvec,
del_page_from_lru_list(page, lruvec, lru + active); del_page_from_lru_list(page, lruvec, lru + active);
ClearPageActive(page); ClearPageActive(page);
ClearPageReferenced(page); ClearPageReferenced(page);
add_page_to_lru_list(page, lruvec, lru);
if (PageWriteback(page) || PageDirty(page)) { if (PageWriteback(page) || PageDirty(page)) {
/* /*
...@@ -523,13 +522,14 @@ static void lru_deactivate_file_fn(struct page *page, struct lruvec *lruvec, ...@@ -523,13 +522,14 @@ static void lru_deactivate_file_fn(struct page *page, struct lruvec *lruvec,
* It can make readahead confusing. But race window * It can make readahead confusing. But race window
* is _really_ small and it's non-critical problem. * is _really_ small and it's non-critical problem.
*/ */
add_page_to_lru_list(page, lruvec, lru);
SetPageReclaim(page); SetPageReclaim(page);
} else { } else {
/* /*
* The page's writeback ends up during pagevec * The page's writeback ends up during pagevec
* We moves tha page into tail of inactive. * We moves tha page into tail of inactive.
*/ */
list_move_tail(&page->lru, &lruvec->lists[lru]); add_page_to_lru_list_tail(page, lruvec, lru);
__count_vm_event(PGROTATED); __count_vm_event(PGROTATED);
} }
...@@ -844,17 +844,15 @@ void lru_add_page_tail(struct page *page, struct page *page_tail, ...@@ -844,17 +844,15 @@ void lru_add_page_tail(struct page *page, struct page *page_tail,
get_page(page_tail); get_page(page_tail);
list_add_tail(&page_tail->lru, list); list_add_tail(&page_tail->lru, list);
} else { } else {
struct list_head *list_head;
/* /*
* Head page has not yet been counted, as an hpage, * Head page has not yet been counted, as an hpage,
* so we must account for each subpage individually. * so we must account for each subpage individually.
* *
* Use the standard add function to put page_tail on the list, * Put page_tail on the list at the correct position
* but then correct its position so they all end up in order. * so they all end up in order.
*/ */
add_page_to_lru_list(page_tail, lruvec, page_lru(page_tail)); add_page_to_lru_list_tail(page_tail, lruvec,
list_head = page_tail->lru.prev; page_lru(page_tail));
list_move_tail(&page_tail->lru, list_head);
} }
if (!PageUnevictable(page)) if (!PageUnevictable(page))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment