schedule_timeout sleeps too long after dividing CPU frequency
Russell King - ARM Linux
linux at arm.linux.org.uk
Fri May 15 04:58:53 PDT 2015
On Fri, May 15, 2015 at 12:36:10PM +0200, Mason wrote:
> On 15/05/2015 11:51, Russell King - ARM Linux wrote:
>
> > As you don't say which kernel version you're using,
>
> Sorry about that, I thought the patch-generating command
> I posted conveyed the information.
>
> $ git diff v3.14.41 HEAD >tango.patch && xz tango.patch
>
> I'm using the 3.14.y branch from linux-stable.
So you're using a kernel over a year old...
> > for all we know, you might be using a version which omits some fixes
> > in this area, such as this one which you really must have if your
> > timer is operating in period mode:
> >
> > fe79a9ba1196 clockevents: Adjust timer interval when frequency changes
>
> Hmmm, according to git log, this patch was accepted during
> the 3.14-rc2 merge window. Why didn't it make it for 3.14?
No it wasn't:
$ git describe --contains fe79a9ba1196
v3.15-rc1~123^2~12
It was merged during the merge window immediately preceding v3.15-rc1.
> By any chance, is there a patch that would allow the platform
> to get high-resolution timers when using smp_twd?
I think you'll have to do the research for that yourself... what
I can say is that TWD is capable of one-shot mode, and is capable
of running as a high-res timer:
Per CPU device: 0
Clock Event Device: local_timer
max_delta_ns: 21691754031
min_delta_ns: 1000
mult: 425201762
shift: 31
mode: 3 <== CLOCK_EVT_MODE_ONESHOT
next_event: 595603944000000 nsecs
set_next_event: twd_set_next_event
set_mode: twd_set_mode
event_handler: hrtimer_interrupt <== indicates that it's switched
to high-res mode
retries: 0
--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
More information about the linux-arm-kernel
mailing list