From: Arnd Bergmann <arnd@arndb.de>
To: Udo van den Heuvel <udovdh@xs4all.nl>,
Karsten Keil <isdn@linux-pingi.de>, Greg KH <gregkh@suse.de>
Cc: linux-kernel@vger.kernel.org
Subject: Re: known vboxgetty/isdn issue in 2.6.35.3?
Date: Tue, 7 Sep 2010 21:45:10 +0200 [thread overview]
Message-ID: <201009072145.10946.arnd@arndb.de> (raw)
In-Reply-To: <4C864143.5090803@xs4all.nl>
On Tuesday 07 September 2010 15:42:27 Udo van den Heuvel wrote:
> Sep 2 15:00:22 epia klogd: INFO: task vboxgetty:25662 blocked for more
> than 120 seconds.
>
> Sep 2 15:00:22 epia klogd: Call Trace:
> Sep 2 15:00:22 epia klogd: [<c1157e3a>] ? tty_unthrottle+0x13/0x3a
> Sep 2 15:00:22 epia klogd: [<c1294879>] mutex_lock_nested+0x13e/0x23f
> Sep 2 15:00:22 epia klogd: [<c1157e3a>] tty_unthrottle+0x13/0x3a
It appears that the process deadlocks on tty->termios_mutex.
> Sep 2 15:00:22 epia klogd: [<c1294879>] mutex_lock_nested+0x13e/0x23f
> Sep 2 15:00:22 epia klogd: [<c1157e3a>] tty_unthrottle+0x13/0x3a
> Sep 2 15:00:22 epia klogd: [<c1156a6e>] reset_buffer_flags+0xd4/0xd9
> Sep 2 15:00:22 epia klogd: [<c1156a80>] n_tty_flush_buffer+0xd/0x63
> Sep 2 15:00:22 epia klogd: [<c11593c7>] tty_ldisc_flush+0x1f/0x34
> Sep 2 15:00:22 epia klogd: [<c11d6e28>] isdn_tty_modem_result+0x342/0x37c
> Sep 2 15:00:22 epia klogd: [<c1153ff3>] ? tty_wakeup+0x46/0x4e
> Sep 2 15:00:22 epia klogd: [<c11d910a>] isdn_tty_modem_hup+0x76/0x176
> Sep 2 15:00:22 epia klogd: [<c115824b>] ? set_termios+0x1a8/0x397
> Sep 2 15:00:22 epia klogd: [<c129476a>] ? mutex_lock_nested+0x2f/0x23f
> Sep 2 15:00:22 epia klogd: [<c11d9b17>] isdn_tty_change_speed+0xa2/0xd4
> Sep 2 15:00:22 epia klogd: [<c11d9b86>] isdn_tty_set_termios+0x3d/0x5a
> Sep 2 15:00:22 epia klogd: [<c11583bb>] set_termios+0x318/0x397
> Sep 2 15:00:22 epia klogd: [<c1158661>] tty_mode_ioctl+0x178/0x2db
> Sep 2 15:00:22 epia klogd: [<c1158a06>] ? tty_ldisc_try+0x11/0x38
> Sep 2 15:00:22 epia klogd: [<c1155f62>] ? n_tty_ioctl+0x0/0xa0
> Sep 2 15:00:22 epia klogd: [<c1158908>] n_tty_ioctl_helper+0x144/0x154
> Sep 2 15:00:22 epia klogd: [<c1155f62>] ? n_tty_ioctl+0x0/0xa0
> Sep 2 15:00:22 epia klogd: [<c1155ff9>] n_tty_ioctl+0x97/0xa0
> Sep 2 15:00:22 epia klogd: [<c1155f62>] ? n_tty_ioctl+0x0/0xa0
> Sep 2 15:00:22 epia klogd: [<c11547ed>] tty_ioctl+0x699/0x6d3
> Sep 2 15:00:22 epia klogd: [<c1083788>] vfs_ioctl+0x27/0x91
> Sep 2 15:00:22 epia klogd: [<c1154154>] ? tty_ioctl+0x0/0x6d3
> Sep 2 15:00:22 epia klogd: [<c1083d06>] do_vfs_ioctl+0x467/0x4a5
> Sep 2 15:00:22 epia klogd: [<c1205478>] ? __kfree_skb+0x68/0x6b
> Sep 2 15:00:22 epia klogd: [<c1205478>] ? __kfree_skb+0x68/0x6b
> Sep 2 15:00:22 epia klogd: [<c1209c83>] ? net_tx_action+0x47/0xcc
> Sep 2 15:00:22 epia klogd: [<c102262a>] ? __do_softirq+0xc3/0xd2
> Sep 2 15:00:22 epia klogd: [<c1083d85>] sys_ioctl+0x41/0x61
> Sep 2 15:00:22 epia klogd: [<c1003cb9>] ? do_IRQ+0x74/0x87
> Sep 2 15:00:22 epia klogd: [<c1002813>] sysenter_do_call+0x12/0x2d
This happened when vboxgetty was doing an ioctl on an ISDN tty, apparently
while the TTY was getting hung up.
> Sep 2 15:00:22 epia klogd: INFO: lockdep is turned off.
Enabling CONFIG_LOCKDEP in your .config should provide better
information if you can reproduce it.
> Load went to 1.0 and up even while the box was 90%+ idle.
> Why did this happen?
When waiting uninterruptible for a mutex, we treat the process as busy,
even though it is not doing anything. The question is why it is waiting
for a mutex that should never be held for an extended time.
> How to debug?
One thing to check is if there are other processes blocked as well
that may be holding the mutex.
Can you send the output of "head -n 20 /proc/*/stack"? If
CONFIG_LOCKDEP gives you more data, that would be even better.
Another thing to try is to run 2.6.36-rc3. We just did a major change
to the locking in the tty subsystem, so if the behavior is different
there, that may be an explanation.
I also took Greg and Karten on Cc, they maintain the TTY and ISDN code
that is involved in the code path in question. Maybe one of them already
knows the answer.
Arnd
next prev parent reply other threads:[~2010-09-07 19:45 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-07 13:42 known vboxgetty/isdn issue in 2.6.35.3? Udo van den Heuvel
2010-09-07 19:45 ` Arnd Bergmann [this message]
2010-09-08 0:35 ` Greg KH
2010-11-06 14:04 ` Udo van den Heuvel
2010-11-09 10:15 ` Arnd Bergmann
2011-03-17 21:48 ` Michael Karcher
2011-03-18 14:24 ` Arnd Bergmann
2011-03-18 14:29 ` Michael Karcher
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=201009072145.10946.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=gregkh@suse.de \
--cc=isdn@linux-pingi.de \
--cc=linux-kernel@vger.kernel.org \
--cc=udovdh@xs4all.nl \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox