mirror of
https://github.com/koverstreet/bcachefs-tools.git
synced 2025-02-09 00:00:04 +03:00
cmd_migrate: fix memory leaks
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
2b28e8f7d2
commit
411eb2575e
@ -375,6 +375,7 @@ static void copy_file(struct bch_fs *c, struct bch_inode_unpacked *dst,
|
|||||||
fsync(src_fd);
|
fsync(src_fd);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
fiemap_iter_exit(&iter);
|
||||||
|
|
||||||
fiemap_for_each(src_fd, iter, e) {
|
fiemap_for_each(src_fd, iter, e) {
|
||||||
if ((e.fe_logical & (block_bytes(c) - 1)) ||
|
if ((e.fe_logical & (block_bytes(c) - 1)) ||
|
||||||
@ -408,6 +409,7 @@ static void copy_file(struct bch_fs *c, struct bch_inode_unpacked *dst,
|
|||||||
range_add(extents, e.fe_physical, e.fe_length);
|
range_add(extents, e.fe_physical, e.fe_length);
|
||||||
link_data(c, dst, e.fe_logical, e.fe_physical, e.fe_length);
|
link_data(c, dst, e.fe_logical, e.fe_physical, e.fe_length);
|
||||||
}
|
}
|
||||||
|
fiemap_iter_exit(&iter);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct copy_fs_state {
|
struct copy_fs_state {
|
||||||
@ -505,6 +507,7 @@ next:
|
|||||||
|
|
||||||
if (errno)
|
if (errno)
|
||||||
die("readdir error: %m");
|
die("readdir error: %m");
|
||||||
|
closedir(dir);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ranges reserve_new_fs_space(const char *file_path, unsigned block_size,
|
static ranges reserve_new_fs_space(const char *file_path, unsigned block_size,
|
||||||
@ -547,6 +550,7 @@ static ranges reserve_new_fs_space(const char *file_path, unsigned block_size,
|
|||||||
|
|
||||||
range_add(&extents, e.fe_physical, e.fe_length);
|
range_add(&extents, e.fe_physical, e.fe_length);
|
||||||
}
|
}
|
||||||
|
fiemap_iter_exit(&iter);
|
||||||
close(fd);
|
close(fd);
|
||||||
|
|
||||||
ranges_sort_merge(&extents);
|
ranges_sort_merge(&extents);
|
||||||
|
Loading…
Reference in New Issue
Block a user