all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#425: 23.0.60; Hang in wait_reading_process_output
@ 2008-08-20 23:31 Chong Yidong
  2008-08-21  5:20 ` Markus Triska
  0 siblings, 1 reply; 3+ messages in thread
From: Chong Yidong @ 2008-08-20 23:31 UTC (permalink / raw)
  To: Markus Triska; +Cc: 425

> As recently reported by Joakim, Emacs occasionally hangs in
> wait_reading_process_output. I can confirm that this also occurs when
> process-adaptive-read-buffering is nil, as David suggested to test.
> Here is a backtrace and the output after holding RET for a few seconds
> when single-stepping through the code (I entered the debugger when
> Emacs started to hang and could not be interrupted with Ctrl+g). At
> the end of this transcript, I tried to inspect the value of
> process-adaptive-read-buffering using "pv", and Emacs got un-stuck.


#1 0x000ee1c6 in emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096)
 at sysdep.c:3378

The filedes = 0 is suspicious.  Are you able to reproduce this bug?  If
so, is filedes always zero when it happens?






^ permalink raw reply	[flat|nested] 3+ messages in thread
* bug#425: 23.0.60; Hang in wait_reading_process_output
@ 2008-06-16  8:36 Markus Triska
  0 siblings, 0 replies; 3+ messages in thread
From: Markus Triska @ 2008-06-16  8:36 UTC (permalink / raw)
  To: emacs-pretest-bug


As recently reported by Joakim, Emacs occasionally hangs in
wait_reading_process_output. I can confirm that this also occurs when
process-adaptive-read-buffering is nil, as David suggested to test.
Here is a backtrace and the output after holding RET for a few seconds
when single-stepping through the code (I entered the debugger when
Emacs started to hang and could not be interrupted with Ctrl+g). At
the end of this transcript, I tried to inspect the value of
process-adaptive-read-buffering using "pv", and Emacs got un-stuck.


mt-computer:~/emacs/src mt$ gdb ./emacs
GNU gdb 6.3.50-20050815 (Apple version gdb-573) (Fri Oct 20 15:50:43 GMT 2006)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-apple-darwin"...Reading symbols for shared libraries ................................... done

DISPLAY = :0.0
TERM = xterm-color
Breakpoint 1 at 0x9010d3db
Breakpoint 2 at 0xed36a: file sysdep.c, line 1327.
(gdb) r
Starting program: /Users/mt/emacs/src/emacs 
Reading symbols for shared libraries ....................................................................+++..+.++.+..++.+.++++++++++++.++++++ done

Program exited normally.
(gdb) r
Starting program: /Users/mt/emacs/src/emacs 
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done
^Z
Program received signal SIGTSTP, Stopped (user).
0x9000ffec in read ()
(gdb) where
#0  0x9000ffec in read ()
#1  0x000ee1c6 in emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
#2  0x0017fda8 in read_process_output (proc=39993860, channel=0) at process.c:5407
#3  0x001865c4 in wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4840
#4  0x001873c8 in Faccept_process_output (process=39993860, seconds=50332681, millisec=50332681, just_this_one=50332681) at process.c:4310
#5  0x001435c8 in Ffuncall (nargs=2, args=0xbfffec00) at eval.c:3052
#6  0x0017c0e7 in Fbyte_code (bytestr=88432451, vector=39944884, maxdepth=2) at bytecode.c:678
#7  0x00142a76 in Feval (form=39478949) at eval.c:2383
#8  0x0014505f in internal_lisp_condition_case (var=50332681, bodyform=39478949, handlers=39479013) at eval.c:1456
#9  0x0017b01d in Fbyte_code (bytestr=88431283, vector=39945012, maxdepth=5) at bytecode.c:868
#10 0x00142eab in funcall_lambda (fun=39945332, nargs=0, arg_vector=0xbfffefb4) at eval.c:3229
#11 0x0014338e in Ffuncall (nargs=1, args=0xbfffefb0) at eval.c:3099
#12 0x0017c0e7 in Fbyte_code (bytestr=88429427, vector=39943924, maxdepth=4) at bytecode.c:678
#13 0x00142eab in funcall_lambda (fun=39944116, nargs=0, arg_vector=0xbffff190) at eval.c:3229
#14 0x0014338e in Ffuncall (nargs=1, args=0xbffff18c) at eval.c:3099
#15 0x00144918 in run_hook_with_args (nargs=1, args=0xbffff18c, cond=to_completion) at eval.c:2701
#16 0x00144aa0 in Frun_hooks (nargs=1, args=0xbffff244) at eval.c:2564
#17 0x00143533 in Ffuncall (nargs=2, args=0xbffff240) at eval.c:3023
#18 0x001447a3 in call1 (fn=50420393, arg1=50362881) at eval.c:2827
#19 0x000d5018 in safe_run_hooks_1 (hook=-1073745272) at keyboard.c:2152
#20 0x00141720 in internal_condition_case (bfun=0xd4fe6 <safe_run_hooks_1>, handlers=50332729, hfun=0xd5022 <safe_run_hooks_error>) at eval.c:1511
#21 0x000d46a9 in safe_run_hooks (hook=50362881) at keyboard.c:2180
#22 0x000e292a in command_loop_1 () at keyboard.c:1929
#23 0x00141720 in internal_condition_case (bfun=0xe2462 <command_loop_1>, handlers=50372321, hfun=0xdb2bd <cmd_error>) at eval.c:1511
#24 0x000d4414 in command_loop_2 () at keyboard.c:1367
#25 0x00141372 in internal_catch (tag=50368393, func=0xd43d0 <command_loop_2>, arg=50332681) at eval.c:1247
#26 0x000d41b6 in command_loop () at keyboard.c:1346
#27 0x000d426f in recursive_edit_1 () at keyboard.c:955
#28 0x000d43b7 in Frecursive_edit () at keyboard.c:1017
#29 0x000d33f7 in main (argc=1, argv=0xbffff7b8) at emacs.c:1772

Lisp Backtrace:
"accept-process-output" (0xbfffec04)
"byte-code" (0xbfffecf4)
"flyspell-word" (0xbfffefb4)
"flyspell-post-command-hook" (0xbffff190)
"run-hooks" (0xbffff244)
(gdb) bt full
#0  0x9000ffec in read ()
No symbol table info available.
#1  0x000ee1c6 in emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
No locals.
#2  0x0017fda8 in read_process_output (proc=39993860, channel=0) at process.c:5407
        nbytes = -1
        outstream = 0
        old = (struct buffer *) 0x26c6a00
        p = (struct Lisp_Process *) 0x2624200
        opoint = 23
        coding = (struct coding_system *) 0x2472d30
        carryover = 0
#3  0x001865c4 in wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4840
        nread = 9
        total_nread = 0
        timeout_reduced_for_timers = 0
        channel = 85895270
        nfds = -1
        Available = {
  fds_bits = {0 <repeats 32 times>}
}
        Connecting = {
  fds_bits = {0 <repeats 32 times>}
}
        check_connect = 0
        check_delay = 0
        no_avail = 1
        xerrno = 0
        proc = 39993860
        timeout = {
  tv_sec = 100000, 
  tv_usec = 0
}
        end_time = {
  tv_sec = -1879027210, 
  tv_usec = 13
}
        wait_channel = 0
        got_some_input = 0
#4  0x001873c8 in Faccept_process_output (process=39993860, seconds=50332681, millisec=50332681, just_this_one=50332681) at process.c:4310
        secs = 0
        usecs = 0
        process = 39993860
        seconds = -1878982676
        millisec = 0
#5  0x001435c8 in Ffuncall (nargs=2, args=0xbfffec00) at eval.c:3052
        fun = -1073747072
        original_fun = 3051368
        funcar = -1878982676
        numargs = 1
        val = -1073752276
        backtrace = {
  next = 0xbfffed14, 
  function = 0xbfffec00, 
  args = 0xbfffec04, 
  nargs = 1, 
  evalargs = 0 '\0', 
  debug_on_exit = 0 '\0'
}
        internal_args = (Lisp_Object *) 0xbfffeb80
        i = -1878982676
        args = (Lisp_Object *) 0x2e8f68
#6  0x0017c0e7 in Fbyte_code (bytestr=88432451, vector=39944884, maxdepth=2) at bytecode.c:678
        op = 9
        vectorp = (Lisp_Object *) 0x26182b8
        stack = {
  pc = 0x54c8f71 "\210\n@\305\230\203\002", 
  top = 0xbfffec04, 
  bottom = 0xbfffec00, 
  byte_string = 88432451, 
  byte_string_start = 0x54c8f6c "\303\030\304\t!\210\n@\305\230\203\002", 
  constants = 39944884, 
  next = 0xbfffeea4
}
        result = -1073752276
        bytestr = -1878982676
#7  0x00142a76 in Feval (form=39478949) at eval.c:2383
        numargs = -1878982676
        argvals = {88432451, 39944884, 16, 0, 0, 1021476, 1317971, 88432515}
        args_left = 50332681
        i = 3
        fun = -1073752276
        val = -1073752276
        original_fun = 50443481
        original_args = 39478957
        funcar = -1878982676
        backtrace = {
  next = 0xbfffef6c, 
  function = 0xbfffed2c, 
  args = 0xbfffecf4, 
  nargs = 3, 
  evalargs = 1 '\001', 
  debug_on_exit = 0 '\0'
}
        form = 50332681
#8  0x0014505f in internal_lisp_condition_case (var=50332681, bodyform=39478949, handlers=39479013) at eval.c:1456
        val = -1878982676
        c = {
  tag = 50332681, 
  val = 50332681, 
  next = 0xbffff278, 
  gcpro = 0x0, 
  jmp = {895, 1562321, 8096, 1330880, 3, 1323480, 88903037, 50332681, -1073746424, -1073746608, 39976991, 662, 1331046, 88408087, 50331679, 31, -1073807360, 55}, 
  backlist = 0xbfffef6c, 
  handlerlist = 0xbffff2ec, 
  lisp_eval_depth = 3, 
  pdlcount = 14, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0xbfffeea4
}
        h = {
  handler = 39479013, 
  var = 50332681, 
  chosen_clause = -1073746396, 
  tag = 0xbfffed68, 
  next = 0xbffff2ec
}
#9  0x0017b01d in Fbyte_code (bytestr=88431283, vector=39945012, maxdepth=5) at bytecode.c:868
        handlers = 9
        body = -1878982676
        op = 9
        vectorp = (Lisp_Object *) 0x2618338
        stack = {
  pc = 0x54c8d7d "\210\016&A\211\026&\204\372", 
  top = 0xbfffee20, 
  bottom = 0xbfffee20, 
  byte_string = 88431283, 
  byte_string_start = 0x54c8c90 "\306 \210\212\307 \210`\030\310\t!\032\311\211\033\034\311\211\035\036%\311\036&\n\311=\204,", 
  constants = 39945012, 
  next = 0xbffff024
}
        result = -1073752276
        bytestr = -1878982676
