public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc] mtrace: Use a static buffer for printing [BZ #25947]
@ 2021-08-12  1:10 Siddhesh Poyarekar
  0 siblings, 0 replies; only message in thread
From: Siddhesh Poyarekar @ 2021-08-12  1:10 UTC (permalink / raw)
  To: glibc-cvs

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dc906e94f7033892dadbd91718349f19e1376391

commit dc906e94f7033892dadbd91718349f19e1376391
Author: Siddhesh Poyarekar <siddhesh@sourceware.org>
Date:   Thu Aug 12 06:38:15 2021 +0530

    mtrace: Use a static buffer for printing [BZ #25947]
    
    Use a static buffer for mtrace printing now that it no longer adds to
    default libc footprint.
    
    Reviewed-by: DJ Delorie <dj@redhat.com>

Diff:
---
 malloc/mtrace-impl.c | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/malloc/mtrace-impl.c b/malloc/mtrace-impl.c
index 0e10ab7f60..83008ca18f 100644
--- a/malloc/mtrace-impl.c
+++ b/malloc/mtrace-impl.c
@@ -34,11 +34,8 @@
 
 #include <kernel-features.h>
 
-#define TRACE_BUFFER_SIZE 512
-
 static FILE *mallstream;
 static const char mallenv[] = "MALLOC_TRACE";
-static char *malloc_trace_buffer;
 
 static void
 tr_where (const void *caller, Dl_info *info)
@@ -184,16 +181,13 @@ do_mtrace (void)
   mallfile = secure_getenv (mallenv);
   if (mallfile != NULL)
     {
-      char *mtb = malloc (TRACE_BUFFER_SIZE);
-      if (mtb == NULL)
-        return;
-
       mallstream = fopen (mallfile != NULL ? mallfile : "/dev/null", "wce");
       if (mallstream != NULL)
         {
           /* Be sure it doesn't malloc its buffer!  */
-          malloc_trace_buffer = mtb;
-          setvbuf (mallstream, malloc_trace_buffer, _IOFBF, TRACE_BUFFER_SIZE);
+	  static char tracebuf [512];
+
+	  setvbuf (mallstream, tracebuf, _IOFBF, sizeof (tracebuf));
           fprintf (mallstream, "= Start\n");
           if (!added_atexit_handler)
             {
@@ -203,8 +197,6 @@ do_mtrace (void)
             }
 	  __malloc_debug_enable (MALLOC_MTRACE_HOOK);
         }
-      else
-        free (mtb);
     }
 }


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-08-12  1:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-12  1:10 [glibc] mtrace: Use a static buffer for printing [BZ #25947] Siddhesh Poyarekar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).