From c89072ee7e2e5e3494d8a824994fcac9ea2f2477 Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Eranian?= Date: Mon, 13 Dec 2004 17:57:36 -0800 Subject: [PATCH] [IA64] perfmon.c: fix bug in previous "fix" - undo the pfm_context_free() call in pfm_handle_work(). The logic is different. In the case of a controlling task exiting while monitored in pfm_handle_work. The context is freed in pfm_close() and not pfm_handle_work(). signed-off-by: stephane eranian Signed-off-by: Tony Luck --- arch/ia64/kernel/perfmon.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c index f9611fac03a1..a141ecbd40ed 100644 --- a/arch/ia64/kernel/perfmon.c +++ b/arch/ia64/kernel/perfmon.c @@ -5009,7 +5009,7 @@ pfm_handle_work(void) unsigned long flags; unsigned long ovfl_regs; unsigned int reason; - int ret, must_free = 0; + int ret; ctx = PFM_GET_CTX(current); if (ctx == NULL) { @@ -5087,7 +5087,6 @@ pfm_handle_work(void) do_zombie: DPRINT(("context is zombie, bailing out\n")); pfm_context_force_terminate(ctx, regs); - must_free = 1; goto nothing_to_do; } /* @@ -5102,8 +5101,6 @@ skip_blocking: nothing_to_do: UNPROTECT_CTX(ctx, flags); - - if (must_free) pfm_context_free(ctx); } static int -- 2.39.5