On Sat, Sep 13, 2014 at 05:35:15PM -0400, Peter G wrote:
> my issue seems similar to the one presented here:
> https://www.mail-archive.com/[email protected]/msg03376.html
> but with maple.

In this bug it was the application blocking the desktop and using
100% cpu, so that's a different story.

> In most cases opening and using maple works fine, but with some worksheets,
> in particular those that may contain many plots, fvwm "freezes" when maple
> is loading. The fvwm process runs at 100% on a single core. Maple is
> actually usable, that is I can type in it and letters show up, but the
> mouse is not, and I am not able to control other clients. In order to make
> fvwm usable again, I have to kill all the maple processes (java, mserver).
> Then, usually after a minute or more, fvwm is responsive again.

This, together with the stack trace you posted, suggests that the
application shoots fvwm dead with too many events.  First we need
to find out what is happening exactly.

Could you place printfs in events.c in the My_XNextEvent() function
and print out the event type?  That should identify the mass of
events that are coming in, probably just the PropertyNotify from
the stack trace, but maybe more.

Then put printfs all over the responsible Handle<Event>()
functions to print out the exact contents of the events and how
fvwm reacts to them.  You can find descriptions of the various
event types in the event union by searching for "X11 event
structure" on the net.

When we have all this information, maybe it becomes clear what the
problem is and can think of a way to avoid it.

> I've checked 2.6.5 and the cvs versions of fvwm and observe the same
> problem. I have also tried countless combinations of possible Style
> settings from "Lenient" to various focus policies.

That doesn't help in such situations.

> Attaching to the fvwm process with a debugger it would seem that fvwm is
> just stuck in the main loop, and waiting for x events when this happens.

That's not what you posted in the other message.  If fvwm is just
waiting for events, it uses 0% cpu, not 100%.

> I should note that things work fine with (for example) gnome, but as the
> maple worksheet is loading, for a couple of seconds the window manager also
> "stops" (meaning one can't for example move another window), but comes back
> right after the document has loaded.

More evidence that the application probably generates too many
events.  Have you tried sitting the situation out?  Do things go
back to normal after, say, five minutes?

Fvwm does have some code to deal with such pathological
situations, but only for a few events.  Other than that, I've tried
to optimise the event receiving code to cause as little network
traffic and cpu load as possible.  BUt in any case, it's always
possible that it's cheaper for an application to generate and
event than the costs are for fvwm to handle it.  That's probably
what's happening.

Ciao

Dominik ^_^  ^_^

-- 

Dominik Vogt

Reply via email to