]>
Commit | Line | Data |
---|---|---|
00e5a55c BS |
1 | From: Jeff Mahoney <jeffm@suse.com> |
2 | Subject: reiserfs: move static initialization to cache constructor | |
3 | ||
4 | Currently reiserfs duplicates code in init_inode and reiserfs_new_inode. | |
5 | Neither is called from the reiserfs_inode_cache constructor, init_once. | |
6 | ||
7 | This patch moves the static initialization there. | |
8 | ||
9 | Signed-off-by: Jeff Mahoney <jeffm@suse.com> | |
10 | --- | |
11 | fs/reiserfs/inode.c | 26 -------------------------- | |
12 | fs/reiserfs/super.c | 11 ++++++++++- | |
13 | include/linux/reiserfs_xattr.h | 8 -------- | |
14 | 3 files changed, 10 insertions(+), 35 deletions(-) | |
15 | ||
16 | --- a/fs/reiserfs/inode.c | |
17 | +++ b/fs/reiserfs/inode.c | |
18 | @@ -1123,17 +1123,6 @@ static void init_inode(struct inode *ino | |
19 | ||
20 | copy_key(INODE_PKEY(inode), &(ih->ih_key)); | |
21 | ||
22 | - INIT_LIST_HEAD(&(REISERFS_I(inode)->i_prealloc_list)); | |
23 | - REISERFS_I(inode)->i_flags = 0; | |
24 | - REISERFS_I(inode)->i_prealloc_block = 0; | |
25 | - REISERFS_I(inode)->i_prealloc_count = 0; | |
26 | - REISERFS_I(inode)->i_trans_id = 0; | |
27 | - REISERFS_I(inode)->i_jl = NULL; | |
28 | - mutex_init(&(REISERFS_I(inode)->i_mmap)); | |
29 | - reiserfs_init_acl_access(inode); | |
30 | - reiserfs_init_acl_default(inode); | |
31 | - reiserfs_init_xattr_rwsem(inode); | |
32 | - | |
33 | if (stat_data_v1(ih)) { | |
34 | struct stat_data_v1 *sd = | |
35 | (struct stat_data_v1 *)B_I_PITEM(bh, ih); | |
36 | @@ -1149,9 +1138,6 @@ static void init_inode(struct inode *ino | |
37 | inode->i_atime.tv_sec = sd_v1_atime(sd); | |
38 | inode->i_mtime.tv_sec = sd_v1_mtime(sd); | |
39 | inode->i_ctime.tv_sec = sd_v1_ctime(sd); | |
40 | - inode->i_atime.tv_nsec = 0; | |
41 | - inode->i_ctime.tv_nsec = 0; | |
42 | - inode->i_mtime.tv_nsec = 0; | |
43 | ||
44 | inode->i_blocks = sd_v1_blocks(sd); | |
45 | inode->i_generation = le32_to_cpu(INODE_PKEY(inode)->k_dir_id); | |
46 | @@ -1194,9 +1180,6 @@ static void init_inode(struct inode *ino | |
47 | inode->i_mtime.tv_sec = sd_v2_mtime(sd); | |
48 | inode->i_atime.tv_sec = sd_v2_atime(sd); | |
49 | inode->i_ctime.tv_sec = sd_v2_ctime(sd); | |
50 | - inode->i_ctime.tv_nsec = 0; | |
51 | - inode->i_mtime.tv_nsec = 0; | |
52 | - inode->i_atime.tv_nsec = 0; | |
53 | inode->i_blocks = sd_v2_blocks(sd); | |
54 | rdev = sd_v2_rdev(sd); | |
55 | if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) | |
56 | @@ -1821,18 +1804,9 @@ int reiserfs_new_inode(struct reiserfs_t | |
57 | U32_MAX /*NO_BYTES_IN_DIRECT_ITEM */ ; | |
58 | ||
59 | INIT_LIST_HEAD(&(REISERFS_I(inode)->i_prealloc_list)); | |
60 | - REISERFS_I(inode)->i_flags = 0; | |
61 | - REISERFS_I(inode)->i_prealloc_block = 0; | |
62 | - REISERFS_I(inode)->i_prealloc_count = 0; | |
63 | - REISERFS_I(inode)->i_trans_id = 0; | |
64 | - REISERFS_I(inode)->i_jl = NULL; | |
65 | REISERFS_I(inode)->i_attrs = | |
66 | REISERFS_I(dir)->i_attrs & REISERFS_INHERIT_MASK; | |
67 | sd_attrs_to_i_attrs(REISERFS_I(inode)->i_attrs, inode); | |
68 | - mutex_init(&(REISERFS_I(inode)->i_mmap)); | |
69 | - reiserfs_init_acl_access(inode); | |
70 | - reiserfs_init_acl_default(inode); | |
71 | - reiserfs_init_xattr_rwsem(inode); | |
72 | ||
73 | if (old_format_only(sb)) | |
74 | make_le_item_head(&ih, NULL, KEY_FORMAT_3_5, SD_OFFSET, | |
75 | --- a/fs/reiserfs/super.c | |
76 | +++ b/fs/reiserfs/super.c | |
77 | @@ -524,8 +524,17 @@ static void init_once(void *foo) | |
78 | { | |
79 | struct reiserfs_inode_info *ei = (struct reiserfs_inode_info *)foo; | |
80 | ||
81 | - INIT_LIST_HEAD(&ei->i_prealloc_list); | |
82 | inode_init_once(&ei->vfs_inode); | |
83 | + INIT_LIST_HEAD(&ei->i_prealloc_list); | |
84 | + mutex_init(&ei->i_mmap); | |
85 | +#ifdef CONFIG_REISERFS_FS_XATTR | |
86 | + init_rwsem(&ei->xattr_sem); | |
87 | +#endif | |
88 | + ei->i_flags = 0; | |
89 | + ei->i_prealloc_block = 0; | |
90 | + ei->i_prealloc_count = 0; | |
91 | + ei->i_trans_id = 0; | |
92 | + ei->i_jl = NULL; | |
93 | #ifdef CONFIG_REISERFS_FS_POSIX_ACL | |
94 | ei->i_acl_access = NULL; | |
95 | ei->i_acl_default = NULL; | |
96 | --- a/include/linux/reiserfs_xattr.h | |
97 | +++ b/include/linux/reiserfs_xattr.h | |
98 | @@ -109,11 +109,6 @@ static inline void reiserfs_mark_inode_p | |
99 | inode->i_flags |= S_PRIVATE; | |
100 | } | |
101 | ||
102 | -static inline void reiserfs_init_xattr_rwsem(struct inode *inode) | |
103 | -{ | |
104 | - init_rwsem(&REISERFS_I(inode)->xattr_sem); | |
105 | -} | |
106 | - | |
107 | #else | |
108 | ||
109 | #define is_reiserfs_priv_object(inode) 0 | |
110 | @@ -146,9 +141,6 @@ static inline int reiserfs_xattr_init(st | |
111 | sb->s_flags = (sb->s_flags & ~MS_POSIXACL); /* to be sure */ | |
112 | return 0; | |
113 | }; | |
114 | -static inline void reiserfs_init_xattr_rwsem(struct inode *inode) | |
115 | -{ | |
116 | -} | |
117 | #endif /* CONFIG_REISERFS_FS_XATTR */ | |
118 | ||
119 | #endif /* __KERNEL__ */ |