#10 0x00142eab in funcall_lambda (fun=39945332, nargs=0, arg_vector=0xbfffefb4) at eval.c:3229
        val = 9
        syms_left = 39945328
        next = 39945328
        i = 0
        optional = 1
        rest = 0
#11 0x0014338e in Ffuncall (nargs=1, args=0xbfffefb0) at eval.c:3099
        fun = 39945332
        original_fun = 88723865
        funcar = -1878982676
        numargs = 0
        val = -1073752276
        backtrace = {
  next = 0xbffff0ec, 
  function = 0xbfffefb0, 
  args = 0xbfffefb4, 
  nargs = 0, 
  evalargs = 0 '\0', 
  debug_on_exit = 0 '\0'
}
        internal_args = (Lisp_Object *) 0x2618474
        i = -1878982676
        args = (Lisp_Object *) 0x549d199
#12 0x0017c0e7 in Fbyte_code (bytestr=88429427, vector=39943924, maxdepth=4) at bytecode.c:678
        op = 9
        vectorp = (Lisp_Object *) 0x2617ef8
        stack = {
  pc = 0x54c8ad8 "\210p\025`\026\017\202;", 
  top = 0xbfffefb0, 
  bottom = 0xbfffefb0, 
  byte_string = 88429427, 
  byte_string_start = 0x54c8abc "\b\306\031\032\307 \203\025", 
  constants = 39943924, 
  next = 0x0
}
        result = -1073752276
        bytestr = -1878982676
