Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] ufs: switch to inode_inc_count, inode_dec_count

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Alexey Dobriyan and committed by
Linus Torvalds
3257545e a513b035

+18 -30
+18 -30
fs/ufs/namei.c
··· 43 43 #define UFSD(x) 44 44 #endif 45 45 46 - static inline void ufs_inc_count(struct inode *inode) 47 - { 48 - inode->i_nlink++; 49 - mark_inode_dirty(inode); 50 - } 51 - 52 - static inline void ufs_dec_count(struct inode *inode) 53 - { 54 - inode->i_nlink--; 55 - mark_inode_dirty(inode); 56 - } 57 - 58 46 static inline int ufs_add_nondir(struct dentry *dentry, struct inode *inode) 59 47 { 60 48 int err = ufs_add_link(dentry, inode); ··· 50 62 d_instantiate(dentry, inode); 51 63 return 0; 52 64 } 53 - ufs_dec_count(inode); 65 + inode_dec_link_count(inode); 54 66 iput(inode); 55 67 return err; 56 68 } ··· 161 173 return err; 162 174 163 175 out_fail: 164 - ufs_dec_count(inode); 176 + inode_dec_link_count(inode); 165 177 iput(inode); 166 178 goto out; 167 179 } ··· 179 191 } 180 192 181 193 inode->i_ctime = CURRENT_TIME_SEC; 182 - ufs_inc_count(inode); 194 + inode_inc_link_count(inode); 183 195 atomic_inc(&inode->i_count); 184 196 185 197 error = ufs_add_nondir(dentry, inode); ··· 196 208 goto out; 197 209 198 210 lock_kernel(); 199 - ufs_inc_count(dir); 211 + inode_inc_link_count(dir); 200 212 201 213 inode = ufs_new_inode(dir, S_IFDIR|mode); 202 214 err = PTR_ERR(inode); ··· 206 218 inode->i_op = &ufs_dir_inode_operations; 207 219 inode->i_fop = &ufs_dir_operations; 208 220 209 - ufs_inc_count(inode); 221 + inode_inc_link_count(inode); 210 222 211 223 err = ufs_make_empty(inode, dir); 212 224 if (err) ··· 222 234 return err; 223 235 224 236 out_fail: 225 - ufs_dec_count(inode); 226 - ufs_dec_count(inode); 237 + inode_dec_link_count(inode); 238 + inode_dec_link_count(inode); 227 239 iput (inode); 228 240 out_dir: 229 - ufs_dec_count(dir); 241 + inode_dec_link_count(dir); 230 242 unlock_kernel(); 231 243 goto out; 232 244 } ··· 248 260 goto out; 249 261 250 262 inode->i_ctime = dir->i_ctime; 251 - ufs_dec_count(inode); 263 + inode_dec_link_count(inode); 252 264 err = 0; 253 265 out: 254 266 unlock_kernel(); ··· 265 277 err = ufs_unlink(dir, dentry); 266 278 if (!err) { 267 279 inode->i_size = 0; 268 - ufs_dec_count(inode); 269 - ufs_dec_count(dir); 280 + inode_dec_link_count(inode); 281 + inode_dec_link_count(dir); 270 282 } 271 283 } 272 284 unlock_kernel(); ··· 307 319 new_de = ufs_find_entry (new_dentry, &new_bh); 308 320 if (!new_de) 309 321 goto out_dir; 310 - ufs_inc_count(old_inode); 322 + inode_inc_link_count(old_inode); 311 323 ufs_set_link(new_dir, new_de, new_bh, old_inode); 312 324 new_inode->i_ctime = CURRENT_TIME_SEC; 313 325 if (dir_de) 314 326 new_inode->i_nlink--; 315 - ufs_dec_count(new_inode); 327 + inode_dec_link_count(new_inode); 316 328 } else { 317 329 if (dir_de) { 318 330 err = -EMLINK; 319 331 if (new_dir->i_nlink >= UFS_LINK_MAX) 320 332 goto out_dir; 321 333 } 322 - ufs_inc_count(old_inode); 334 + inode_inc_link_count(old_inode); 323 335 err = ufs_add_link(new_dentry, old_inode); 324 336 if (err) { 325 - ufs_dec_count(old_inode); 337 + inode_dec_link_count(old_inode); 326 338 goto out_dir; 327 339 } 328 340 if (dir_de) 329 - ufs_inc_count(new_dir); 341 + inode_inc_link_count(new_dir); 330 342 } 331 343 332 344 ufs_delete_entry (old_dir, old_de, old_bh); 333 345 334 - ufs_dec_count(old_inode); 346 + inode_dec_link_count(old_inode); 335 347 336 348 if (dir_de) { 337 349 ufs_set_link(old_inode, dir_de, dir_bh, new_dir); 338 - ufs_dec_count(old_dir); 350 + inode_dec_link_count(old_dir); 339 351 } 340 352 unlock_kernel(); 341 353 return 0;