Thread (1 message) 1 message, 1 author, 2016-03-27

Re: [PATCH] net: sxgbe: fix error paths in sxgbe_platform_probe()

From: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Date: 2016-03-27 21:40:29
Also in: lkml

On Sun, Mar 27 2016, Francois Romieu [off-list ref] wrote:
Rasmus Villemoes [off-list ref] :
quoted
We need to use post-decrement to ensure that irq_dispose_mapping is
also called on priv->rxq[0]->irq_no; moreover, if one of the above for
loops failed already at i==0 (so we reach one of these labels with
that value of i), we'll enter an essentially infinite loop of
out-of-bounds accesses.

Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
(ok, i is signed)

Reviewed-by: Francois Romieu <romieu@fr.zoreil.com>
Thanks for reviewing, but just FTR I want to point out that it doesn't
matter whether i is signed or not in

  while (i--)

However, when i is signed, there's another slightly less popular variant
which is equivalent:

  while (--i >= 0)

(a precondition for their equivalence is that i has a non-negative value
before reaching the while statement).

Neither are equivalent to the almost-always broken

  while (--i)

Rasmus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help