Lines Matching refs:object

55 static void release_inode(struct landlock_object *const object)  in release_inode()  argument
56 __releases(object->lock) in release_inode()
58 struct inode *const inode = object->underobj; in release_inode()
62 spin_unlock(&object->lock); in release_inode()
70 object->underobj = NULL; in release_inode()
77 spin_unlock(&object->lock); in release_inode()
84 rcu_assign_pointer(landlock_inode(inode)->object, NULL); in release_inode()
256 struct landlock_object *object, *new_object; in get_inode_object() local
261 object = rcu_dereference(inode_sec->object); in get_inode_object()
262 if (object) { in get_inode_object()
263 if (likely(refcount_inc_not_zero(&object->usage))) { in get_inode_object()
265 return object; in get_inode_object()
271 spin_lock(&object->lock); in get_inode_object()
272 spin_unlock(&object->lock); in get_inode_object()
290 if (unlikely(rcu_access_pointer(inode_sec->object))) { in get_inode_object()
305 rcu_assign_pointer(inode_sec->object, new_object); in get_inode_object()
342 id.key.object = get_inode_object(d_backing_inode(path->dentry)); in landlock_append_fs_rule()
343 if (IS_ERR(id.key.object)) in landlock_append_fs_rule()
344 return PTR_ERR(id.key.object); in landlock_append_fs_rule()
352 landlock_put_object(id.key.object); in landlock_append_fs_rule()
379 id.key.object = rcu_dereference(landlock_inode(inode)->object); in find_rule()
1262 WARN_ON_ONCE(inode_sec->object); in hook_inode_free_security_rcu()
1281 struct landlock_object *object; in hook_sb_delete() local
1305 object = rcu_dereference(landlock_inode(inode)->object); in hook_sb_delete()
1306 if (!object) { in hook_sb_delete()
1320 spin_lock(&object->lock); in hook_sb_delete()
1321 if (object->underobj == inode) { in hook_sb_delete()
1322 object->underobj = NULL; in hook_sb_delete()
1323 spin_unlock(&object->lock); in hook_sb_delete()
1333 rcu_assign_pointer(landlock_inode(inode)->object, NULL); in hook_sb_delete()
1344 spin_unlock(&object->lock); in hook_sb_delete()