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