-
-
Notifications
You must be signed in to change notification settings - Fork 45
/
dmallocrc
107 lines (96 loc) · 3.7 KB
/
dmallocrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#
# Sample RC file for the debug malloc library
# Rename this to .dmallocrc and place in your $HOME directory to
# activate. See dmalloc.info for more information.
#
# $Id: dmallocrc,v 1.32 1998/11/12 21:42:31 gray Exp $
#
#
# This file maps tags to certain combinations of debug tokens. The
# tags here are provided as an example. You can also roll your own.
# Lines in this file should have the form:
#
# tag token1, token2, ...
#
# To use the above line you say 'dmalloc tag' which enables the
# debugging facilities token1, token2, ... You must pass the output
# from dmalloc through your shell's eval command to change your
# environment. See malloc.info for more information.
#
# Lines can end with a \ meaning it continues onto the next line.
# Lines beginning with '#' and empty lines are ignored
#
#
# Token: Description:
###########################################################################
# none no debugging functionality
#
# log-stats log general statistics
# log-non-free log non-freed memory pointers on shutdown
# log-known log only known non-freed memory pointers
# log-trans log memory transactions
# log-admin log full administrative information
# log-bad-space log actual bytes from bad pointers
# log-nonfree-space log actual bytes in non-freed pointers
# log-elapsed-time log elapsed-time for allocated pointer
# log-current-time log current-time for allocated pointers
#
# check-fence check fence-post areas
# check-heap do general heap checking
# check-blank check to see if blank space is overwritten
# check-funcs check the arguments of some routines
# check-shutdown check heap on shutdown
#
# catch-signals shutdown the library on SIGHUP, SIGINT, SIGTERM
# realloc-copy always copy data to a new pointer when realloc
# free-blank overwrite space that is freed
# error-abort abort the program (and dump core) on errors
# alloc-blank blank space that is to be alloced
# print-messages print errors and messages to STDERR
# catch-null abort program if library can't get sbrk space
# never-reuse never reuse memory that has been freed
# error-dump dump core on error and then continue
# allow-free-null allow the freeing of NULL pointers
#
# no debugging (for disabling memory checking)
none none
# basic runtime tests
runtime log-stats, log-non-free, log-bad-space, \
check-fence, \
catch-null
# minimal checking
low log-stats, log-non-free, log-bad-space, log-elapsed-time, \
check-fence, \
free-blank, error-abort, alloc-blank, catch-null
# significant checking
medium log-stats, log-non-free, log-bad-space, log-elapsed-time, \
check-fence, check-heap, \
realloc-copy, free-blank, error-abort, alloc-blank, \
catch-null
# extensive checking
high log-stats, log-non-free, log-bad-space, log-elapsed-time, \
check-fence, check-heap, check-blank, check-funcs, \
realloc-copy, free-blank, error-abort, alloc-blank, \
catch-null
# full logging of statistics
log log-stats, log-non-free, log-trans, log-admin, log-bad-space, \
log-elapsed-time, \
check-fence, \
catch-null
# immediate logging of problems in a text-based programs
text log-bad-space, \
check-fence, \
catch-null, print-messages
# full logging of statistics in text programs
verbose log-stats, log-non-free, log-trans, log-admin, log-bad-space, \
log-elapsed-time, \
check-fence, \
catch-null, print-messages
# the kitchen-sink minus a couple special tokens:
# log-known, log-current-time, print-messages, allow-free-null,
# error-dump
all log-stats, log-non-free, log-trans, log-admin, log-bad-space, \
log-elapsed-time, \
check-fence, check-heap, check-blank, check-funcs, \
catch-signals, realloc-copy, free-blank, error-abort, \
alloc-blank, catch-null, never-reuse