btrfs-progs: update CHANGES for v4.16.1
[platform/upstream/btrfs-progs.git] / mkfs / rootdir.h
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public
4  * License v2 as published by the Free Software Foundation.
5  *
6  * This program is distributed in the hope that it will be useful,
7  * but WITHOUT ANY WARRANTY; without even the implied warranty of
8  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
9  * General Public License for more details.
10  *
11  * You should have received a copy of the GNU General Public
12  * License along with this program.
13  */
14
15 /*
16  * Defines and functions declarations for mkfs --rootdir
17  */
18
19 #ifndef __BTRFS_MKFS_ROOTDIR_H__
20 #define __BTRFS_MKFS_ROOTDIR_H__
21
22 #include "kernel-lib/list.h"
23
24 struct directory_name_entry {
25         const char *dir_name;
26         char *path;
27         ino_t inum;
28         struct list_head list;
29 };
30
31 int btrfs_mkfs_fill_dir(const char *source_dir, struct btrfs_root *root,
32                         bool verbose);
33 u64 btrfs_mkfs_size_dir(const char *dir_name, u32 sectorsize, u64 min_dev_size,
34                         u64 meta_profile, u64 data_profile);
35 int btrfs_mkfs_shrink_fs(struct btrfs_fs_info *fs_info, u64 *new_size_ret,
36                          bool shrink_file_size);
37
38 #endif