Re: [PATCH] applesmc: Bump max wait and rearrange udelay

From: Henrik Rydberg
Date: Sun Sep 16 2012 - 18:22:19 EST


Hi Parag,

> > On Sat, Sep 15, 2012 at 09:31:16PM -0700, Guenter Roeck wrote:
> > > That looks terribly complicated. Better keep the loop, and just replace
> > > udelay(us);
> > > with something like
> > > usleep_range(us, us << 1);
> > >
> > > Alternatively, just use a constant such as
> > > usleep_range(us, us + APPLESMC_MIN_WAIT);
> >
> Well I don't think there is anything terribly complicated there - but I
> tried to make it simpler. Below patch seems to work better for me for my
> normal workload - I got no failures or other oddities with the default
> 32ms timeout. I haven't tried very hard to get to the corner cases which
> earlier required a higher timeout.

What exact model is this?

In addition to Guenter's comments, it is not clear what part of this
patch makes things work for you. Is it a) the doubling of the wait
time, or b) the zero initial wait? Or c) just randomly a little bit
better?

If a), that is very valuable information, and the patch can be
simplified further. If b), just crank up the wait time and be done
with it. If c), well, then we don't have a case for a patch.

Also, it is not enough to test this on one machine, for fairly obvious
reasons. I don't mind testing on a couple of machines close by (MBA3,1
MBP10,1), once the comments have been addressed. However, a machine
from around 2008 should be tested as well, since they behave
differently.

> Henrik - if the below patch still results in failures we can
> revisit the long wait cases. For now I am satisfied that there aren't any
> normal case failures like before.

Well, I am satisfied once I know the patch will work on all supported
models.

Thanks.
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/