Diff for /xfs-linux/xfs_iget.c between versions 1.236 and 1.237

version 1.236, 2007/10/01 15:55:30 version 1.237, 2007/11/02 05:12:07
Line 140  again: Line 140  again:
                                 return ENOENT;                                  return ENOENT;
                         }                          }
   
                         /*  
                          * There may be transactions sitting in the  
                          * incore log buffers or being flushed to disk  
                          * at this time.  We can't clear the  
                          * XFS_IRECLAIMABLE flag until these  
                          * transactions have hit the disk, otherwise we  
                          * will void the guarantee the flag provides  
                          * xfs_iunpin()  
                          */  
                         if (xfs_ipincount(ip)) {  
                                 read_unlock(&pag->pag_ici_lock);  
                                 xfs_log_force(mp, 0,  
                                         XFS_LOG_FORCE|XFS_LOG_SYNC);  
                                 XFS_STATS_INC(xs_ig_frecycle);  
                                 goto again;  
                         }  
   
                         xfs_itrace_exit_tag(ip, "xfs_iget.alloc");                          xfs_itrace_exit_tag(ip, "xfs_iget.alloc");
   
                         XFS_STATS_INC(xs_ig_found);                          XFS_STATS_INC(xs_ig_found);
   
                         xfs_iflags_clear(ip, XFS_IRECLAIMABLE);                          xfs_iflags_clear(ip, XFS_IRECLAIMABLE);
                         read_unlock(&pag->pag_ici_lock);                          read_unlock(&pag->pag_ici_lock);
   

Removed from v.1.236  
changed lines
  Added in v.1.237


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>