Hi all,
We have recently migrated to emacs 21.4
from emacs 20.7 in our environment. In emacs-21.4, I get this error
when I do M-x shell.
Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell.
stty: standard input: Invalid argument
exit
Process shell finished
We use clearcase for source control and
this is happening inside a clearcase view. Outside a view, there
is no problem. We had no problem at all in emacs-20.7, even
inside a clearcase view. In emacs-21.4, it is working some times but
most of the times it is not. Looks like pty is not being allocated.
I did some debugging and found the following
information. In emacs-21.4, in the rare case when M-x shell
works, tty allocated is like '/view/dev/ttyp7'
. '/view' is due to clearcase, may be some virtual path. The
actual path starts from '/dev/...' ie. Removing '/view' would give the
path of the tty in our system. In emacs-20.7, the tty allocated is like
'/view/43'. It is always of the
form '/view/' followed by a number. This indicates that the tty
allocation system is changed in emacs-21.4. In emacs-20.7, looks like
it is doing some virtual allocation as it is just a number. But in
emacs-21.4, it is allocating from /dev. We have sufficient number of
ttys too.
% ls /dev/tty* | wc -l
905
Emacs is not able to pick up a free one? Also I noticed
that, in emacs-21.4, when M-x shell works, it works for some time
before it stops working and goes back to its usual state. During this
time, it is able to allocate ptys in serial order without any problem,
when we invoke shell from different emacs sessions. I suspect that when
it is able to capture some tty in a specific range, it is able to
obtain the remaining without any problem. I ruled out the possibility
that ttys are really exhausted because, while I could open shell from
emacs-21.4, other users could'nt do it on the same machine during the
same time.
OS is linux. I have verified that process-connection-type
is set to t. So this is not the same problem as Mac users have
reported. Also, I started emacs with -q option. So there is nothing in
my .emacs file which could have caused this problem.
I hope this infomation which I collected from my debugging would
be of help. I could not proceed further. Can someone help?
Sunil