Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ */
0002 /*
0003  * NILFS checkpoint file.
0004  *
0005  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
0006  *
0007  * Written by Koji Sato.
0008  */
0009 
0010 #ifndef _NILFS_CPFILE_H
0011 #define _NILFS_CPFILE_H
0012 
0013 #include <linux/fs.h>
0014 #include <linux/buffer_head.h>
0015 #include <linux/nilfs2_api.h>       /* nilfs_cpstat */
0016 #include <linux/nilfs2_ondisk.h>    /* nilfs_inode, nilfs_checkpoint */
0017 
0018 
0019 int nilfs_cpfile_get_checkpoint(struct inode *, __u64, int,
0020                 struct nilfs_checkpoint **,
0021                 struct buffer_head **);
0022 void nilfs_cpfile_put_checkpoint(struct inode *, __u64, struct buffer_head *);
0023 int nilfs_cpfile_delete_checkpoints(struct inode *, __u64, __u64);
0024 int nilfs_cpfile_delete_checkpoint(struct inode *, __u64);
0025 int nilfs_cpfile_change_cpmode(struct inode *, __u64, int);
0026 int nilfs_cpfile_is_snapshot(struct inode *, __u64);
0027 int nilfs_cpfile_get_stat(struct inode *, struct nilfs_cpstat *);
0028 ssize_t nilfs_cpfile_get_cpinfo(struct inode *, __u64 *, int, void *,
0029                 unsigned int, size_t);
0030 
0031 int nilfs_cpfile_read(struct super_block *sb, size_t cpsize,
0032               struct nilfs_inode *raw_inode, struct inode **inodep);
0033 
0034 #endif  /* _NILFS_CPFILE_H */