Bug 2116 - Use proper per-cpu buffers in io.c, print.c, and string.h
Summary: Use proper per-cpu buffers in io.c, print.c, and string.h
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: runtime (show other bugs)
Version: unspecified
: P1 normal
Target Milestone: ---
Assignee: Martin Hunt
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-06 18:16 UTC by Martin Hunt
Modified: 2007-02-28 21:05 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Hunt 2006-01-06 18:16:30 UTC
Currently the code does things like 
char _stp_lbuf[NR_CPUS][STP_LOG_BUF_LEN + 1];
Comment 1 Martin Hunt 2006-11-09 18:35:05 UTC
Fixed all but io.c a while ago.  
Comment 2 Martin Hunt 2007-01-29 22:10:37 UTC
_stp_lbuf in io.c and _stp_string in string.h are using huge amounts of BSS
space, especially for x86_64 builds.
Comment 3 Martin Hunt 2007-02-28 21:05:03 UTC
Fixed.

2007-01-30  Martin Hunt  <hunt@redhat.com>

        * io.c (_stp_vlog): Use dynamic percpu allocations
        instead of very wasteful static allocations.
        * print.c (_stp_print_init): Do percpu allocations
        for io.c.
        (_stp_print_cleanup): Free percpu allocations.