From: "karl malbrain" <karl@petzent.com>
To: "Russell King" <rmk+lkml@arm.linux.org.uk>
Cc: "Linux-Kernel@Vger. Kernel. Org" <linux-kernel@vger.kernel.org>
Subject: RE: 2.6.9 chrdev_open: serial_core: uart_open
Date: Fri, 15 Jul 2005 13:52:15 -0700 [thread overview]
Message-ID: <NDBBKFNEMLJBNHKPPFILAEAMCEAA.karl@petzent.com> (raw)
In-Reply-To: <20050715213058.B23709@flint.arm.linux.org.uk>
> -----Original Message-----
> From: Russell King
> Sent: Friday, July 15, 2005 1:31 PM
> To: karl malbrain
> Cc: Linux-Kernel@Vger. Kernel. Org
> Subject: Re: 2.6.9 chrdev_open: serial_core: uart_open
>
>
> On Fri, Jul 15, 2005 at 01:11:33PM -0700, karl malbrain wrote:
> > > -----Original Message-----
> > > From: Russell King
> > > Sent: Friday, July 15, 2005 12:23 AM
> > > To: karl malbrain
> > > Cc: Linux-Kernel@Vger. Kernel. Org
> > > Subject: Re: 2.6.9 chrdev_open: serial_core: uart_open
> > >
> > >
> > > On Thu, Jul 14, 2005 at 04:50:00PM -0700, karl malbrain wrote:
> > > > chrdev_open issues a lock_kernel() before calling uart_open.
> > > >
> > > > It would appear that servicing the blocking open request
> > > uart_open goes to
> > > > sleep with the kernel locked. Would this shut down
> subsequent access to
> > > > opening "/dev/tty"???
> > >
> > > No. lock_kernel() is automatically released when a process sleeps.
> >
> > Drilling down between the uart_open and chrdev_open into tty_open is a
> > semaphore tty_sem that is being held during the sleep cycle in
> uart_open.
>
> chrdev_open() calls tty_open(), which then calls init_dev(). init_dev()
> takes tty_sem, does its stuff, and then releases tty_sem. A little
> later on, tty_open() calls the uart driver's uart_open() function.
>
> So it does this with tty_sem unlocked.
On my 2.6.9-11EL source it clearly shows the up(&tty_sem) after the call to
uart_open. Init_dev never touches tty_sem.
karl m
next prev parent reply other threads:[~2005-07-15 20:52 UTC|newest]
Thread overview: 24+ 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: " 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
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 [this message]
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
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=NDBBKFNEMLJBNHKPPFILAEAMCEAA.karl@petzent.com \
--to=karl@petzent.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rmk+lkml@arm.linux.org.uk \
/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
all inboxes | Powered by JetHome®