}
static int
+zpl_sync_fs(struct super_block *sb, int wait)
+{
+ cred_t *cr;
+ int error;
+
+ cr = (cred_t *)get_current_cred();
+ error = -zfs_sync(sb, wait, cr);
+ put_cred(cr);
+ ASSERT3S(error, <=, 0);
+
+ return (error);
+}
+
+static int
zpl_statfs(struct dentry *dentry, struct kstatfs *statp)
{
int error;
}
static int
+zpl_remount_fs(struct super_block *sb, int *flags, char *data)
+{
+ int error;
+ error = -zfs_remount(sb, flags, data);
+ ASSERT3S(error, <=, 0);
+
+ return (error);
+}
+
+static int
zpl_show_options(struct seq_file *seq, struct vfsmount *vfsp)
{
struct super_block *sb = vfsp->mnt_sb;
#endif /* HAVE_EVICT_INODE */
.put_super = zpl_put_super,
.write_super = NULL,
- .sync_fs = NULL,
- .freeze_fs = NULL,
- .unfreeze_fs = NULL,
+ .sync_fs = zpl_sync_fs,
.statfs = zpl_statfs,
- .remount_fs = NULL,
+ .remount_fs = zpl_remount_fs,
.show_options = zpl_show_options,
.show_stats = NULL,
};