Subject: Re: [patch v2] qlcnic: fix a timeout loop

From: Dan Carpenter <[email-masked]>
Date: Tue, 15 Dec 2015 23:17:34 +0300

On Tue, Dec 15, 2015 at 11:13:50PM +0300, Dan Carpenter wrote:
> On Tue, Dec 15, 2015 at 01:13:41PM -0500, David Miller wrote:
> > From: Dan Carpenter <[email-masked]>
> > Date: Tue, 15 Dec 2015 16:56:16 +0300
> > 
> > > The problem here is that at the end of the loop we test for if
> > > idc->vnic_wait_limit is zero, but since idc->vnic_wait_limit-- is a
> > > post-op, it actually ends up set to (u8)-1.  I have fixed this by
> > > moving the decrement inside the loop.
> > > 
> > > Fixes: 486a5bc77a4a ('qlcnic: Add support for 83xx suspend and resume.')
> > > Signed-off-by: Dan Carpenter <[email-masked]>
> > 
> > Applied.
> 
> Ugh...  I appologize, I just noticed a mistake in this one.  I have to
> do the decrement at the end of the loop and not the start of the loop.
> 

Nope.  I'm wrong again.  My original patch was the correct way to do
this.  Otherwise you can end up with state == QLCNIC_DEV_NPAR_OPER and
->vnic_wait_limit set to zero.

regards,
dan carpenter