aboutsummaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2019-04-15 22:30:30 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2019-05-01 22:43:26 -0400
commit015d7956183b3943a1e101fa9911e1b5333bdc4b (patch)
tree43950bba0bba56edd03c8eb3160c77ccadee2414 /ipc
parent98835e884cb08cd811445e35d72a616790d7a1e5 (diff)
mqueue: switch to ->free_inode()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'ipc')
-rw-r--r--ipc/mqueue.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index aea30530c472..ba44164ea1f9 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -419,17 +419,11 @@ static struct inode *mqueue_alloc_inode(struct super_block *sb)
419 return &ei->vfs_inode; 419 return &ei->vfs_inode;
420} 420}
421 421
422static void mqueue_i_callback(struct rcu_head *head) 422static void mqueue_free_inode(struct inode *inode)
423{ 423{
424 struct inode *inode = container_of(head, struct inode, i_rcu);
425 kmem_cache_free(mqueue_inode_cachep, MQUEUE_I(inode)); 424 kmem_cache_free(mqueue_inode_cachep, MQUEUE_I(inode));
426} 425}
427 426
428static void mqueue_destroy_inode(struct inode *inode)
429{
430 call_rcu(&inode->i_rcu, mqueue_i_callback);
431}
432
433static void mqueue_evict_inode(struct inode *inode) 427static void mqueue_evict_inode(struct inode *inode)
434{ 428{
435 struct mqueue_inode_info *info; 429 struct mqueue_inode_info *info;
@@ -1562,7 +1556,7 @@ static const struct file_operations mqueue_file_operations = {
1562 1556
1563static const struct super_operations mqueue_super_ops = { 1557static const struct super_operations mqueue_super_ops = {
1564 .alloc_inode = mqueue_alloc_inode, 1558 .alloc_inode = mqueue_alloc_inode,
1565 .destroy_inode = mqueue_destroy_inode, 1559 .free_inode = mqueue_free_inode,
1566 .evict_inode = mqueue_evict_inode, 1560 .evict_inode = mqueue_evict_inode,
1567 .statfs = simple_statfs, 1561 .statfs = simple_statfs,
1568}; 1562};