.\" This documentation was generated from the book titled "The Linux Kernel API", which is part of the Linux kernel source. .\" .\" This documentation comes with the following legal notice: .\" .\" This documentation is free software; you can redistribute .\" it and/or modify it under the terms of the GNU General Public .\" License as published by the Free Software Foundation; either .\" version 2 of the License, or (at your option) any later .\" version. .\" .\" This program is distributed in the hope that it will be .\" useful, but WITHOUT ANY WARRANTY; without even the implied .\" warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .\" See the GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this program; if not, write to the Free .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, .\" MA 02111-1307 USA .\" .\" For more details see the file COPYING in the source .\" distribution of Linux. .\" .\" For comments on the formatting of this manpage, please contact Michael Still .\" This manpage has been automatically generated by docbook2man .\" from a DocBook document. This tool can be found at: .\" .\" Please send any bug reports, improvements, comments, patches, .\" etc. to Steve Cheng . .TH "IGET5_LOCKED" "9" "14 August 2003" "" "" .SH NAME iget5_locked \- obtain an inode from a mounted file system .SH SYNOPSIS .sp \fB .sp struct inode * iget5_locked (struct super_block * \fIsb\fB, unsigned long \fIhashval\fB, int (*\fItest\fB) struct inode *, void *, int (*\fIset\fB) struct inode *, void *, void * \fIdata\fB); \fR .SH "ARGUMENTS" .TP \fB\fIsb\fB\fR super block of file system .TP \fB\fIhashval\fB\fR hash value (usually inode number) to get .TP \fB\fItest\fB\fR callback used for comparisons between inodes .TP \fB\fIset\fB\fR callback used to initialize a new struct inode .TP \fB\fIdata\fB\fR opaque data pointer to pass to \fItest\fR and \fIset\fR .SH "DESCRIPTION" .PP This is \fBiget\fR without the \fBread_inode\fR portion of \fBget_new_inode\fR. .PP \fBiget5_locked\fR uses \fBifind\fR to search for the inode specified by \fIhashval\fR and \fIdata\fR in the inode cache and if present it is returned with an increased reference count. This is a generalized version of \fBiget_locked\fR for file systems where the inode number is not sufficient for unique identification of an inode. .PP If the inode is not in cache, \fBget_new_inode\fR 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 \fBunlock_new_inode\fR. .PP Note both \fItest\fR and \fIset\fR are called with the inode_lock held, so can't sleep. .SH "ABOUT THIS DOCUMENT" .PP This documentation was generated with kernel version 2.6.0.