From 41043168619f1bcb12a718792b052703b9d69e91 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 22 Dec 2011 11:38:32 -0500 Subject: [PATCH] Optimize tr_freehook --- ChangeLog | 4 ++++ NEWS | 6 +++--- malloc/mtrace.c | 8 +++++--- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index b8ea695..0544a05 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2011-12-22 Ulrich Drepper + [BZ #13328] + * malloc/mtrace.c (tr_freehook): Avoid unnecessary unlock/lock. + Proposed by Mariusz_Cukr . + * sysdeps/x86_64/fpu/bits/fenv.h: Use __REDIRECT_NTH for __feraiseexcept_renamed. diff --git a/NEWS b/NEWS index bdf996e..a10415d 100644 --- a/NEWS +++ b/NEWS @@ -12,9 +12,9 @@ Version 2.15 6779, 6783, 9696, 10103, 10709, 11589, 12403, 12847, 12868, 12852, 12874, 12885, 12892, 12907, 12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092, 13114, 13118, 13123, 13134, 13138, 13147, 13150, 13179, 13192, - 13268, 13276, 13291, 13305, 13335, 13337, 13344, 13358, 13367, 13413, - 13416, 13423, 13439, 13446, 13472, 13484, 13506, 13515, 13523, 13524, - 13538 + 13268, 13276, 13291, 13305, 13328, 13335, 13337, 13344, 13358, 13367, + 13413, 13416, 13423, 13439, 13446, 13472, 13484, 13506, 13515, 13523, + 13524, 13538 * New program pldd to list loaded object of a process Implemented by Ulrich Drepper. diff --git a/malloc/mtrace.c b/malloc/mtrace.c index b55449f..0d0cb35 100644 --- a/malloc/mtrace.c +++ b/malloc/mtrace.c @@ -146,10 +146,12 @@ tr_freehook (ptr, caller) tr_where (caller, info); /* Be sure to print it first. */ fprintf (mallstream, "- %p\n", ptr); - __libc_lock_unlock (lock); if (ptr == mallwatch) - tr_break (); - __libc_lock_lock (lock); + { + __libc_lock_unlock (lock); + tr_break (); + __libc_lock_lock (lock); + } __free_hook = tr_old_free_hook; if (tr_old_free_hook != NULL) (*tr_old_free_hook) (ptr, caller); -- 2.7.4