assert failure: Unhandled error from job_process_spawn (or similar)

Bug #451917 reported by Anand Kumria on 2009-10-15
64
This bug affects 8 people
Affects Status Importance Assigned to Milestone
upstart
Medium
Scott James Remnant (Canonical)
upstart (Ubuntu)
Medium
Scott James Remnant (Canonical)

Bug Description

Binary package hint: upstart

1)

eve[~]% lsb_release -rd
Description: Ubuntu karmic (development branch)
Release: 9.10

2)

eve[~]% apt-cache policy upstart
upstart:
  Installed: 0.6.3-9
  Candidate: 0.6.3-9
  Version table:
 *** 0.6.3-9 0
        500 http://uk.archive.ubuntu.com karmic/main Packages
        100 /var/lib/dpkg/status

3)

Normal login

4)

A crash dialog appeared indicating that init had failed. Hence this report.

ProblemType: Crash
Architecture: i386
AssertionMessage: job_process.c:521: Unhandled error from job_process_spawn: Operation not permitted
Date: Thu Oct 15 07:22:30 2009
DistroRelease: Ubuntu 9.10
ExecutablePath: /sbin/init
Package: upstart 0.6.3-9
ProcCmdline: /sbin/init
ProcEnviron: PATH=(custom, no user)
ProcVersionSignature: Ubuntu 2.6.31-14.46-generic
Signal: 6
SourcePackage: upstart
StacktraceTop:
 __kernel_vsyscall ()
 *__GI_raise (sig=6)
 *__GI_abort () at abort.c:92
 ?? () from /sbin/init
 __run_exit_handlers (status=255, listp=0xaef304,
Title: init assert failure: job_process.c:521: Unhandled error from job_process_spawn: Operation not permitted
Uname: Linux 2.6.31-14-generic i686
UserGroups:

Anand Kumria (wildfire) wrote :

StacktraceTop:__kernel_vsyscall ()
*__GI_raise (sig=6)
*__GI_abort () at abort.c:92
nih_error_clear () at error.c:300
__run_exit_handlers (status=255, listp=0xaef304,

Changed in upstart (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
visibility: private → public
summary: - init assert failure: job_process.c:521: Unhandled error from
- job_process_spawn: Operation not permitted
+ assert failure: Unhandled error from job_process_spawn (or similar)
Changed in upstart (Ubuntu):
status: New → Triaged

This is the code that writes the error back to the parent, it doesn't free it again so you get this assertion as the child exits. The parent still gets the error, so everything works as normal, you just get this apport popup

Changed in upstart:
status: New → Triaged
importance: Undecided → Medium
Anand Kumria (wildfire) wrote :

Hi Scott,

Thanks for taking the time to analysis this.

Is there any way to identify the particular process that init/upstart invoked that cause this to occur?

Regards,
Anand

On Mon, 2009-10-26 at 10:40 +0000, Anand Kumria wrote:

> Is there any way to identify the particular process that init/upstart
> invoked that cause this to occur?
>
Yes, Upstart should report an ordinary "failed to start" for this
process - you'll find a message in syslog with the actual error.

Scott
--
Have you ever, ever felt like this?
Had strange things happen? Are you going round the twist?

Jens Askengren (jens-askengren) wrote :

If the service happens to be gdm, which is set to respawn in ubuntu 9.10, your system will be a flickering mess with a console that´s unusable because of gdm constantly respawning.

The old init system used to disable services that respawned to fast. Can upstart detect this situation and do something smart?

Hmm, unfortunately I only have the last 7 days of syslog -- so I can not see
what the problem was on the 15th Oct.

Is there anything in the report than can help you? If not, might make sense
to close it out.

I'll increase the syslog log retention to 1 month.

Anand

On Mon, Oct 26, 2009 at 11:05 AM, Scott James Remnant
<email address hidden>wrote:

> On Mon, 2009-10-26 at 10:40 +0000, Anand Kumria wrote:
>
> > Is there any way to identify the particular process that init/upstart
> > invoked that cause this to occur?
> >
> Yes, Upstart should report an ordinary "failed to start" for this
> process - you'll find a message in syslog with the actual error.
>
> Scott
> --
> Have you ever, ever felt like this?
> Had strange things happen? Are you going round the twist?
>
> --
> assert failure: Unhandled error from job_process_spawn (or similar)
> https://bugs.launchpad.net/bugs/451917
> You received this bug notification because you are a direct subscriber
> of the bug.
>
>

On Tue, 2009-10-27 at 20:27 +0000, Jens Askengren wrote:

> If the service happens to be gdm, which is set to respawn in ubuntu
> 9.10, your system will be a flickering mess with a console that´s
> unusable because of gdm constantly respawning.
>
Should not be - this is after the error is returned to Upstart, so
Upstart should not respawn the process.

> The old init system used to disable services that respawned to fast. Can
> upstart detect this situation and do something smart?
>
Upstart has respawn limiting

Scott
--
Have you ever, ever felt like this?
Had strange things happen? Are you going round the twist?

Changed in upstart:
status: Triaged → Fix Committed
milestone: none → 0.6.5
Changed in upstart (Ubuntu):
status: Triaged → Fix Released
Changed in upstart:
status: Fix Committed → Fix Released
status: Fix Released → Fix Committed
Changed in upstart (Ubuntu):
status: Fix Released → New
status: New → Fix Committed
Changed in upstart (Ubuntu):
assignee: nobody → Scott James Remnant (scott)
Changed in upstart:
assignee: nobody → Scott James Remnant (scott)

0.6.5 2010-02-04 "Our last, best hope for victory"

 * Since libnih has been separated out into its own project, Upstart
   no longer includes its source and now uses the installed version by
   default.

 * The external nih-dbus-tool means that cross-compilation is trivial,
   the path to it may be overriden with NIH_DBUS_TOOL=... as an
   argument to configure. (Bug: #426740)

 * Developers may still build against a local libnih source tree by
   passing --with-local-libnih=/path/to/libnih to configure.

 * There is a new initctl "reload" command, with matching
   /sbin/reload symlink. This sends the SIGHUP signal to the running
   main process of the named job instance.

 * Event operator matches in jobs now support "!=" in addition to the
   usual "=", e.g.:

  start on net-device-added INTERFACE!=eth*

   (Bug: #513035)

 * Moved D-Bus system bus reconnection trigger from SIGHUP to SIGUSR1,
   since SIGHUP is already used for a forced configuration reload and
   causes Upstart to "forget" state.

 * Fixed bug where the default runlevel would be lost when an
   /etc/inittab file exists without an initdefault line. (Bug: #405847)

 * Fixed "Unhandled error" message from shutdown. (Bug: #426332)

 * Fixed "Unhandled error" assertion crash from Upstart child
   processes when failing to spawn a job. (Bug: #451917)

 * No longer holds /dev/console open, so the SAK SysRq key will not
   kill Upstart. (Bug: #486005)

 * Restored sync() call before reboot().

 * Added missing OPTIONS section to init(8) manpage. (Bug: #449883)

Changed in upstart:
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package upstart - 0.6.5-1

---------------
upstart (0.6.5-1) lucid; urgency=low

  * New upstream release:
    - libnih has been separated out into its own project.
    - "start on" and "stop on" now support != matches. LP: #513035.
    - Fixed crash in child when unable to spawn job. LP: #451917.
    - No longer holds /dev/console open so SAK won't kill init. LP: #486005.
    - Added missing OPTIONS section to init(8). LP: #449883.

  [ Scott James Remnant ]
  * Build-depend on libnih-dev, libnih-dbus-dev and nih-dbus-tool to use
    the separated out libnih.
    - This has the fix for LP: #436758.
    - Remove changelog.nih from the doc directory.
  * Bump udev build-dependency to 147 to match upstream.
  * udev/Makefile.am: Update to use external libnih

  [ Johan Kiviniemi ]
  * udev/upstart-udev-bridge.c: Change -device-remove to -device-removed to
    match -device-added and -device-changed. LP: #516698.
 -- Scott James Remnant <email address hidden> Thu, 04 Feb 2010 16:30:10 -0800

Changed in upstart (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers