« Return to Thread: Bug Report: Locking X11 with FOX

Re: Bug Report: Locking X11 with FOX

by Melton, Ryan :: Rate this Message:

Reply to Author | View in Thread

I have also experienced X completely locking up with a high cpu intensive chore... I had to change by application architecture to avoid it.  Seems like an operating system bug to allow an application to lock the entire OS however.  Jeroen - any comments?

Ryan

-----Original Message-----
From: Hal Brand [mailto:brand1@...]
Sent: Monday, June 08, 2009 5:22 PM
To: foxgui-users@...; jeroen@...
Subject: [Foxgui-users] Bug Report: Locking X11 with FOX

Both FOX V1.6.36 and V1.7.19 can lock-up X11 if the application
temporarily starves the FOX event loop.

We have applications that can have lots of work to do soon after
starting depending on many factors. We have observed X11 lock-ups (X
Server grabbed, but FOX not processing the events properly) on numerous
occasions. This is a problem with our application in the field as users
often start clicking as soon as the window appears.

This problem can be reproduced using at least one FOX test program with
simple mods to simulate the situation. (It will probably occur with any
FOX test application that involves pop-up menus (and maybe other pop-up,
server-grabbing widgets).) In this case, I have used a FXChore that
consumes a lot of CPU, then continually halves the CPU used until it
finally doesn't schedule itself any more.

Reproduction of the problem is simple. Build FOX, cd  into the tests/
directory and patch using the supplied context differences. (Note: these
differences were generated from V1.6.36, but can be applied to V1.7.19.)
Now, "make" and run the imageviewer. As soon as the window appears, left
mouse click on File, (don't wait for any action) then left mouse click
on Edit. With proper timing, the cursor will change from left pointing
to right pointing and your X session will be locked. Note that no amount
of mouse clicking anywhere will get results. Most window managers will
allow a keyboard escape. The one I use is CTRL-ALT-d which shrinks all
windows and releases the server grab.

It may be necessary to adjust the loop counter initial value (static int
c = 70000000;) for the machine running the test. The value chosen pretty
reliably locks my machine which is (from /proc/cpuinfo) "Intel(R)
Core(TM)2 Extreme CPU X9650  @ 3.00GHz".

I can provide a FOX -tracelevel <v> file if desired. The level 500 file
is 149KBytes so I guessed it best to send it by request.

--
Hal Brand





This message and any enclosures are intended only for the addressee.  Please  
notify the sender by email if you are not the intended recipient.  If you are  
not the intended recipient, you may not use, copy, disclose, or distribute this  
message or its contents or enclosures to any other person and any such actions  
may be unlawful.  Ball reserves the right to monitor and review all messages  
and enclosures sent to or from this email address.

------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Foxgui-users mailing list
Foxgui-users@...
https://lists.sourceforge.net/lists/listinfo/foxgui-users

 « Return to Thread: Bug Report: Locking X11 with FOX