Messages in this thread | | | Date | Thu, 8 May 2014 17:02:02 -0700 | Subject | Re: [PATCH] ARM: Don't ever downscale loops_per_jiffy in SMP systems | From | Doug Anderson <> |
| |
Russel,
On Thu, May 8, 2014 at 1:55 PM, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > On Thu, May 08, 2014 at 11:06:24AM -0700, Doug Anderson wrote: >> I guess I would say that my patch is unhacking the this code. The >> code after my patch is simpler. I would perhaps argue that (ec971ea >> ARM: add cpufreq transiton notifier to adjust loops_per_jiffy for smp) >> should never have landed to begin with. > > That depends on your point of view. As I've already pointed out through > the examples of why udelay() is inaccurate, for driver authors, they > should assume that udelay() just gives you an "approximate" delay and > it has no accuracy.
That disagrees with what Thomas Gleixner says at <http://lkml.iu.edu//hypermail/linux/kernel/1203.1/01034.html>. It also seems like perhaps the regulator core is broken, then... If a udelay(30) can end up as a udelay(20) then we may return from a regulator code 10us earlier than we should and we'll assume that a regulator is ramped before it really is...
I'm out tomorrow but I can confirm on Monday that I was really seeing udelay(30) be a udelay(20) without this patch.
| |