Under certain unknown condition, bonobo-activation-server can spin and
consume the whole CPU core.
The problem is caused a callback which is called once every milisecond.
This is caused by a change in
the constant value SERVER_IDLE_QUIT_TIMEOUT from a 1000 to 1 upstream
and our down stream
patch has not got the change in.
bash-3.2$ svn diff
Index: ChangeLog
===================================================================
--- ChangeLog (revision 18379)
+++ ChangeLog (working copy)
@@ -1,3 +1,10 @@
+2009-05-27 Ghee Teo <ghee.teo at sun.com>
+
+ To fix 6844307. The problem is caused by a change in the
constant value
+ SERVER_IDLE_QUIT_TIMEOUT from a 1000 to 1. So the patch below
has to use
+ g_timeout_add_seconds () instead of g_timeout_add ().
+ * patches/libbonobo-01-close-down.diff:
+
2009-05-26 Brian Cameron <brian.cameron at sun.com>
* patches/gst-plugins-good-04-selector.diff: Update so it contains the
Index: patches/libbonobo-01-close-down.diff
===================================================================
--- patches/libbonobo-01-close-down.diff (revision 18379)
+++ patches/libbonobo-01-close-down.diff (working copy)
@@ -85,7 +85,7 @@
+ if (n_active_servers == od->n_active_servers &&
+ (od->n_active_servers - RESIDUAL_SERVERS) > 0) {
+ if (!idle_id) {
-+ idle_id = g_timeout_add (SERVER_IDLE_QUIT_TIMEOUT,
++ idle_id = g_timeout_add_seconds
(SERVER_IDLE_QUIT_TIMEOUT,
+ as_rescan, NULL);
+ }
+ }