X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Fllite%2Fsuper25.c;h=5c5b9db613d6c23b548e2eda0d3914d634d0f660;hp=30397af4bf5b974b82d36eeaca0f05c40996e415;hb=3973cf8dc955c773a5f9da13216252644aa3949f;hpb=598c48707cffbb813058f74bb1e663bcdde3c80e diff --git a/lustre/llite/super25.c b/lustre/llite/super25.c index 30397af..5c5b9db 100644 --- a/lustre/llite/super25.c +++ b/lustre/llite/super25.c @@ -70,17 +70,28 @@ static void ll_destroy_inode(struct inode *inode) call_rcu(&inode->i_rcu, ll_inode_destroy_callback); } +static int ll_drop_inode(struct inode *inode) +{ + int drop = generic_drop_inode(inode); + + if (!drop) + drop = llcrypt_drop_inode(inode); + + return drop; +} + /* exported operations */ struct super_operations lustre_super_operations = { - .alloc_inode = ll_alloc_inode, - .destroy_inode = ll_destroy_inode, - .evict_inode = ll_delete_inode, - .put_super = ll_put_super, - .statfs = ll_statfs, - .umount_begin = ll_umount_begin, - .remount_fs = ll_remount_fs, - .show_options = ll_show_options, + .alloc_inode = ll_alloc_inode, + .destroy_inode = ll_destroy_inode, + .drop_inode = ll_drop_inode, + .evict_inode = ll_delete_inode, + .put_super = ll_put_super, + .statfs = ll_statfs, + .umount_begin = ll_umount_begin, + .remount_fs = ll_remount_fs, + .show_options = ll_show_options, }; static int __init lustre_init(void)