super.c (bc030d6cb9532877c1c5a3f5e7123344fa24a285) super.c (fa0d7e3de6d6fc5004ad9dea0dd6b286af8f03e9)
1/* AFS superblock handling
2 *
3 * Copyright (c) 2002, 2007 Red Hat, Inc. All rights reserved.
4 *
5 * This software may be freely redistributed under the terms of the
6 * GNU General Public License.
7 *
8 * You should have received a copy of the GNU General Public License

--- 484 unchanged lines hidden (view full) ---

493 vnode->update_cnt = 0;
494 vnode->flags = 1 << AFS_VNODE_UNSET;
495 vnode->cb_promised = false;
496
497 _leave(" = %p", &vnode->vfs_inode);
498 return &vnode->vfs_inode;
499}
500
1/* AFS superblock handling
2 *
3 * Copyright (c) 2002, 2007 Red Hat, Inc. All rights reserved.
4 *
5 * This software may be freely redistributed under the terms of the
6 * GNU General Public License.
7 *
8 * You should have received a copy of the GNU General Public License

--- 484 unchanged lines hidden (view full) ---

493 vnode->update_cnt = 0;
494 vnode->flags = 1 << AFS_VNODE_UNSET;
495 vnode->cb_promised = false;
496
497 _leave(" = %p", &vnode->vfs_inode);
498 return &vnode->vfs_inode;
499}
500
501static void afs_i_callback(struct rcu_head *head)
502{
503 struct inode *inode = container_of(head, struct inode, i_rcu);
504 struct afs_vnode *vnode = AFS_FS_I(inode);
505 INIT_LIST_HEAD(&inode->i_dentry);
506 kmem_cache_free(afs_inode_cachep, vnode);
507}
508
501/*
502 * destroy an AFS inode struct
503 */
504static void afs_destroy_inode(struct inode *inode)
505{
506 struct afs_vnode *vnode = AFS_FS_I(inode);
507
508 _enter("%p{%x:%u}", inode, vnode->fid.vid, vnode->fid.vnode);
509
510 _debug("DESTROY INODE %p", inode);
511
512 ASSERTCMP(vnode->server, ==, NULL);
513
509/*
510 * destroy an AFS inode struct
511 */
512static void afs_destroy_inode(struct inode *inode)
513{
514 struct afs_vnode *vnode = AFS_FS_I(inode);
515
516 _enter("%p{%x:%u}", inode, vnode->fid.vid, vnode->fid.vnode);
517
518 _debug("DESTROY INODE %p", inode);
519
520 ASSERTCMP(vnode->server, ==, NULL);
521
514 kmem_cache_free(afs_inode_cachep, vnode);
522 call_rcu(&inode->i_rcu, afs_i_callback);
515 atomic_dec(&afs_count_active_inodes);
516}
517
518/*
519 * return information about an AFS volume
520 */
521static int afs_statfs(struct dentry *dentry, struct kstatfs *buf)
522{

--- 27 unchanged lines hidden ---
523 atomic_dec(&afs_count_active_inodes);
524}
525
526/*
527 * return information about an AFS volume
528 */
529static int afs_statfs(struct dentry *dentry, struct kstatfs *buf)
530{

--- 27 unchanged lines hidden ---