From: Russell King <rmk+lkml@arm.linux.org.uk>
To: karl malbrain <karl@petzent.com>
Cc: "Linux-Kernel@Vger. Kernel. Org" <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.9: serial_core: uart_open
Date: Fri, 15 Jul 2005 21:32:01 +0100 [thread overview]
Message-ID: <20050715213201.C23709@flint.arm.linux.org.uk> (raw)
In-Reply-To: <NDBBKFNEMLJBNHKPPFILKEAKCEAA.karl@petzent.com>; from karl@petzent.com on Fri, Jul 15, 2005 at 09:02:48AM -0700
On Fri, Jul 15, 2005 at 09:02:48AM -0700, karl malbrain wrote:
> > -----Original Message-----
> > From: Russell King
> > Sent: Friday, July 15, 2005 12:29 AM
> > To: karl malbrain
> > Cc: Linux-Kernel@Vger. Kernel. Org
> > Subject: Re: 2.6.9: serial_core: uart_open
> >
> >
> > On Thu, Jul 14, 2005 at 03:35:07PM -0700, karl malbrain wrote:
> > > AT LAST I HAVE SOME DATA!!!
> > >
> > > The problem is that ALL SYSTEM CALLS to open "/dev/tty" are
> > blocking!! even
> > > with O_NDELAY set and even from completely disjoint sessions.
> > I discovered
> > > this via issuing "strace sh". That's why the new xterm windows froze.
> > >
> > > The original process doing the open("/dev/ttyS1", O_RDWR) is
> > listed in the
> > > ps aux listing as status S+.
> >
> > Ok, 'S' means it's sleeping.
> >
> > Can you enable Magic SYSRQ, and ensure that you have a large kernel
> > log buffer (the LOG_BUF_SHIFT configuration symbol). Ensure that
> > /proc/sys/kernel/sysrq is 1, and re-run your test such that you have
> > something else waiting (eg, the strace sh). Then hit Alt-SysRQ-T.
> >
> > You can then read the kernel messages with dmesg - you may need the
> > -s argument to capture the entire kernel buffer.
> >
> > This will tell us where all processes are sleeping.
>
>
> sh D 00000006 3036 5341 5252 (NOTLB)
> d0408eb0 00000086 c01c14d7 00000006 d0408e94 000f4fa5 c0d38f81 000039a0
> df461240 df4613cc c035ff00 00000246 d0408ecc df461240 c0300e33
> 00000001
> df461240 c011c856 c035ff20 c035ff20 d0408000 00000001 c035abe0
> d0408000
> Call Trace:
> [<c01c14d7>] inode_has_perm+0x4c/0x54
> [<c0300e33>] __down+0x103/0x1fe
> [<c011c856>] default_wake_function+0x0/0xc
> [<c0301180>] __down_failed+0x8/0xc
> [<c021a4d0>] .text.lock.tty_io+0x87/0x10f
> [<c016d78c>] chrdev_open+0x325/0x3b9
This seems to imply that there's a lock being taken in tty_open(). The
2.6.9 source contains no such thing. Are you sure you're using an
unpatched 2.6.9 kernel?
> [<c016256f>] dentry_open+0xbd/0x180
> [<c01624ac>] filp_open+0x36/0x3c
> [<c01da502>] direct_strncpy_from_user+0x46/0x5d
> [<c0162970>] sys_open+0x31/0x7d
> [<c03036f3>] syscall_call+0x7/0xb
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
next prev parent reply other threads:[~2005-07-15 20:32 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.61.0507130850110.18969@chaos.analogic.com>
2005-07-13 17:53 ` 2.6.9: serial_core: uart_open karl malbrain
2005-07-14 8:26 ` Russell King
2005-07-14 17:16 ` karl malbrain
2005-07-14 18:57 ` Russell King
2005-07-14 19:30 ` karl malbrain
2005-07-14 22:35 ` karl malbrain
2005-07-15 7:28 ` Russell King
2005-07-15 16:02 ` karl malbrain
2005-07-15 20:32 ` Russell King [this message]
2005-07-15 20:48 ` karl malbrain
2005-07-15 16:20 ` karl malbrain
2005-07-14 23:50 ` 2.6.9 chrdev_open: " karl malbrain
2005-07-15 7:22 ` Russell King
2005-07-15 20:11 ` karl malbrain
2005-07-15 20:30 ` Russell King
2005-07-15 20:52 ` karl malbrain
2005-07-15 20:58 ` Russell King
2005-07-15 21:17 ` karl malbrain
2005-07-15 21:54 ` Russell King
2005-07-15 22:02 ` karl malbrain
2005-07-16 0:18 ` Alan Cox
2005-07-26 20:45 ` karl malbrain
2005-07-16 0:12 ` Alan Cox
2005-07-16 22:27 ` Matthias Urlichs
[not found] <Pine.LNX.4.61.0507151150290.11664@chaos.analogic.com>
2005-07-15 16:57 ` 2.6.9: " karl malbrain
2005-07-12 20:32 karl malbrain
-- strict thread matches above, loose matches on Subject: below --
2005-07-12 19:27 karl malbrain
2005-07-12 18:36 karl malbrain
2005-07-12 21:03 ` Russell King
2005-07-12 21:17 ` karl malbrain
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=20050715213201.C23709@flint.arm.linux.org.uk \
--to=rmk+lkml@arm.linux.org.uk \
--cc=karl@petzent.com \
--cc=linux-kernel@vger.kernel.org \
/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