unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* abort in wait_reading_process_input
@ 2004-05-23 22:47 Alex Schroeder
  2004-05-24  5:59 ` Eli Zaretskii
  2004-05-24  7:50 ` Kim F. Storm
  0 siblings, 2 replies; 5+ messages in thread
From: Alex Schroeder @ 2004-05-23 22:47 UTC (permalink / raw)


When running ERC, the Emacs IRC Client that is not (yet) part of
Emacs, I'm getting an abort in wait_reading_process_input.

Backing out the following change did not help:

revision 1.428
date: 2004/05/13 23:07:07;  author: kfstorm;  state: Exp;  lines: +4 -3
(wait_reading_process_input): Make reentrant.
Make Available and Connecting non-static.  Save and restore value
of waiting_for_user_input_p.

Alex.


(gdb) run
Starting program: /mnt/src/emacs/src/emacs -geometry 80x40+0+0
Detaching after fork from child process 15927.
Detaching after fork from child process 15928.
Detaching after fork from child process 15929.
Detaching after fork from child process 15931.
Detaching after fork from child process 15932.
Detaching after fork from child process 15933.

Breakpoint 1, abort () at emacs.c:434
434       kill (getpid (), SIGABRT);
(gdb) l
429     #endif
430     
431     ABORT_RETURN_TYPE
432     abort ()
433     {
434       kill (getpid (), SIGABRT);
435       /* This shouldn't be executed, but it prevents a warning.  */
436       exit (1);
437     }
438     #endif
(gdb) bt
#0  abort () at emacs.c:434
#1  0x081881e8 in wait_reading_process_input (time_limit=30, microsecs=0, 
    read_kbd=-8, do_display=1) at process.c:4590
#2  0x080588e6 in sit_for (sec=30, usec=0, reading=1, display=1, 
    initial_display=0) at dispnew.c:6407
#3  0x080f207a in read_char (commandflag=1, nmaps=5, maps=0xbffff34c, 
    prev_event=138321937, used_mouse_menu=0xbffff398) at keyboard.c:2710
#4  0x080f8ec3 in read_key_sequence (keybuf=0xbffff4c0, bufsize=30, 
    prompt=138321937, dont_downcase_last=0, can_return_switch_frame=1, 
    fix_current_buffer=1) at keyboard.c:8781
#5  0x080eef73 in command_loop_1 () at keyboard.c:1489
#6  0x08151c1e in internal_condition_case (bfun=0x80eedb0 <command_loop_1>, 
    handlers=138382865, hfun=0x80ee890 <cmd_error>) at eval.c:1333
#7  0x080eebee in command_loop_2 () at keyboard.c:1271
#8  0x0815174b in internal_catch (tag=-1, func=0x80eebc0 <command_loop_2>, 
    arg=138321937) at eval.c:1094
#9  0x080eeb8e in command_loop () at keyboard.c:1250
#10 0x080ee614 in recursive_edit_1 () at keyboard.c:961
#11 0x080ee751 in Frecursive_edit () at keyboard.c:1022
#12 0x080ece50 in main (argc=3, argv=0xbffffb74) at emacs.c:1693
			    


-- 
.O.  http://www.emacswiki.org/alex/
..O  Schroeder's fourth law:
OOO  None of your friends and coworkers share your taste in music.

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

* Re: abort in wait_reading_process_input
  2004-05-23 22:47 abort in wait_reading_process_input Alex Schroeder
@ 2004-05-24  5:59 ` Eli Zaretskii
  2004-05-24  7:50 ` Kim F. Storm
  1 sibling, 0 replies; 5+ messages in thread
From: Eli Zaretskii @ 2004-05-24  5:59 UTC (permalink / raw)
  Cc: emacs-devel

> From: Alex Schroeder <alex@emacswiki.org>
> Date: Mon, 24 May 2004 00:47:11 +0200
> 
> When running ERC, the Emacs IRC Client that is not (yet) part of
> Emacs, I'm getting an abort in wait_reading_process_input.
> 
> #0  abort () at emacs.c:434
> #1  0x081881e8 in wait_reading_process_input (time_limit=30, microsecs=0, 
>     read_kbd=-8, do_display=1) at process.c:4590

That seems to indicate that the values of check_connect and
num_pending_connects are inconsistent (the former is non-zero, but the
latter is zero or negative).  So one idea would be to put a watchpoint
on the values of these two variables and trace their changes (assuming
you can easily reproduce the crash with ERC).

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

* Re: abort in wait_reading_process_input
  2004-05-23 22:47 abort in wait_reading_process_input Alex Schroeder
  2004-05-24  5:59 ` Eli Zaretskii
@ 2004-05-24  7:50 ` Kim F. Storm
  2004-06-04  0:52   ` Alex Schroeder
  2004-07-04 13:00   ` Alex Schroeder
  1 sibling, 2 replies; 5+ messages in thread
From: Kim F. Storm @ 2004-05-24  7:50 UTC (permalink / raw)
  Cc: emacs-devel

Alex Schroeder <alex@emacswiki.org> writes:

> When running ERC, the Emacs IRC Client that is not (yet) part of
> Emacs, I'm getting an abort in wait_reading_process_input.
> 
> Backing out the following change did not help:
> 
> revision 1.428
> date: 2004/05/13 23:07:07;  author: kfstorm;  state: Exp;  lines: +4 -3
> (wait_reading_process_input): Make reentrant.
> Make Available and Connecting non-static.  Save and restore value
> of waiting_for_user_input_p.
> 
> Alex.
> 

Does the following patch help:

*** process.c	14 May 2004 00:42:09 +0200	1.428
--- process.c	24 May 2004 09:48:17 +0200	
***************
*** 4581,4587 ****
  		}
  	    }
  #ifdef NON_BLOCKING_CONNECT
! 	  if (check_connect && FD_ISSET (channel, &Connecting))
  	    {
  	      struct Lisp_Process *p;
  
--- 4581,4588 ----
  		}
  	    }
  #ifdef NON_BLOCKING_CONNECT
! 	  if (check_connect && FD_ISSET (channel, &Connecting)
! 	      && FD_ISSET (channel, &connect_wait_mask))
  	    {
  	      struct Lisp_Process *p;
  

-- 
Kim F. Storm <storm@cua.dk> http://www.cua.dk

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

* Re: abort in wait_reading_process_input
  2004-05-24  7:50 ` Kim F. Storm
@ 2004-06-04  0:52   ` Alex Schroeder
  2004-07-04 13:00   ` Alex Schroeder
  1 sibling, 0 replies; 5+ messages in thread
From: Alex Schroeder @ 2004-06-04  0:52 UTC (permalink / raw)
  Cc: emacs-devel

Hi Kim,

Before installing your patch, I wanted to figure out what triggered
the bug so I would know what to look for.

A week has gone by and the bug has not reappeared.  I will keep an
eye on it...

Alex.

storm@cua.dk (Kim F. Storm) writes:

> Alex Schroeder <alex@emacswiki.org> writes:
>
>> When running ERC, the Emacs IRC Client that is not (yet) part of
>> Emacs, I'm getting an abort in wait_reading_process_input.
>> 
>> Backing out the following change did not help:
>> 
>> revision 1.428
>> date: 2004/05/13 23:07:07;  author: kfstorm;  state: Exp;  lines: +4 -3
>> (wait_reading_process_input): Make reentrant.
>> Make Available and Connecting non-static.  Save and restore value
>> of waiting_for_user_input_p.
>> 
>> Alex.
>> 
>
> Does the following patch help:
>
> *** process.c	14 May 2004 00:42:09 +0200	1.428
> --- process.c	24 May 2004 09:48:17 +0200	
> ***************
> *** 4581,4587 ****
>   		}
>   	    }
>   #ifdef NON_BLOCKING_CONNECT
> ! 	  if (check_connect && FD_ISSET (channel, &Connecting))
>   	    {
>   	      struct Lisp_Process *p;
>   
> --- 4581,4588 ----
>   		}
>   	    }
>   #ifdef NON_BLOCKING_CONNECT
> ! 	  if (check_connect && FD_ISSET (channel, &Connecting)
> ! 	      && FD_ISSET (channel, &connect_wait_mask))
>   	    {
>   	      struct Lisp_Process *p;
>   
>
> -- 
> Kim F. Storm <storm@cua.dk> http://www.cua.dk

-- 
.O.  http://www.emacswiki.org/alex/
..O  Schroeder's fourth law:
OOO  None of your friends and coworkers share your taste in music.

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

* Re: abort in wait_reading_process_input
  2004-05-24  7:50 ` Kim F. Storm
  2004-06-04  0:52   ` Alex Schroeder
@ 2004-07-04 13:00   ` Alex Schroeder
  1 sibling, 0 replies; 5+ messages in thread
From: Alex Schroeder @ 2004-07-04 13:00 UTC (permalink / raw)
  Cc: emacs-devel

Hi Kim,

Before installing your patch, I wanted to figure out what triggered
the bug so I would know what to look for.

A week has gone by and the bug has not reappeared


storm@cua.dk (Kim F. Storm) writes:

> Alex Schroeder <alex@emacswiki.org> writes:
>
>> When running ERC, the Emacs IRC Client that is not (yet) part of
>> Emacs, I'm getting an abort in wait_reading_process_input.
>> 
>> Backing out the following change did not help:
>> 
>> revision 1.428
>> date: 2004/05/13 23:07:07;  author: kfstorm;  state: Exp;  lines: +4 -3
>> (wait_reading_process_input): Make reentrant.
>> Make Available and Connecting non-static.  Save and restore value
>> of waiting_for_user_input_p.
>> 
>> Alex.
>> 
>
> Does the following patch help:
>
> *** process.c	14 May 2004 00:42:09 +0200	1.428
> --- process.c	24 May 2004 09:48:17 +0200	
> ***************
> *** 4581,4587 ****
>   		}
>   	    }
>   #ifdef NON_BLOCKING_CONNECT
> ! 	  if (check_connect && FD_ISSET (channel, &Connecting))
>   	    {
>   	      struct Lisp_Process *p;
>   
> --- 4581,4588 ----
>   		}
>   	    }
>   #ifdef NON_BLOCKING_CONNECT
> ! 	  if (check_connect && FD_ISSET (channel, &Connecting)
> ! 	      && FD_ISSET (channel, &connect_wait_mask))
>   	    {
>   	      struct Lisp_Process *p;
>   
>
> -- 
> Kim F. Storm <storm@cua.dk> http://www.cua.dk

-- 
.O.  http://www.emacswiki.org/alex/
..O  Schroeder's fourth law:
OOO  None of your friends and coworkers share your taste in music.

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

end of thread, other threads:[~2004-07-04 13:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-23 22:47 abort in wait_reading_process_input Alex Schroeder
2004-05-24  5:59 ` Eli Zaretskii
2004-05-24  7:50 ` Kim F. Storm
2004-06-04  0:52   ` Alex Schroeder
2004-07-04 13:00   ` Alex Schroeder

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).