#13 0x00142eab in funcall_lambda (fun=39944116, nargs=0, arg_vector=0xbffff190) at eval.c:3229
        val = 9
        syms_left = 39944112
        next = 39944112
        i = 0
        optional = 41839712
        rest = -1073745172
#14 0x0014338e in Ffuncall (nargs=1, args=0xbffff18c) at eval.c:3099
        fun = 39944116
        original_fun = 88723201
        funcar = -1878982676
        numargs = 0
        val = -1073752276
        backtrace = {
  next = 0xbffff1ec, 
  function = 0xbffff18c, 
  args = 0xbffff190, 
  nargs = 0, 
  evalargs = 0 '\0', 
  debug_on_exit = 0 '\0'
}
        internal_args = (Lisp_Object *) 0x2617fb4
        i = -1878982676
        args = (Lisp_Object *) 0x549cf01
#15 0x00144918 in run_hook_with_args (nargs=1, args=0xbffff18c, cond=to_completion) at eval.c:2701
        sym = 50362881
        val = -1073752276
        ret = 50332681
        globals = -1878982676
#16 0x00144aa0 in Frun_hooks (nargs=1, args=0xbffff244) at eval.c:2564
        hook = {88723201}
        i = 0
        nargs = 1
#17 0x00143533 in Ffuncall (nargs=2, args=0xbffff240) at eval.c:3023
        fun = 3044684
        original_fun = -1073745340
        funcar = -1878982676
        numargs = 1
        val = -1073752276
        backtrace = {
  next = 0x0, 
  function = 0xbffff240, 
  args = 0xbffff244, 
  nargs = 1, 
  evalargs = 0 '\0', 
  debug_on_exit = 0 '\0'
}
        internal_args = (Lisp_Object *) 0x2e754c
        i = -1878982676
        args = (Lisp_Object *) 0xbffff244
