qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1061778] [NEW] signal mask not reset on exec


From: John Sullivan
Subject: [Qemu-devel] [Bug 1061778] [NEW] signal mask not reset on exec
Date: Thu, 04 Oct 2012 17:51:27 -0000

Public bug reported:

Seen in qemu-1.0 under 12.04, but AFAICT from current git it hasn't
changed.

./main-loop.c:qemu_signal_init blocks SIGALRM so it can be handled via
signalfd.

./net/tap.c:launch_script does not reset the signal mask before the
execv() call, and signal masks are inherited. So the script is run with
SIGALRM blocked (as can be seen in /proc/$$/status, "SigBlk:
0000000000002000"). One reasonable example of where this bites is an
interface up script that calls ping with a timeout to give things a
chance to settle down before continuing, but abort if this doesn't
happen within a reasonable time). Since ping uses SIGALRM for the
timeout, this now never terminates.

qemu-0.14 didn't block SIGALRM, so such scripts worked fine there.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1061778

Title:
  signal mask not reset on exec

Status in QEMU:
  New

Bug description:
  Seen in qemu-1.0 under 12.04, but AFAICT from current git it hasn't
  changed.

  ./main-loop.c:qemu_signal_init blocks SIGALRM so it can be handled via
  signalfd.

  ./net/tap.c:launch_script does not reset the signal mask before the
  execv() call, and signal masks are inherited. So the script is run
  with SIGALRM blocked (as can be seen in /proc/$$/status, "SigBlk:
  0000000000002000"). One reasonable example of where this bites is an
  interface up script that calls ping with a timeout to give things a
  chance to settle down before continuing, but abort if this doesn't
  happen within a reasonable time). Since ping uses SIGALRM for the
  timeout, this now never terminates.

  qemu-0.14 didn't block SIGALRM, so such scripts worked fine there.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1061778/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]