Re: [PATCH] xfs: re-organize XFS_ILOCK asserts in xfs_itruncate_extents()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 28, 2013 at 11:48:30AM -0500, Carlos Maiolino wrote:
| An logically OR'red assert for check an inode locked in XFS_ILOCK_EXCL and
| XFS_IOLOCK_EXCL looks better than the old way, avoiding possible mistakes while
| readin the code
| 
| Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx>
| ---
|  fs/xfs/xfs_inode.c | 5 +++--
|  1 file changed, 3 insertions(+), 2 deletions(-)
| 
| diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
| index 66282dc..f7efe77 100644
| --- a/fs/xfs/xfs_inode.c
| +++ b/fs/xfs/xfs_inode.c
| @@ -1395,9 +1395,10 @@ xfs_itruncate_extents(
|  	int			error = 0;
|  	int			done = 0;
|  
| -	ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL));
| -	ASSERT(!atomic_read(&VFS_I(ip)->i_count) ||
| +	ASSERT(xfs_isilocked(ip, XFS_ILOCK_EXCL) ||
|  	       xfs_isilocked(ip, XFS_IOLOCK_EXCL));
| +	ASSERT(!atomic_read(&VFS_I(ip)->i_count));
| +	ASSERT(!atomic_read(&VFS_I(ip)->i_count));
|  	ASSERT(new_size <= XFS_ISIZE(ip));
|  	ASSERT(tp->t_flags & XFS_TRANS_PERM_LOG_RES);
|  	ASSERT(ip->i_itemp != NULL);
| -- 
| 1.8.1

NACK.  You are changing the logic of the asserts.  The original first
assert indicates that the ILOCK is always locked.  The modified asserts
allow eith the ILOCK or the IOLOCK to be locked.  This is not correct.


Geoffrey

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux