The following problem occurs with CVS emacs + ECB under Solaris 5.8.

While ECB performs its stealth update activities, emacs sometimes seems to
hang for a long time.
gdb shows the following function and backtrace:

directory_files_internal (directory=16076323, full=3313665, match=3313665, 
    nosort=3313713, attrs=0, id_format=3313665)
    at /vol/freeware/cvs/emacs/head/emacs/src/dired.c:226
226           if (dp == NULL && errno == EAGAIN)
(gdb) p directory
$1 = 16076323
(gdb) pr
"/vol/cld_scratch"

(gdb) xbacktrace
 "directory-files"
 "apply"
 "ecb-directory-files"
 "ecb-check-emptyness-of-dir"
 "ecb-stealthy-empty-dir-check"
 "ecb-stealthy-updates"
 "apply"
 "byte-code"
 "timer-event-handler"

I think emacs waits for readdir in dired.c:223 to complete and unfortunately
C-g doesn't work during stealthy update.

The culprit BTW is a mount point to a VAX cluster that e.g. need 20 minutes
to return from 'M-x eval-expression (directory-files "/vol/cld_scratch")'.
While I can interrupt 'M-x eval-expression (directory-files "/vol/cld_scratch")'
with C-g just fine, C-g has no effect when this command is run from 
timer-event-handler.

-- 
 ------------------------------------------
|  Klaus Zeitler      Lucent Technologies  |
|  Email:             [EMAIL PROTECTED]  |
 ------------------------------------------
---
The only problem with being a man of leisure
is that you can never stop and take a rest.


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to