In the cell spe follow mode, 
the monitored task does not notice ZOMBIE state. 
So we unload and free the pfm context at __pfm_close().

Signed-off-by: Takashi Yamamoto <[EMAIL PROTECTED]>
---
 perfmon/perfmon_file.c |    9 +++++++++
 1 file changed, 9 insertions(+)

--- a/perfmon/perfmon_file.c
+++ b/perfmon/perfmon_file.c
@@ -560,6 +560,15 @@ int __pfm_close(struct pfm_context *ctx,
                 * ZOMBIE state as part of pfm_unload_context()
                 */
                can_unload = can_free = 0;
+
+               /*
+                * In the cell spe follow mode, the monitored task does not 
notice
+                * ZOMBIE state because TIF_PERFMON_CTXSW is not set to the 
task and
+                * pfm_ctxsw() is not called from the task scheduler.
+                * So The context is unloaded and freed here.
+                */
+               if (ctx->flags.cell_spe_follow)
+                       can_unload = can_free = 1;
        }
 #endif
        if (can_unload)


Attachment: cell-forced-close-in-spe-follow.patch
Description: Binary data

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
perfmon2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to