xfs: fixup xfs_attr_get_ilocked
authorChristoph Hellwig <hch@lst.de>
Thu, 13 Jul 2017 19:14:33 +0000 (12:14 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Thu, 13 Jul 2017 21:55:05 +0000 (14:55 -0700)
The comment mentioned the wrong lock.  Also add an ASSERT to assert
this locking precondition.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/xfs/libxfs/xfs_attr.c

index ef8a1c75a467ac9475c3625103ccdcdbbaf81912..de7b9bd30becc560195de8010261691750896549 100644 (file)
@@ -114,12 +114,14 @@ xfs_inode_hasattr(
  * Overall external interface routines.
  *========================================================================*/
 
-/* Retrieve an extended attribute and its value.  Must have iolock. */
+/* Retrieve an extended attribute and its value.  Must have ilock. */
 int
 xfs_attr_get_ilocked(
        struct xfs_inode        *ip,
        struct xfs_da_args      *args)
 {
+       ASSERT(xfs_isilocked(ip, XFS_ILOCK_SHARED | XFS_ILOCK_EXCL));
+
        if (!xfs_inode_hasattr(ip))
                return -ENOATTR;
        else if (ip->i_d.di_aformat == XFS_DINODE_FMT_LOCAL)