diff --git a/fs/proc/vmcore.c b/fs/proc/vmcore.c
index 147cc771d5a660f6e1d7525e7c91fc5c2e00d055..3f5a4a5e1a82b32ffedc98e005a32ba582984a8f 100644
--- a/fs/proc/vmcore.c
+++ b/fs/proc/vmcore.c
@@ -404,6 +404,8 @@ static ssize_t __read_vmcore(struct iov_iter *iter, loff_t *fpos)
 			if (!iov_iter_count(iter))
 				return acc;
 		}
+
+		cond_resched();
 	}
 
 	return acc;