summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2006-09-05 18:39:21 +0400
committerSteven Whitehouse <swhiteho@redhat.com>2006-09-05 18:39:21 +0400
commitf2f7ba5237e2fe10ba3e328a4f728b9e1ff141da (patch)
treeab55597fa51321ba74e60d17b6fb449e23e8145c
parent2bdbc5d73961c040fdc9b30d985fab3047d697a0 (diff)
downloadlinux-f2f7ba5237e2fe10ba3e328a4f728b9e1ff141da.tar.xz
[GFS2] Make headers compile on their own
As per Jan Engelhardt's comments, this should make all the headers compile on their own by including and/or declaring structures early. Cc: Jan Engelhardt <jengelh@linux01.gwdg.de> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
-rw-r--r--fs/gfs2/acl.h2
-rw-r--r--fs/gfs2/bmap.h4
-rw-r--r--fs/gfs2/dir.h6
-rw-r--r--fs/gfs2/eaops.h1
-rw-r--r--fs/gfs2/eattr.h3
-rw-r--r--fs/gfs2/glock.h2
-rw-r--r--fs/gfs2/glops.h2
-rw-r--r--fs/gfs2/incore.h2
-rw-r--r--fs/gfs2/lm.h2
-rw-r--r--fs/gfs2/log.h4
-rw-r--r--fs/gfs2/lops.h3
-rw-r--r--fs/gfs2/meta_io.h4
-rw-r--r--fs/gfs2/mount.h2
-rw-r--r--fs/gfs2/ops_address.h4
-rw-r--r--fs/gfs2/ops_dentry.h2
-rw-r--r--fs/gfs2/ops_file.h4
-rw-r--r--fs/gfs2/ops_fstype.h2
-rw-r--r--fs/gfs2/ops_inode.h2
-rw-r--r--fs/gfs2/ops_super.h2
-rw-r--r--fs/gfs2/ops_vm.h2
-rw-r--r--fs/gfs2/quota.h3
-rw-r--r--fs/gfs2/recovery.h2
-rw-r--r--fs/gfs2/rgrp.h4
-rw-r--r--fs/gfs2/super.h2
-rw-r--r--fs/gfs2/sys.h3
-rw-r--r--fs/gfs2/trans.h9
-rw-r--r--fs/gfs2/util.h1
27 files changed, 77 insertions, 2 deletions
diff --git a/fs/gfs2/acl.h b/fs/gfs2/acl.h
index 5856ba764680..05c294fe0d78 100644
--- a/fs/gfs2/acl.h
+++ b/fs/gfs2/acl.h
@@ -10,6 +10,8 @@
#ifndef __ACL_DOT_H__
#define __ACL_DOT_H__
+#include "incore.h"
+
#define GFS2_POSIX_ACL_ACCESS "posix_acl_access"
#define GFS2_POSIX_ACL_ACCESS_LEN 16
#define GFS2_POSIX_ACL_DEFAULT "posix_acl_default"
diff --git a/fs/gfs2/bmap.h b/fs/gfs2/bmap.h
index cb3b624fea31..503f1cdda290 100644
--- a/fs/gfs2/bmap.h
+++ b/fs/gfs2/bmap.h
@@ -10,6 +10,10 @@
#ifndef __BMAP_DOT_H__
#define __BMAP_DOT_H__
+struct inode;
+struct gfs2_inode;
+struct page;
+
int gfs2_unstuff_dinode(struct gfs2_inode *ip, struct page *page);
int gfs2_block_map(struct inode *inode, u64 lblock, int *new, u64 *dblock, int *boundary);
int gfs2_extent_map(struct inode *inode, u64 lblock, int *new, u64 *dblock, unsigned *extlen);
diff --git a/fs/gfs2/dir.h b/fs/gfs2/dir.h
index d32449f0839c..371233419b07 100644
--- a/fs/gfs2/dir.h
+++ b/fs/gfs2/dir.h
@@ -10,6 +10,12 @@
#ifndef __DIR_DOT_H__
#define __DIR_DOT_H__
+#include <linux/dcache.h>
+
+struct inode;
+struct gfs2_inode;
+struct gfs2_inum;
+
/**
* gfs2_filldir_t - Report a directory entry to the caller of gfs2_dir_read()
* @opaque: opaque data used by the function
diff --git a/fs/gfs2/eaops.h b/fs/gfs2/eaops.h
index 1c27700ee8b8..b045897e1e83 100644
--- a/fs/gfs2/eaops.h
+++ b/fs/gfs2/eaops.h
@@ -11,6 +11,7 @@
#define __EAOPS_DOT_H__
struct gfs2_ea_request;
+struct gfs2_inode;
struct gfs2_eattr_operations {
int (*eo_get) (struct gfs2_inode *ip, struct gfs2_ea_request *er);
diff --git a/fs/gfs2/eattr.h b/fs/gfs2/eattr.h
index 85c70c335c59..cb7c2d846765 100644
--- a/fs/gfs2/eattr.h
+++ b/fs/gfs2/eattr.h
@@ -10,6 +10,9 @@
#ifndef __EATTR_DOT_H__
#define __EATTR_DOT_H__
+struct gfs2_inode;
+struct iattr;
+
#define GFS2_EA_REC_LEN(ea) be32_to_cpu((ea)->ea_rec_len)
#define GFS2_EA_DATA_LEN(ea) be32_to_cpu((ea)->ea_data_len)
diff --git a/fs/gfs2/glock.h b/fs/gfs2/glock.h
index 4762cdb04f64..2e1d32866321 100644
--- a/fs/gfs2/glock.h
+++ b/fs/gfs2/glock.h
@@ -10,6 +10,8 @@
#ifndef __GLOCK_DOT_H__
#define __GLOCK_DOT_H__
+#include "incore.h"
+
/* Flags for lock requests; used in gfs2_holder gh_flag field.
From lm_interface.h:
#define LM_FLAG_TRY 0x00000001
diff --git a/fs/gfs2/glops.h b/fs/gfs2/glops.h
index ba943e473665..a1d9b5b024e6 100644
--- a/fs/gfs2/glops.h
+++ b/fs/gfs2/glops.h
@@ -10,6 +10,8 @@
#ifndef __GLOPS_DOT_H__
#define __GLOPS_DOT_H__
+#include "incore.h"
+
extern const struct gfs2_glock_operations gfs2_meta_glops;
extern const struct gfs2_glock_operations gfs2_inode_glops;
extern const struct gfs2_glock_operations gfs2_rgrp_glops;
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 407afd18fa2e..225924ca6b3e 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -10,6 +10,8 @@
#ifndef __INCORE_DOT_H__
#define __INCORE_DOT_H__
+#include <linux/fs.h>
+
#define DIO_FORCE 0x00000001
#define DIO_CLEAN 0x00000002
#define DIO_DIRTY 0x00000004
diff --git a/fs/gfs2/lm.h b/fs/gfs2/lm.h
index dbef88852ef3..6b890e73e6c1 100644
--- a/fs/gfs2/lm.h
+++ b/fs/gfs2/lm.h
@@ -10,6 +10,8 @@
#ifndef __LM_DOT_H__
#define __LM_DOT_H__
+struct gfs2_sbd;
+
#define GFS2_MIN_LVB_SIZE 32
int gfs2_lm_mount(struct gfs2_sbd *sdp, int silent);
diff --git a/fs/gfs2/log.h b/fs/gfs2/log.h
index 80764e388bb2..7f5737d55612 100644
--- a/fs/gfs2/log.h
+++ b/fs/gfs2/log.h
@@ -10,6 +10,10 @@
#ifndef __LOG_DOT_H__
#define __LOG_DOT_H__
+#include <linux/list.h>
+#include <linux/spinlock.h>
+#include "incore.h"
+
/**
* gfs2_log_lock - acquire the right to mess with the log manager
* @sdp: the filesystem
diff --git a/fs/gfs2/lops.h b/fs/gfs2/lops.h
index 2e3365c2b101..5839c05ae6be 100644
--- a/fs/gfs2/lops.h
+++ b/fs/gfs2/lops.h
@@ -10,6 +10,9 @@
#ifndef __LOPS_DOT_H__
#define __LOPS_DOT_H__
+#include <linux/list.h>
+#include "incore.h"
+
extern const struct gfs2_log_operations gfs2_glock_lops;
extern const struct gfs2_log_operations gfs2_buf_lops;
extern const struct gfs2_log_operations gfs2_revoke_lops;
diff --git a/fs/gfs2/meta_io.h b/fs/gfs2/meta_io.h
index 9a9acc940292..086a472df3f1 100644
--- a/fs/gfs2/meta_io.h
+++ b/fs/gfs2/meta_io.h
@@ -10,6 +10,10 @@
#ifndef __DIO_DOT_H__
#define __DIO_DOT_H__
+#include <linux/buffer_head.h>
+#include <linux/string.h>
+#include "incore.h"
+
static inline void gfs2_buffer_clear(struct buffer_head *bh)
{
memset(bh->b_data, 0, bh->b_size);
diff --git a/fs/gfs2/mount.h b/fs/gfs2/mount.h
index 8a21897b63e5..401288acfdf3 100644
--- a/fs/gfs2/mount.h
+++ b/fs/gfs2/mount.h
@@ -10,6 +10,8 @@
#ifndef __MOUNT_DOT_H__
#define __MOUNT_DOT_H__
+struct gfs2_sbd;
+
int gfs2_mount_args(struct gfs2_sbd *sdp, char *data_arg, int remount);
#endif /* __MOUNT_DOT_H__ */
diff --git a/fs/gfs2/ops_address.h b/fs/gfs2/ops_address.h
index 6c07aa2bd98a..35aaee4aa7e1 100644
--- a/fs/gfs2/ops_address.h
+++ b/fs/gfs2/ops_address.h
@@ -10,6 +10,10 @@
#ifndef __OPS_ADDRESS_DOT_H__
#define __OPS_ADDRESS_DOT_H__
+#include <linux/fs.h>
+#include <linux/buffer_head.h>
+#include <linux/mm.h>
+
extern const struct address_space_operations gfs2_file_aops;
extern int gfs2_get_block(struct inode *inode, sector_t lblock,
struct buffer_head *bh_result, int create);
diff --git a/fs/gfs2/ops_dentry.h b/fs/gfs2/ops_dentry.h
index e7b05e5c62ec..5caa3db4d3f5 100644
--- a/fs/gfs2/ops_dentry.h
+++ b/fs/gfs2/ops_dentry.h
@@ -10,6 +10,8 @@
#ifndef __OPS_DENTRY_DOT_H__
#define __OPS_DENTRY_DOT_H__
+#include <linux/dcache.h>
+
extern struct dentry_operations gfs2_dops;
#endif /* __OPS_DENTRY_DOT_H__ */
diff --git a/fs/gfs2/ops_file.h b/fs/gfs2/ops_file.h
index b1c1bf838ec9..ce319f89ec8e 100644
--- a/fs/gfs2/ops_file.h
+++ b/fs/gfs2/ops_file.h
@@ -9,6 +9,10 @@
#ifndef __OPS_FILE_DOT_H__
#define __OPS_FILE_DOT_H__
+
+#include <linux/fs.h>
+struct gfs2_inode;
+
extern struct file gfs2_internal_file_sentinel;
extern int gfs2_internal_read(struct gfs2_inode *ip,
struct file_ra_state *ra_state,
diff --git a/fs/gfs2/ops_fstype.h b/fs/gfs2/ops_fstype.h
index b85ecce3ca6b..7cc2c296271b 100644
--- a/fs/gfs2/ops_fstype.h
+++ b/fs/gfs2/ops_fstype.h
@@ -10,6 +10,8 @@
#ifndef __OPS_FSTYPE_DOT_H__
#define __OPS_FSTYPE_DOT_H__
+#include <linux/fs.h>
+
extern struct file_system_type gfs2_fs_type;
extern struct file_system_type gfs2meta_fs_type;
diff --git a/fs/gfs2/ops_inode.h b/fs/gfs2/ops_inode.h
index 6f4b54783d29..b15acb4fd34c 100644
--- a/fs/gfs2/ops_inode.h
+++ b/fs/gfs2/ops_inode.h
@@ -10,6 +10,8 @@
#ifndef __OPS_INODE_DOT_H__
#define __OPS_INODE_DOT_H__
+#include <linux/fs.h>
+
extern struct inode_operations gfs2_file_iops;
extern struct inode_operations gfs2_dir_iops;
extern struct inode_operations gfs2_symlink_iops;
diff --git a/fs/gfs2/ops_super.h b/fs/gfs2/ops_super.h
index cbc4f73e9a92..9de73f042f78 100644
--- a/fs/gfs2/ops_super.h
+++ b/fs/gfs2/ops_super.h
@@ -10,6 +10,8 @@
#ifndef __OPS_SUPER_DOT_H__
#define __OPS_SUPER_DOT_H__
+#include <linux/fs.h>
+
extern struct super_operations gfs2_super_ops;
#endif /* __OPS_SUPER_DOT_H__ */
diff --git a/fs/gfs2/ops_vm.h b/fs/gfs2/ops_vm.h
index d5ba4b9c50fd..4ae8f43ed5e3 100644
--- a/fs/gfs2/ops_vm.h
+++ b/fs/gfs2/ops_vm.h
@@ -10,6 +10,8 @@
#ifndef __OPS_VM_DOT_H__
#define __OPS_VM_DOT_H__
+#include <linux/mm.h>
+
extern struct vm_operations_struct gfs2_vm_ops_private;
extern struct vm_operations_struct gfs2_vm_ops_sharewrite;
diff --git a/fs/gfs2/quota.h b/fs/gfs2/quota.h
index d93c61c99365..a8be1417051f 100644
--- a/fs/gfs2/quota.h
+++ b/fs/gfs2/quota.h
@@ -10,6 +10,9 @@
#ifndef __QUOTA_DOT_H__
#define __QUOTA_DOT_H__
+struct gfs2_inode;
+struct gfs2_sbd;
+
#define NO_QUOTA_CHANGE ((u32)-1)
int gfs2_quota_hold(struct gfs2_inode *ip, u32 uid, u32 gid);
diff --git a/fs/gfs2/recovery.h b/fs/gfs2/recovery.h
index 1b35516b7591..961feedf4d8b 100644
--- a/fs/gfs2/recovery.h
+++ b/fs/gfs2/recovery.h
@@ -10,6 +10,8 @@
#ifndef __RECOVERY_DOT_H__
#define __RECOVERY_DOT_H__
+#include "incore.h"
+
static inline void gfs2_replay_incr_blk(struct gfs2_sbd *sdp, unsigned int *blk)
{
if (++*blk == sdp->sd_jdesc->jd_blocks)
diff --git a/fs/gfs2/rgrp.h b/fs/gfs2/rgrp.h
index 3d6ae37e85df..355895767387 100644
--- a/fs/gfs2/rgrp.h
+++ b/fs/gfs2/rgrp.h
@@ -10,6 +10,10 @@
#ifndef __RGRP_DOT_H__
#define __RGRP_DOT_H__
+struct gfs2_rgrpd;
+struct gfs2_sbd;
+struct gfs2_holder;
+
void gfs2_rgrp_verify(struct gfs2_rgrpd *rgd);
struct gfs2_rgrpd *gfs2_blk2rgrpd(struct gfs2_sbd *sdp, u64 blk);
diff --git a/fs/gfs2/super.h b/fs/gfs2/super.h
index b073300a93e8..5fa5119cfba6 100644
--- a/fs/gfs2/super.h
+++ b/fs/gfs2/super.h
@@ -10,6 +10,8 @@
#ifndef __SUPER_DOT_H__
#define __SUPER_DOT_H__
+#include "incore.h"
+
void gfs2_tune_init(struct gfs2_tune *gt);
int gfs2_check_sb(struct gfs2_sbd *sdp, struct gfs2_sb *sb, int silent);
diff --git a/fs/gfs2/sys.h b/fs/gfs2/sys.h
index f8c01b50bfba..1ca8cdac5304 100644
--- a/fs/gfs2/sys.h
+++ b/fs/gfs2/sys.h
@@ -10,6 +10,9 @@
#ifndef __SYS_DOT_H__
#define __SYS_DOT_H__
+#include <linux/spinlock.h>
+struct gfs2_sbd;
+
/* Allow args to be passed to GFS2 when using an initial ram disk */
extern char *gfs2_sys_margs;
extern spinlock_t gfs2_sys_margs_lock;
diff --git a/fs/gfs2/trans.h b/fs/gfs2/trans.h
index 6550d3d18263..23d4cbe1de5b 100644
--- a/fs/gfs2/trans.h
+++ b/fs/gfs2/trans.h
@@ -10,6 +10,11 @@
#ifndef __TRANS_DOT_H__
#define __TRANS_DOT_H__
+#include <linux/buffer_head.h>
+struct gfs2_sbd;
+struct gfs2_rgrpd;
+struct gfs2_glock;
+
#define RES_DINODE 1
#define RES_INDIRECT 1
#define RES_JDATA 1
@@ -20,8 +25,8 @@
#define RES_STATFS 1
#define RES_QUOTA 2
-int gfs2_trans_begin(struct gfs2_sbd *sdp,
- unsigned int blocks, unsigned int revokes);
+int gfs2_trans_begin(struct gfs2_sbd *sdp, unsigned int blocks,
+ unsigned int revokes);
void gfs2_trans_end(struct gfs2_sbd *sdp);
diff --git a/fs/gfs2/util.h b/fs/gfs2/util.h
index 204fdb81e34d..76a50899fe9e 100644
--- a/fs/gfs2/util.h
+++ b/fs/gfs2/util.h
@@ -10,6 +10,7 @@
#ifndef __UTIL_DOT_H__
#define __UTIL_DOT_H__
+#include "incore.h"
#define fs_printk(level, fs, fmt, arg...) \
printk(level "GFS2: fsid=%s: " fmt , (fs)->sd_fsname , ## arg)