<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html style="direction: ltr;">
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="Content-Type">
  <style>body p { margin-bottom: 0cm; margin-top: 0pt; } </style>
</head>
<body style="direction: ltr;" bidimailui-charset-is-forced="true"
 bidimailui-detected-decoding-type="latin-charset" bgcolor="#ffffff"
 text="#000000">
On 29/10/10 17:04, Eli Billauer wrote:
<blockquote cite="mid:4CCAE264.7060202@billauer.co.il" type="cite">
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="Content-Type">
  <br>
&nbsp;&nbsp;&nbsp; /* find a device that is not in use. */<br>
&nbsp;&nbsp;&nbsp; printk(KERN_ALERT&nbsp; "34: pty_open to lock\n");<br>
&nbsp;&nbsp;&nbsp; tty_lock();<br>
&nbsp;&nbsp;&nbsp; printk(KERN_ALERT&nbsp; "35: pty_open locked\n");<br>
&lt;snip&gt;<br>
  <br>
</blockquote>
Set a global variable right before the tty_lock call, and clear it
immediately after. Inside tty_lock (and probably tty_unlock too), set
up many printks conditional on this global variable being set. Print
any relevant identifier you can find (such as the device ID). This
should help you find out WHY the device takes so long to lock. and
hopefully, who the contention is with.<br>
<br>
Also, in tty_lock, save to a global variable who is holding the lock,
and print that variable from the code above.<br>
<br>
Shachar
<pre class="moz-signature" cols="72">-- 
Shachar Shemesh
Lingnu Open Source Consulting Ltd.
<a class="moz-txt-link-freetext" href="http://www.lingnu.com">http://www.lingnu.com</a>
</pre>
</body>
</html>