Even more slab allocator updates.
[srvx.git] / ChangeLog
1 # do not edit -- automatically generated by arch changelog
2 # arch-tag: automatic-ChangeLog--srvx@srvx.net--2005-srvx/srvx--devo--1.3
3 #
4
5 2005-02-05 03:52:51 GMT Michael Poole <mdpoole@troilus.org>     patch-14
6
7     Summary:
8       Even more slab allocator updates.
9     Revision:
10       srvx--devo--1.3--patch-14
11
12     src/slab-alloc.c (SLAB_DEBUG): Default to on.
13     (SMALL_CUTOFF): Fix default value (must be a multiple of 4).
14     (slab_unalloc): Fix slab counting.  When SLAB_RESERVE, allocate the
15     set of pages in a burst, rather than supplementing them as we unmap.
16     (slab_realloc): Fix a rather embarassing (and LARGE) memory leak.
17
18     modified files:
19      ChangeLog src/alloc-slab.c
20
21
22 2005-02-04 16:36:40 GMT Michael Poole <mdpoole@troilus.org>     patch-13
23
24     Summary:
25       more debugging updates
26     Revision:
27       srvx--devo--1.3--patch-13
28
29     src/alloc-slab.c: Switch free slab list from a stack to queue, and
30     make sure there are SLAB_RESERVE in the queue before an old slab is
31     dereferenced.  This causes a fault when dereferencing stale pointers
32     to the last SLAB_RESERVE full slabs.
33     
34     src/log.c: Make struct logEntry *last static, to make sure gcc does
35     not optimize it away.
36
37     modified files:
38      ChangeLog src/alloc-slab.c src/log.c
39
40
41 2005-01-31 22:28:59 GMT Michael Poole <mdpoole@troilus.org>     patch-12
42
43     Summary:
44       More slab allocator updates.
45     Revision:
46       srvx--devo--1.3--patch-12
47
48     src/alloc-slab.c: Disable extra debugging by default.  Add more
49     statistics counters.  Change element type of little_slabs[].  Keep a
50     global list of unused (full) slab pages, rather than per-slab.
51     Various other cleanups and fixes.
52     
53     src/chanserv.h: Can only be off-channel with off_channel > 1.
54     
55     src/main.c: Update years in copyright notice.
56     
57     src/opserv.c: Remove OSMSG_STATS_MEMORY.  Make cmd_stats_memory()
58     allocator-specific.
59
60     modified files:
61      ChangeLog src/alloc-slab.c src/chanserv.h src/main.c
62      src/opserv.c
63
64
65 2005-01-31 11:08:15 GMT Michael Poole <mdpoole@troilus.org>     patch-11
66
67     Summary:
68       Add "?stats memory" and optional alloc_header to slab.
69     Revision:
70       srvx--devo--1.3--patch-11
71
72     src/alloc-slab.c: Add alloc_header (but no redzone) debug support,
73     enabled by default.  Update alloc_count and alloc_size.
74     
75     src/opserv.c: Provide "stats memory" command for slab allocator.
76
77     modified files:
78      ChangeLog src/alloc-slab.c src/opserv.c
79
80
81 2005-01-31 05:14:52 GMT Michael Poole <mdpoole@troilus.org>     patch-10
82
83     Summary:
84       Add slab allocator; reduce delta with srvx-gs.
85     Revision:
86       srvx--devo--1.3--patch-10
87
88     configure.in: Check for getpagesize().  Support --with-malloc=slab.
89     
90     src/Makefile.am: Add alloc-slab.c as an extra source file.
91     
92     src/alloc-srvx.c: Clean up srvx_free() slightly.  Check for previously
93     allocated blocks.
94     
95     srvx.conf.example, src/chanserv.c, src/main.c, src/modcmd.c,
96     src/proto-p10.c: Apply patches to bring closer to srvx-gs branch.
97     
98     src/log.c: Assert and _exit() on fatal log messages.
99     
100     src/opserv.c: Clarify logic for modes to set on join floods.
101     
102     src/proto-common.c: Accept off-channel commands in registered channels.
103
104     new files:
105      src/.arch-ids/alloc-slab.c.id src/alloc-slab.c
106
107     modified files:
108      ChangeLog configure.in src/Makefile.am src/alloc-srvx.c
109      src/chanserv.c src/chanserv.h src/common.h src/hash.h
110      src/helpfile.c src/log.c src/main.c src/modcmd.c src/opserv.c
111      src/proto-common.c src/proto-p10.c srvx.conf.example
112
113
114 2005-01-26 21:16:54 GMT Michael Poole <mdpoole@troilus.org>     patch-9
115
116     Summary:
117       offchannel fixes; more memory verification
118     Revision:
119       srvx--devo--1.3--patch-9
120
121     src/chanserv.c (cmd_register): Do not join channels if the default
122     options include being offchannel.
123     
124     src/common.h: Verify list allocations when appending or removing.
125     
126     src/hash.c (GetUserMode): Verify channel and user list allocations.
127     
128     src/log.c (log_entry_search): Keep pointer to last visited log entry.
129     
130     src/proto-p10.c (mod_chanmode_parse): Fail if trying to change +z when
131     passed MCP_REGISTERED.
132
133     modified files:
134      ChangeLog src/chanserv.c src/common.h src/hash.c src/log.c
135      src/proto-p10.c
136
137
138 2005-01-24 17:12:38 GMT Michael Poole <mdpoole@troilus.org>     patch-8
139
140     Summary:
141       typo fix in alloc-srvx.c; avoid dereferencing free()'d bans
142     Revision:
143       srvx--devo--1.3--patch-8
144
145     src/alloc-srvx.c (srvx_realloc): Fix argument list to srvx_free().
146     
147     src/chanserv.c (find_matching_bans): Make temporary copies of bans to
148     be removed.  Double-check remove count at end of loop.
149     (unban_user, cmd_open): Free the string copies.
150     (cmd_unbanall): Make temporary copies of removed bans and free them.
151     (handle_mode): Likewise.
152     
153     src/opserv.c (cmd_clearbans): Likewise.
154
155     modified files:
156      ChangeLog src/alloc-srvx.c src/chanserv.c src/opserv.c
157
158
159 2005-01-24 16:45:44 GMT Michael Poole <mdpoole@troilus.org>     patch-7
160
161     Summary:
162       More allocation debugging support.
163     Revision:
164       srvx--devo--1.3--patch-7
165
166     src/alloc-srvx.c (srvx_realloc): Reorganize.
167     (verify): New function.
168     
169     src/common.h (verify): Define and/or declare suitably.
170     
171     src/dict-splay.c (dict_splay): Verify node at each iteration.
172     (dict_insert, dict_remove2, dict_find, dict_delete,
173     dict_sanity_check): Verify entire dict.
174     (dict_sanity_check_node): Verify node as valid allocation.
175     
176     src/hash.c (DelChannel): Verify channel before deletion.
177     (GetUserMode): Verify channel, user, and each modeNode.
178     
179     src/mod-sockcheck.c (sockcheck_free_client): Verify client.
180     (sockcheck_timeout_client, sockcheck_advance, sockcheck_readable,
181     sockcheck_connected, sockcheck_begin_test): Likewise.
182     (sockcheck_queue_address): Verify cached sockcheck entries.
183     
184     src/proto-p10.c (DelUser): Verify user before deletion.
185
186     modified files:
187      ChangeLog src/alloc-srvx.c src/common.h src/dict-splay.c
188      src/hash.c src/mod-sockcheck.c src/proto-p10.c
189
190
191 2005-01-21 15:10:49 GMT Michael Poole <mdpoole@troilus.org>     patch-6
192
193     Summary:
194       More debug allocator fixes and enhancements
195     Revision:
196       srvx--devo--1.3--patch-6
197
198     src/alloc-srvx.c (*_MAGIC): ASk recognized the CCSDS ASM sequence.
199     (srvx_free): Overwrite with 0xDE bytes to distinguish from
200     uninitialized values.  As SailorFrag suggested, only overwrite the
201     user region.
202     
203     src/dict-splay.c (dict_insert): Check whether free functions need to
204     be worked around here as well.
205
206     modified files:
207      ChangeLog src/alloc-srvx.c src/dict-splay.c
208
209
210 2005-01-21 00:48:35 GMT Michael Poole <mdpoole@troilus.org>     patch-5
211
212     Summary:
213       Add redzone and statistics reporting to debug allocator.
214     Revision:
215       srvx--devo--1.3--patch-5
216
217     src/alloc-srvx.c (redzone): New variable to detect buffer overwrites.
218     (alloc_count, alloc_size): New variables to track allocation stats.
219     (srvx_malloc, srvx_realloc, srvx_free): Use the above.
220     
221     src/opserv.c (OSMSG_STATS_MEMORY): New translation string.
222     (cmd_stats_memory): New (conditional) command function.
223     (init_opserv): Conditionally provide cmd_stats_memory.
224
225     modified files:
226      ChangeLog src/alloc-srvx.c src/opserv.c
227
228
229 2005-01-20 23:41:17 GMT Michael Poole <mdpoole@troilus.org>     patch-4
230
231     Summary:
232       Add built-in debug malloc wrapper.
233     Revision:
234       srvx--devo--1.3--patch-4
235
236     TODO: Remove the completed TODO item.
237     
238     configure.in: Add --with-malloc=srvx support.
239     
240     src/Makefile.am: Add alloc-srvx.c to extra sources.
241     
242     src/common.h: Reindent debug malloc directives; add directives for
243     WITH_MALLOC_SRVX.
244     
245     src/dict-splay.c: Kludge around free() as macro vs function.
246
247     new files:
248      src/.arch-ids/alloc-srvx.c.id src/alloc-srvx.c
249
250     modified files:
251      ChangeLog TODO configure.in src/Makefile.am src/common.h
252      src/dict-splay.c
253
254
255 2005-01-20 22:51:54 GMT Michael Poole <mdpoole@troilus.org>     patch-3
256
257     Summary:
258       various bugfixes and IPv6 preparation work
259     Revision:
260       srvx--devo--1.3--patch-3
261
262     src/modcmd.c (modcmd_privmsg): Fix CTCP PING response type.
263     
264     src/opserv.help: Add column headers for command lists.
265     
266     src/tools.c (is_gline, split_ircmask): Accept colons in hostnames.
267
268     modified files:
269      ChangeLog src/modcmd.c src/opserv.help src/tools.c
270
271
272 2005-01-05 01:03:05 GMT Michael Poole <mdpoole@troilus.org>     patch-2
273
274     Summary:
275       Add MODE_REGISTERED as +z for P10.
276     Revision:
277       srvx--devo--1.3--patch-2
278
279     Add MODE_REGISTERED as +z for P10.
280
281     modified files:
282      ChangeLog src/proto-p10.c
283
284
285 2005-01-04 19:35:57 GMT Michael Poole <mdpoole@troilus.org>     patch-1
286
287     Summary:
288       Rotate ChangeLog for new repository; clarify documentation files
289     Revision:
290       srvx--devo--1.3--patch-1
291
292     Rotate ChangeLog to show changes for srvx@srvx.net--2005-srvx repo.
293     
294     Fix various file permissions to 664 instead of 620.
295     
296     Update FAQ and TODO.  Add UPGRADE file to arch and to distribution.
297
298     new files:
299      .arch-ids/ChangeLog.id .arch-ids/UPGRADE.id ChangeLog UPGRADE
300
301     removed files:
302      .arch-ids/ChangeLog.id ChangeLog
303
304     modified files:
305      FAQ INSTALL Makefile.am TODO languages/de/chanserv.help
306      languages/de/global.help languages/de/modcmd.help
307      languages/de/nickserv.help languages/de/strings.db
308      languages/en_UK/chanserv.help languages/en_UK/strings.db
309      src/chanserv.help
310
311
312 2005-01-04 19:16:14 GMT Michael Poole <mdpoole@troilus.org>     base-0
313
314     Summary:
315       tag of srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-84
316     Revision:
317       srvx--devo--1.3--base-0
318
319     (automatically generated log message)
320
321     new patches:
322      srvx@srvx.net--2004-srvx/srvx--devo--1.3--base-0
323      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-1
324      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-2
325      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-3
326      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-4
327      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-5
328      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-6
329      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-7
330      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-8
331      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-9
332      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-10
333      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-11
334      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-12
335      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-13
336      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-14
337      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-15
338      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-16
339      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-17
340      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-18
341      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-19
342      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-20
343      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-21
344      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-22
345      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-23
346      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-24
347      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-25
348      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-26
349      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-27
350      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-28
351      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-29
352      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-30
353      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-31
354      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-32
355      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-33
356      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-34
357      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-35
358      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-36
359      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-37
360      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-38
361      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-39
362      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-40
363      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-41
364      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-42
365      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-43
366      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-44
367      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-45
368      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-46
369      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-47
370      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-48
371      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-49
372      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-50
373      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-51
374      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-52
375      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-53
376      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-54
377      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-55
378      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-56
379      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-57
380      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-58
381      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-59
382      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-60
383      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-61
384      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-62
385      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-63
386      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-64
387      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-65
388      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-66
389      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-67
390      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-68
391      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-69
392      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-70
393      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-71
394      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-72
395      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-73
396      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-74
397      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-75
398      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-76
399      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-77
400      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-78
401      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-79
402      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-80
403      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-81
404      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-82
405      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-83
406      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-84
407
408