return EIO; 
delay(1); goto retry; 
xfs_iget(	xfs_mount_t	*mp,	xfs_trans_t	*tp,	xfs_ino_t	ino,	uint		flags,	uint		lock_flags,	xfs_inode_t	**ipp,	xfs_daddr_t	bno){	struct inode	*inode;	vnode_t		*vp = NULL;	int		error;	XFS_STATS_INC(xs_ig_attempts);	if ((inode = iget_locked(XFS_MTOVFS(mp)->vfs_super, ino))) {		bhv_desc_t	*bdp;		xfs_inode_t	*ip;		int		newnode;		vp = LINVFS_GET_VP(inode);		if (inode->i_state & I_NEW) {inode_allocate:			vn_initialize(inode);			error = xfs_iget_core(vp, mp, tp, ino, flags,					lock_flags, ipp, bno);			if (error) {				vn_mark_bad(vp);				if (inode->i_state & I_NEW)					unlock_new_inode(inode);				iput(inode);			}		} else {			if (is_bad_inode(inode)) {				iput(inode);				return EIO;			}			bdp = vn_bhv_lookup(VN_BHV_HEAD(vp), &xfs_vnodeops);			if (bdp == NULL) {				XFS_STATS_INC(xs_ig_dup);				goto inode_allocate;			}			ip = XFS_BHVTOI(bdp);			if (lock_flags != 0)				xfs_ilock(ip, lock_flags);			newnode = (ip->i_d.di_mode == 0);			if (newnode)				xfs_iocore_inode_reinit(ip);			XFS_STATS_INC(xs_ig_found);			*ipp = ip;			error = 0;		}	} else		error = ENOMEM;	/* If we got no inode we are out of memory */	return error;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ba403ab43e896c57f32995ccba9a6bd6ec8dd1b9/xfs_iget.c/buggy/fs/xfs/xfs_iget.c