mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-25 23:52:17 +00:00
Btrfs-progs: add missing write check for mkfs
Assert that the writes of the device and chunk tree roots succeed. This verification is currently done for all other tree roots, however it was missing for those 2 trees. Would these tree root writes fail, but all others succeed, it would lead to a corrupted/incomplete btrfs filesystem, or, more likely some weird failure later on in mkfs.btrfs inside open_ctree(). Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> Signed-off-by: David Sterba <dsterba@suse.cz> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
This commit is contained in:
parent
705e76ee8d
commit
80bab0f18c
2
utils.c
2
utils.c
@ -346,6 +346,7 @@ int make_btrfs(int fd, const char *device, const char *label,
|
||||
btrfs_set_header_nritems(buf, nritems);
|
||||
csum_tree_block_size(buf, BTRFS_CRC32_SIZE, 0);
|
||||
ret = pwrite(fd, buf->data, leafsize, blocks[3]);
|
||||
BUG_ON(ret != leafsize);
|
||||
|
||||
/* create the device tree */
|
||||
memset(buf->data+sizeof(struct btrfs_header), 0,
|
||||
@ -381,6 +382,7 @@ int make_btrfs(int fd, const char *device, const char *label,
|
||||
btrfs_set_header_nritems(buf, nritems);
|
||||
csum_tree_block_size(buf, BTRFS_CRC32_SIZE, 0);
|
||||
ret = pwrite(fd, buf->data, leafsize, blocks[4]);
|
||||
BUG_ON(ret != leafsize);
|
||||
|
||||
/* create the FS root */
|
||||
memset(buf->data+sizeof(struct btrfs_header), 0,
|
||||
|
Loading…
Reference in New Issue
Block a user