summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--mm/memory-failure.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/memory-failure.c b/mm/memory-failure.c
index c8cc57ed7dcd..ec9ad5270d32 100644
--- a/mm/memory-failure.c
+++ b/mm/memory-failure.c
@@ -1204,6 +1204,9 @@ int memory_failure(unsigned long pfn, int trapno, int flags)
 	for (ps = error_states;; ps++)
 		if ((p->flags & ps->mask) == ps->res)
 			break;
+
+	page_flags |= (p->flags & (1UL << PG_dirty));
+
 	if (!ps->mask)
 		for (ps = error_states;; ps++)
 			if ((page_flags & ps->mask) == ps->res)