On Wed, Mar 16, 2022 at 11:39:48AM +0300, Dan Carpenter wrote: > This code checks "index" for an upper bound but it does not check for > negatives. Change the type to unsigned to prevent underflows. > > Fixes: 3c3c1f141639 ("RDMA/nldev: Allow optional-counter status configuration through RDMA netlink") > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > --- > Could we not use a nldev_policy[] to tighten the bounds checking even > more? We are doing it, when calling to nlmsg_parse() at the beginning of nldev_stat_set_doit(). The entry_attr, which used as input to index, is tb[RDMA_NLDEV_ATTR_STAT_HWCOUNTER_INDEX]. However it is not enough and we still need your change, because input can be large enough to be casted to negative value. Thanks, Reviewed-by: Leon Romanovsky <leonro@xxxxxxxxxx>