All of lore.kernel.org
 help / color / mirror / Atom feed
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

  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 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.