diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2015-10-19 13:16:49 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-10-21 07:48:26 -0700 |
commit | 50010c20597d14667eff0fdb628309986f195230 (patch) | |
tree | ddf7817ca710a0e7f6222d3c2764d4aa66ba2b94 | |
parent | ca88ea1247dfee094e2467a3578eaec9bdf0833a (diff) | |
download | linux-50010c20597d14667eff0fdb628309986f195230.tar.gz linux-50010c20597d14667eff0fdb628309986f195230.tar.bz2 linux-50010c20597d14667eff0fdb628309986f195230.zip |
irda: precedence bug in irlmp_seq_hb_idx()
This is decrementing the pointer, instead of the value stored in the
pointer. KASan detects it as an out of bounds reference.
Reported-by: "Berry Cheng 程君(成淼)" <chengmiao.cj@alibaba-inc.com>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/irda/irlmp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/irda/irlmp.c b/net/irda/irlmp.c index a26c401ef4a4..43964594aa12 100644 --- a/net/irda/irlmp.c +++ b/net/irda/irlmp.c @@ -1839,7 +1839,7 @@ static void *irlmp_seq_hb_idx(struct irlmp_iter_state *iter, loff_t *off) for (element = hashbin_get_first(iter->hashbin); element != NULL; element = hashbin_get_next(iter->hashbin)) { - if (!off || *off-- == 0) { + if (!off || (*off)-- == 0) { /* NB: hashbin left locked */ return element; } |