[Pkg-acpi-devel] Bug#579798: acpi-fakekey: "/etc/init.d/acpi-fakekey start" fails if acpi_fakekeyd is already running
Sven Joachim
svenjoac at gmx.de
Sat May 1 17:43:52 UTC 2010
On 2010-05-01 19:20 +0200, Michael Meskes wrote:
> On Fri, Apr 30, 2010 at 10:23:08PM +0200, Sven Joachim wrote:
>> It seems this happens because of two bugs:
>>
>> - the old acpi-support (from 0.133-2) prerm script did not stop
>> acpi_fakekeyd
>
> Right, this is a bug.
>
>> - the acpi-fakekeyd initscript's start action is missing
>> start-stop-daemon's --oknodo option and thus fails if acpi_fakekeyd is
>> already running.
>
> This, however, I don't see as a bug. Why should the script use --oknodo? The
> new script does stop acpi_fakekeyd, so why do we need --oknodo.
Because the script should succeed and not fail if the service is already
running, see Policy § 9.3.2:
The `init.d' scripts must ensure that they will behave sensibly (i.e.,
returning success and not starting multiple copies of a service) if
invoked with `start' when the service is already running, or with
`stop' when it isn't, and that they don't kill unfortunately-named
user processes. The best way to achieve this is usually to use
`start-stop-daemon' with the `--oknodo' option.
>> The second problem is easily fixable, I don't know what to do about the
>> first; maybe dhinstallinit -R would help, or manually stop acpi_fakekeyd
>> in the postinst on first-time installs.
>
> I think a manual stop is better because it's only needed for this one upgrade.
Agreed.
Cheers,
Sven
More information about the Pkg-acpi-devel
mailing list