Ticket #889 (closed defect: fixed)

Opened 6 years ago

Last modified 5 years ago

8 seconds power button timeout no longer working (regression)

Reported by: mickey@… Owned by: openmoko-kernel@…
Priority: high Milestone:
Component: kernel Version: unspecified
Severity: normal Keywords:
Cc: buglog@… Blocked By:
Blocking: Estimated Completion (week):
HasPatchForReview: PatchReviewResult:
Reproducible:

Description

Usually, after a couple of seconds holding the powerbutton, init was signalized
a reboot. if that doesn't react, the system was shut down. This no longer works.
When I keep pressing the power button, I see the kernel incrementing the seconds
counter, but the system just doesn't shut down nor does it turn off.

Change History

comment:1 Changed 6 years ago by willie_chen@…

  • Owner changed from laforge@… to michael@…

comment:2 Changed 5 years ago by mail@…

This bug is still present on my GTA01Bv4 with the following packages (built with
MokoMakefile?):

kernel-image-2.6.22.5-moko11 - 2.6.22.5-moko11+svnr3743-r10
sysvinit - 2.86-r36

When X is shut down (or crashes) and the power button is held down, messages are
printed to the screen but the device does not shut down or power off.

pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x42 INT2=0x00 INT3=0x00:ONKEYF SECOND
pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x44 INT2=0x00 INT3=0x00:ONKEY1S SECOND pcf50606_work:
ONKEY_SECONDS(0, OOCC1=0x70)
pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x00:SECOND pcf50606_work:
ONKEY_SECONDS(1, OOCC1=0x70)
pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x00:SECOND pcf50606_work:
ONKEY_SECONDS(2, OOCC1=0x70) SIGINT(init)
[...]
pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x00:SECOND pcf50606_work:
ONKEY_SECONDS(31, OOCC1=0x70) SIGINT(init)
pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x00:SECOND pcf50606_work:
ONKEY_SECONDS(32, OOCC1=0x70) SIGINT(init)
pcf50606_irq: entering(irq=53, pcf=c07d8800): scheduling work
pcf50606_work: INT1=0x01 INT2=0x00 INT3=0x00:ONKEYR

comment:3 Changed 5 years ago by mickey@…

  • Owner changed from michael@… to openmoko-kernel@…

Problem still present in 2.6.24 -- neither the the controlled shut down
(signalling init to shutdown) nor the forced shut down works as expected.

Reassigning to default owner.

comment:4 Changed 5 years ago by andy@…

I'll take a look at this.

comment:5 Changed 5 years ago by andy@…

Well on GTA02 we do track the 3 seconds and we do appear to issue a signal
(SIGINT) to init. I tried it first having booted with init=/bin/sh and
naturally ash didn't react to SIGINT.

However if you come up in the GUI on GTA02 and hold the button 3 seconds, it
brings up the power menu in response to the SIGINT to init.

SIGINT does not mean "shutdown" (SIGPWR) but "interrupt". So it seems this is
intentional and works on GTA02 as far as that goes.

Now if it is desired that if you keep that button down 8 seconds it tries to
shutdown, that can be added. Is that what we want?

comment:6 Changed 5 years ago by mickey@…

However if you come up in the GUI on GTA02 and hold the button 3 seconds, it
brings up the power menu in response to the SIGINT to init.

No, neod brings this power menu up when you hold the button for one second. It
looks like SIGINT is not getting sent.

The behaviour we want (and which we had a couple of kernels ago) is:

1.) Four seconds power hold => SIGINT to init
2.) Eight seconds power hold => forced shut down

Thanks!

comment:7 Changed 5 years ago by andy@…

  • Status changed from new to closed
  • Resolution set to fixed

Matt has done some work on this which is in the buildhost kernel now. Please
try >=4131 kernel from there and reopen this bug if it doesn't make you
happy :-)

Note: See TracTickets for help on using tickets.