static ssize_t freeze_store(struct gfs2_sbd *sdp, const char *buf, size_t len) { ssize_t ret = len; int error = 0; int n = simple_strtol(buf, NULL, 0); if (!capable(CAP_SYS_ADMIN)) return -EACCES; switch (n) { case 0: gfs2_unfreeze_fs(sdp); break; case 1: error = gfs2_freeze_fs(sdp); break; default: ret = -EINVAL; } if (error) fs_warn(sdp, "freeze %d error %d", n, error); return ret; }
static void gfs2_unlockfs(struct super_block *sb) { gfs2_unfreeze_fs(sb->s_fs_info); }
static int gfs2_unfreeze(struct super_block *sb) { gfs2_unfreeze_fs(sb->s_fs_info); return 0; }