devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felipe Balbi <balbi@ti.com>
To: Johan Hovold <johan@kernel.org>
Cc: "Felipe Balbi" <balbi@ti.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Alessandro Zummo" <a.zummo@towertech.it>,
	"Tony Lindgren" <tony@atomide.com>,
	"Benoît Cousson" <bcousson@baylibre.com>,
	"Lokesh Vutla" <lokeshvutla@ti.com>,
	"Guenter Roeck" <linux@roeck-us.net>,
	nsekhar@ti.com, t-kristo@ti.com, j-keerthy@ti.com,
	linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	devicetree@vger.kernel.org, rtc-linux@googlegroups.com,
	linux-kernel@vger.kernel.org,
	"Russell King" <rmk+kernel@arm.linux.org.uk>
Subject: Re: [PATCH v2 00/20] rtc: omap: fixes and power-off feature
Date: Fri, 24 Oct 2014 14:44:42 -0500	[thread overview]
Message-ID: <20141024194442.GG11455@saruman> (raw)
In-Reply-To: <20141024193655.GD19377@localhost>

[-- Attachment #1: Type: text/plain, Size: 5898 bytes --]

On Fri, Oct 24, 2014 at 09:36:55PM +0200, Johan Hovold wrote:
> On Fri, Oct 24, 2014 at 02:29:48PM -0500, Felipe Balbi wrote:
> > Hi,
> > 
> > On Fri, Oct 24, 2014 at 02:25:40PM -0500, Felipe Balbi wrote:
> > > On Fri, Oct 24, 2014 at 09:02:51PM +0200, Johan Hovold wrote:
> > > > [ +CC: Russell ]
> > > > 
> > > > On Fri, Oct 24, 2014 at 11:08:45AM -0500, Felipe Balbi wrote:
> > > > 
> > > > > I tested this entire series with my BBB and it still works fine. However
> > > > > I still get below panic. This time without any DRM errors:
> > > > > 
> > > > > [   63.087832] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
> > > > > [   63.087832] 
> > > > > [   63.097399] CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted 3.18.0-rc1-00095-g8524e69 #556
> > > > > [   63.106060] [<c00175a4>] (unwind_backtrace) from [<c00132f0>] (show_stack+0x20/0x24)
> > > > > [   63.114160] [<c00132f0>] (show_stack) from [<c0657404>] (dump_stack+0x8c/0xa4)
> > > > > [   63.121706] [<c0657404>] (dump_stack) from [<c0654f70>] (panic+0xa0/0x220)
> > > > > [   63.128895] [<c0654f70>] (panic) from [<c0049e64>] (do_exit+0x974/0x9d0)
> > > > > [   63.135900] [<c0049e64>] (do_exit) from [<c006775c>] (SyS_reboot+0x14c/0x1e8)
> > > > > [   63.143361] [<c006775c>] (SyS_reboot) from [<c000f080>] (ret_fast_syscall+0x0/0x48)
> > > > > [   63.151596] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
> > > > > 
> > > > > Then again, this also happens by simply calling poweroff without
> > > > > enabling wakealarm.
> > > > 
> > > > Bah, I forgot to look into that. I haven't seen this myself as I don't
> > > > use systemd (which does the syscall from process 0).
> > > > 
> > > > Some driver power-off implementations and some arch machine_power_off
> > > > spin indefinitely (or use an mdelay and WARN) after trying to power off.
> > > > 
> > > > I think this is really a bug in arch/arm that should be fixed
> > > > analogously to how failed reboot is handled in machine_restart().
> > > > 
> > > > Care to try the patch below?
> > > > 
> > > > I should still add a two-second delay to rtc-omap to avoid the arch
> > > > error message.
> > > > 
> > > > Andrew, can you update one patch in the series or should I just resend
> > > > them all (with proper Tested-by tags)?
> > > > 
> > > > > In any case, for the whole series:
> > > > > 
> > > > > Tested-by: Felipe Balbi <balbi@ti.com>
> > > > 
> > > > Thanks for testing!
> > > > 
> > > > Johan
> > > > 
> > > > 
> > > > >From aaa1d1d6171c895b6966ba5b738ac7946ada97c7 Mon Sep 17 00:00:00 2001
> > > > From: Johan Hovold <johan@kernel.org>
> > > > Date: Fri, 24 Oct 2014 18:53:09 +0200
> > > > Subject: [PATCH] ARM: fix failed power-off handling
> > > > 
> > > > Make sure to handle failed power off by printing an error message and
> > > > halting (analogously to how failed reboot is handled).
> > > > 
> > > > Power off can fail for example if the hardware has not been wired up
> > > > correctly.
> > > > 
> > > > This avoids a kernel panic when called from process 0:
> > > > 
> > > > [   63.087832] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
> > > > [   63.087832]
> > > > [   63.097399] CPU: 0 PID: 1 Comm: systemd-shutdow Not tainted 3.18.0-rc1-00095-g8524e69 #556
> > > > [   63.106060] [<c00175a4>] (unwind_backtrace) from [<c00132f0>] (show_stack+0x20/0x24)
> > > > [   63.114160] [<c00132f0>] (show_stack) from [<c0657404>] (dump_stack+0x8c/0xa4)
> > > > [   63.121706] [<c0657404>] (dump_stack) from [<c0654f70>] (panic+0xa0/0x220)
> > > > [   63.128895] [<c0654f70>] (panic) from [<c0049e64>] (do_exit+0x974/0x9d0)
> > > > [   63.135900] [<c0049e64>] (do_exit) from [<c006775c>] (SyS_reboot+0x14c/0x1e8)
> > > > [   63.143361] [<c006775c>] (SyS_reboot) from [<c000f080>] (ret_fast_syscall+0x0/0x48)
> > > > [   63.151596] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
> > > > 
> > > > Signed-off-by: Johan Hovold <johan@kernel.org>
> > > > ---
> > > >  arch/arm/kernel/process.c | 6 ++++++
> > > >  1 file changed, 6 insertions(+)
> > > > 
> > > > diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c
> > > > index a35f6ebbd2c2..68c38af5687c 100644
> > > > --- a/arch/arm/kernel/process.c
> > > > +++ b/arch/arm/kernel/process.c
> > > > @@ -212,6 +212,12 @@ void machine_power_off(void)
> > > >  
> > > >  	if (pm_power_off)
> > > >  		pm_power_off();
> > > > +
> > > > +	/* Give a grace period for failure to power off */
> > > > +	mdelay(1000);
> > > > +
> > > > +	pr_err("Power off failed -- system halted\n");
> > > > +	while (1);
> > > >  }
> > > 
> > > with this I always get to "Power off failed -- system halted". If I
> > > switch to v3.18-rc1 vanilla, then it works. So it's definitely caused by
> > > your rtc-only patches.
> 
> That's expected (see below). It works with v3.18-rc1 vanilla because
> machine_halt is called instead of machine_power_off as there is no
> registered power-off handler.

