Re: [REGRESSION] rtc/interface.c: kills suspend-to-ram

From: Mark Lord
Date: Mon Apr 16 2012 - 11:42:22 EST


On 12-04-16 10:23 AM, richard -rw- weinberger wrote:
> On Mon, Apr 16, 2012 at 3:55 PM, Mark Lord <kernel@xxxxxxxxxxxx> wrote:
>> On 12-04-16 12:36 AM, Mark Lord wrote:
>>> Something recent has killed suspend-to-ram on a number of machines here.
>>> The symptom is that they suspend, but immediately wake up and panic,
>>> with just a black screen so no visible messages to go by.
>>>
>>> The patch below works around the issue -- making things work as they used to work.
>>>
>>> +++ linux/drivers/rtc/interface.c 2012-04-16 00:09:14.105387382 -0400
>>> @@ -773,7 +773,7 @@
>>> if (!rtc->ops || !rtc->ops->alarm_irq_enable)
>>> return;
>>>
>>> - rtc->ops->alarm_irq_enable(rtc->dev.parent, false);
>>> + //rtc->ops->alarm_irq_enable(rtc->dev.parent, false); // Kills suspend on ZBOX HD-ID41U
>>> }


How about the line above -- that's the commit that breaks things here.
Thanks!

>> Speaking of which -- that batch of RTC updates is riddled with bugs.
>> For example, this beauty from rtc-mpc5121.c in the same update:
>>
>> ...
>> rtc->rtc = rtc_device_register("mpc5200-rtc", &op->dev,
>> &mpc5200_rtc_ops, THIS_MODULE);
>> ...
>>
>> rtc->rtc->uie_unsupported = 1; // <<<< Ooops NULL pointer >>>>
>>
>> if (IS_ERR(rtc->rtc)) { // <<<< this needs to be earlier >>>>
>> err = PTR_ERR(rtc->rtc);
>> goto out_free_irq;
>> }
>> ...
..
> ---
> commit 4a649903f91232d02284d53724b0a45728111767
> Author: John Stultz <john.stultz@xxxxxxxxxx>
> Date: Tue Mar 6 17:16:09 2012 -0800
>
> rtc: Provide flag for rtc devices that don't support UIE
..
> CC: stable@xxxxxxxxxxxxxxx
> Reported-by: Richard Weinberger <richard@xxxxxx>
> Tested-by: Richard Weinberger <richard@xxxxxx>
> Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>
..

That commit is visibly buggy, but at least the fix is simple enough.
It's not what's breaking the systems here though.

Thanks again!


--
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/