diff --git a/[refs] b/[refs] index 083b83f77135..6f93f5be6f94 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e84a26ce178345498a7eca0590852bcc36f1092f +refs/heads/master: b5451f7b2694b04d9f912f6cf09db1729f291996 diff --git a/trunk/fs/ext4/ialloc.c b/trunk/fs/ext4/ialloc.c index cbce5aa6b927..f18e0a08a6b5 100644 --- a/trunk/fs/ext4/ialloc.c +++ b/trunk/fs/ext4/ialloc.c @@ -585,6 +585,7 @@ static int find_group_orlov(struct super_block *sb, struct inode *parent, fallback: ngroups = sbi->s_groups_count; avefreei = freei / ngroups; +fallback_retry: parent_group = EXT4_I(parent)->i_block_group; for (i = 0; i < ngroups; i++) { grp = (parent_group + i) % ngroups; @@ -602,7 +603,7 @@ static int find_group_orlov(struct super_block *sb, struct inode *parent, * filesystems the above test can fail to find any blockgroups */ avefreei = 0; - goto fallback; + goto fallback_retry; } return -1;