Re: [PATCH v3]PM/Sleep: Timer quiesce in freeze state

From: Li, Aubrey
Date: Tue Jan 27 2015 - 02:13:10 EST


On 2015/1/26 22:45, Rafael J. Wysocki wrote:
> On Monday, January 26, 2015 03:15:43 PM Thomas Gleixner wrote:
>> On Mon, 26 Jan 2015, Rafael J. Wysocki wrote:
>>
>>> On Monday, January 26, 2015 10:40:24 AM Thomas Gleixner wrote:
>>>> On Mon, 26 Jan 2015, Li, Aubrey wrote:
>>>>> On 2015/1/22 18:15, Thomas Gleixner wrote:
>>>>>> Can we please stop adding more crap to that notifier thing? I rather
>>>>>> see that go away than being expanded.
>>>>>
>>>>> Are you referring to FREEZE_PREPARE or remove all of FREEZE staff at all?
>>>>>
>>>>> What's the disadvantage of adding more notifier?
>>>>
>>>> clockevents_notify() is not a notifier. Its a multiplex call and I
>>>> want to get rid of it and replace it with explicit functions.
>>>
>>> OK, so perhaps we need to move _SUSPEND/_RESUME out of there to start with?
>>>
>>> As far as I can say, clockevents_notify(CLOCK_EVT_NOTIFY_SUSPEND, NULL) and
>>> clockevents_notify(CLOCK_EVT_NOTIFY_RESUME, NULL) are each only called from
>>> one place and moreover, since they are in syscore_ops, we don't need any
>>> locking around them.
>>>
>>> So what about the patch below?
>>
>> I'm cleaning up the whole replacement of notify. The stuff below is
>> part of it.
>>
>>>
>>> - clockevents_notify(CLOCK_EVT_NOTIFY_SUSPEND, NULL);
>>> + tick_suspend();
>>> + tick_suspend_broadcast();
>>
>> That's exactly the stuff I don't want to see. Blind code
>> move.
>
> At least it's clear what the patch does. :-)
>
>> tick_suspend_broadcast() wants to be called from tick_suspend().
>
> OK
>
>> Still compiling and testing a gazillion of combinations.
>
> OK, so it looks like we need to wait with the suspend to idle changes until
> this lands.

Please cc the patches to me when you post. I'll refine the patch after that.

Thanks,
-Aubrey
--
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/