#18 0x001447a3 in call1 (fn=50420393, arg1=50362881) at eval.c:2827
        ret_ungc_val = 9
#19 0x000d5018 in safe_run_hooks_1 (hook=-1073745272) at keyboard.c:2152
No locals.
#20 0x00141720 in internal_condition_case (bfun=0xd4fe6 <safe_run_hooks_1>, handlers=50332729, hfun=0xd5022 <safe_run_hooks_error>) at eval.c:1511
        val = -1878982676
        c = {
  tag = 50332681, 
  val = 50332681, 
  next = 0xbffff438, 
  gcpro = 0x0, 
  jmp = {895, 1244699, 8096, 1316399, -1073745192, 1244847, 3288768, 2, -1073745128, -1073745312, 58458143, 662, 1316548, 1179671, 31, 31, 0, 1310775}, 
  backlist = 0x0, 
  handlerlist = 0xbffff4ac, 
  lisp_eval_depth = 0, 
  pdlcount = 3, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        h = {
  handler = 50332729, 
  var = 50332681, 
  chosen_clause = 50418392, 
  tag = 0xbffff278, 
  next = 0xbffff4ac
}
#21 0x000d46a9 in safe_run_hooks (hook=50362881) at keyboard.c:2180
        hook = 9
#22 0x000e292a in command_loop_1 () at keyboard.c:1929
        cmd = 3266000
        lose = 3266000
        nonundocount = 0
        keybuf = {192, 48, 3288640, 50332681, -1073744872, 897948, 42526269, -1073744946, -1073744904, -1879037169, 83886285, 152, -1073744946, 50332681, 92274831, 1, 43, -1879036413, 47201816, 50332729, 47191672, -1881082098, 5602146, 0, -1073744900, -1073745088, 0, 3342336, 50332681, 58657089}
        i = 2
        prev_modiff = 206
        prev_buffer = (struct buffer *) 0x265ba20
        already_adjusted = 0
#23 0x00141720 in internal_condition_case (bfun=0xe2462 <command_loop_1>, handlers=50372321, hfun=0xdb2bd <cmd_error>) at eval.c:1511
        val = -1878982676
        c = {
  tag = 50332681, 
  val = 50332681, 
  next = 0xbffff53c, 
  gcpro = 0x0, 
  jmp = {895, 17831808, 8096, 1316399, 50332681, 50332681, 3279184, 3266000, -1073744680, -1073744864, 31, 658, 1316548, 1507351, 3276831, 3211295, -1073807360, -1073807305}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        h = {
  handler = 50372321, 
  var = 50332681, 
  chosen_clause = 50332729, 
  tag = 0xbffff438, 
  next = 0x0
}
#24 0x000d4414 in command_loop_2 () at keyboard.c:1367
        val = 9
#25 0x00141372 in internal_catch (tag=50368393, func=0xd43d0 <command_loop_2>, arg=50332681) at eval.c:1247
        c = {
  tag = 50368393, 
  val = 50332681, 
  next = 0x0, 
  gcpro = 0x0, 
  jmp = {895, 18, 8096, 1315542, 6, 18451, 3288144, 3266000, -1073744456, -1073744608, 50462751, 658, 1315685, 50462743, 50462751, 50331679, 47185920, 55}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        tag = 9
#26 0x000d41b6 in command_loop () at keyboard.c:1346
        val = 9
#27 0x000d426f in recursive_edit_1 () at keyboard.c:955
        val = 0
#28 0x000d43b7 in Frecursive_edit () at keyboard.c:1017
        buffer = 50332681
#29 0x000d33f7 in main (argc=1, argv=0xbffff7b8) at emacs.c:1772
        dummy = -1881117246
        stack_bottom_variable = 0 '\0'
        do_initial_setlocale = 1
        skip_args = 0
        rlim = {
  rlim_cur = 8388608, 
  rlim_max = 67108864
}
        no_loadup = 0
        junk = 0x0

Lisp Backtrace:
"accept-process-output" (0xbfffec04)
"byte-code" (0xbfffecf4)
"flyspell-word" (0xbfffefb4)
"flyspell-post-command-hook" (0xbffff190)
"run-hooks" (0xbffff244)
(gdb) p major-mode
No symbol "major" in current context.
(gdb) print major-mode
No symbol "major" in current context.
(gdb) show major-mode
Undefined show command: "major-mode".  Try "help show".
(gdb) s
Single stepping until exit from function read, 
which has no line number information.
0x90110760 in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
0x90001715 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.
0x9016a970 in __i686.get_pc_thunk.bx ()
(gdb) 
Single stepping until exit from function __i686.get_pc_thunk.bx, 
which has no line number information.
0x90001723 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.
0x9011078b in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3382
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) 
4855                  else if (nread == -1 && EAGAIN == errno)
(gdb) 
4859                  else if (nread == -1 && EWOULDBLOCK == errno)
(gdb) 
4838              while (wait_proc->infd >= 0)
(gdb) 
4840                  nread = read_process_output (proc, wait_proc->infd);
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5352
5352      register struct buffer *old = current_buffer;
(gdb) 
5353      register struct Lisp_Process *p = XPROCESS (proc);
(gdb) 
5355      struct coding_system *coding = proc_decode_coding_system[channel];
(gdb) 
5356      int carryover = p->decoding_carryover;
(gdb) 
5390      chars = (char *) alloca (carryover + readmax);
(gdb) 
5391      if (carryover)
(gdb) 
5397      if (DATAGRAM_CHAN_P (channel))
(gdb) 
5405      if (proc_buffered_char[channel] < 0)
(gdb) 
5407          nbytes = emacs_read (channel, chars + carryover, readmax);
(gdb) 
emacs_read (fildes=0, buf=0xbfffd780 "\b", nbyte=4096) at sysdep.c:3378
3378      while ((rtnval = read (fildes, buf, nbyte)) == -1
(gdb) 
3382    }
(gdb) 
read_process_output (proc=39993860, channel=0) at process.c:5409
5409          if (nbytes > 0 && p->adaptive_read_buffering)
(gdb) 
5448      p->decoding_carryover = 0;
(gdb) 
5452      if (nbytes <= 0)
(gdb) 
5454          if (nbytes < 0 || coding->mode & CODING_MODE_LAST_BLOCK)
(gdb) 
5698    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=0, do_display=0, wait_for_cell=50332681, wait_proc=0x2624200, just_wait_proc=0) at process.c:4842
4842                  if (nread == 0)
(gdb) 
4845                  if (0 < nread)
(gdb) 
4851                  else if (nread == -1 && EIO == errno)
(gdb) pr process-adaptive-read
The history is empty.
(gdb) p process-adaptive-read
No symbol "adaptive" in current context.
(gdb) pr
The history is empty.
(gdb) p process-adaptive-read-buffering
No symbol "adaptive" in current context.
(gdb) pv process-adaptive-read-buffering





In GNU Emacs 23.0.60.1 (i386-apple-darwin8.11.1, GTK+ Version 2.12.9)
 of 2008-06-15 on mt-computer.local
Windowing system distributor `The XFree86 Project, Inc', version 11.0.40400000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Major mode: Text

Minor modes in effect:
  flyspell-mode: t
  iswitchb-mode: t
  openwith-mode: t
  TeX-source-specials-mode: t
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t






^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-08-21  5:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-20 23:31 bug#425: 23.0.60; Hang in wait_reading_process_output Chong Yidong
2008-08-21  5:20 ` Markus Triska
  -- strict thread matches above, loose matches on Subject: below --
2008-06-16  8:36 Markus Triska

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

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.