On 2019/12/24 1:32, Darrick J. Wong wrote: > 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> Does this apply? I do not see it in linux-next > > --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 >> > . >