On Thu 19-01-23 13:44:43, Maxim Korotkov wrote: > the variable 'history' is of type u16, it may be an error > that the hweight32 macro was used for it > I guess macro hweight16 should be used > > Found by Linux Verification Center (linuxtesting.org) with SVACE. > > Fixes: 2a81490811d0 ("writeback: implement foreign cgroup inode detection") > Signed-off-by: Maxim Korotkov <korotkov.maxim.s@xxxxxxxxx> Looks good to me, although it is mostly a theoretical issue - I don't see how hweight32 could do any harm here. Anyway, feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > fs/fs-writeback.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c > index 6fba5a52127b..fc16123b2405 100644 > --- a/fs/fs-writeback.c > +++ b/fs/fs-writeback.c > @@ -829,7 +829,7 @@ void wbc_detach_inode(struct writeback_control *wbc) > * is okay. The main goal is avoiding keeping an inode on > * the wrong wb for an extended period of time. > */ > - if (hweight32(history) > WB_FRN_HIST_THR_SLOTS) > + if (hweight16(history) > WB_FRN_HIST_THR_SLOTS) > inode_switch_wbs(inode, max_id); > } > > -- > 2.37.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR