ANDROID: mm: page_pinner: reset migration failed page
Currently, __reset_page_pinner reset only PAGE_EXT_GET page freeing, not PAGE_EXT_PINNER_MIGRATION_FAILED page. It should handle both cases to prevent wrong PAGE_EXT_PINNER_MIGRATION_FAILED setting. Bug: 192475091 Signed-off-by: Minchan Kim <minchan@google.com> Change-Id: I9b4124393ee432c7cb29cd12d160ecf2a1e34360
This commit is contained in:
@@ -151,7 +151,9 @@ void __reset_page_pinner(struct page *page, unsigned int order, bool free)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
for (i = 0; i < (1 << order); i++) {
|
for (i = 0; i < (1 << order); i++) {
|
||||||
if (!test_bit(PAGE_EXT_GET, &page_ext->flags))
|
if (!test_bit(PAGE_EXT_GET, &page_ext->flags) &&
|
||||||
|
!test_bit(PAGE_EXT_PINNER_MIGRATION_FAILED,
|
||||||
|
&page_ext->flags))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
page_pinner = get_page_pinner(page_ext);
|
page_pinner = get_page_pinner(page_ext);
|
||||||
|
Reference in New Issue
Block a user