diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index 99e8852c4e1dd8bb22c838ce1e3350184c9e2b4c..8a8d802275608c69e6cfb2b2b510b374cc95b3df 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -514,6 +514,8 @@ static int find_group_orlov(struct super_block *sb, struct inode *parent,
 	if (min_inodes < 1)
 		min_inodes = 1;
 	min_clusters = avefreec - EXT4_CLUSTERS_PER_GROUP(sb)*flex_size / 4;
+	if (min_clusters < 0)
+		min_clusters = 0;
 
 	/*
 	 * Start looking in the flex group where we last allocated an