Re: Bizarre problem with panel and E



On Tue, Mar 02, 1999 at 08:47:32AM -0500, Daniel Burrows was heard to say:
>   I just ran into a problem when starting Enlightenment that has me completely
> puzzled.  What I did to trigger it is this: I started E, waited for my theme
> (E-Mac) to load, and clicked on the panel menu.  I then (quickly, relevant??)
> moved the mouse pointer up the panel, intending to start the Control Panel.
> By the time I got to System, however, everything had frozen up.  That is, both
> the panel and E stopped responding (although I could still move the mouse).  I
> didn't have other programs open so I don't know what they would have done.
> 
>   Here's the bizrre twist, though:  after clicking around a bit and waiting for
> about 30 seconds to see if they did something on their own, I switched to a
> virtual console and (assuming that the problem had occured due to the panel
> grabbing the mouse) did 'strace -p `pidof panel`' to see what happened.  For a
> moment, I saw it blocked in a read(), but almost immediately the screen
> filled with hundreds of system calls--and then it went to regularly polling.
> Going back to X, I discovered that my panel was now active.  I then decided
> to pop up an Eterm to see what I could see, but nothing visibly happened when
> I hit the Eterm button.  I hit it again just to be sure, waited--and then tried
> to get a background menu.  Nothing.  I switched back to a console, strace'd
> E, and got the same result as with the panel.
> 
>   So having described this odyssy to you, I have two questions:
> 
>   a) Why did E and the panel freeze up like that?
>   b) Why did strace()'ing them unfreeze them? (I've had other occasions where
>     this happened but this was the most blatant)  Some obscure UNIX semantic
>     I'm unaware of?

  Ok.  This just happened to me again.  Only I was doing something else when
the freeze occured. (I think I was opening an ssh connection somewhere).  It
looks like something is sending SIGSTOP to all my processes (!)  First,
the output of ps ax | grep Eterm:


24192 tty1     T      0:00 /usr/bin/tcsh -c Eterm
24193 tty1     T      0:00 Eterm
24524 tty3     S      0:00 grep Eterm

  The documentation for ps says that T means "Traced or Stopped".  strace on
it yielded:

--- SIGSTOP (Stopped (signal)) ---
select(1024, [4 5], NULL, NULL, NULL)   = 1 (in [4])
ioctl(4, FIONREAD, [32])                = 0
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\310\225"..., 32) = 32
write(4, "\2\0\4\0\23\0\200\2\2\0\0\0\37\0"..., 460) = 460
write(4, "J\0\10\0\23\0\200\2\35\0\200\2\325"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
write(4, "\2\0\4\0\23\0\200\2\2\0\0\0\316\30"..., 460) = 460
write(4, "J\0\10\0\23\0\200\2\35\0\200\2\325"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\220^"..., 32) = 32
write(4, "\2\0\4\0\23\0\200\2\2\0\0\0\37\0"..., 460) = 460
write(4, "J\0\10\0\23\0\200\2\35\0\200\2\325"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\226\267\310L\4\0\200\2\4\0\200\2"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\226\267\310L\4\0\200\2\4\0\200\2"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\226\267\310L\4\0\200\2\4\0\200\2"..., 32) = 32
ioctl(4, FIONREAD, [32])                = 0
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
write(4, "\16\0\2\0\4\0\200\2", 8)      = 8
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\220^"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\320\255"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\220^"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\220^"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\220^"..., 32) = 32
read(4, "\2%\310L?\177_Q&\0\0\0\4\0\200\2"..., 32) = 32
read(4, "\2@\310L\363\177_Q&\0\0\0\4\0\200"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0x\r@@6\r@P\237"..., 32) = 32
read(4, "\t\3\310L\4\0\200\2\0\0\0\0\310\225"..., 32) = 32
read(4, "\n\3\310L\4\0\200\2\0\0\0\0\200\372"..., 32) = 32
read(4, 0xbffff97c, 32)                 = -1 EAGAIN (Resource temporarily unavailable)
select(5, [4], NULL, NULL, NULL <unfinished ...>

  Similarly, stracing gmc, which was also stopped (every program using my X
display stopped silently):


--- SIGSTOP (Stopped (signal)) ---
gettimeofday({920488317, 911162}, NULL) = 0
ioctl(4, FIONREAD, [64])                = 0
read(4, "\7\1\336\25\362W^Q&\0\0\0[\0\300"..., 64) = 64
poll([{fd=4, events=POLLIN, revents=POLLIN}, {fd=5, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=6, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=7, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=8, events=POLLIN}], 5, 0) = 1
gettimeofday({920488317, 913544}, NULL) = 0
poll([{fd=4, events=POLLIN, revents=POLLIN}, {fd=5, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=6, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=7, events=POLLIN|POLLERR|POLLHUP|POLLNVAL}, {fd=8, events=POLLIN}], 5, 0) = 1
write(4, "I\2\5\0Z\0\300\2\25\0\21\0\1\0\1"..., 20) = 20
read(4, "\6\0\336\25\374W^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\6X^Q&\0\0\0a\0\300\2"..., 32) = 32
read(4, "\6\0\336\25\21X^Q&\0\0\0a\0\300\2"..., 32) = 32
read(4, "\6\0\336\25+X^Q&\0\0\0a\0\300\2\0"..., 32) = 32
read(4, "\6\0\336\25\267X^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\302X^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\324X^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\357X^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\23Y^Q&\0\0\0a\0\300\2"..., 32) = 32
read(4, "\6\0\336\25\35Y^Q&\0\0\0a\0\300\2"..., 32) = 32
read(4, "\4\1\336\25zY^Q&\0\0\0a\0\300\2\0"..., 32) = 32
read(4, "\6\0\336\25\375Y^Q&\0\0\0a\0\300"..., 32) = 32
read(4, "\6\0\336\25\f[^Q&\0\0\0a\0\300\2"..., 32) = 32

  Is this Gnome/E specific (I thought it was at first but now I'm not sure), and
does anyone have any idea what's going on?

  Daniel Burrows

-- 
  You will soon forget this.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]