yeah, that much I figured :-)

> > ok, so it seems like it takes more than 1 second for things to
> > propagate. If I increase that mdelay() to 3000, then everything works
> > fine on my end. I think we should get RMK's input on this 3000ms delay
> > to machine_power_off(). Should it be generic, or should we add it to our
> > rtc pm_power_off implementation ?
> 
> As I wrote above, we still need a 2-second mdelay in rtc-omap, which I
> intend to add to the pmic_power_en patch.

oh, alright then. If you can Cc me, I'll make sure to test that too ;-)

> The one-second delay is there in machine_power_off to catch most cases
> which wouldn't take nearly as long as rtc-omap and hence wouldn't be
> adding an explicit delay in the driver power-off handler.

alright.

-- 
balbi

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  reply	other threads:[~2014-10-24 19:44 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-09 19:06 [PATCH 00/12] rtc: omap: fixes and power-off feature Johan Hovold
2014-10-09 19:06 ` [PATCH 01/12] rtc: omap: fix clock-source configuration Johan Hovold
2014-10-10 17:55   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 02/12] rtc: omap: fix missing wakealarm attribute Johan Hovold
2014-10-10 17:55   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 03/12] rtc: omap: fix class-device registration Johan Hovold
2014-10-10 17:59   ` Felipe Balbi
2014-10-11  9:59     ` Johan Hovold
2014-10-13 15:57       ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 04/12] rtc: omap: remove unused register-base define Johan Hovold
2014-10-10 17:59   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 05/12] rtc: omap: remove redundant debug message Johan Hovold
2014-10-10 17:59   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 06/12] rtc: omap: use dev_info and dev_dbg Johan Hovold
2014-10-10 18:00   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 07/12] rtc: omap: silence bogus power-up reset message at probe Johan Hovold
2014-10-10 18:00   ` Felipe Balbi
2014-10-10 18:02     ` Felipe Balbi
2014-10-11 10:20       ` Johan Hovold
2014-10-12  0:50         ` Felipe Balbi
2014-10-12 18:42           ` Johan Hovold
2014-10-13 15:56             ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 08/12] rtc: omap: restore irq state after reading TC registers Johan Hovold
2014-10-10 18:02   ` Felipe Balbi
2014-10-11 10:12     ` Johan Hovold
2014-10-12  0:47       ` Felipe Balbi
2014-10-22 10:50         ` Johan Hovold
2014-10-23 18:52           ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 09/12] rtc: omap: add support for pmic_power_en Johan Hovold
2014-10-10 18:07   ` Felipe Balbi
2014-10-11 10:31     ` Johan Hovold
2014-10-22 10:18     ` Johan Hovold
2014-10-23 18:52       ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 10/12] rtc: omap: enable wake-up from power off Johan Hovold
2014-10-10 18:08   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 11/12] ARM: dts: am33xx: update rtc node compatible property Johan Hovold
2014-10-10 18:08   ` Felipe Balbi
2014-10-09 19:06 ` [PATCH 12/12] ARM: dts: am335x-bone-common: enable power off and rtc wake up Johan Hovold
2014-10-10 18:09   ` Felipe Balbi
2014-10-11 10:34     ` Johan Hovold
2014-10-10 17:54 ` [PATCH 00/12] rtc: omap: fixes and power-off feature Felipe Balbi
2014-10-11  9:38   ` Johan Hovold
2014-10-11 19:08     ` Tony Lindgren
2014-10-22 11:07       ` Johan Hovold
2014-10-22 15:29         ` Tony Lindgren
2014-10-22 16:21           ` Johan Hovold
2014-10-22 16:43             ` Tony Lindgren
2014-10-15 16:55 ` Felipe Balbi
2014-10-15 17:06   ` Johan Hovold
2014-10-15 17:08     ` Felipe Balbi
2014-10-22 10:23       ` Johan Hovold
2014-10-23 18:55         ` Felipe Balbi
2014-10-24  7:58           ` Johan Hovold
2014-10-21 17:37 ` [PATCH v2 00/20] " Johan Hovold
     [not found]   ` <1413913086-12730-1-git-send-email-johan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2014-10-21 17:37     ` [PATCH v2 01/20] rtc: omap: fix clock-source configuration Johan Hovold
2014-10-21 17:37   ` [PATCH v2 02/20] rtc: omap: fix missing wakealarm attribute Johan Hovold
2014-10-21 17:37   ` [PATCH v2 03/20] rtc: omap: fix interrupt disable at probe Johan Hovold
2014-10-21 17:37   ` [PATCH v2 04/20] rtc: omap: clean up probe error handling Johan Hovold
2014-10-21 17:37   ` [PATCH v2 05/20] rtc: omap: fix class-device registration Johan Hovold
2014-10-21 17:37   ` [PATCH v2 06/20] rtc: omap: remove unused register-base define Johan Hovold
2014-10-21 17:37   ` [PATCH v2 07/20] rtc: omap: use dev_info Johan Hovold
2014-10-21 17:37   ` [PATCH v2 08/20] rtc: omap: make platform-device id table const Johan Hovold
2014-10-21 17:37   ` [PATCH v2 09/20] rtc: omap: add device abstraction Johan Hovold
2014-10-21 17:37   ` [PATCH v2 10/20] rtc: omap: remove DRIVER_NAME macro Johan Hovold
2014-10-21 17:37   ` [PATCH v2 11/20] rtc: omap: add structured device-type info Johan Hovold
2014-10-21 17:37   ` [PATCH v2 12/20] rtc: omap: silence bogus power-up reset message at probe Johan Hovold
2014-10-21 17:37   ` [PATCH v2 13/20] rtc: omap: add helper to read raw bcd time Johan Hovold
2014-10-21 17:38   ` [PATCH v2 14/20] rtc: omap: add helper to read 32-bit registers Johan Hovold
2014-10-21 17:38   ` [PATCH v2 15/20] rtc: omap: add support for pmic_power_en Johan Hovold
2014-10-21 17:38   ` [PATCH v2 16/20] rtc: omap: enable wake-up from power off Johan Hovold
2014-10-21 17:38   ` [PATCH v2 17/20] rtc: omap: fix minor coding style issues Johan Hovold
2014-10-21 17:38   ` [PATCH v2 18/20] rtc: omap: add copyright entry Johan Hovold
2014-10-21 17:38   ` [PATCH v2 19/20] ARM: dts: am33xx: update rtc-node compatible property Johan Hovold
2014-10-21 17:38   ` [PATCH v2 20/20] ARM: dts: am335x-boneblack: enable power off and rtc wake up Johan Hovold
2014-10-24 16:08   ` [PATCH v2 00/20] rtc: omap: fixes and power-off feature Felipe Balbi
2014-10-24 19:02     ` Johan Hovold
2014-10-24 19:25       ` Felipe Balbi
2014-10-24 19:29         ` Felipe Balbi
2014-10-24 19:36           ` Johan Hovold
2014-10-24 19:44             ` Felipe Balbi [this message]
2014-10-24 19:55               ` Johan Hovold
2014-10-24 20:08                 ` Felipe Balbi
2014-10-27 23:22                 ` Andrew Morton
2014-10-28  0:25                   ` Russell King - ARM Linux
     [not found]                     ` <20141028002552.GX12379-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-10-28  8:16                       ` Johan Hovold
