diff options
author | David Teigland <teigland@redhat.com> | 2006-01-16 11:50:04 -0500 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-01-16 11:50:04 -0500 |
commit | b3b94faa5fe5968827ba0640ee9fba4b3e7f736e (patch) | |
tree | 70bd6068b050d2c46e338484f8b03fae4365c6c3 /fs/gfs2/inode.h | |
parent | f7825dcf8c7301cfd3724eb40c5b443cc85ab7b8 (diff) |
[GFS2] The core of GFS2
This patch contains all the core files for GFS2.
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/inode.h')
-rw-r--r-- | fs/gfs2/inode.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/fs/gfs2/inode.h b/fs/gfs2/inode.h new file mode 100644 index 000000000000..4df7da51f715 --- /dev/null +++ b/fs/gfs2/inode.h | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | * Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved. | ||
3 | * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved. | ||
4 | * | ||
5 | * This copyrighted material is made available to anyone wishing to use, | ||
6 | * modify, copy, or redistribute it subject to the terms and conditions | ||
7 | * of the GNU General Public License v.2. | ||
8 | */ | ||
9 | |||
10 | #ifndef __INODE_DOT_H__ | ||
11 | #define __INODE_DOT_H__ | ||
12 | |||
13 | static inline int gfs2_is_stuffed(struct gfs2_inode *ip) | ||
14 | { | ||
15 | return !ip->i_di.di_height; | ||
16 | } | ||
17 | |||
18 | static inline int gfs2_is_jdata(struct gfs2_inode *ip) | ||
19 | { | ||
20 | return ip->i_di.di_flags & GFS2_DIF_JDATA; | ||
21 | } | ||
22 | |||
23 | void gfs2_inode_attr_in(struct gfs2_inode *ip); | ||
24 | void gfs2_inode_attr_out(struct gfs2_inode *ip); | ||
25 | struct inode *gfs2_ip2v_lookup(struct gfs2_inode *ip); | ||
26 | struct inode *gfs2_ip2v(struct gfs2_inode *ip); | ||
27 | struct inode *gfs2_iget(struct super_block *sb, struct gfs2_inum *inum); | ||
28 | |||
29 | void gfs2_inode_min_init(struct gfs2_inode *ip, unsigned int type); | ||
30 | int gfs2_inode_refresh(struct gfs2_inode *ip); | ||
31 | |||
32 | int gfs2_inode_get(struct gfs2_glock *i_gl, | ||
33 | struct gfs2_inum *inum, int create, | ||
34 | struct gfs2_inode **ipp); | ||
35 | void gfs2_inode_hold(struct gfs2_inode *ip); | ||
36 | void gfs2_inode_put(struct gfs2_inode *ip); | ||
37 | void gfs2_inode_destroy(struct gfs2_inode *ip); | ||
38 | |||
39 | int gfs2_inode_dealloc(struct gfs2_sbd *sdp, struct gfs2_unlinked *ul); | ||
40 | |||
41 | int gfs2_change_nlink(struct gfs2_inode *ip, int diff); | ||
42 | int gfs2_lookupi(struct gfs2_inode *dip, struct qstr *name, int is_root, | ||
43 | struct gfs2_inode **ipp); | ||
44 | int gfs2_createi(struct gfs2_holder *ghs, struct qstr *name, unsigned int mode); | ||
45 | int gfs2_unlinki(struct gfs2_inode *dip, struct qstr *name, | ||
46 | struct gfs2_inode *ip, struct gfs2_unlinked *ul); | ||
47 | int gfs2_rmdiri(struct gfs2_inode *dip, struct qstr *name, | ||
48 | struct gfs2_inode *ip, struct gfs2_unlinked *ul); | ||
49 | int gfs2_unlink_ok(struct gfs2_inode *dip, struct qstr *name, | ||
50 | struct gfs2_inode *ip); | ||
51 | int gfs2_ok_to_move(struct gfs2_inode *this, struct gfs2_inode *to); | ||
52 | int gfs2_readlinki(struct gfs2_inode *ip, char **buf, unsigned int *len); | ||
53 | |||
54 | int gfs2_glock_nq_atime(struct gfs2_holder *gh); | ||
55 | int gfs2_glock_nq_m_atime(unsigned int num_gh, struct gfs2_holder *ghs); | ||
56 | |||
57 | void gfs2_try_toss_vnode(struct gfs2_inode *ip); | ||
58 | |||
59 | int gfs2_setattr_simple(struct gfs2_inode *ip, struct iattr *attr); | ||
60 | |||
61 | int gfs2_repermission(struct inode *inode, int mask, struct nameidata *nd); | ||
62 | |||
63 | static inline int gfs2_lookup_simple(struct gfs2_inode *dip, char *name, | ||
64 | struct gfs2_inode **ipp) | ||
65 | { | ||
66 | struct qstr qstr; | ||
67 | memset(&qstr, 0, sizeof(struct qstr)); | ||
68 | qstr.name = name; | ||
69 | qstr.len = strlen(name); | ||
70 | return gfs2_lookupi(dip, &qstr, 1, ipp); | ||
71 | } | ||
72 | |||
73 | #endif /* __INODE_DOT_H__ */ | ||
74 | |||