On Mon, Dec 23, 2019 at 03:56:16PM +0800, zhengbin wrote: > Fixes coccicheck warning: > > fs/xfs/xfs_reflink.c:236:9-10: WARNING: return of 0/1 in function 'xfs_inode_need_cow' with return type bool > > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > Signed-off-by: zhengbin <zhengbin13@xxxxxxxxxx> > --- > fs/xfs/xfs_reflink.c | 2 +- > fs/xfs/xfs_reflink.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/fs/xfs/xfs_reflink.c b/fs/xfs/xfs_reflink.c > index de45123..21eeb94 100644 > --- a/fs/xfs/xfs_reflink.c > +++ b/fs/xfs/xfs_reflink.c > @@ -223,7 +223,7 @@ xfs_reflink_trim_around_shared( > } > } > > -bool > +int > xfs_inode_need_cow( I started to think "just fix this predicate so it doesn't return 1--" But then I realized that this is /not/ an inode predicate, it's a reflink trim wrapper for block mappings. "xfs_bmap_trim_cow" is a somewhat better name, so I'll commit this with a name change. And yeah, we turned negative errno into bool and back to int. Wow. Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > struct xfs_inode *ip, > struct xfs_bmbt_irec *imap, > diff --git a/fs/xfs/xfs_reflink.h b/fs/xfs/xfs_reflink.h > index d18ad7f..9a288b2 100644 > --- a/fs/xfs/xfs_reflink.h > +++ b/fs/xfs/xfs_reflink.h > @@ -22,7 +22,7 @@ extern int xfs_reflink_find_shared(struct xfs_mount *mp, struct xfs_trans *tp, > xfs_agblock_t *fbno, xfs_extlen_t *flen, bool find_maximal); > extern int xfs_reflink_trim_around_shared(struct xfs_inode *ip, > struct xfs_bmbt_irec *irec, bool *shared); > -bool xfs_inode_need_cow(struct xfs_inode *ip, struct xfs_bmbt_irec *imap, > +int xfs_inode_need_cow(struct xfs_inode *ip, struct xfs_bmbt_irec *imap, > bool *shared); > > int xfs_reflink_allocate_cow(struct xfs_inode *ip, struct xfs_bmbt_irec *imap, > -- > 2.7.4 >