On Fri, Jun 06, 2014 at 07:39:30PM -0700, Joe Perches wrote: > On Fri, 2014-06-06 at 21:41 -0400, Pranith Kumar wrote: > > On 06/06/2014 08:59 PM, Pranith Kumar wrote: > > > On 06/06/2014 08:18 PM, Dave Chinner wrote: > > >> If you are going to change the return type to bool, then you should > > >> also remove the manual "!!" conversions to a boolean return and let > > >> the compiler do it in the most optimal way. > > > Agreed, please find patch below: > > Simplify the "!!" condition. This is much simpler. :) > [] > > diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c > > > @@ -285,25 +285,25 @@ xfs_ilock_demote( > > } > > > > #if defined(DEBUG) || defined(XFS_WARN) > > -int > > +bool > > xfs_isilocked( > > xfs_inode_t *ip, > > uint lock_flags) > > { > > if (lock_flags & (XFS_ILOCK_EXCL|XFS_ILOCK_SHARED)) { > > if (!(lock_flags & XFS_ILOCK_SHARED)) > > - return !!ip->i_lock.mr_writer; > > + return (ip->i_lock.mr_writer != 0); > > simpler still would be just removing the !! completely. > I presume in no case would it make an actual difference > in emitted code. > > ie: > return ip->i_lock.mr_writer;
Yup, that's exactly what I meant. Casting to a bool type does all the work of squashing all non-zero values to 1... Cheers, Dave. -- Dave Chinner da...@fromorbit.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/