kernels/linux-2.4.0/fs/coda/cnode.c
/* this is effectively coda_iget:
   - get attributes (might be cached)
   - get the inode for the fid using vfs iget
   - link the two up if this is needed
   - fill in the attributes
*/
this is effectively coda_iget:
get attributes (might be cached)
get the inode for the fid using vfs iget
link the two up if this is needed
fill in the attributes
this is effectively coda_iget : get attributes ( might be cached ) get the inode for the fid using vfs iget link the two up if this is needed fill in the attributes
int coda_cnode_make(struct inode **inode, ViceFid *fid, struct super_block *sb)
{
        struct coda_vattr attr;
        int error;
        ENTRY;
	error = venus_getattr(sb, fid, &attr);
	if ( error ) {
	    CDEBUG(D_CNODE, 
		   "coda_cnode_make: coda_getvattr returned %d for %s.\n", 
		   error, coda_f2s(fid));
	    *inode = NULL;
	    EXIT;
	    return error;
	} 
	*inode = coda_iget(sb, fid, &attr);
	if ( IS_ERR(*inode) ) {
		printk("coda_cnode_make: coda_iget failed\n");
		EXIT;
                return PTR_ERR(*inode);
        }
	CDEBUG(D_DOWNCALL, "Done making inode: ino %ld, count %d with %s\n",
		(*inode)->i_ino, atomic_read(&(*inode)->i_count), 
		coda_f2s(&(*inode)->u.coda_i.c_fid));
        EXIT;
	return 0;
}
int coda_cnode_make ( struct inode * * inode , ViceFid * fid , struct super_block * sb ) { struct coda_vattr attr ; int error ; ENTRY ; error = venus_getattr ( sb , fid , & attr ) ; if ( error ) { CDEBUG ( D_CNODE , " \n " , error , coda_f2s ( fid ) ) ; * inode = NULL ; EXIT ; return error ; } * inode = coda_iget ( sb , fid , & attr ) ; if ( IS_ERR ( * inode ) ) { printk ( " \n " ) ; EXIT ; return PTR_ERR ( * inode ) ; } CDEBUG ( D_DOWNCALL , " \n " , ( * inode ) -> i_ino , atomic_read ( & ( * inode ) -> i_count ) , coda_f2s ( & ( * inode ) -> u . coda_i . c_fid ) ) ; EXIT ; return 0 ; }
this is effectively coda_iget:
 get attributes (might be cached)
 get the inode for the fid using vfs iget
 link the two up if this is needed
 fill in the attributes
this is effectively coda_iget : get attributes ( might be cached ) get the inode for the fid using vfs iget link the two up if this is needed fill in the attributes
/* We get inode numbers from Venus -- see venus source */