Commit e2057c5a authored by Mark Fasheh's avatar Mark Fasheh

ocfs2: cond_resched() in ocfs2_zero_extend()

The loop within ocfs2_zero_extend() can execute for a long time, causing
spurious soft lockup warnings.
Signed-off-by: default avatarMark Fasheh <mark.fasheh@oracle.com>
parent 0effef77
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
#include <linux/highmem.h> #include <linux/highmem.h>
#include <linux/pagemap.h> #include <linux/pagemap.h>
#include <linux/uio.h> #include <linux/uio.h>
#include <linux/sched.h>
#define MLOG_MASK_PREFIX ML_INODE #define MLOG_MASK_PREFIX ML_INODE
#include <cluster/masklog.h> #include <cluster/masklog.h>
...@@ -691,6 +692,12 @@ static int ocfs2_zero_extend(struct inode *inode, ...@@ -691,6 +692,12 @@ static int ocfs2_zero_extend(struct inode *inode,
} }
start_off += sb->s_blocksize; start_off += sb->s_blocksize;
/*
* Very large extends have the potential to lock up
* the cpu for extended periods of time.
*/
cond_resched();
} }
out: out:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment