CPU hotplug issue w/ 0647065 clocksource: Add generic dummy timer driver
Stephen Warren
swarren at wwwdotorg.org
Wed Jul 10 12:09:17 EDT 2013
On 07/09/2013 05:05 PM, Stephen Boyd wrote:
> On 07/09, Stephen Warren wrote:
>> On 07/09/2013 10:35 AM, Stephen Boyd wrote:
>>> On 07/09, Stephen Warren wrote:
>>>> On 07/08/2013 06:58 PM, Stephen Boyd wrote:
>>>>> On 07/08, Stephen Warren wrote:
>>>>>> CPU hotplug (replug) on Tegra HW seems to be occasionally broken due to
>>>>>> commit 0647065 "clocksource: Add generic dummy timer driver" in
>>>>>> linux-next. Reverting that commit solves the issue.
...
> Can you try this patch?
That seems to work great, thanks! I successfully unpugged/replugged CPU1
about 200 times, whereas without the patch I'd usually see the problem
about 10% of replug attempts.
Tested-by: Stephen Warren <swarren at nvidia.com>
> diff --git a/kernel/time/tick-broadcast.c b/kernel/time/tick-broadcast.c
> index 6d3f916..218bcb5 100644
> --- a/kernel/time/tick-broadcast.c
> +++ b/kernel/time/tick-broadcast.c
> @@ -157,7 +157,10 @@ int tick_device_uses_broadcast(struct clock_event_device *dev, int cpu)
> dev->event_handler = tick_handle_periodic;
> tick_device_setup_broadcast_func(dev);
> cpumask_set_cpu(cpu, tick_broadcast_mask);
> - tick_broadcast_start_periodic(bc);
> + if (tick_broadcast_device.mode == TICKDEV_MODE_PERIODIC)
> + tick_broadcast_start_periodic(bc);
> + else
> + tick_broadcast_setup_oneshot(bc);
> ret = 1;
> } else {
> /*
>
More information about the linux-arm-kernel
mailing list