diff --git a/mm/vmstat.c b/mm/vmstat.c
index 4c21670f8d91de346cad33f8a0c5d1811a82a573..ec6035eda933f463ceaa849e8f9f96663a2a025f 100644
--- a/mm/vmstat.c
+++ b/mm/vmstat.c
@@ -322,6 +322,7 @@ void refresh_cpu_vm_stats(int cpu)
 				p->expire = 3;
 #endif
 			}
+		cond_resched();
 #ifdef CONFIG_NUMA
 		/*
 		 * Deal with draining the remote pageset of this