2014-10-28  8:47                         ` Russell King - ARM Linux
2014-10-28 13:12                           ` Johan Hovold
2014-10-28 15:16                             ` Russell King - ARM Linux
2014-10-29 12:34                               ` Johan Hovold
2014-10-29 12:55                                 ` Romain Perier
     [not found]                                   ` <CABgxDo+ewxNwb3RrBVZA7kqYMvSujLb9U6A6FCvnHQH1W8V0kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-10-29 13:00                                     ` Johan Hovold
2014-10-29 13:11                                       ` Romain Perier
2014-10-29 13:44                                         ` Johan Hovold
2014-10-29 13:10                                 ` Russell King - ARM Linux
2014-10-29 13:22                                   ` Johan Hovold
2014-10-29 15:25                                     ` Guenter Roeck
2014-10-29 15:51                                       ` Johan Hovold
2014-10-30 10:01                                         ` Johan Hovold
2014-10-29 13:20                                 ` Guenter Roeck
2014-10-29 13:35                                   ` Johan Hovold
2014-10-29 15:36                                     ` Guenter Roeck
2014-10-29 15:54                                       ` Johan Hovold
2014-10-27  8:09   ` [PATCH v3] rtc: omap: add support for pmic_power_en Johan Hovold
2014-10-27 16:45     ` Felipe Balbi
2014-10-27 16:56       ` Johan Hovold
2014-10-27 17:09         ` Felipe Balbi
2014-10-27 22:40     ` Andrew Morton
     [not found]       ` <20141027154031.4492ea11d401045ca04a3ff8-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2014-10-28  8:36         ` Johan Hovold
2014-10-28 21:18           ` Andrew Morton
2014-10-29 12:46             ` Johan Hovold
2014-10-29 12:50           ` Johan Hovold
2014-10-29 19:14             ` Andrew Morton
2014-10-30  9:55   ` [PATCH v4] " Johan Hovold

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141024194442.GG11455@saruman \
    --to=balbi@ti.com \
    --cc=a.zummo@towertech.it \
    --cc=akpm@linux-foundation.org \
    --cc=bcousson@baylibre.com \
    --cc=devicetree@vger.kernel.org \
    --cc=j-keerthy@ti.com \
    --cc=johan@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=lokeshvutla@ti.com \
    --cc=nsekhar@ti.com \
    --cc=rmk+kernel@arm.linux.org.uk \
    --cc=rtc-linux@googlegroups.com \
    --cc=t-kristo@ti.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).