Commit c7295dc9 authored by Ma Wupeng's avatar Ma Wupeng Committed by Wupeng Ma
Browse files

mm: page_eject: Return right value during removal

hulk inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I8K5CO



--------------------------------

Invalid value will be returned if there is no suitable pfn during
search, fix it.

Fixes: ecbd5d7c ("mm: page_eject: Introuduce page ejection")
Signed-off-by: default avatarMa Wupeng <mawupeng1@huawei.com>
parent fbc8debb
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -20,18 +20,19 @@ struct ejected_pfn {

static struct ejected_pfn *page_eject_remove_pfn_locked(unsigned long pfn)
{
	struct ejected_pfn *item = NULL, *next;
	struct ejected_pfn *item, *next, *ret = NULL;

	mutex_lock(&eject_page_mutex);
	list_for_each_entry_safe(item, next, &eject_page_list, list) {
		if (pfn == item->pfn) {
			list_del(&item->list);
			ret = item;
			break;
		}
	}
	mutex_unlock(&eject_page_mutex);

	return item;
	return ret;
}

static void page_eject_add_pfn_locked(struct ejected_pfn *item)