]> asedeno.scripts.mit.edu Git - linux.git/commit
RDMA/hns: Fix comparison of unsigned long variable 'end' with less than zero
authorColin Ian King <colin.king@canonical.com>
Fri, 31 May 2019 09:21:00 +0000 (10:21 +0100)
committerJason Gunthorpe <jgg@mellanox.com>
Wed, 24 Jul 2019 19:26:54 +0000 (16:26 -0300)
commita511f82218fb14b3d6fbbce3c35759aa4920a734
tree33af8d9033a76231ea67d10e1d38ea807ac4c0f6
parentecc53f8a3c097d13f4b6793855e0bd30a63a5c3a
RDMA/hns: Fix comparison of unsigned long variable 'end' with less than zero

Currently the comparison of end with less than zero is always false
because end is an unsigned long.  Also, replace checks of end with
non-zero with end > 0 as it is possible that the #defined decrement may be
changed in the future causing end to step over zero and go negative.

The initialization of end with 0 is also redundant as this value is never
read and is later set to HW_SYNC_TIMEOUT_MSECS, so fix this by
initializing it with this value to begin with.

Link: https://lore.kernel.org/r/20190531092101.28772-1-colin.king@canonical.com
Addresses-Coverity: ("Unsigned compared against 0")
Fixes: 669cefb654cb ("RDMA/hns: Remove jiffies operation in disable interrupt context")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/hns/hns_roce_hem.c
drivers/infiniband/hw/hns/hns_roce_hw_v1.c