2019-05-31 11:09:56 +03:00
/* SPDX-License-Identifier: GPL-2.0-only */
2006-01-16 19:50:04 +03:00
/*
* Copyright ( C ) Sistina Software , Inc . 1997 - 2003 All rights reserved .
2006-05-18 23:09:15 +04:00
* Copyright ( C ) 2004 - 2006 Red Hat , Inc . All rights reserved .
2006-01-16 19:50:04 +03:00
*/
# ifndef __SUPER_DOT_H__
# define __SUPER_DOT_H__
2008-10-14 19:05:55 +04:00
# include <linux/fs.h>
# include <linux/dcache.h>
2006-09-05 18:39:21 +04:00
# include "incore.h"
2009-01-06 14:52:25 +03:00
extern void gfs2_lm_unmount ( struct gfs2_sbd * sdp ) ;
2006-01-16 19:50:04 +03:00
static inline unsigned int gfs2_jindex_size ( struct gfs2_sbd * sdp )
{
unsigned int x ;
spin_lock ( & sdp - > sd_jindex_spin ) ;
x = sdp - > sd_journals ;
spin_unlock ( & sdp - > sd_jindex_spin ) ;
return x ;
}
2009-07-31 14:07:29 +04:00
extern void gfs2_jindex_free ( struct gfs2_sbd * sdp ) ;
2008-12-19 18:32:06 +03:00
2009-01-06 14:52:25 +03:00
extern struct gfs2_jdesc * gfs2_jdesc_find ( struct gfs2_sbd * sdp , unsigned int jid ) ;
extern int gfs2_jdesc_check ( struct gfs2_jdesc * jd ) ;
extern int gfs2_lookup_in_master_dir ( struct gfs2_sbd * sdp , char * filename ,
struct gfs2_inode * * ipp ) ;
2006-01-16 19:50:04 +03:00
2009-01-06 14:52:25 +03:00
extern int gfs2_make_fs_rw ( struct gfs2_sbd * sdp ) ;
2019-03-27 17:46:00 +03:00
extern int gfs2_make_fs_ro ( struct gfs2_sbd * sdp ) ;
2009-07-31 14:07:29 +04:00
extern void gfs2_online_uevent ( struct gfs2_sbd * sdp ) ;
2009-01-06 14:52:25 +03:00
extern int gfs2_statfs_init ( struct gfs2_sbd * sdp ) ;
extern void gfs2_statfs_change ( struct gfs2_sbd * sdp , s64 total , s64 free ,
s64 dinodes ) ;
2009-06-26 00:09:51 +04:00
extern void gfs2_statfs_change_in ( struct gfs2_statfs_change_host * sc ,
const void * buf ) ;
2020-10-20 23:58:03 +03:00
extern void gfs2_statfs_change_out ( const struct gfs2_statfs_change_host * sc ,
void * buf ) ;
2009-06-26 00:09:51 +04:00
extern void update_statfs ( struct gfs2_sbd * sdp , struct buffer_head * m_bh ,
struct buffer_head * l_bh ) ;
2009-09-11 17:36:44 +04:00
extern int gfs2_statfs_sync ( struct super_block * sb , int type ) ;
2014-11-14 05:42:04 +03:00
extern void gfs2_freeze_func ( struct work_struct * work ) ;
2009-01-06 14:52:25 +03:00
2020-10-20 23:58:04 +03:00
extern void free_local_statfs_inodes ( struct gfs2_sbd * sdp ) ;
extern struct inode * find_local_statfs_inode ( struct gfs2_sbd * sdp ,
unsigned int index ) ;
2019-05-17 00:46:30 +03:00
extern void free_sbd ( struct gfs2_sbd * sdp ) ;
2008-10-14 19:05:55 +04:00
extern struct file_system_type gfs2_fs_type ;
extern struct file_system_type gfs2meta_fs_type ;
extern const struct export_operations gfs2_export_ops ;
extern const struct super_operations gfs2_super_ops ;
2009-02-20 09:00:05 +03:00
extern const struct dentry_operations gfs2_dops ;
2010-05-14 04:53:23 +04:00
extern const struct xattr_handler * gfs2_xattr_handlers [ ] ;
2008-10-14 19:05:55 +04:00
2006-01-16 19:50:04 +03:00
# endif /* __SUPER_DOT_H__ */