|
@@ -734,11 +734,8 @@ repeat_in_this_group:
|
|
|
ino = ext4_find_next_zero_bit((unsigned long *)
|
|
|
inode_bitmap_bh->b_data,
|
|
|
EXT4_INODES_PER_GROUP(sb), ino);
|
|
|
- if (ino >= EXT4_INODES_PER_GROUP(sb)) {
|
|
|
- if (++group == ngroups)
|
|
|
- group = 0;
|
|
|
- continue;
|
|
|
- }
|
|
|
+ if (ino >= EXT4_INODES_PER_GROUP(sb))
|
|
|
+ goto next_group;
|
|
|
if (group == 0 && (ino+1) < EXT4_FIRST_INO(sb)) {
|
|
|
ext4_error(sb, "reserved inode found cleared - "
|
|
|
"inode=%lu", ino + 1);
|
|
@@ -769,6 +766,9 @@ repeat_in_this_group:
|
|
|
goto got; /* we grabbed the inode! */
|
|
|
if (ino < EXT4_INODES_PER_GROUP(sb))
|
|
|
goto repeat_in_this_group;
|
|
|
+next_group:
|
|
|
+ if (++group == ngroups)
|
|
|
+ group = 0;
|
|
|
}
|
|
|
err = -ENOSPC;
|
|
|
goto out;
|