struct mkfs_opts {
struct lustre_disk_data mo_ldd; /* to be written in MOUNT_DATA_FILE */
char mo_device[128]; /* disk device name */
+ char **mo_pool_vdevs; /* list of pool vdevs */
char mo_loopdev[128]; /* in case a loop dev is needed */
char mo_mkfsopts[512]; /* options to the backing-store mkfs */
__u64 mo_device_sz; /* in KB */
int get_param(char *buf, char *key, char **val);
char *strscat(char *dst, char *src, int buflen);
char *strscpy(char *dst, char *src, int buflen);
+int check_mtab_entry(char *spec1, char *spec2, char *mntpt, char *type);
+int update_mtab_entry(char *spec, char *mtpt, char *type, char *opts,
+ int flags, int freq, int pass);
+int check_mountfsoptions(char *mountopts, char *wanted_mountopts, int justwarn);
+void trim_mountfsoptions(char *s);
__u64 get_device_size(char* device);
int is_block(char *devname);
int read_local_files(struct mkfs_opts *mop);
int is_lustre_target(struct mkfs_opts *mop);
+/* loopback helper functions */
+int file_create(char *path, int size);
+int loop_format(struct mkfs_opts *mop);
+int loop_setup(struct mkfs_opts *mop);
+int loop_cleanup(struct mkfs_opts *mop);
+
+/* generic target support */
+int osd_write_ldd(struct mkfs_opts *mop);
+int osd_read_ldd(char *dev, struct lustre_disk_data *ldd);
+int osd_is_lustre(char *dev, unsigned *mount_type);
+int osd_make_lustre(struct mkfs_opts *mop);
+int osd_prepare_lustre(struct mkfs_opts *mop,
+ char *default_mountopts, int default_len,
+ char *always_mountopts, int always_len);
+
+int ldiskfs_write_ldd(struct mkfs_opts *mop);
+int ldiskfs_read_ldd(char *dev, struct lustre_disk_data *ldd);
+int ldiskfs_is_lustre(char *dev, unsigned *mount_type);
+int ldiskfs_make_lustre(struct mkfs_opts *mop);
+int ldiskfs_prepare_lustre(struct mkfs_opts *mop,
+ char *default_mountopts, int default_len,
+ char *always_mountopts, int always_len);
+
#endif