Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1be77bb authored by Martin Schwidefsky's avatar Martin Schwidefsky Committed by Martin Schwidefsky
Browse files

[S390] pgtable_list corruption



After page_table_free_rcu removed a page from the pgtable_list
page_table_free better not add it again. Otherwise a page_table_alloc
can reuse a page table fragment that is still in the rcu process.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent f602f6d6
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -336,6 +336,7 @@ void page_table_free(struct mm_struct *mm, unsigned long *table)
	page->flags ^= bits;
	if (page->flags & FRAG_MASK) {
		/* Page now has some free pgtable fragments. */
		if (!list_empty(&page->lru))
			list_move(&page->lru, &mm->context.pgtable_list);
		page = NULL;
	} else