All of lore.kernel.org
 help / color / mirror / Atom feed
From: Valdis.Kletnieks@vt.edu
To: Peter Zijlstra <peterz@infradead.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Stupid futex question - 2.6.33-rc7-mmotm0210
Date: Thu, 18 Feb 2010 11:42:15 -0500	[thread overview]
Message-ID: <7380.1266511335@localhost> (raw)
In-Reply-To: Your message of "Thu, 18 Feb 2010 15:37:59 +0100." <1266503879.26719.702.camel@laptop>

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

(Adding some cc: to the list)

On Thu, 18 Feb 2010 15:37:59 +0100, Peter Zijlstra said:
> On Thu, 2010-02-18 at 09:04 -0500, Valdis.Kletnieks@vt.edu wrote:
> > Kernel: x86_64 2.6.33-rc7-mmotm0210
> > 
> > I'm debugging a problem where pulseaudio is getting killed with a SIGKILL
> > out of the blue.  It appears to be a problem where pulseaudio sets
> > RLIMIT_RTTIME and the bound gets exceeded.  Analysis with 'top' shows
> > a short spike of 96% system time, and the tail end of strace shows this:
> > 
> > [pid 25065] 01:50:20.371484 ioctl(28, USBDEVFS_CONTROL, 0x7fd3d76f630c) = 0 <0.000015>
> > [pid 25065] 01:50:20.371548 ioctl(28, 0x40045532, 0x7fd3d76f636c) = 0 <0.000016>
> > [pid 25065] 01:50:20.371611 open("/dev/snd/pcmC0D0p", O_RDWR|O_NONBLOCK|O_CLOEXEC <unfinished ...>
> > [pid 25064] 01:50:20.371678 <... write resumed> ) = 8 <0.002104>
> > [pid 25064] 01:50:20.371718 futex(0xc2ec00, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...>
> > [pid 25066] 01:50:21.408392 +++ killed by SIGKILL +++
> > PANIC: handle_group_exit: 25066 leader 25064
> > [pid 25065] 01:50:21.408442 +++ killed by SIGKILL +++
> > PANIC: handle_group_exit: 25065 leader 25064
> > 01:50:21.420354 +++ killed by SIGKILL +++
> > 
> > thread 25064 apparently gets gunned down due to RTTIME because it spent a whole
> > second in a futex() call - is it reasonable for futex() to not return for that
> > long?
> > 
> > In other words - kernel bug because futex() should return, or pulseaudio bug
> > for not understanding futex() can snooze a while?
> > 
> > If a kernel bug, anybody got a better idea than nuking the RLIMIT_RTTIME call,
> > waiting for it to repeat (takes between 1 minute and 1 hour or so), and
> > whomping it a few times with sysrq-T?
> 
> is that second spend in processing sysrq-t?

No, currently that second is spent in a futex() syscall - I'm wondering:

1) should it get killed for RLIMIT_RTTIME because it's been in a futex()
for multiple seconds? It seems suspicious - docs say a blocking syscall
resets RTTIME - so if futex() blocks it shouldn't kill, and if it's in the
kernel for a second without blocking it's a bug too.

2) Is sysrq-T my best bet here, or should I be trying something else first?

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

  reply	other threads:[~2010-02-18 16:43 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-18 14:04 Stupid futex question - 2.6.33-rc7-mmotm0210 Valdis.Kletnieks
2010-02-18 14:37 ` Peter Zijlstra
2010-02-18 16:42   ` Valdis.Kletnieks [this message]
2010-02-18 17:01     ` Peter Zijlstra
2010-02-18 18:45     ` Thomas Gleixner
2010-02-19  4:08 ` Darren Hart

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=7380.1266511335@localhost \
    --to=valdis.kletnieks@vt.edu \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.