IGET5_LOCKED(9) The Linux VFS IGET5_LOCKED(9)
NAME
iget5_locked - obtain an inode from a mounted file system
SYNOPSIS
struct inode * iget5_locked(struct super_block * sb, unsigned long hashval, int (*test) (struct inode *, void *),
int (*set) (struct inode *, void *), void * data);
ARGUMENTS
sb
super block of file system
hashval
hash value (usually inode number) to get
test
callback used for comparisons between inodes
set
callback used to initialize a new struct inode
data
opaque data pointer to pass to test and set
DESCRIPTION
iget5_locked uses ifind to search for the inode specified by hashval and data in the inode cache and if present it is returned with an
increased reference count. This is a generalized version of iget_locked for file systems where the inode number is not sufficient for
unique identification of an inode.
If the inode is not in cache, get_new_inode is called to allocate a new inode and this is returned locked, hashed, and with the I_NEW flag
set. The file system gets to fill it in before unlocking it via unlock_new_inode.
Note both test and set are called with the inode_lock held, so can't sleep.
COPYRIGHT
Kernel Hackers Manual 2.6. July 2010 IGET5_LOCKED(9)