ChangeLog-2002 revision cc2ee177dbb3befca43e36cfc56778b006c3d050
12002-12-21  John Levon  <levon@movementarian.org>
2
3	* Makefile.am: list module files explicitly, needed
4	  for make dist from separate objdir
5
6	* configure.in: make both x86/ and ia64/ changelogs
7
82002-12-21  John Levon  <levon@movementarian.org>
9
10	* module/Makefile.am:
11	* configure.in: remove the ln -s arch in favour of
12	  using -I and AC_SUBST
13
14	* module/ia64/arch.h:
15	* module/x86/arch.h: rename to op_arch.h
16
17	* utils/Makefile.am: fix make uninstall
18
192002-12-21  John Levon  <levon@movementarian.org>
20
21	* utils/Makefile.am: fix back-compat scripts install
22	  for 2.5 kernel
23
242002-12-19  Will Cohen  <wcohen@redhat.com>
25
26	* utils/opcontrol: Revise kernel range computation.
27	
282002-12-19  Philippe Elie  <phil.el@wanadoo.fr>
29
30	* pp/op_time.cpp: minor formating fix
31	* pp/oprofpp.cpp: fix #656123 corner case with --separate-sample
32
332002-12-17  John Levon  <levon@movementarian.org>
34
35	* configure.in: remove oprof_report - breaks make dist
36
372002-12-17  Philippe Elie  <phil.el@wanadoo.fr>
38
39	* libdb/*.c *.h:
40	* libutil/op_fileio.c:
41	* dae/opd_proc.c: doxygen comment fix
42
432002-12-16  Philippe Elie  <phil.el@wanadoo.fr>
44
45	* module/ia64/op_syscalls.c:
46	* module/x86/hammer_op_syscalls.c:
47	* module/x86/op_syscalls.c: u16 pid to u32, tested/compiled only with
48	  32 bits x86
49
502002-12-15  Philippe Elie  <phil.el@wanadoo.fr>
51
52	* libutil++/string_manip.cpp: minor fix
53	* pp/derive_files.cpp: comment
54
552002-12-14  Philippe Elie  <phil.el@wanadoo.fr>
56
57	* pp/format_output.cpp:
58	* pp/format_output.h:
59	* pp/outsymbflag.h:
60	* pp/opp_symbol.h: add an app_name field in file_location and
61	  formater options for this field.
62
63	* pp/profile_container.cpp:
64	* pp/profile_container.h: add_samples() add app_name parameter
65
66	* pp/oprofpp.cpp:
67	* pp/op_to_source.cpp:
68	* pp/op_time.cpp:
69	* pp/op_time_options.cpp:
70	* pp/op_time_options.h: honor app_name parameter. No user visible
71	  change except for op_time -l when profiling with --separate-samples
72
73	* doc/oprofile.1.in:
74	* doc/oprofile.xml: update doc
75
762002-12-13  John Levon  <levon@movementarian.org>
77
78	* doc/oprofile.xml: lots of fixes. Remove sysctl documentation
79	  as its really an internal feature and was cluttering up
80	  the user manual.
81 
822002-12-13  John Levon  <levon@movementarian.org>
83
84	* doc/oprofile.xml: some clarifications on timer interrupt 
85 
862002-12-12  John Levon  <levon@movementarian.org>
87
88	* opcontrol: set one_enabled if timer interrupt. No
89	  behaviour change, but "safer"
90 
912002-12-11  John Levon  <levon@movementarian.org>
92
93	* pp/derive_files.h:
94	* pp/op_time.cpp:
95	* pp/op_time_options.cpp:
96	* pp/op_to_source.cpp:
97	* pp/opp_symbol.h:
98	* pp/profile.h:
99	* pp/profile_container.h:
100	* utils/Makefile.am: small pedantries
101 
1022002-12-10  Will Cohen  <wcohen@redhat.com>
103
104	* utils/op_dump_25: 
105	* utils/opcontrol (do_dump): Correct TMPFILE.
106
1072002-12-10  Will Cohen  <wcohen@redhat.com>
108
109	* daemon/opd_image.c (complete_dump): New.
110	* libop/op_config.h (OP_DUMP_STATUS): New.
111	* utils/op_dump_25: New file.
112	* utils/Makefile.am: Add op_dump_25.
113	* utils/opcontrol (do_dump): Revise how dump performed.
114
1152002-12-10  Philippe Elie  <phil.el@wanadoo.fr>
116
117	* pp/profile.cpp : oprofpp reported incorrectly counter setting when
118	  using multiple counter. Fix #651183
119
1202002-12-10  Philippe Elie  <phil.el@wanadoo.fr>
121
122	* pp/op_time.cpp: honor --excude-symbols. Fix #651165
123
1242002-12-09  Philippe Elie  <phil.el@wanadoo.fr>
125
126	* libutil++/op_bfd.cpp: stupid segfault when filtering included symbols
127
1282002-12-09  Philippe Elie  <phil.el@wanadoo.fr>
129
130	* libutil++/op_bfd.h:
131	* libutil++/op_bfd.cpp: replace a 0(N�) by a 0(N) behavior
132
133	* pp/output_format.cpp: actualize comment
134
1352002-12-08  Philippe Elie  <phil.el@wanadoo.fr>
136
137	* pp/profile.cpp: use scoped_ptr<counter_profile_t>
138
139	* libopt++/popt_options.h:
140	* pp/counter_profile.cpp: minor cleanup
141
1422002-12-08  Philippe Elie  <phil.el@wanadoo.fr>
143
144	* pp/counter_profile.cpp:
145	* pp/counter_profile.h: use scoped_ptr
146
1472002-12-08  Philippe Elie  <phil.el@wanadoo.fr>
148
149	* pp/counter_profile.h:
150	* pp/counter_profile.cpp: relax samples_db_t sooner
151
1522002-12-08  Philippe Elie  <phil.el@wanadoo.fr>
153
154	* pp/opp_samples_files.cpp:
155	* pp/opp_samples_files.h:
156	* pp/samples_container.cpp:
157	* pp/samples_container.h:
158	* pp/samples_file.cpp:
159	* pp/samples_file.h: rename class samples_file_t to counter_profile_t
160	  rename class opp_samples_files to profile_t
161	  rename class samples_container_t to profile_container_t
162	  rename file using the new class name as filename w/o _t suffix
163
164	* pp/format_output.cpp:
165	* pp/format_output.h:
166	* pp/op_merge.cpp:
167	* pp/op_time.cpp:
168	* pp/op_to_source.cpp:
169	* pp/oprofpp.cpp:
170	* pp/symbol_container_imp.cpp:
171	* pp/symbol_container_imp.h:
172	* pp/Makefile.am: reflect above class/file name change
173
1742002-12-06  Philippe Elie  <phil.el@wanadoo.fr>
175
176	* libdb/db_manage.c:
177	* libdb/db_hash.h: db_init() new to properly initialize a samples_db_t
178
179	* dae/opd_image.c:
180	* daemon/opd_imge.c: earlier init a samples_db_t object using
181	  db_init() rather a memset. This fix a potential bogosity cause we
182	  closed a lot of time file descriptor 0
183
1842002-12-06  Philippe Elie  <phil.el@wanadoo.fr>
185
186	* dae/opd_image.c:
187	* dae/opd_image.h:
188	* dae/opd_kernel.c: use hash table entry 0 for kernel and module image
189
1902002-12-04  John Levon  <levon@movementarian.org>
191
192	* pp/opp_symbol.h:
193	* pp/opp_symbol.cpp:
194	* pp/format_output.h:
195	* pp/format_output.cpp:
196	* others from above: create format_output namespace, some
197	  clean up
198 
1992002-12-04  Philippe Elie  <phil.el@wanadoo.fr>
200
201	* daemon/opd_image.c: revert last change, it break daemon...
202	
2032002-12-04  Philippe Elie  <phil.el@wanadoo.fr>
204
205	* daemon/opd_image.c: re-enable opd_check_image_mtime() it's not
206	  perfect but better than nothing
207
208	* libutil++/cverb.cpp: comment fix
209
2102002-12-04  Will Cohen  <wcohen@redhat.com>
211
212	* utils/opcontrol: Revised checking to determine kernel
213	  interface.
214
215
2162002-12-04  Philippe Elie  <phil.el@wanadoo.fr>
217
218	* libdb/db_test.c: measure system + user time
219
220	* dae/oprofiled.c: better error message
221	* daemon/oprofiled.c: write_abi() is static
222
2232002-12-03  Philippe Elie  <phil.el@wanadoo.fr>
224
225	* libdb/db_stat.c:
226	* libdb/db_debug.c: Alex whisp me than a few code was not 64 bits
227	  size_t safe.
228
2292002-12-03  John Levon  <levon@movementarian.org>
230
231	* doc/oprofile.xml:
232	* doc/oprofile.1.in:
233	* doc/Makefile.am: remove references to deprecated stuff
234 
2352002-12-03  John Levon  <levon@movementarian.org>
236
237	* utils/opcontrol: add --version
238 
2392002-12-03  John Levon  <levon@movementarian.org>
240
241	* utils/op_start:
242	* utils/op_start_25:
243	* utils/op_stop_25:
244	* utils/op_stop: print deprecation notice
245 
2462002-12-03  John Levon  <levon@movementarian.org>
247
248	* utils/op_session.c:
249	* utils/op_dump: print deprecation notice
250 
2512002-12-03  John Levon  <levon@movementarian.org>
252
253	* utils/opcontrol: do not shutdown on --reset. Send
254	  signal on --reset/--save like op_session. Try to dump
255	  like op_session to hack race "fix"
256 
2572002-12-03  John Levon  <levon@movementarian.org>
258
259	* utils/opcontrol: complain on opcontrol --save 
260 
2612002-12-03  Philippe Elie  <phil.el@wanadoo.fr>
262
263	* daemon/opd_kernel.c:
264	* daemon/opd_kernel.h: minor cleanup
265
266	* libabi/abi.cpp:
267	* libabi/abi_test.cpp:
268	* libabi/op_import.cpp: fix bad include filename.
269
2702002-12-03  Philippe Elie  <phil.el@wanadoo.fr>
271
272	* libdb/.cvsignore:
273	* libdb/Makefile.am:
274	* libdb/*.c --> db-hash-name.c to db_name.c
275
276	* dae/opd_image.h:
277	* daemon/opd_image.h:
278	* pp/samples_file.h: include db_hash.h
279
2802002-12-03  Philippe Elie  <phil.el@wanadoo.fr>
281
282	* gui/oprof_start_config.cpp: allow default value change w/o
283	  breaking actual user.
284
2852002-12-03  Philippe Elie  <phil.el@wanadoo.fr>
286
287	* TODO: update
288
289	* dae/opd_image.h:
290	* dae/opd_kernel.c:
291	* dae/opd_kernel.h:
292	* dae/opd_parse_proc.c:
293	* dae/opd_proc.c:
294	* dae/opd_proc.h:
295	* dae/opd_sample_files.c:
296	* dae/oprofiled.c:
297	* daemon/opd_image.h:
298	* pp/op_merge.cpp:
299	* pp/samples_file.h:
300	* pp/samples_file.cpp:
301	* pp/Makefile.am:
302	* libabi/Makefile.am:
303	* libabi/abi.cpp:
304	* libabi/abi_test.cpp:
305	* libabi/op_import.cpp: use hash table implementation of libdb
306
307	* gui/oprof_start.cpp:
308	* gui/oprof_start_config.cpp:
309	* gui/oprof_start_config.h:
310	* gui/ui/oprof_start.base.ui:
311	* utils/op_start:
312	* doc/oprofile.1.in:
313	* doc/oprofile.xml: remove module hash table size
314
315	* libdb/.cvsignore: update
316	* libdb/Makefile.am: build libdb-hash.a
317	* libdb/db-hash.h:
318	* libdb/db-hash-debug.c:
319	* libdb/db-hash-manage.c:
320	* libdb/db-hash-test.c:
321	* libdb/db-hash-insert.c:
322	* libdb/db-hash-stat.c:
323	* libdb/db-hash-travel.c: new files implementing a growable hash table
324	* libdb/Makefile.am: update
325
326	* libop/op_config_24.h: remove module hash table. Increase
327	  OP_PRE_WATERMARK, OP_DEFAULT_BUF_SIZE.
328	* libop/op_interface.h: struct op_sample update.
329
330	* module/oprofile.h:
331	* module/oprofile.c: remove hash table
332
3332002-12-02  John Levon  <levon@movementarian.org>
334
335	* configure.in: remove annoying AC_REVISION()
336 
3372002-12-02  John Levon  <levon@movementarian.org>
338
339	* utils/opcontrol: couple of minor cleanups
340 
3412002-12-02  John Levon  <levon@movementarian.org>
342
343	* utils/opcontrol: fix --deinit, complain on missing
344	  argument
345 
3462002-12-02  Will Cohen  <wcohen@redhat.com>
347
348	* doc/Makefile.am: Generate opcontrol.
349	* doc/oprofile.1.in: Add opcontrol information.
350	* doc/oprofile.xml: Add opcontrol information.
351
3522002-12-01  Will Cohen  <wcohen@redhat.com>
353
354	* utils/Makefile.am: Add opcontrol.
355	* utils/opcontrol: New.
356
3572002-12-01  John Levon  <levon@movementarian.org>
358
359	* various files: don't use db_tree name outside of libdb,
360	  it's implementation detail for most case
361 
3622002-11-29  Graydon Hoare  <graydon@redhat.com>
363
364	* module/x86/op_model_p4.c: fix dropped overflows.
365
3662002-11-26  Graydon Hoare  <graydon@redhat.com>
367
368	* module/x86/op_model_p4.c: fix CCCR-clearing logic.
369	* module/x86/cpu_type.c: re-enable Pentium IV.
370
3712002-11-25  John Levon  <levon@movementarian.org>
372
373	* module/x86/cpu_type.c: disable Pentium IV till it works
374 
3752002-11-23  Philippe Elie  <phil.el@wanadoo.fr>
376
377	* doc/oprofile.xml: start a FAQ. Clarify debug information vs
378	  symbol information. Explain why we don't use dynamic symbol
379
3802002-11-20  John Levon  <levon@movementarian.org>
381
382	* daemon/oprofiled.c:
383	* utils/op_start_25: kernel_only is a no-op on 2.5, no point
384	  in it existing
385 
3862002-11-19  Philippe Elie  <phil.el@wanadoo.fr>
387
388	* daemon/oprofiled.c: /dev/oprofile/kernel_only doesn't exists
389	  in timer int mode (second pass to fix #637804 ...)
390
3912002-11-17  Graydon Hoare  <graydon@redhat.com>
392
393	* module/x86/op_apic.h:
394	* module/x86/op_apic.c: revert, use copy of kernel code.
395
3962002-11-16  Philippe Elie  <phil.el@wanadoo.fr>
397
398	* dae/opd_kernel.c:
399	* dae/opd_mapping.c:
400	* dae/opd_proc.c:
401	* daemon/opd_image.c:
402	* daemon/opd_kernel.c:
403	* libop++/op_mangling.h:
404	* libutil++/cverb.h:
405	* pp/opp_samples_files.cpp:
406	* pp/samples_file.cpp: doxygen fix
407	* doc/srcdoc/Doxyfile: bump to 0.5 cvs
408
4092002-11-14  Will Cohen  <wcohen@redhat.com>
410
411	* gui/Makefile.am: Use $(bindir).
412	* oprof_report/Makefile.am: Use $(bindir).
413
4142002-11-15  Dave Jones <davej@suse.de>
415
416	* module/x86/cputype.c: Make the AMD case a bit simpler.
417
4182002-11-14  John Levon  <levon@movementarian.org>
419
420	* dae/Makefile.am:
421	* daemon/Makefile.am: proper fix for c++ link
422	  as suggested by Alexandre Duret-Lutz
423 
4242002-11-14  Philippe Elie  <phil.el@wanadoo.fr>
425
426	* Makefile.am: we installed module in the wrong directory.
427
4282002-11-14  Philippe Elie  <phil.el@wanadoo.fr>
429
430	* libutil/op_file.c: op_simplify_path_name(): strip leading '/'
431	* daemon/oprofiled.c:
432	* dae/oprofiled.c: fix incorrect specification of vmlinux file
433	  through --vmlinux=/foo//bar fixing #637805
434
4352002-11-14  Philippe Elie  <phil.el@wanadoo.fr>
436
437	* utils/op_start_25: /dev/oprofile/kernel_only doesn't exists
438	  in timer int mode. fix #637804
439
4402002-11-14  John Levon  <levon@movementarian.org>
441
442	* dae/*:
443	* daemon/*:
444	* libutil++/op_bfd.h:
445	* pp/samples_container.cpp:
446	* pp/samples_container.h: doxygen anality
447 
4482002-11-14  John Levon  <levon@movementarian.org>
449
450	* libopt++/popt_options.h:
451	* libopt++/popt_options.cpp: place in popt
452	namespace to avoid clash with getopt.h
453
454	* libabi/abi_test.cpp:
455	* libabi/op_import.cpp:
456	* pp/op_merge.cpp:
457	* pp/op_time_options.cpp:
458	* pp/op_to_source_options.cpp:
459	* pp/oprofpp_options.cpp:
460	* pp/session.cpp: fix for above
461 
462	* libabi/abi.cpp:
463	* libabi/abi.h: g++ 3.2 fixes
464
465	* libabi/op_import.cpp: uninline extract
466
467	* dae/Makefile.am:
468	* daemon/Makefile.am: fix c++ link hack for -Werror
469 
4702002-11-13  Graydon Hoare  <graydon@redhat.com>
471
472	( this changeset is mostly Dave Jones' work )
473
474	* README:
475	* TODO:
476	* configure.in:
477	* doc/oprofile.xml:
478	* libop/op_cpu_type.c:
479	* libop/op_cpu_type.h:
480	* libop/op_events.c:
481	* utils/op_help.c:
482	* module/compat.h:
483	* module/compat24.h:
484	* module/op_util.c:
485	* module/x86/Makefile.in:
486	* module/x86/apic_compat.h:
487	* module/x86/arch.h:
488	* module/x86/cpu_type.c:
489	* module/x86/op_fixmap.c:
490	* module/x86/op_nmi.c: minor additions for hammer support.
491
492	* module/x86/op_apic.c:
493	* module/x86/op_apic.h: major cleanup; add hammer support.
494	
495	* module/x86/hammer_entry.S:
496	* module/x86/hammer_ia32entry.S:
497	* module/x86/hammer_op_syscalls.c:
498	* module/x86/hammer_oprofile_nmi.S: new hammer support files.
499
5002002-11-14  John Levon  <levon@movementarian.org>
501
502	* configure.in: hack around case where clean checkout
503	  then ./configure --with-kernel-support
504 
5052002-11-12  Graydon Hoare  <graydon@redhat.com>
506
507	* autogen.sh: support overriding autotool binary names.
508
5092002-11-11  Philippe Elie  <phil.el@wanadoo.fr>
510
511	* configure.in: honor --with-extra-libs
512
5132002-11-11  Philippe Elie  <phil.el@wanadoo.fr>
514
515	* configure.in: add -W -Wall and optionnaly -Werror to user space
516	  compilation
517
5182002-11-11  John Levon  <levon@movementarian.org>
519
520	* dae/Makefile.am:
521	* daemon/Makefile.am: don't dist dummy.cpp
522 
5232002-11-11  John Levon  <levon@movementarian.org>
524
525	* dae/Makefile.am:
526	* daemon/Makefile.am: hack to fix --enable-abi
527 
5282002-11-10  John Levon  <levon@movementarian.org>
529
530	* configure.in:
531	* gui/Makefile.am:
532	* oprof_report/Makefile.am: only use X libs where
533	  they're actually wanted
534 
5352002-11-10  John Levon  <levon@movementarian.org>
536
537	* configure.in: make included sstream work again
538 
5392002-11-08  Will Cohen  <wcohen@redhat.com>
540
541	* doc/oprofile.xml: Update with IA64 information.
542
5432002-11-10  John Levon  <levon@movementarian.org>
544
545	* Makefile.am: remove oprof_report from SUBDIRS to
546	  avoid separate objdir problem
547 
5482002-11-10  John Levon  <levon@movementarian.org>
549
550	* most Makefile.am: do the dist_sources trick
551	  properly
552 
5532002-11-10  John Levon  <levon@movementarian.org>
554
555	* Makefile.am:
556	* configure.in:
557	* dae/Makefile.am:
558	* daemon/Makefile.am:
559	* utils/Makefile.am: s/WITH_KERNEL_SUPPORT/kernel_support
560
561	* configure.in:
562	* dae/Makefile.am:
563	* dae/oprofiled.c:
564	* daemon/Makefile.am:
565	* daemon/oprofiled.c:
566	* libabi/Makefile.am: approximate working --enable-abi more
567
5682002-11-10  John Levon  <levon@movementarian.org>
569
570	* dae/oprofiled.c:
571	* daemon/oprofiled.c: abi tidy
572 
5732002-11-10  John Levon  <levon@movementarian.org>
574
575	* autogen.sh: be verbose
576 
577	* gui/Makefile.am:
578	* gui/ui/Makefile.am:
579	* oprof_report/Makefile.am:
580	* oprof_report/ui/Makefile.am: remove duplicate
581	  set MOC/UIC
582 
5832002-11-10  John Levon  <levon@movementarian.org>
584
585	* Makefile.am: add comment
586
587	* configure.in: no need to subst OPROFILE_25
588 
5892002-11-09  John Levon  <levon@movementarian.org>
590
591	* TODO: update
592 
593	* configure.in:
594	* most Makefile.am: make separate objdir work,
595	  except for module (impossible I suppose)
596
5972002-11-09  John Levon  <levon@movementarian.org>
598
599	* autogen.sh: use --foreign
600 
6012002-11-09  John Levon  <levon@movementarian.org>
602
603	* configure.in: fix --with-kernel-support
604 
605	* doc/.cvsignore: add *.1
606
607	* libabi/Makefile.am: don't install abi_test
608 
6092002-11-09  John Levon  <levon@movementarian.org>
610
611	* all cvsignore: add Makefile.in
612 
613	* gui/Makefile.am: move EXTRA_DIST out of qt check
614
615	* gui/ui/Makefile.am:
616	* oprof_report/ui/Makefile.am: fix AM_CPPFLAGS typo
617 
6182002-11-09  John Levon  <levon@movementarian.org>
619
620	* all build files: use automake, written by Phil
621 
6222002-11-09  Philippe Elie  <phil.el@wanadoo.fr>
623
624	* pp/samples_file.cpp: check than samples files version
625	  match expected version fixing #635759
626
6272002-11-07  John Levon  <levon@movementarian.org>
628
629	* configure.in:
630	* module/compat.h: 
631	* module/compat24.h:
632	* module/op_dname.c: 
633	* module/oprofile.c: 
634	* module/x86/op_fixmap.c: 
635	* module/x86/op_nmi.c: remove 2.5 support from old
636	  module code
637 
6382002-11-06  Will Cohen  <wcohen@redhat.com>
639
640	* configure.in: Tests for ia64 architecture.
641	* dae/opd_mapping.c: Added includes.
642	* oprofile/dae/oprofiled.c (opd_do_samples): Typecast.
643	* libop/op_cpu_type.c (cpu_names, cpu_nr_counters): Add IA64 info.
644	* libop/op_cpu_type.h (op_cpu): Add IA64 enums.
645	* libop/op_events.c: Add defines for IA64 and IA64 events.
646	* libop++/op_print_event.cpp: Change include order to work on IA64.
647	* module/oprofile.c: Include "arch.h" file.
648	(evict_op_entry): Use IRQ_ENABLED macro.
649	(op_do_profile): Use INST_PTR and STATUS macros.
650	(oprof_init_data): Factor out computation.
651	* module/op_util.c (rvmalloc, rvfree): Typecasts.
652	* module/x86/arch.h: New.
653	* README: Update.
654	* utils/op_help.c (main): Add IA64 information.
655
656	* module/ia64/arch.h:
657	* module/ia64/cpu_type.c:
658	* module/ia64/IA64entry.h:
659	* module/ia64/IA64minstate.h:
660	* module/ia64/IA64syscallstub.h:
661	* module/ia64/Makefile.in:
662	* module/ia64/op_ia64_model.h: 
663	* module/ia64/op_pmu.c:
664	* module/ia64/oprofile_stubs.S:
665	* module/ia64/op_syscalls.c: New.
666
6672002-11-06  John Levon  <levon@movementarian.org>
668 
669	* configure.in: 0.5cvs
670
671	* Makefile.in: mention doxyfile in release steps
672 
6732002-11-06  Philippe Elie  <phil.el@wanadoo.fr>
674
675	* pp/op_to_source.cpp: op_to_source --source-with-assembly: avoid
676	  to be confused by source line which look like an asm line and
677	  stop incorrectly the output. This change go in 0.4 release
678
6792002-11-06  John Levon  <levon@movementarian.org>
680
681	* configure.in: bump to 0.4 in prep for release
682
6832002-11-06  John Levon  <levon@movementarian.org>
684
685	* module/x86/cpu_type.c: detect if we actually are
686	  using HT (from Alex T)
687 
6882002-11-05  John Levon  <levon@movementarian.org>
689
690	* doc/oprofile.xml: manual fixes from Will Cohen
691 
6922002-11-01  John Levon  <levon@movementarian.org>
693
694	* daemon/opd_image.c: fix lookup_dcookie usage
695 
696	* libabi/.cvsignore: add
697 
6982002-11-01  Philippe Elie  <phil.el@wanadoo.fr>
699
700	* module/x86/op_apic.c: restore correctly the lvtpc register
701
7022002-11-01  Philippe Elie  <phil.el@wanadoo.fr>
703
704	* libop/op_hw_config.h: define DCOOKIE_SHIFT
705	* daemon/opd_image.c: use it
706
7072002-11-01  Philippe Elie  <phil.el@wanadoo.fr>
708
709	* pp/Makefile.in: cleanup, build and use libpp.a
710
7112002-10-31  John Levon  <levon@movementarian.org>
712
713	* pp/counter_array.cpp: using namespace std
714 
7152002-10-31  Philippe Elie  <phil.el@wanadoo.fr>
716
717	* dae/.cvsignore:
718	* dae/opd_image.c:
719	* dae/opd_kernel.c:
720	* dae/opd_sample_files.c:
721	* dae/opd_stats.c:
722	* dae/oprofiled.c:
723	* daemon/opd_image.c:
724	* daemon/opd_sample_files.c:
725	* libop/op_config_24.h: cleanup, including some little merging
726	  from daemon to dae
727
728	* daemon/opd_image.c: change dcookie hashing function
729	
730	* doc/oprofile.xml: typo
731
7322002-10-26  Philippe Elie  <phil.el@wanadoo.fr>
733
734	* libutil++/file_manip.cpp:
735	* libutil++/op_bfd.h:
736	* libutil++/op_bfd.cpp: cleanup
737
738	* pp/counter_array.h:
739	* pp/counter_array.cpp: add a bool empty() member to counter_array_t
740	* pp/sample_container_imp.cpp: use it
741
7422002-10-26  Philippe Elie  <phil.el@wanadoo.fr>
743
744	* configure.in: minor cleanup. Use config.h rather than gcc -D option
745
746	* libutil/op_libiberty.h:
747	* libutil++/op_bfd.h:
748	* pp/opp_symbol.h: #include <config.h>
749
750	* libutil/Makefile.in:
751	* pp/Makefile.in: remove BFD_CXXFLAGS
752
7532002-10-24  Philippe Elie  <phil.el@wanadoo.fr>
754
755	* libutil++/op_bfd.cpp:
756	* libutil++/op_bfd.h: allow to specify explicetly on which symbol we
757	  want to work.
758
759	* pp/op_to_source_options.h:
760	* pp/op_to_source_options.cpp:
761	* pp/op_to_source.cpp: handle --include-symbol, for asm output only
762	  output for symbols with samplels or selected symbols.
763
764	* pp/oprofp.cpp:
765	* pp/samplesc_ontainer.cpp: minor change to reflect op_bfd api change
766
7672002-10-24  Philippe Elie  <phil.el@wanadoo.fr>
768
769	* daemon/opd_image.c: revert 64 bit dcookie patch commited
770	  accidentally with 2002-10-18 abi patch.
771
7722002-10-21  Graydon Hoare  <graydon@redhat.com>
773
774	* doc/oprofile.xml: Describe op_import and --enable-abi.
775
7762002-10-20  Philippe Elie  <phil.el@wanadoo.fr>
777
778	* pp/Makefile.in:
779	* pp/session.cpp:
780	* pp/session.h:
781	* pp/op_time_options.cpp:
782	* pp/op_to_source.cpp:
783	* pp/oprofpp.cpp:
784	* doc/oprofile.1.in:
785	* doc/oprofile.xml: handle --session options
786
7872002-10-19  John Levon  <levon@movementarian.org>
788
789	* configure.in: AC_HELP_STRING is too new for my autoconf
790 
7912002-10-18  Graydon Hoare  <graydon@redhat.com>
792
793	* libabi/*: Add support for abi descriptions, for portability.
794	* daemon/oprofiled.c:
795	* dae/oprofiled.c: Emit abi description on startup.
796	* configure.in: Add --enable-abi option.
797	* make.common.in:
798	* Makefile.in: Support building libabi/
799 
8002002-10-19  John Levon  <levon@movementarian.org>
801 
802	* utils/op_start_25: grep -o does not exist on any of
803	  my systems - fix
804 
8052002-10-19  Philippe Elie  <phil.el@wanadoo.fr>
806
807	* libutil++/op_bfd.cpp: calculate symbol size after removing duplicate
808	  symbol. Fix #625678
809
8102002-10-19  Philippe Elie  <phil.el@wanadoo.fr>
811
812	* pp/op_to_source.cpp:
813	* pp/op_to_source_options.cpp:
814	* pp/op_to_source_options.h:
815	* doc/oprofile.1.in:
816	* doc/oprofile.xml:  allow to pass multiple options to objdump
817
818	* pp/opp_symbol.h:
819	* pp/samples_container.cpp: store symbol size in symbol_entry object.
820
8212002-10-19  Philippe Elie  <phil.el@wanadoo.fr>
822
823	* libutil++/child_reader.cpp: In some pathological case getline()
824	  finished too early when child process write on stderr.
825
8262002-10-18  Philippe Elie  <phil.el@wanadoo.fr>
827
828	* libutill++/child_reader.cpp: read_block() : cumulate stderr
829	  output rather to overwrite always the same buffer space ...
830
8312002-10-16  John Levon  <levon@movementarian.org>
832
833	* utils/op_start_25: check if mounted, from Will Cohen
834	Also mkdir the mountpoint 
835 
8362002-10-16  Philippe Elie  <phil.el@wanadoo.fr>
837
838	* configure.in: get linux include path earlier
839
8402002-10-15  Philippe Elie  <phil.el@wanadoo.fr>
841
842	* dae/oprofiled.c:
843	* daemon/oprofiled: strerrno --> strerror
844
8452002-10-14  Philippe Elie  <phil.el@wanadoo.fr>
846
847	* libop/op_events.c: typo in L2_DBUS_BUSY_RD PPro event name
848
8492002-10-13  Philippe Elie  <phil.el@wanadoo.fr>
850
851	* README: update contrib
852	* TODO: update
853
854	* gui/oprof_start.cpp: better error message, fixme removal
855
856	* libdb/db-insert.c: fix samples count overflow.
857
858	* libdb/db.h:
859	* libdb/db-manage.c:
860	* libdb/db-debug.c: don't use page zero, use this value as nil page
861	  number, avoid to touch mmaped memory when growing the samples file.
862	* libop/op_config.h: bump OPD_VERSION
863
8642002-10-12  Philippe Elie  <phil.el@wanadoo.fr>
865
866	* pp/samples_file.h:
867	* pp/samples_file.cpp: move class opp_samples_files ...
868	* pp/opp_samples_files.h:
869	* pp/opp_samples_files.cpp: to these new files
870
871	* pp/Makefile.in:
872	* pp/op_to_source.cpp:
873	* pp/oprofpp.cpp: reflect above change
874
8752002-10-12  Philippe Elie  <phil.el@wanadoo.fr>
876
877	* dae/opd_sample_files.c: fixme remove
878	* dae/oprofiled.c:
879	* daemon/oprofiled.c: minor error message improvement
880
881	* pp/op_time.cpp:
882	* pp/symbol_container.cpp: fixme remove
883	
884	* pp/samples_file.cpp:
885	* pp/sample_file.h: privatize more data members
886
8872002-10-12  Philippe Elie  <phil.el@wanadoo.fr>
888
889	* libutil++/utility.h: op_ratio() new
890	* pp/op_time.cpp:
891	* pp/op_to_source.cpp:
892	* pp/opp_symbol.cpp:
893	* pp/samples_container.cpp: use op_ratio()
894
8952002-10-11  Philippe Elie  <phil.el@wanadoo.fr>
896
897	* libutil++/file_manip.cpp:
898	* libutil++/filename_match.cpp:
899	* libutil++/string_manip.cpp:
900	* libutil++/string_manip.h: fix dirname(), basename(), remove rtrim()
901
9022002-10-07  John Levon  <levon@movementarian.org>
903
904	* daemon/opd_image.h:
905	* daemon/opd_image.c:
906	* daemon/oprofiled.c:
907	* libop/op_interface_25.h: update to latest interface
908
9092002-10-06  Philippe Elie  <phil.el@wanadoo.fr>
910
911	* dae/opd_image.c: allow to free(image->app_name)
912
9132002-10-05  Philippe Elie  <phil.el@wanadoo.fr>
914
915	* daemon/opd_image.c:
916	* dae/opd_image.c: spacing
917
918	* dae/opd_mapping.c:
919	* dae/opd_mapping.h: kill op_grow_maps() simplify adding map path
920	* dae/opd_parse_proc.c: use opd_add_mapping()
921
9222002-10-05  Philippe Elie  <phil.el@wanadoo.fr>
923
924	* TODO: update
925
926	* doc/oprofile.xml: more doc in interpreting results
927
9282002-10-04  Philippe Elie  <phil.el@wanadoo.fr>
929
930	* pp/opp_symbols.cpp:
931	* pp/opp_symbols.h:
932	* pp/outsymbflag.h: implement 'q' 'Q' format flags. Fix #618165
933	* pp/op_time_options.cpp: reject these formats for op_time
934	* doc/oprofile.1.in:
935	* doc/oprofile.xml: document them
936
9372002-10-02  John Levon  <levon@movementarian.org>
938
939	* Makefile.in: use -P to strip dead dirs on dist
940 
941	* dae/opd_parse_proc.c: spacing
942
9432002-10-02  Philippe Elie  <phil.el@wanadoo.fr>
944
945	* libdb/db-*.c/*.h: typedef tweaking for 64 bits arch (signaled
946	  by Dave Jones)
947
948	* remove libdb/ChangeLog, old entries are:
949
950	2002-04-20  Philippe Elie  <phil.el@wanadoo.fr>
951	* db-insert.c: check for count overflow
952
953	2002-04-20  Philippe Elie  <phil.el@wanadoo.fr>
954	* db-manage.c: properly handle already existing db file
955	* db.h: extern "C" wrapper
956
957	2002-04-19  Philippe Elie  <phil.el@wanadoo.fr>
958	* *.c;*.h: make plugin db in oprofile more easy.
959
960	2002-04-18  Philippe Elie  <phil.el@wanadoo.fr>
961	* *.c;*.h: prefix all public identifier with db_.
962	  Use typedef as much I can rather than plain unsigned int.
963
964	2002-04-17  Philippe Elie  <phil.el@wanadoo.fr>
965	* db-debug.c:
966	* db-insert.c:
967	* db-manage.c:
968	* dbtest.c:
969	* db-travel.c:
970	* db.h: add file locking and necessary stuff to allow
971	  plugging db in an imbedded file format like oprofile
972	  samples files.
973
974	2002-04-16  Philippe Elie  <phil.el@wanadoo.fr>
975	* db-manage.c: silly bug fix, db works now with
976	  malloc/realloc or mmap/mremap memory allocation
977	  selected at compile time.
978
979	2002-04-14  Philippe Elie  <phil.el@wanadoo.fr>
980	* first import standalone code to test btree samples files
981
9822002-10-02  Philippe Elie  <phil.el@wanadoo.fr>
983
984	* module/x86/op_msr.h: Hyper threading #define
985	* module/x86/cpu_type.c: include op_msr.h
986
9872002-10-02  Philippe Elie  <phil.el@wanadoo.fr>
988
989	* */*.cpp: using std::xxx; --> using namespace std;
990
9912002-10-01  Will Cohen  <wcohen@redhat.com>
992 
993	* module/x86/cpu_type.c (p4_threads): New.
994	  (get_cpu_type): Use p4_threads().
995	* doc/oprofile.xml: Add comment about P4 HT support.
996
9972002-10-01  John Levon  <levon@movementarian.org>
998
999	* daemon/opd_image.c: fix non --separate-samples. Still broke.
1000 
10012002-10-01  John Levon  <levon@movementarian.org>
1002
1003	* libop/op_cpu_type.h:
1004	* libop/op_cpu_type.c: make this work on 2.5/normal both.
1005	  Does not respect different mounted oprofilefs (yet)
1006 
10072002-10-01  John Levon  <levon@movementarian.org>
1008
1009	* daemon/.cvsignore: add
1010 
1011	* libop/op_interface_25.h: 
1012	* daemon/opd_image.h:
1013	* daemon/opd_image.c:
1014	* daemon/oprofiled.c: fixups for new encoded interface. Fix
1015	  --separate-samples
1016
1017	* utils/op_start_25: startup fixes
1018 
10192002-09-26  Will Cohen  <wcohen@redhat.com>
1020
1021	* module/x86/op_model_p4.c: Correct TC_DELIVER_MODE cccr select.
1022 
10232002-09-23  Graydon Hoare  <graydon@redhat.com>
1024
1025	* dae/oprofiled.c:
1026	* daemon/op_sample_files.c:
1027	* daemon/oprofiled.c:
1028	* pp/op_to_source.c:
1029	* utils/op_help.c: u8 unit mask -> u16 unit-mask. I'm not sure this
1030	  catches *all* the instances, but it does appear to be an improvement
1031
10322002-09-30  William Cohen  <wcohen@redhat.com>
1033
1034	* libutil++/string_manip.cpp (sample_filename): Correct declaration.
1035	* pp/samples_container.h: Correct add_samples() declaration. 
1036
10372002-09-29  Philippe Elie  <phil.el@wanadoo.fr>
1038
1039	* libutil++/string_manip.cpp:
1040	* libutil++/string_manip.h: sample_filename() new
1041	
1042	* pp/samples_container.cpp:
1043	* pp/samples_container.h: add_samples() new
1044	
1045	* pp/op_merge.cpp:
1046	* pp/op_time.cpp:
1047	* pp/oprofpp.cpp:
1048	* pp/samples_file.cpp: use them + minor cleanup
1049
10502002-09-28  Philippe Elie  <phil.el@wanadoo.fr>
1051
1052	* libopt++/popt_options.cpp: fix #615760, in rare case
1053	  oprofpp called with lot of invalid arguments segfault
1054	  during the help printing. All post-profile tools are
1055	  concerned by this fix.
1056
1057	* doc/oprofile.xml: small improvements
1058
1059	* libutil++/op_bfd.cpp: improve error message when bfd_openr() fails.
1060	
1061	* TODO: update
1062
10632002-09-28  Philippe Elie  <phil.el@wanadoo.fr>
1064
1065	* dae/opd_image.c:
1066	* dae/opd_kernel.c:
1067	* dae/opd_parse_proc.c:
1068	* dae/opd_parse_parse.h:
1069	* dae/opd_proc.c:
1070	* dae/opd_sample_files.c:
1071	* daemon/opd_image.c:
1072	* daemon/opd_kernel.c:
1073	* daemon/opd_sample_files.c:
1074	* libop/op_cpu_type.c:
1075	* libop/op_events.c:
1076	* libop/op_events_desc.c:
1077	* libopt++/popt_options.cpp:
1078	* libutil/op_deviceio.c:
1079	* libutil/op_file.c:
1080	* libutil++/file_manip.cpp:
1081	* libutil++/file_manip.h:
1082	* libutil++/string_manip.h:
1083	* pp/op_to_source.cpp: doxygen fix
1084
10852002-09-27  John Levon  <levon@movementarian.org>
1086
1087	* configure.in: add --with-kernel-support for 2.5
1088 
1089	* daemon/oprofiled.c: fix comment, give exit message on sig
1090
1091	* utils/Makefile.in:
1092	* utils/op_stop_25: add 2.5 op_stop, no 2.5 op_dump
1093
1094	* utils/op_start_25: use enable
1095 
10962002-09-25  Bob Montgomery  <bobm@fc.hp.com>
1097
1098	* module/oprofile.c: avoid to dump zero samples count, fix #615087
1099
11002002-09-25  Philippe Elie  <phil.el@wanadoo.fr>
1101
1102	* dae/opd_image.c: fix #615166, ensure we recognize an
1103	  existing image struct so we don't try to create db_tree_t
1104	  object for the same samples files.
1105	* db/db-debug.c: display page index when something goes wrong
1106	* db/db-insert.c: be more strict on assertion
1107
11082002-09-25  Philippe Elie  <phil.el@wanadoo.fr>
1109
1110	* doc/Makefile.in: remove dependencies for doc/html.xsl
1111
11122002-09-25  Philippe Elie  <phil.el@wanadoo.fr>
1113
1114	* doc/xsl/.cvsignore: new
1115	* doc/oprofile.xml: document watchdog problem
1116
11172002-09-25  John Levon  <levon@movementarian.org>
1118
1119	* module/x86/op_nmi.c: OP_MAX_CPUS is not necessarily
1120	  static so use NR_CPUS for array instead. Fix a prototype.
1121 
11222002-09-23  Graydon Hoare  <graydon@redhat.com>
1123 
1124	* doc/oprofile.xml: Add some P4 documentation.
1125	* configure.in: Add detection of different stylesheet paths.
1126	* doc/xsl/xhtml.xsl.in: Parameterize by configure's result.
1127	* doc/xsl/xhtml.xsl: Remove.
1128	* dae/opd_sample_files.c: Change unit mask from 8 to 16 bits.
1129	* gui/oprof_start.cpp: Change number of unit masks from 7 to 16.
1130	* gui/ui/oprof_start.base.ui: Likewise.
1131	* libop/op_cpu_type.c: Add P4 CPU type.
1132	* libop/op_events.h: Change unit mask bit width, number.
1133	* libop/op_events.c: Add P4 events, unit masks.
1134	* libop_op_hw_config.h: Set OP_MAX_COUNTERS to 8.
1135	* libop++/op_print_event.cpp: Change unit mask bit width.
1136	* libop++/op_print_event.h: Likewise.
1137	* module/oprofile.c: Add extra sysctls for counters 5-8.
1138	* module/x86/Makefile.in: Add op_model_p4.o to obj list.
1139	* module/x86/cpu_type.c: Change CPU identification to handle P4.
1140	* module/x86/op_apic.c: (enable_apic): APIC_MAXLVT < 4, not != 4.
1141	(check_cpu_ok): Accept CPU_P4.
1142	* module/x86/op_model_p4.c: New file.
1143	* module/x86/op_nmi.c: (get_model): Handle CPU_P4.
1144	Add sysctl names for counters 5-8.
1145	* module/x86/op_x86_model.h: Declare extern op_p4_spec.
1146
11472002-09-24  Philippe Elie  <phil.el@wanadoo.fr>
1148
1149	* dae/opd_image.c:
1150	* dae/opd_image.h:
1151	* dae/opd_kernel.c:
1152	* dae/oprofiled.c:
1153	* dae/p_module.h:
1154	* dae/opd_image.c:
1155	* dae/opd_kernel.c:
1156	* dae/oprofiled.c:
1157	* dae/p_module.h: small blank/comment change to minimize
1158	  diff between daemon and dae dir.
1159
11602002-09-23  John Levon  <levon@movementarian.org>
1161
1162	* configure.in: fix for 2.5 patch to build
1163 
11642002-09-23  John Levon  <levon@movementarian.org>
1165
1166	* utils/Makefile.in:
1167	* utils/op_start_25: 2.5 patch start script
1168 
11692002-09-23  John Levon  <levon@movementarian.org>
1170  
1171  	* dae/opd_image.c:
1172
1173	* libop/op_cpu_type.c: fix arrays
1174 
11752002-09-23  John Levon  <levon@movementarian.org>
1176
1177	* utils/op_start: use right value for RTC CPU
1178 
11792002-09-23  John Levon  <levon@movementarian.org>
1180
1181	* libop/op_config.h:
1182	* libop/op_config_24.h:
1183	* libop/op_config_25.h: split config file up
1184 
1185	* daemon/opd_kernel.c:
1186	* daemon/oprofiled.c: include op_config_25.h
1187
1188	* dae/oprofiled.c:
1189	* dae/opd_image.c:
1190	* dae/opd_kernel.c:
1191	* dae/opd_mapping.c: include op_config_24.h
1192
1193	* module/oprofile.h: include op_config_24.h
1194 
1195	* gui/oprof_start.cpp:
1196	* gui/oprof_start_config.cpp: fix from above
1197	  (old support only right now)
1198
1199	* libop/op_cpu_type.h: introduce 2.5-patch CPU_TIMER_INT
1200
12012002-09-23  John Levon  <levon@movementarian.org>
1202
1203	* libop/op_interface_25.h: 2.5 interface
1204
1205	* daemon/opd_image.c:
1206	* daemon/opd_sample_files.c:
1207	* daemon/oprofiled.c:
1208
1209	* libop++/op_print_event.h: fix header
1210
1211	* pp/op_to_source.cpp: change from above
1212
12132002-09-23  John Levon  <levon@movementarian.org>
1214
1215	* daemon/: new 2.5 patch daemon code. WIP
1216
1217	* configure.in:
1218	* Makefile.in: detect 2.5 patch and build appropriately
1219 
12202002-09-23  John Levon  <levon@movementarian.org>
1221
1222	* module/x86/op_msr.h: match kernel naming
1223
1224	* module/x86/op_model_athlon.c: from above
1225 
12262002-09-22  Philippe Elie  <phil.el@wanadoo.fr>
1227
1228	* libdb/db-insert.c: bad cut&paste. Shame on me, I broke the build...
1229
12302002-09-22  Philippe Elie  <phil.el@wanadoo.fr>
1231
1232	* libdb/db-insert.c: handle samples count overflow.
1233	
1234	* libdb/Makefile.in: db-test new target not built by default.
1235	* libdb/db-debug.c: more strict checking
1236	* libdb/db-test.c: allow db-test to be used as "db-test samples_dir/*"
1237
12382002-09-22  John Levon  <levon@movementarian.org>
1239
1240	* dae/opd_stats.c: nicify
1241 
1242	* module/x86/op_model_pproc.c:
1243	* module/x86/op_model_athlon.c: drop macro prefixes, ws fixes
1244
1245	* module/x86/op_nmi.c: fix save/restore possible crash, init
1246	  possible leak
1247 
12482002-09-22  Philippe Elie <phil.el@wanadoo.fr>
1249
1250	* module/x86/op_model_pproc.c: fix p6_start()
1251	* module/x86/op_model_athlon.c: fix athlon_start()
1252	* module/x86/op_nmi.c: pmc_save_registers() typo when checking
1253	  null for kmalloc return value
1254 
12552002-09-20  Graydon Hoare  <graydon@redhat.com>
1256
1257	* module/x86/op_x86_model.h: New interface for MSRs.
1258	* module/x86/op_nmi.c: Use interface.
1259	* module/x86/op_model_ppro.c: New, code from op_nmi.c.
1260	* module/x86/op_model_athlon.c: New, code from op_nmi.c.
1261	* module/x86/Makefile.in: Reflect new files.
1262
12632002-09-20  John Levon  <levon@movementarian.org>
1264
1265	* libutil++/op_bfd.cpp: fix a bug where we broke
1266	  with multiple executable sections due to sorting
1267	  the symbols wrongly. Fix #617288 and the duplicated
1268	  #617264
1269
1270	* libutil++/op_bfd.h: fix an outdated comment
1271
1272	* dae/opd_image.c: fix comment
1273 
12742002-09-19  Graydon Hoare  <graydon@redhat.com>
1275
1276	* libop/op_events.h:
1277	* libop/op_events_desc.c: Move descriptions from here.
1278	* libop/op_events_desc.h:
1279	* libop/op_events.c: To here.
1280	(um_*): Add new static unit masks.
1281	(op_events): Use pointers to static unit masks.	
1282	* libop++/op_print_event.h:
1283	* libop++/op_print_event.cpp:
1284	* gui/oprof_start.h:
1285	* gui/oprof_start.cpp: 
1286	* utils/op_help.c: Make compatible with struct changes.
1287
12882002-09-18  John Levon  <levon@movementarian.org>
1289
1290	* utils/op_start: give an example for unit mask.
1291 
12922002-09-18  Will Cohen  <wcohen@redhat.com>
1293
1294	* libop/op_mangle.c: (op_mangle_filename): Correct logic for
1295	  generating mangled name. Fix #611107
1296	
12972002-09-15  John Levon  <levon@movementarian.org>
1298
1299	* libop/op_event.c: fix comment
1300 
13012002-09-15  Philippe Elie  <phil.el@wanadoo.fr>
1302
1303	* module/x86/cpu_type.c: allow to force RTC mode.
1304	* dae/oprofiled.c: checking when we need to backup samples
1305	  dir in RTC mode was broken.
1306
13072002-09-14  Philippe Elie  <phil.el@wanadoo.fr>
1308
1309	* libop/op_config.h: remove OP_MIN/MAX_PID, OP_MIN/MAX_PGRP
1310	* gui/oprof_start.cpp: pid_filter/pgrp_filter accept all integer
1311
13122002-09-13  John Levon  <levon@movementarian.org>
1313
1314	* acinclude.m4: another tweak
1315 
13162002-09-13  Philippe Elie  <phil.el@wanadoo.fr>
1317
1318	* Makefile.in: never remove doc/oprofile.html.
1319	* acinclude.m4: small work-around for sed-related problem
1320
13212002-09-12  Will Cohen  <wcohen@redhat.com>
1322
1323	* Makefile.in: Separate kernel and user code build rules.
1324
13252002-09-12  Will Cohen  <wcohen@redhat.com>
1326 
1327	* libutil++/child_reader.h (child_reader): Add missing "std::".
1328	* libutil++/child_reader.cpp (error_str): Ditto.
1329 
13302002-09-12  John Levon  <levon@movementarian.org>
1331
1332	* acinclude.m4: update from upstream
1333 
13342002-09-12  John Levon  <levon@movementarian.org>
1335
1336	* acinclude.m4: fix moc2/moc conflict, cache val
1337 
13382002-09-12  Philippe Elie  <phil.el@wanadoo.fr>
1339
1340	* libutil++/child_reader.cpp:
1341	* libutil++/child_reader.h: fix for child terminated by a signal
1342	* gui/oprof_start_util.cpp:
1343	* pp/op_to_source.cpp: use the the new child_reader interface
1344
13452002-09-11  John Levon  <levon@movementarian.org>
1346
1347	* acinclude.m4:
1348	* configure.in:
1349	* gui/Makefile.in: replace with new Qt configure script
1350 
13512002-09-11  Philippe Elie  <phil.el@wanadoo.fr>
1352
1353	* acinclude.m4: fix qt3 detection in some corner case.
1354
13552002-09-11  Philippe Elie  <phil.el@wanadoo.fr>
1356
1357	* pp/samples_container.cpp:
1358	* pp/samples_container.h: Check at run time we don't try to use an
1359	  unitialized samples_container_t.
1360
13612002-09-11  Philippe Elie  <phil.el@wanadoo.fr>
1362
1363	* pp/op_time.cpp: exit sooner when no samples files are available.
1364
13652002-09-09  Will Cohen  <wcohen@redhat.com>
1366
1367	* dae/opd_kernel.c (struct opd_module): 
1368	  (kernel_start, kernel_end):
1369	  (opd_parse_kernel_range):
1370	  (opd_drop_module_sample):
1371	  (opd_find_module_by_eip):
1372	  (opd_handle_module_sample):
1373	  (opd_handle_kernel_sample):
1374	  (opd_eip_is_kernel):
1375	* dae/opd_kernel.h (opd_handle_kernel_sample):
1376	  (opd_eip_is_kernel):
1377	* dae/opd_mapping.c (opd_put_mapping):
1378	* dae/opd_mapping.h (struct opd_map):
1379	  (opd_is_in_map):
1380	  (opd_map_offset):
1381	* dae/opd_parse_proc.c (opd_add_ascii_map):
1382	* dae/opd_proc.c(verb_show_sample):
1383	  (opd_put_image_sample):
1384	* dae/opd_proc.h (opd_put_image_sample): Change things referring
1385	  to addresses to unsigned long for operation on 64-bit machines.
1386 
13872002-09-07  Philippe Elie  <phil.el@wanadoo.fr>
1388
1389	* all source file : remove email address from @author
1390
13912002-09-05  Philippe Elie  <phil.el@wanadoo.fr>
1392
1393	* libop/op_interface.h: (op_sample, op_note): Make compatible with
1394	  64-bit targets.
1395	* dae/opd_proc.c: (opd_put_sample): Adjust verbprintf arguments.
1396	  (opd_handle_fork): Ditto.
1397	* dae/oprofiled.c: (opd_do_samples): Ditto.
1398
13992002-09-04    Will Cohen  <wcohen@redhat.com>
1400
1401	* module/op_rtc.c: move to ...
1402	* module/x86/op_rtc.c: here
1403	* module/Makefile.in:
1404	* module/x86/Makefile.in: reflect file move
1405
14062002-09-03  Will Cohen  <wcohen@redhat.com>
1407
1408	* module/oprofile.h: (regparm3): remove, use FASTCALL instead.
1409	* module/oprofile.c: (op_do_profile): Eliminate regparm3.
1410
14112002-09-03  Will Cohen  <wcohen@redhat.com>
1412
1413	* module/oprofile.c: (oprof_read, oprof_note_read): Return ssize_t.
1414
14152002-08-30  Will Cohen <wcohen@nc.rr.com>
1416
1417	* Makefile.in:
1418	* make.common.in: more DESTDIR change
1419
14202002-09-02  Dave Jones <davej@suse.de>
1421
1422	* module/x86/cpu_type.c: support hammer in ia32 mode
1423
14242002-09-02  John Levon  <levon@movementarian.org>
1425
1426	* doc/oprofile.xml: mention Qt 3
1427 
14282002-08-30  Will Cohen <wcohen@nc.rr.com>
1429
1430	* doc/Makefile.in: Set MANDIR and CATDIR based on DESTDIR.
1431
14322002-08-16  Philippe Elie  <phil.el@wanadoo.fr>
1433
1434	* dae/opd_kernel.c:
1435	* dae/opd_kernel.h:
1436	* dae/opd_proc.c:
1437	* dae/opd_proc.h:
1438	* dae/oprofiled.c:
1439	* libop/op_hw_config.h:
1440	* libop/op_interface.h:
1441	* module/oprofile.c:
1442	* module/oprofile.h: change the layout of data used between
1443	  daemon/module (32 bits pid fix for 2.5.31)
1444
1445	* gui/oprof_start_config.h: use pid_t
1446
1447	* libutil/op_fileio.c: op_read_file(), op_write_file(), use %lu
1448	  and cast, uglier solution but more portable than last fix
1449
1450	* utils/op_start: typo
1451
14522002-08-14  William Cohen  <wcohen@nc.rr.com>
1453 
1454	* libutil/op_fileio.c (op_read_file): Change fprintf specifier.
1455	(op_write_file): Ditto.
1456
14572002-08-08  Will Cohen  <wcohen@nc.rr.com>
1458
1459	* utils/op_start: Do not compute quantity of counters from
1460	  CPUTYPE. Get counter names directly from /proc/sys/dev/oprofile.
1461
14622002-08-06  Philippe Elie  <phil.el@wanadoo.fr>
1463
1464	* Makefile.in:
1465	* doc/Makefile.in: delete generated doc only on a make maintainerclean
1466
1467	* pp/opp_symbol.cpp: small cleanup
1468
14692002-08-06  Philippe Elie  <phil.el@wanadoo.fr>
1470
1471	* dae/opd_parse.c:
1472	* dae/opd_proc.c:
1473	* dae/opd_proc.h: fix #591275 which is a re-hash of #584723 we can
1474	  now safely assume than proc->maps[0] is the primary image.
1475	  Problem reported by William cohen
1476
14772002-08-03  Philippe Elie  <phil.el@wanadoo.fr>
1478
1479	* libutil++/string_manip.h:
1480	* libutil++/string_manip.cpp: separate_token() treat escape sequence
1481
14822002-07-30  Philippe Elie  <phil.el@wanadoo.fr>
1483
1484	* gui/oprof_start.cpp: apply misssing part from this patch
1485	  2002-07-27  Will Cohen  <wcohen@nc.rr.com>
1486
1487	* dae/oprofiled.c:
1488	* doc/oprofile.1.in:
1489	* util/oprof_start:
1490	* doc/oprofile.xml: clarify than pgrp filter is the tty program
1491	  group id
1492
14932002-07-28  Philippe Elie  <phil.el@wanadoo.fr>
1494
1495	* libop/op_cpu_type.c:
1496	* libop/op_cpu_type.h:
1497	* libop/op_events.h:
1498	* pp/samples_file.cpp: op_get_cpu_nr_counters() / op_get_nr_counters()
1499	  merge
1500
1501	* module/compat22.h:
1502	* module/x68/op_apic.c: __cli()/__sti() removal, this fix build up
1503	  to 2.5.29
1504
1505	* module/op_fixmap.c: fix test_bit() warning
1506
15072002-07-27  Will Cohen  <wcohen@nc.rr.com>
1508 
1509	* gui/oprof_start_config.cpp: config_setting::config_setting()
1510	  uses uname to guess path to vmlinux. 
1511
15122002-07-27  John Levon  <levon@movementarian.org>
1513
1514	* dae/opd_stats.h:
1515	* dae/opd_stats.c: 
1516	* dae/opd_proc.c: log unique samples vs. sample entries
1517 
15182002-07-27  Will Cohen  <wcohen@nc.rr.com>
1519 
1520	* dae/oprofiled.c:
1521	* gui/oprof_start.cpp:
1522	* libop/op_cpu_type.h:
1523	* libop/op_cpu_type.c: op_get_nr_counter() new, localize
1524	  op_nr_counter computations.
1525
15262002-07-26  Philippe Elie  <phil.el@wanadoo.fr>
1527
1528	* TODO: update
1529
1530	* utils/op_start: fix #587093, some option of op_start
1531	  was incorrectly checked
1532
15332002-07-26  Philippe Elie  <phil.el@wanadoo.fr>
1534
1535	* pp/op_time_options.cpp:
1536	* pp/oprofpp_options.cpp: output format header or details are illegal
1537	  if not combined with other output format flag
1538
1539	* pp/opp_symbol.cpp:
1540	* pp/opp_symbol.h:
1541	* pp/oprofpp.cpp:
1542	* pp/outsymbflag.h: minor cleanup
1543
15442002-07-25  John Levon  <moz@compsoc.man.ac.uk>
1545
1546	* configure.in: bump to 0.4cvs
1547 
15482002-07-24  Kevin Puetz  <puetzk@iastate.edu>
1549
1550	* gui/ui/oprof_start.base.ui: fix resize
1551 
15522002-07-22  Philippe Elie  <phil.el@wanadoo.fr>
1553
1554	* libutil/op_fileio.c:
1555	* libutil/op_fileio.h: opd_get_link() new, read a symlink filename
1556	* libutil++/file_manip.cpp:
1557	* libutil++/file_manip.h: opd_read_link() use the above function
1558
1559	* dae/opd_image.c:
1560	* dae/opd_parse_proc.c: fix #584723 we can not assume than the first
1561	  map in /proc/pid/maps is the the map for the binary image
1562
15632002-07-21  John Levon  <moz@compsoc.man.ac.uk>
1564
1565	* configure.in: bump to 0.3
1566 
15672002-07-17  William Cohen  <wcohen@nc.rr.com>
1568 
1569	* gui/oprof_start_util.cpp: get HZ from sysconf
1570
15712002-07-17  Philippe Elie  <phil.el@wanadoo.fr>
1572
1573	* gui/oprof_start.base.ui: revert patch 2002-07-13, reapply
1574	  the same modification with QT2 designer rather QT3 designer
1575
15762002-07-14  John Levon  <moz@compsoc.man.ac.uk>
1577
1578	* Makefile.in: set KVERS properly
1579 
1580	* dae/oprofiled.c: remove eip == 0 checking
1581 
1582	* module/oprofile.c: do check in evict_op_entry() instead,
1583	  as suggested by Philippe
1584 
15852002-07-13  Philippe Elie  <phil.el@wanadoo.fr>
1586
1587	* TODO: update
1588
1589	* make.deps:
1590	* gui/Makefile.in: fix include search path for dependencies generation
1591
15922002-07-13  John Levon  <moz@compsoc.man.ac.uk>
1593
1594	* dae/oprofiled.c: don't throw away last samples on shutdown
1595	  notification
1596 
15972002-07-13  Philippe Elie  <phil.el@wanadoo.fr>
1598
1599	* TODO: update
1600
1601	* doc/oprofile.1.in:
1602	* doc/oprofile.xml:
1603	* gui/oprof_start.cpp:
1604	* gui/oprof_start_config.cpp:
1605	* gui/oprof_start_config.h:
1606	* gui/oprof_start.base.ui: remove kernel-range specification UI
1607
16082002-07-12  John Levon  <moz@compsoc.man.ac.uk>
1609
1610	* TODO: update
1611 
1612	* dae/oprofiled.c:
1613	* libop/op_interface.h: 
1614	* module/oprofile.c: 
1615	* module/oprofile.h:
1616	* module/x86/op_nmi.c: 
1617	* module/x86/op_syscalls.c: replace partial_stop,quitting,prof_on
1618	  with single state variable, and clean up how shutdown is triggered.
1619 
1620	* module/oprofile.c: always init data->entries etc. for every CPU
1621 
16222002-07-12  Philippe Elie  <phil.el@wanadoo.fr>
1623
1624	* Makefile.in: typo in clean target
1625
1626	* module/compat.h:
1627	* module/compat24.h:
1628	* module/oprofile.c:
1629	* module/x86/op_nmi.c: support for online/offline cpu for 2.5.23+
1630
16312002-07-11  Philippe Elie  <phil.el@wanadoo.fr>
1632
1633	* Makefile.in:
1634	* module/Makefile.in:
1635	* module/x86/Makefile.in: move all goal to the topdir Makefile
1636
16372002-07-10  Philippe Elie  <phil.el@wanadoo.fr>
1638
1639	* TODO: update
1640
1641	* pp/op_time.cpp:  errno for file permission problem is
1642	  EACCES not EPERM ...
1643
1644	* module/x86/op_apic.c:
1645	* module/x86/op_fixmap.c:
1646	* module/x86/op_nmi.c: revert partially the 2002-06-26 patch, preempt
1647	  need rather to be fixed before/after calling the
1648	  op_int_operation functions pointer.
1649
16502002-07-09  Philippe Elie  <phil.el@wanadoo.fr>
1651
1652	* gui/oprof_start.cpp: use <ctime> not <time.h>
1653	* libutil/op_libiberty.c: don't assume than string.h is included
1654	   by libiberty.h as in old gcc release
1655
16562002-07-08  Philippe Elie  <phil.el@wanadoo.fr>
1657
1658	* libutil++/op_bfd.h:
1659	* libutil++/op_bfd.cpp: pass vector by const reference rather
1660	  than by value
1661
1662	* pp/op_to_source.cpp: always output file even if the corresponding
1663	  source file does not exist
1664
16652002-07-06  Philippe Elie  <phil.el@wanadoo.fr>
1666
1667	* libopt++/popt_options.cpp: provide a dtor in derived class
1668
1669	* doc/oprofile.1.in:
1670	* pp/op_to_source.cpp: --output --no-output are meaningfull
1671	  in all case.
1672
16732002-07-06  Philippe Elie  <phil.el@wanadoo.fr>
1674
1675	* gui/oprof_start.cpp:
1676	* pp/sample_container_imp.cpp:
1677	* pp/symbol_container_imp.cpp:
1678	* pp/op_to_source.cpp: fix an ISO corner case (3.4.2 #2)
1679
16802002-07-05  Philippe Elie  <phil.el@wanadoo.fr>
1681
1682	* libutil++/filename_match.h:
1683	* libutil++/filename_match.cpp: constify
1684
1685	* module/Makefile.in: small typo
1686	* Makefile.in: do not make uninstall in module/arch
1687
1688	* pp/op_to_source_options.h:
1689	* pp/op_to_source_options.cpp:
1690	* pp/op_to_source.cpp: general cleanup, remove the output class and
1691	  use free function instead, doxygen'ize them.
1692
16932002-07-04  Philippe Elie  <phil.el@wanadoo.fr>
1694
1695	* libop/op_events.cpp:
1696	* libop/op_events.h:
1697	* module/x86/op_nmi.c:
1698	* dae/oprofiled.c: op_check_events() no longer accept 0 as valid events
1699
1700	* pp/opp_symbol.cpp: small dead code removal
1701	* pp/opp_symbol.h: doxygen comment fix
1702
1703	* configure.in: do not use AC_CHECK_FILE: this macro generate
1704	  spurious warning with autoconf 2.2.13
1705
1706	* pp/op_to_source_options.h:
1707	* pp/op_to_source_options.cpp:
1708	* pp/op_to_source.cpp:
1709	* doc/oprofile.1.in:
1710	* doc/oprofile.xml: implement --objdump-params='params_strings'
1711	  allowing to pass additional parameters to objdump.
1712
17132002-07-03  Philippe Elie  <phil.el@wanadoo.fr>
1714
1715	* libutil/op_fileio.c: remove a FIXME, it's not worthwhile to try to
1716	  use GNU getline() instead of op_get_line()
1717
1718	* pp/op_time.cpp:
1719	* pp/op_time_options.cpp:
1720	* pp/op_time_options.h:
1721	* pp/oprofpp.cpp: remove minor FIXME
1722
1723	* pp/opp_symbol.h: class outut_symbol: clarify why, with the current
1724	  design, some function are public member rather private.
1725
17262002-07-01  Philippe Elie  <phil.el@wanadoo.fr>
1727
1728	* configure.in:
1729	* module/compat.h: fix compile error with kernel <= 2.2.17
1730
17312002-07-01  Philippe Elie  <phil.el@wanadoo.fr>
1732
1733	* TODO: minor upadte
1734
1735	* configure.in: support 2.5.20
1736
1737	* dae/opd_image.c:
1738	* dae/opd_proc.c:
1739	* libop++/op_print_event.h:
1740	* libutil/op_popt.c:
1741	* pp/op_merge.cpp:
1742	* pp/samples_container.cpp:
1743	* pp/symbol_container_imp.cpp:
1744	* pp/symbol_functors.h: minor #include tweak
1745
17462002-06-30  Philippe Elie  <phil.el@wanadoo.fr>
1747
1748	* libdb/db.h:
1749	* libdb/db-manage.c: constify db_sync() parameter.
1750
1751	* dae/opd_image.c: fix #574459 "vmlinux samples file not backed up
1752	  by op_session". Small cleanup by adding opd_for_each_image()
1753
17542002-06-29  Philippe Elie  <phil.el@wanadoo.fr>
1755
1756	* TODO: update
1757
1758	* libutil++/filename_match.cpp:
1759	* libutil++/filename_match.h: add a convenience ctor.
1760
1761	* doc/oprofile.1.in:
1762	* doc/oprofile.xml:
1763	* op_time.cpp: better error message for EPERM problem
1764	* op_time_options.h:
1765	* op_time_options.cpp: allow the user to specify explicitely on which
1766	  filename he want to work
1767
17682002-06-29  Philippe Elie  <phil.el@wanadoo.fr>
1769
1770	* TODO: update
1771
1772	* acinclude.m4:
1773	* configure.in:
1774	* make.common.in:
1775	* gui/Makefile.in:
1776	* gui/ui/Makefile.in: better qt3 handling
1777
1778	* doc/oprofile.1.in:
1779	* doc/oprofile.xml: fix oprof_start --option=blah
1780
17812002-06-28  Philippe Elie  <phil.el@wanadoo.fr>
1782
1783	* .cvsignore: minor fix
1784
1785	* configure.in:
1786	* acinclude.m4: ugly temporary hack to compile with kde3/qt3
1787	* oprof_start.cpp:
1788	* oprof_start_config.cpp: gcc-3.1 and qt3 fix (qt3 have an
1789	  hex() somewhere ...)
1790
1791	* module/x86/op_fixmap.c: minor comment fix
1792
17932002-06-26  Philippe Elie  <phil.el@wanadoo.fr>
1794
1795	* TODO: update
1796
1797	* module/compat.h:
1798	* module/x86/op_apic.c:
1799	* module/x86/op_fixmap.c:
1800	* module/x86/op_nmi.c: preemptible kernel support. This fix point
1801	  #2 of kernel_src/Documentation/preempt-locking.txt
1802
18032002-06-25  Philippe Elie  <phil.el@wanadoo.fr>
1804
1805	* TODO: update
1806
1807	* doc/oprofile.1.in:
1808	* doc/oprofile.xml: document op_start --kernel-range option
1809	* gui/oprf_start.cpp:
1810	* gui/oprof_start.h:
1811	* gui/oprof_start_config.cpp:
1812	* gui/oprof_start_config.h: 
1813	* gui/ui/oprof_start_base.ui:
1814	* utils/op_start: implement --kernel-range
1815
1816	* gui/Makefile.in: force ui sub-dir build
1817	
18182002-06-25  Philippe Elie  <phil.el@wanadoo.fr>
1819
1820	* TODO: update
1821
1822	* configure.in: new AX_KERNEL_VERSION()  to allow kernel version check,
1823	  use it to check minimal kernel version and fix 2.5.19 breakage
1824	* module/.cvsignore:
1825	* module/x86/.cvsignore: add .*.cmd
1826	* module/Makefile.in:
1827	* module/x86/Makefile.in: fix 2.5.19 make through EXTRA_CFLAGS_MODULE
1828	* module/compat22.h: fix missing BUG() definition in 2.2 kernel
1829	* module/x86/oprofile_nmi.S: fix minor 2.2 compile problem
1830
1831	* pp/op_to_source.cpp: minor comment fix
1832
18332002-06-18  John Levon  <moz@compsoc.man.ac.uk>
1834
1835	* utils/op_start:
1836	* pp/samples_file.h:
1837	* libop/op_config.h:
1838	* doc/oprofile.1.in:
1839	* doc/oprofile.xml:
1840	* dae/oprofiled.c:
1841	* dae/opd_kernel.h:
1842	* dae/opd_kernel.c: don't parse System.map any more,
1843	  now we work based off vmlinux alone
1844	 
1845	* dae/opd_proc.c: move eip_is_kernel() into opd_kernel.c
1846 
18472002-06-18  John Levon  <moz@compsoc.man.ac.uk>
1848
1849	* README:
1850	* doc/oprofile.xml: update credits
1851 
18522002-06-16  John Levon  <moz@compsoc.man.ac.uk>
1853
1854	* pp/op_time_options.h:
1855	* pp/op_time_options.cpp: move private stuff out of
1856	  options namespace
1857 
18582002-06-16  John Levon  <moz@compsoc.man.ac.uk>
1859
1860	* pp/counter_util.cpp: stop when we reach the first
1861	  available counter for sorting
1862
1863	* pp/op_to_source.cpp: use absolute sample file name 
1864
1865	* pp/samples_file.cpp: better error message
1866
18672002-06-16  John Levon  <moz@compsoc.man.ac.uk>
1868
1869	* various: remove spurious == false, == true
1870 
18712002-06-15  John Levon  <moz@compsoc.man.ac.uk>
1872
1873	* dae/oprofiled.c:
1874	* libop/op_interface.h:
1875	* libop++/op_print_event.h:
1876	* module/oprofile.c: define a buffer head for the module
1877	  buffer interface, and use it
1878 
1879	* module/Makefile.in: oops, install the module properly
1880 
18812002-06-15  John Levon  <moz@compsoc.man.ac.uk>
1882
1883	* libop/Makefile.in:
1884	* libop/op_cpu_type.h:
1885	* libop/op_cpu_type.c: new files split out, defines
1886	  changed
1887
1888	* dae/opd_proc.c:
1889	* dae/opd_sample_files.c:
1890	* dae/oprofiled.c:
1891	* gui/oprof_start.cpp:
1892	* libop/op_events.h: 
1893	* libop/op_events.c: 
1894	* libop/op_events_desc.h:
1895	* libop/op_events_desc.c: 
1896	* libop/op_interface.h:
1897	* libop++/op_print_event.h: 
1898	* module/oprofile.h:
1899	* module/x86/op_nmi.c: changes from above
1900 
19012002-06-15  John Levon  <moz@compsoc.man.ac.uk>
1902
1903	* Makefile.in: compile module early as it's most
1904	  likely to fail
1905 
1906	* TODO: update
1907 
1908	* doc/oprofile.xml:
1909	* configure.in: remove unneeded --with-cc
1910 
1911	* module/x86/Makefile.in: use USE_STANDARD_AS_RULE
1912 
1913	* module/x86/op_nmi.c: add preemption exclusion
1914
19152002-06-15  John Levon  <moz@compsoc.man.ac.uk>
1916
1917	* dae/opd_parse_proc.c: remove FIXME. We are fine to
1918	  assume first entry in maps is the executable, because
1919	  this is exactly what the kernel does (see /proc/pid/exe)
1920 
19212002-06-15  John Levon  <moz@compsoc.man.ac.uk>
1922
1923	* pp/oprofpp.cpp: call check_mtime() correctly
1924	  for shared libraries
1925 
19262002-06-14  John Levon  <moz@compsoc.man.ac.uk>
1927
1928	* libop/op_events.c: add warning
1929 
1930	* module/Makefile.in: link against libop.a like I meant to
1931 
1932	* module/oprofile.h:
1933	* module/oprofile.c: readability cleanup
1934 
19352002-06-11  John Levon  <moz@compsoc.man.ac.uk>
1936
1937	* module/compat.h:
1938	* module/x86/arch_compat.h: remove arch_compat.h,
1939	  add BUG_ON()
1940
1941	* module/op_util.c: return -EINVAL not 1 from check_range() 
1942
1943	* module/oprofile.c: use BUG_ON() in release functions,
1944	  fix use of check_range, remove spurious check for malloc
1945	  failure (already checked)
1946
1947	* module/oprofile.h: clarify API 
1948
1949	* module/x86/op_msr.h: new file, MSR back-compat
1950
1951	* module/x86/op_nmi.c:
1952	* module/x86/op_apic.c: use it
1953 
19542002-06-10  John Levon  <moz@compsoc.man.ac.uk>
1955
1956	* TODO: update
1957 
1958	* configure.in: remove old checks we don't need.
1959	  Add to EXTRA_CFLAGS not KCFLAGS 
1960
1961	* module/Makefile.in: update to use Rules.make and
1962	  kernel rules.
1963 
1964	* module/op_init.c: make this one include kernel modversion
1965	  stuff for 2.2
1966 
1967	* module/oprofile.h: remove __cacheline_aligned in wrong place
1968
1969	* module/x86/Makefile.in: use Rules.make (hacky)
1970
1971	* module/x86/arch.mak: remove
1972 
1973	* module/x86/op_fixmap.c: add missing header
1974 
1975	* module/x86/op_syscalls.c: my_sys_exit is not static
1976 
19772002-06-09  Philippe Elie  <phil.el@wanadoo.fr>
1978
1979	* libutil++/cverb.h:
1980	* libutil++/cverb.cpp: cverb ostream initializations
1981	* pp/op_merge.cpp:
1982	* pp/op_time_options.cpp:
1983	* pp/op_to_source_options.cpp:
1984	* pp/oprofpp_options.cpp: use it
1985
1986	* utils/Makefile.in: fix a typo in lib dependencies
1987
19882002-06-07  Philippe Elie  <phil.el@wanadoo.fr>
1989
1990	* TODO: update
1991
1992	* pp/samples_container.cpp:
1993	* pp/samples_container.h: add an hint parameter to add()
1994	  used to avoid recording all samples.
1995	* pp/oprofpp.cpp: use it for the -s option. This change
1996	  slightly behavior of oprofpp -s, now percent are relative
1997	  to the selected symbol, not to the whole samples file.
1998	  Performance of oprofpp -s are improved a lot (40 times on vmlinux)
1999
2000	* utils/Makefile.in: missing libs dependencies
2001
20022002-06-07  Philippe Elie  <phil.el@wanadoo.fr>
2003
2004	* pp/Makefile.in:
2005	* dae/Makefile.in:
2006	* gui/Makefile.in: update dependencies for library
2007
20082002-06-07  Philippe Elie  <phil.el@wanadoo.fr>
2009
2010	* libopt++/popt_options.cpp:
2011	* libopt++/popt_options.h: memory leak fix
2012
20132002-06-07  Philippe Elie  <phil.el@wanadoo.fr>
2014
2015	* libutil++/Makefile.in: fix bfd compilation problem
2016	  with gcc >= 3.0 and old bfd.h
2017	* module/Makefile.in:
2018	* module/x86/Makefile.in: fix -Werror typo
2019	* pp/op_merge.cpp:
2020	* pp/op_time_options.cpp:
2021	* pp/op_to_source_options.cpp:
2022	* pp/oprofpp_options.cpp: work around for cverb
2023	  initialisations and gcc 2.91.
2024	* pp/op_to_source.cpp: use the right comand line argument.
2025
20262002-06-07  John Levon  <moz@compsoc.man.ac.uk>
2027
2028	* TODO: update
2029
2030	* libutil++/utility.h: fix stupid bug, add scoped_array
2031
2032	* libutil++/op_bfd.h:
2033	* libutil++/op_bfd.cpp: use it
2034
20352002-06-07  John Levon  <moz@compsoc.man.ac.uk>
2036
2037	* libutil++/utility.h: add a scoped_ptr
2038
2039	* pp/op_to_source.cpp:
2040	* pp/samples_container.h:
2041	* pp/samples_container.cpp: use it
2042
20432002-06-07  John Levon  <moz@compsoc.man.ac.uk>
2044
2045	* dae/opd_kernel.c: remove some duplicate code
2046 
20472002-06-07  John Levon  <moz@compsoc.man.ac.uk>
2048
2049	* pp/opp_symbol.cpp: kill last of the accursed char
2050	  arrays
2051
20522002-06-07  John Levon  <moz@compsoc.man.ac.uk>
2053
2054	* libutil++/op_bfd.cpp:
2055	* libutil++/op_bfd.h:
2056	* libutil++/verbose_ostream.h:
2057	* pp/op_merge.cpp:
2058	* pp/op_time_options.cpp:
2059	* pp/oprofpp_options.cpp:
2060	* pp/op_to_source_options.cpp: remove verbose_ostream
2061	  in favour of a much simpler solution
2062 
2063	* module/oprofile.h: remove dead prototype
2064 
20652002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2066
2067	* module/x86/Makefile.in:
2068	* module/Makefile.in: remove 2.91 check, add 2.5 check
2069 
2070	* module/compat22.h:
2071	* module/compat24.h:
2072	* module/apic_up_compat.h: move to ...
2073
2074	* module/x86/op_apic.h:
2075	* module/x86/apic_compat.h: ... here
2076 
2077	* module/compat.h: move arch stuff to ...
2078
2079	* module/x86/arch_compat.h: ... here
2080 
20812002-06-06  Philippe Elie  <phil.el@wanadoo.fr>
2082
2083	* configure.in: remove gcc 2.91 check
2084	* make.common.in: use -Werror even for gcc 2.91
2085	* gui/oprof_start.cpp:
2086	* libutil++/op_bfd.cpp:
2087	* pp/derive_files.cpp:
2088	* pp/op_to_source.cpp: small tweak for gcc 2.91 and -Werror
2089
20902002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2091
2092	* module/op_rtc.c: use check_range
2093 
20942002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2095
2096	* configure.in: fix typo so non-2.91 is detected
2097 
2098	* module/Makefile.in:
2099	* module/x86/Makefile.in: enable -Werror
2100
2101	* module/op_dname.c:
2102	* module/oprofile.h:
2103	* module/oprofile.c:
2104	* module/op_util.h:
2105	* module/op_util.c:
2106	* module/x86/op_nmi.c: add op_util.h, make
2107	  op_check_range a function check_range
2108 
21092002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2110
2111	* module/Makefile.in: use @CC@, add clean for x86
2112
2113	* module/compat24.h: add path_hash prototype 
2114 
2115	* module/x86/Makefile.in: use @CC@, make sure
2116	  options get picked up
2117 
21182002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2119
2120	* libutil/op_get_time.c: return "" not NULL
2121	  on failure, so we don't try to printf NULL
2122 
2123	* module/op_dname.c: do_path_hash_2_4 should not be static now 
2124
2125	* module/oprofile.c: add const
2126 
21272002-06-06  Philippe Elie  <phil.el@wanadoo.fr>
2128
2129	* module/x86: new directory, for now some small portion
2130	  of x86 dependant code remains in module/* mainly in
2131	  oprofile.[ch]. This patch also don't take care about
2132	  libop/* which are architecture dependant
2133
2134	* module/op_apic.c:
2135	* module/op_nmi.c:
2136	* module/op_syscalls.c:
2137	* module/oprofile_nmi.S:
2138	* module/op_fixmap.c: move this file to ...
2139	* module/x86/op_apic.c:
2140	* module/x86/op_nmi.c:
2141	* module/x86/op_syscalls.c:
2142	* module/x86/oprofile_nmi.S:
2143	* module/x86/op_fixmap.c: these new files
2144	* module/x86/op_apic.c: x86 stuff
2145	* module/x86/arch.mak: specific arch makefile fragment
2146	* module/op_init.c: move cpu detection code ...
2147	* module/x86/cpu_type.c: here
2148	* module/Makefile: handle arch sub-dir
2149	* module/x86/.cvsignore: new
2150	* module/oprofile.h: declare the interface to the
2151	  architecture dependant code
2152
2153	* Makefile.in:
2154	* configure.in: handle module/arch
2155	* make.common.in: avoid -Werror with gcc 2.91
2156	* make.deps: small tweak allowing to use it in module
2157
21582002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2159
2160	* configure.in: use CXXINCLUDES not CXXFLAGS
2161	for including sstream
2162 
2163	* make.common.in: remove duplicate -g -O2
2164 
2165	* include/sstream: fix compiler warning to
2166	  allow -Werror
2167 
2168	* libutil/op_file.c:
2169	* libutil/op_fileio.h:
2170	* libutil/op_fileio.c: more API fixage
2171
2172	* libutil++/file_manip.cpp: add missing header
2173 
21742002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2175
2176	* make.common.in: enable -Werror for CVS builds
2177	(not in module/)
2178 
2179	* dae/opd_image.c:
2180	* dae/oprofiled.c:
2181	* libutil/op_deviceio.h:
2182	* libutil/op_deviceio.c: API fixes
2183
2184	* libutil++/file_manip.h:
2185	* libutil++/file_manip.cpp: 
2186	* libutil++/op_bfd.h:
2187	* libutil++/op_bfd.cpp:
2188	* pp/op_time.cpp:
2189	* pp/oprofpp.cpp: 
2190	* libutil/op_lockfile.c: 
2191	* libutil/op_file.h:
2192	* libutil/op_file.c: add op_file_readable(),
2193	  API fixes 
2194 
21952002-06-06  John Levon  <moz@compsoc.man.ac.uk>
2196
2197	* utils/op_stop: fail early if ! root
2198 
21992002-06-05  John Levon  <moz@compsoc.man.ac.uk>
2200
2201	* pp/*: s/OutputSymbol/output_symbol/,
2202	  s/OutSymbFlag/outsymbflag/
2203 
22042002-06-05  John Levon  <moz@compsoc.man.ac.uk>
2205
2206	* pp/op_time_options.cpp:
2207	* pp/op_time_options.h:
2208	* pp/op_to_source_options.h:
2209	* pp/oprofpp_options.h: document
2210
22112002-06-05  John Levon  <moz@compsoc.man.ac.uk>
2212
2213	* pp/Makefile.in:
2214	* pp/counter_util.h:
2215	* pp/counter_util.cpp: move from ...
2216
2217	* pp/oprofpp.h:
2218	* pp/oprofpp_util.cpp: ... here (removed)
2219
2220	* pp/op_time.cpp:
2221	* pp/op_time_options.cpp: 
2222	* pp/op_to_source.cpp: 
2223	* pp/opp_symbol.h: 
2224	* pp/oprofpp.cpp:
2225	* pp/oprofpp_options.h: 
2226	* pp/oprofpp_options.cpp: 
2227	* pp/samples_container.h: 
2228	* pp/samples_container.cpp: 
2229	* pp/samples_file.h:
2230	* pp/samples_file.cpp: changes from above
2231
22322002-06-05  John Levon  <moz@compsoc.man.ac.uk>
2233
2234	* libutil++/file_manip.h:
2235	* libutil++/file_manip.cpp: move oprofile specific stuff
2236	  to ...
2237 
2238	* libop++/op_mangling.h:
2239	* libop++/op_mangling.cpp: ... here
2240
2241	* pp/Makefile.in:
2242	* pp/op_bfd.h:
2243	* pp/op_bfd.cpp: move to ...
2244 
2245	* libutil++/Makefile.in:
2246	* libutil++/op_bfd.h:
2247	* libutil++/op_bfd.cpp: ... here 
2248 
2249	* libutil++/verbose_ostream.h: add
2250 
2251	* pp/op_merge.cpp:
2252	* pp/op_time.cpp: 
2253	* pp/op_time_options.h:
2254	* pp/op_time_options.cpp:
2255	* pp/op_to_source.cpp: 
2256	* pp/op_to_source_options.h:
2257	* pp/op_to_source_options.cpp:
2258	* pp/oprofpp.h: 
2259	* pp/oprofpp.cpp: 
2260	* pp/oprofpp_options.h:
2261	* pp/oprofpp_options.cpp:
2262	* pp/oprofpp_util.cpp:
2263	* pp/samples_file.h: various changes and
2264	  cleanups from above
2265 
2266	* pp/derive_files.cpp: remove now duplicate code
2267 
22682002-06-05  John Levon  <moz@compsoc.man.ac.uk>
2269
2270	* libutil++/file_manip.h:
2271	* libutil++/file_manip.cpp: simplify but don't
2272	  break already absolute paths, remove dead code
2273 
2274	* pp/op_time_options.h:
2275	* pp/op_time_options.cpp:
2276	* pp/op_time.cpp: remove dead code
2277 
2278	* pp/op_to_source_options.h: 
2279	* pp/op_to_source_options.cpp:
2280	* pp/oprofpp_options.h:
2281	* pp/oprofpp_options.cpp: variable name tweaks
2282
2283	* pp/Makefile.in:
2284	* pp/op_to_source.cpp: 
2285	* pp/oprofpp.cpp:
2286	* pp/oprofpp.h:
2287	* pp/oprofpp_util.cpp:
2288	* pp/derive_files.h:
2289	* pp/derive_files.cpp: factor command-line file
2290	  derivation guessing out
2291 
22922002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2293
2294	* libop++/op_print_event.cpp:
2295	* pp/op_bfd.h: 
2296	* pp/op_time_options.cpp: 
2297	* pp/op_to_source_options.cpp: 
2298	* pp/oprofpp_options.cpp: fixes for std
2299 
2300	* pp/Makefile.in:
2301	* pp/oprofpp.h:
2302	* pp/oprofpp_util.cpp:
2303	* pp/samples_file.cpp:
2304	* pp/opp_symbol.h:
2305	* pp/counter_array.h:
2306	* pp/counter_array.cpp: factor out counter_array
2307 
23082002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2309
2310	* pp/oprofpp.h:
2311	* pp/samples_file.cpp:
2312	* pp/oprofpp_util.cpp: remove a sanity check
2313	  that wasn't particularly useful
2314 
23152002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2316
2317	* libop++/Makefile.in:
2318	* libop++/op_mangling.h:
2319	* libop++/op_mangling.cpp:
2320	* pp/op_merge.cpp:
2321	* pp/op_time.cpp:
2322	* pp/oprofpp.cpp: 
2323	* pp/oprofpp.h: 
2324	* pp/oprofpp_util.cpp: move mangle/unmangle to libop++
2325 
23262002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2327
2328	* pp/Makefile.in:
2329	* pp/op_to_source.cpp:
2330	* pp/opp_symbol.cpp:
2331	* pp/demangle_symbol.h:
2332	* pp/demangle_symbol.cpp: move this ...
2333 
2334	* libutil++/Makefile.in:
2335	* libutil++/demangle_symbol.h:
2336	* libutil++/demangle_symbol.cpp: ... to here
2337
23382002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2339
2340	* make.common.in: 
2341	* make.deps: split out CXXINCLUDES
2342 
2343	* Makefile.in:
2344	* configure.in:	
2345	* libop++/Makefile.in:
2346	* libop++/op_print_event.h:
2347	* libop++/op_print_event.cpp:
2348	* pp/Makefile.in:
2349	* pp/oprofpp.h:
2350	* pp/oprofpp_util.cpp:
2351	* pp/samples_file.cpp: start libop++ library,
2352	  move op_print_event there
2353
2354	* pp/op_bfd.h:
2355	* pp/op_bfd.cpp: 
2356	* pp/op_time.cpp: 
2357	* pp/op_to_source.cpp: 
2358	* pp/oprofpp.cpp: 
2359	* pp/samples_file.h:
2360	* pp/samples_file.cpp: remove all knowledge of
2361	  is_kernel from op_bfd, some minor cleanups
2362 
23632002-06-04  John Levon  <moz@compsoc.man.ac.uk>
2364
2365	* pp/op_bfd.h:
2366	* pp/op_bfd.cpp:
2367	* pp/samples_container.cpp: kill another char*
2368 
2369	* pp/outsymbflag.h: reduce fake dependencies with
2370	  new file, little cleanup
2371
2372	* pp/Makefile.in:
2373	* pp/demangle_symbol.cpp:
2374	* pp/op_merge.cpp:
2375	* pp/op_time.cpp:
2376	* pp/op_time_options.h:
2377	* pp/op_time_options.cpp:
2378	* pp/op_to_source.cpp:
2379	* pp/op_to_source_options.h:
2380	* pp/op_to_source_options.cpp:
2381	* pp/opp_symbol.h:
2382	* pp/oprofpp.h:
2383	* pp/oprofpp.cpp:
2384	* pp/oprofpp_options.h:
2385	* pp/oprofpp_options.cpp:
2386	* pp/oprofpp_util.cpp: Some more refactoring. More work
2387	  needed...
2388 
23892002-06-01  John Levon  <moz@compsoc.man.ac.uk>
2390
2391	* doc/Makefile.in: fix DOCDIR (from Al Stone)
2392 
23932002-06-01  John Levon  <moz@compsoc.man.ac.uk>
2394
2395	* libutil++/file_manip.h:
2396	* libutil++/file_manip.cpp: clarify API
2397 
2398	* pp/oprofpp.cpp: fix bug 563324 resulting from above
2399
24002002-06-01  John Levon  <moz@compsoc.man.ac.uk>
2401
2402	* make.common.in: make --with-extra-lib work again
2403
2404	* dae/opd_image.h:
2405	* dae/opd_image.c: comment typos
2406
2407	* doc/srcdoc/Doxyfile: generate PNG not GIF 
2408 
24092002-05-23  Philippe Elie  <phil.el@wanadoo.fr>
2410
2411	* doc/srcdoc/Doxyfile:
2412	* libopt++/popt_options.cpp:
2413	* libopt++/popt_options.h:
2414	* pp/symbol_container_impl.h: small doxygen tweak.
2415
24162002-05-23  Philippe Elie  <phil.el@wanadoo.fr>
2417
2418	* dae/oprofiled.c: minor bug when backing up samples dir
2419
2420	* libopt++/popt_options.h:
2421	* libopt++/popt_options.cpp: avoid to force client code to
2422	  explicitly select the option template specializations.
2423
2424	* pp/op_merge.cpp:
2425	* pp/op_time.cpp:
2426	* pp/op_to_source.pp:
2427	* pp/oprofpp.cpp: we no longer need explicit template
2428	  instantiations for options
2429
24302002-05-22  Philippe Elie  <phil.el@wanadoo.fr>
2431
2432	* pp/oprofpp.cpp: fix a missing SAMPLES_DIR prepend
2433
24342002-05-22  John Levon  <moz@compsoc.man.ac.uk>
2435
2436	* lib/util/op_file.c:
2437	* utils/op_session.c: restore accidentally lost
2438	  commits :
2439
2440	2002-05-05  Philippe Elie  <phil.el@wanadoo.fr>
2441
2442		* dae/op_session.c: tweak error message when session already
2443		  exist. Avoid to op_dump when profiler is not started.
2444
2445	2002-05-05  Philippe Elie  <phil.el@wanadoo.fr>
2446
2447		* dae/op_session.c: do not create empty session directory
2448		  and backup oprofileg.log too
2449		* dae/opd_util.c:
2450		* op_user.h: minor related change
2451
24522002-05-22  John Levon  <moz@compsoc.man.ac.uk>
2453
2454	* dae/*: complete re-organisation of files
2455 
2456	* libop/op_config.h: add VMA_OFFSET and MAX_MODULES
2457	  tunables
2458 
24592002-05-22  Philippe Elie  <phil.el@wanadoo.fr>
2460
2461	* gui:
2462	* libdb:
2463	* libopt++:
2464	* libutil:
2465	* libutil++:
2466	* oprof_report:
2467	* pp: all C/c++ source/header file, fix a few doxygen warning,
2468	  many const type to  type const + other minor comestic change.
2469
24702002-05-22  John Levon  <moz@compsoc.man.ac.uk>
2471
2472	* libopt++/popt_options.cpp: my usual boring shit
2473 
2474	* libopt++/popt_options.h: document
2475
2476	* libutil/op_popt.h: POPT_TABLEEND missing in some popt.h
2477 
2478	* TODO: update
2479 
2480	* doc/oprofile.xml: add some to ack.html
2481 
2482	* libop/op_events_desc.c: fix long-standing typo
2483 
24842002-05-22  Philippe Elie  <phil.el@wanadoo.fr>
2485
2486	* configure.in:
2487	* Makefile.in:
2488	* libopt++/*: new directory, command line options handling
2489	
2490	* make.common.in:
2491	* pp/Makefile.in:
2492	* pp/op_merge.cpp:
2493	* pp/op_time.cpp:
2494	* pp/op_to_source.cpp:
2495	* pp/oprofpp.cpp:
2496	* pp/oprofpp.h:
2497	* pp/oprofpp_util.cpp: use libpopt++
2498
24992002-05-19  Philippe Elie  <phil.el@wanadoo.fr>
2500
2501	* TODO: update
2502
25032002-05-19  John Levon  <moz@compsoc.man.ac.uk>
2504
2505	* pp/op_bfd.cpp: fix bug coming from mis-placed
2506	strlen() brackets
2507 
2508	* pp/op_bfd.h:
2509	* pp/op_bfd.cpp: kill some more char[]s to avoid silly
2510	  bugs like the above
2511 
2512	* README: some minor change
2513 
25142002-05-18  Philippe Elie  <phil.el@wanadoo.fr>
2515
2516	* module/compat.h:
2517	* module/op_fixmap.c:
2518	* module/op_syscalls.c:
2519	* module/oprofile.c:
2520	* module/oprofile.h:
2521	* module/oprofile_nmi.S: fix module up to kernel 2.5.15
2522
2523	* module/compat22.h: small fix for 2.2
2524
25252002-05-17  Philippe Elie  <phil.el@wanadoo.fr>
2526
2527	* module/op_fixmap.c: revert my last change :/. Something is
2528	  wrong with oprofiel and 2.5.15 but elsewhere
2529
25302002-05-17  Philippe Elie  <phil.el@wanadoo.fr>
2531
2532	* module/op_fixmap.c: fix a long time outstanding bug,
2533	  we tested bit in the address of x86_capability
2534	  rather the capability itself.
2535
25362002-05-17  Philippe Elie  <phil.el@wanadoo.fr>
2537
2538	* dae/opd_proc.c: from a typo in opd_put_image_samples first
2539	  incoming samples for each image was always ignored. As
2540	  a side effect if opd_open_sample_file() fail the daemon
2541	  will die with a seg fault. This behavior is in 0.2 release.
2542	  fix #556918
2543
25442002-05-17  John Levon  <moz@compsoc.man.ac.uk>
2545
2546	* utils/op_start: typo in detect stale lock file
2547
25482002-05-17  Philippe Elie  <phil.el@wanadoo.fr>
2549
2550	* pp/*: gcc 3.1 compilation.
2551
25522002-05-16  Philippe Elie  <phil.el@wanadoo.fr>
2553
2554	* dae/opd_proc.c: close samples files at cleanup
2555
2556	* libdb/db-insert.cpp: if we don't lock the file when creating
2557	  the root we must ensure than initialization is atomic
2558
2559	* pp/op_bfd.cpp:
2560	* pp/op_bfd.h:
2561	* pp/op_time.cpp:
2562	* pp/op_to_source.cpp:
2563	* pp/oprofpp.cpp:
2564	* pp/oprofpp.h:
2565	* pp/oprofpp_util.cpp:
2566	* pp/samples_file.cpp:
2567	* pp/samples_file.h: move all coherency check between a op_bfd and
2568	  it's related opp_samples_files outside these class
2569
2570	* pp/samples_container.cpp: small modification allowing to privatize
2571	  op_bfd::ibfd pointer.
2572
25732002-05-16  John Levon  <moz@compsoc.man.ac.uk>
2574
2575	* libutil/op_lockfile.c: detect and remove stale
2576	  lock files
2577
2578	* utils/op_start: detect stale lock file
2579 
25802002-05-15  John Levon  <moz@compsoc.man.ac.uk>
2581
2582	* pp/Makefile.in:
2583	* pp/op_time.cpp:
2584	* pp/op_to_source.cpp:
2585	* pp/oprofpp.cpp:
2586	* pp/samples_container.h:
2587	* pp/samples_container.cpp:
2588	* pp/sample_container_imp.h:
2589	* pp/sample_container_imp.cpp:
2590	* pp/symbol_container_imp.h:
2591	* pp/symbol_container_imp.cpp:
2592	* pp/symbol_functors.h: some more file-refactoring, and some
2593	  minor changes
2594 
25952002-05-15  John Levon  <moz@compsoc.man.ac.uk>
2596
2597	* pp/oprofpp.cpp: only allow -r with -l
2598	* doc/oprofile.1.in: document -r for oprofpp
2599 
26002002-05-15  William Cohen  <wcohen@nc.rr.com>
2601 
2602	* pp/oprofpp.cpp: Added "-r" reverse sort option.
2603
26042002-05-15  Philippe Elie  <phil.el@wanadoo.fr>
2605
2606	* libutil++/utility.h: fix a copyright problem, work-around
2607	  a (probable) gcc 2.91 bug.
2608
2609	* pp/op_bfd.cpp: valgrind exposed a delete problem.
2610
2611	* pp/op_time.cpp:
2612	* pp/op_to_source.cpp:
2613	* pp/oprofpp.cpp:
2614	* pp/samples_container.cpp:
2615	* pp/samples_container.h:
2616	* pp/samples_container.cpp:
2617	* pp/samples_container.h: change the handling of shared lib,
2618	  we no longer allow samples_container_t to auto load related
2619	  samples files belonging to a shared lib but we create at a higher
2620	  level an explicit list of samples files : fix #555276
2621
2622	* pp/op_to_source.cpp:
2623	* pp/sample_container.cpp:
2624	* pp/opp_symbol.cpp: demangle symbol only when we output
2625	  symbol name, not when we store symbol name in internal
2626	  representation of symbol.
2627
26282002-05-14  Cliff Woolley  <jwoolley@apache.org>
2629
2630	* gui/oprof_start.cpp: allow Qt3 compilation
2631
26322002-05-13  Philippe Elie  <phil.el@wanadoo.fr>
2633
2634	* doc/oprofile.xml: clarify RTC use, fix #555302
2635
2636	* gui/oprof_start_util.cpp: missing closedir(). Fix #555268
2637	  Thanks to William Cohen for his precise report.
2638
2639	* module/Makefile.in: fix #555304, a non-native compiler can
2640	  fail to compile oprofile
2641
2642	* libutil++/utility.h: class noncopyable
2643	* pp/samples_file.h: use it
2644
26452002-05-12  Philippe Elie  <phil.el@wanadoo.fr>
2646
2647	* libop/op_events_desc.c:
2648	* libop/op_events_desc.h:
2649
2650	* pp/op_bfd.h:
2651	* pp/op_bfd.cpp:
2652	* pp/op_to_source.cpp:
2653	* pp/oprofpp.h:
2654	* pp/oprofpp.cpp:
2655	* pp/oprofpp_util.cpp:
2656	* pp/samples_file.cpp:
2657	* pp/samples_file.h:
2658	* pp/samplesfile.h: fix some FIXME
2659
26602002-05-12  John Levon  <moz@compsoc.man.ac.uk>
2661
2662	* dae/oprofiled.c: delete lockfile on SIGTERM
2663 
2664	* pp/samples_file.h:
2665	* pp/samples_file.cpp: minor changes
2666
26672002-05-11  Philippe Elie  <phil.el@wanadoo.fr>
2668
2669	* pp/op_bfd.cpp:
2670	* pp/op_bfd.h: ehance op_bfd_symbol ...
2671	* pp/oprofpp.cpp:
2672	* pp/samples_container.cpp: move handling of image w/o symbol
2673	  in op_bfd
2674
2675	* pp/samples_file.h: ehance comment (John's work)
2676
26772002-05-11  Philippe Elie  <phil.el@wanadoo.fr>
2678
2679	* pp/op_bfd.cpp:
2680	* pp/op_bfd.h:
2681	* pp/oprofpp.cpp:
2682	* pp/oprofpp.h:
2683	* pp/samples_files.cpp: minor cleanup
2684
26852002-05-10  Philippe Elie  <phil.el@wanadoo.fr>
2686
2687	* pp/op_bfd.h:
2688	* pp/op_bfd.cpp:
2689	* pp/opp_symbol.h:
2690	* pp/opp_symbol.cpp:
2691	* pp/oprofpp.cpp:
2692	* pp/samples_container.h:
2693	* pp/samples_container.cpp: more typedef for indexed things
2694
26952002-05-10  Philippe Elie  <phil.el@wanadoo.fr>
2696
2697	* pp/*: split oprofpp_util.cpp, oprofpp.h to these ..
2698	* pp/samples_file.cpp: new file
2699	* pp/samples_file.h: new file
2700	* pp/op_bfd.cpp: new file
2701	* pp/opbfd.h: new file
2702
2703	* pp/*: add a symbol_index_t typedef
2704
27052002-05-10  Philippe Elie  <phil.el@wanadoo.fr>
2706
2707	* doc/srcdoc/Makefile: always clean before building
2708	* doc/srcdoc/Doxyfile: ehance file filtering
2709
2710	* pp/oprofpp.h: small typo fix
2711
27122002-05-10  Philippe Elie  <phil.el@wanadoo.fr>	
2713
2714	* pp/oprofpp.h:
2715	* pp/oprofpp.cpp:
2716	* pp/oprofpp_util.cpp:
2717	* pp/samples_container.cpp: generalize infrastucture for symbol
2718	  vma/size
2719
2720	* pp/op_time.cpp: allow to exclude symbol with op_time -l
2721
27222002-05-09  John Levon  <moz@compsoc.man.ac.uk>
2723
2724	* doc/xhtml-chunk.xsl:
2725	* doc/xhtml-common.xsl:
2726	* doc/xhtml.xsl:
2727	* doc/Makefile.in: some small improvements
2728 
2729	* doc/src/doc/Doyxfile: add FIXME
2730
2731	* gui/oprof_start.cpp:
2732	* libop/op_events_desc.h:
2733	* libop/op_events_desc.c:
2734	* libutil/filename_match.h: 
2735	* oprof_report/oprofpp_view.h: 
2736	* pp/op_time.cpp: 
2737	* pp/opp_symbol.h:
2738	* pp/oprofpp.h:
2739	* pp/oprofpp_util.cpp:
2740	* pp/samples_container.cpp: 
2741	* pp/samples_container.h: more doxygen etc. fixes
2742 
27432002-05-08  Philippe Elie  <phil.el@wanadoo.fr>
2744
2745	* TODO: update
2746
2747	* pp/op_symbol.cpp: better column handling with oprofpp -L
2748
27492002-05-08  Philippe Elie  <phil.el@wanadoo.fr>
2750
2751	* dae/Makefile.in:
2752	* gui/Makefile.in:
2753	* pp/Makefile.in:
2754	* utils/Makefile.in: fix make uninstall
2755
27562002-05-08  Philippe Elie  <phil.el@wanadoo.fr>
2757	
2758	* pp/opf_filter.cpp: move to ...
2759	* pp/op_to_source.cpp:
2760	* pp/opf_container.cpp: move to ..
2761	* pp/samples_container.cpp:
2762	* pp/opf_filter.h: move to ...
2763	* pp/samples_container.h:
2764	* pp/Makefile.in:
2765	* pp/.cvsignore: update
2766
2767	* oprof_report/hotspotview.cpp:
2768	* oprof_report/hotspotview.h:
2769	* oprof_report/op_view.h:
2770	* oprof_report/oprof_report.cpp:
2771	* oprof_report/oprof_report.h:
2772	* oprof_report/oprof_view.cpp:
2773	* oprof_report/oprof_view.h:
2774	* pp/op_time.cpp:
2775	* pp/opf_container.cpp:
2776	* pp/opf_filter.cpp:
2777	* pp/opf_filter.h:
2778	* pp/opp_symbol.cpp:
2779	* pp/opp_symbol.h:
2780	* pp/oprofpp.cpp:
2781	* pp/oprofpp.h: samples_files_t -> samples_container_t
2782
2783	* ui/.cvsignore: update
2784
2785	* pp/opf_filter.cpp: move filename_match ...
2786	* libutil++/filename_match.cpp: here
2787	* libutil++/filename_match.cpp:
2788	* libutil++/Makefile.in:
2789
2790	* pp/Makefile.in: fix typo that prevent op_to_source
2791	  to be recompiled
2792
27932002-05-08  John Levon  <moz@compsoc.man.ac.uk>
2794
2795	* TODO: update
2796
2797	* doc/Makefile.in: make clean delete *.html
2798 
2799	* libdb/db-debug.c: pedantry
2800 
2801	* libutil/op_fileio.h:
2802	* libutil/op_fileio.c:
2803	* pp/oprofpp.cpp: remove unused code and change
2804	  function names
2805 
28062002-05-08  Philippe Elie  <phil.el@wanadoo.fr>
2807
2808	* libutil/op_libiberty.h: fix compile error (missing
2809	  size_t definition)
2810
28112002-05-08  John Levon  <moz@compsoc.man.ac.uk>
2812
2813	* Makefile.in: missing backslash
2814 
28152002-05-07  John Levon  <moz@compsoc.man.ac.uk>
2816
2817	* <various>: OK I lied. Fix some doxygen warnings,
2818	  and some char const *a -> const char * a
2819 
2820	* doc/srcdoc/Makefile: add
2821 
28222002-05-07  John Levon  <moz@compsoc.man.ac.uk>
2823
2824	* <all>: ok, fix the headers properly. Last tedious
2825	  patch, I promise.
2826 
2827	* dae/opd_util.h: finally remove !
2828 
28292002-05-06  John Levon  <moz@compsoc.man.ac.uk>
2830
2831	* <various>: move to new header style, doxygen
2832	  should use @param blah not @blah: or \param blah 
2833
2834	* doc/srcdoc/Doxyfile: new file for api docs
2835
2836	* scripts/Doxyfile:
2837	* scripts/dodoc: remove
2838 
28392002-05-06  John Levon  <moz@compsoc.man.ac.uk>
2840
2841	* configure.in: don't add KINC to BKCFLAGS directly
2842 
2843	* module/Makefile.in: re-write
2844 
2845	* TODO: update
2846 
28472002-05-06  John Levon  <moz@compsoc.man.ac.uk>
2848
2849	Massive re-organisation of code + build. Most
2850	files have been changed. Some small cosmetic
2851	changes.
2852 
2853	* libutil/:
2854	* libutil++/: general-purpose utility libs
2855
2856	* libop/: oprofile-specific utility lib
2857
2858	* utils/: moved op_start et al to this dir
2859
2860	* events/:
2861	* util/: removed
2862
2863	* libutil++/child_reader.cpp: make sure to set
2864	  member "pid", not local variable
2865
28662002-05-05  Philippe Elie  <phil.el@wanadoo.fr>
2867
2868	* dae/op_session.c: tweak error message when session already
2869	  exist. Avoid to op_dump when profiler is not started.
2870
28712002-05-05  Philippe Elie  <phil.el@wanadoo.fr>
2872
2873	* TODO: update:
2874
2875	* dae/op_session.c: do not create empty session directory
2876	  and backup oprofileg.log too
2877	* dae/opd_util.c:
2878	* op_user.h: minor related change
2879
28802002-05-05  John Levon  <moz@compsoc.man.ac.uk>
2881
2882	* doc/oprofile.xml: update copyright for 2002
2883
2884	* doc/xsl/xhtml-chunk.xsl: indent=yes
2885 
28862002-05-05  John Levon  <moz@compsoc.man.ac.uk>
2887
2888	* TODO: update
2889	
2890	* Makefile.in: update my release steps
2891 
28922002-05-05  John Levon  <moz@compsoc.man.ac.uk>
2893
2894	* configure.in: ->0.3cvs
2895
2896	* results/: hmm, remove /all/ the files 
2897 
28982002-05-04  John Levon  <moz@compsoc.man.ac.uk>
2899
2900	* configure.in: bump to 0.2
2901 
29022002-05-04  William Cohen  <wcohen@nc.rr.com>
2903
2904	* doc/oprofile.xml: add note on power management
2905 
29062002-05-03  John Levon  <moz@compsoc.man.ac.uk>
2907
2908	* doc/Makefile.in:
2909	* doc/xsl/xhtml-common.xsl:
2910	* doc/xsl/xhtml.xsl:
2911	* doc/xsl/xhtml-chunk.xsl: use some xsl to fix
2912	  some of the problems (not all :()
2913 
29142002-05-02  John Levon  <moz@compsoc.man.ac.uk>
2915
2916	* TODO: update
2917 
29182002-05-02  John Levon  <moz@compsoc.man.ac.uk>
2919
2920	* dae/op_session.c: couple of improvements
2921 
2922	* dae/opd_util.c: fix warning
2923
2924	* doc/oprofile.xml: some docs on op_session
2925
2926	* pp/op_time.cpp: introduce -s parameter (should be
2927	  in all utils)
2928 
29292002-05-02  John Levon  <moz@compsoc.man.ac.uk>
2930
2931	* oprof_report/Makefile.in: disable for release
2932 
29332002-05-02  John Levon  <moz@compsoc.man.ac.uk>
2934
2935	* results/: nuke this in favour of oprofile-tests
2936	  module
2937 
29382002-05-02  John Levon  <moz@compsoc.man.ac.uk>
2939
2940	* TODO: update
2941 
2942	* op_user.h:
2943	* dae/op_start: 
2944	* dae/op_stop: 
2945	* dae/opd_util.h:
2946	* dae/opd_util.c: 
2947	* dae/oprofiled.c: 
2948	* dae/oprofiled.h: 
2949	* doc/oprofile.1.in:
2950	* doc/oprofile.xml: 
2951	* gui/oprof_start.h:
2952	* gui/oprof_start.cpp:
2953	* gui/oprof_start_config.h:
2954	* gui/oprof_start_config.cpp:
2955	* gui/ui/oprof_start_base.ui: 
2956	* oprof_report/oprof_report.cpp: 
2957	* pp/op_merge.cpp: 
2958	* pp/op_time.cpp: 
2959	* pp/opf_filter.cpp: 
2960	* pp/oprofpp.cpp: 
2961	* pp/oprofpp.h: 
2962	* pp/oprofpp_util.cpp: remove useless command line
2963	  options in anticipation of the new spec
2964	 
2965	* libdb/db-manage.c: reset base_memory and fd
2966	  on close
2967 
2968	* dae/.cvsignore: 
2969	* dae/Makefile.in:
2970	* dae/op_session.c:
2971	* dae/opd_proc.c: 
2972	* dae/opd_proc.h:
2973	* dae/oprofiled.h:
2974	* dae/oprofiled.c: use lock file for daemon.
2975	  Implement named sessions
2976 
29772002-05-02  Philippe Elie  <phil.el@wanadoo.fr>
2978
2979	* pp/oprofpp.cpp:
2980	* pp/op_time.cpp:
2981	* pp/opf_container.cpp:
2982	* pp/opf_filter.cpp:
2983	* pp/oprofpp.cpp:
2984	* pp/oprofpp.h:
2985	* pp/oprofpp_util.cpp: fix sect_offset problem. now all
2986	  class work on vma except samples_file_t which offset vma
2987	  to samples files offset
2988
29892002-05-01  John Levon  <moz@compsoc.man.ac.uk>
2990
2991	* dae/opd_proc.c:
2992	* libdb/db-manage.c:
2993	* libdb/db-test.c:
2994	* libdb/db.h:
2995	* pp/op_merge.cpp:
2996	* pp/op_time.cpp:
2997	* pp/oprofpp_util.cpp: allow read-only sample
2998	  file reading
2999	
3000	* oprof_report/hotspot_view.cpp: fix warning
3001 
30022002-05-01  John Levon  <moz@compsoc.man.ac.uk>
3003
3004	* dae/op_start:
3005	* dae/oprofiled.c:
3006	* doc/oprofile.1.in: 
3007	* doc/oprofile.xml: 
3008	* gui/oprof_start.cpp: 
3009	* module/op_nmi.c:
3010	* module/op_rtc.c:
3011	* module/op_syscalls.c: 
3012	* module/oprofile.h:
3013	* module/oprofile.c: move pid/pgrp filter into
3014	  userspace only. Remove --ignore-myself
3015 
30162002-04-30  John Levon  <moz@compsoc.man.ac.uk>
3017
3018	* op_user.h:
3019	* dae/opd_proc.c:
3020	* pp/oprofpp_util.cpp: first part of removing
3021	  OPD_KERNEL_OFFSET
3022
30232002-04-30  John Levon  <moz@compsoc.man.ac.uk>
3024
3025	* module/op_nmi.c: also allow user to see 0/ 1/ contents
3026 
30272002-04-30  William Cohen  <wcohen@nc.rr.com>
3028
3029	* module/oprofile.c: Allow non-root examination of
3030	  /proc/sys/dev/oprofile and initiation of dump. 
3031
3032	* dae/op_dump: modify message for above
3033
30342002-04-30  John Levon  <moz@compsoc.man.ac.uk>
3035
3036	* TODO: update
3037 
3038	* libdb/Makefile: remove from CVS
3039 
3040	* dae/oprofiled.c:
3041	* module/oprofile.c: 
3042	* module/oprofile.h: use better hash function.
3043	  Fold unused/full entry case into eviction case
3044	  for faster common path
3045 
30462002-04-27  John Levon  <moz@compsoc.man.ac.uk>
3047
3048	* configure.in: fix little blooper that shows up
3049	  when CONFIG_M386 is chosen
3050 
30512002-04-23  Philippe Elie  <phil.el@wanadoo.fr>
3052
3053	* pp/oprofpp.cpp:
3054	* pp/oprofpp_util.cpp: yet another bug fix for --sort=
3055	  and counter nr command line specification ...
3056
30572002-04-22  Philippe Elie  <phil.el@wanadoo.fr>
3058
3059	* dae/opd_proc.c: opd_alarm() flush properly samples files
3060
3061	* oprof_report/oprof_report.cpp: use the right filename
3062	  when selecting a shared lib profiled with --separate-samples
3063
30642002-04-22  Philippe Elie  <phil.el@wanadoo.fr>
3065
3066	* pp/op_merge.c: implement merging of the new file format files.
3067
30682002-04-21  Philippe Elie  <phil.el@wanadoo.fr>
3069
3070	* oprof_report/Makefile.in:
3071	* oprof_report/oprof_report.cpp: use db
3072
30732002-04-20  Philippe Elie  <phil.el@wanadoo.fr>
3074
3075	* dae/opd_proc.c: OPD_KERNEL_OFFSET thing
3076	* pp/oprofpp_util.cpp:
3077
30782002-04-20  Philippe Elie  <phil.el@wanadoo.fr>
3079
3080	* dae/opd_proc.c: minor warning suppression
3081
3082	* pp/Makefile.in:
3083	* pp/oprofpp.cpp:
3084	* pp/op_time.cpp:
3085	* pp/opf_container.cpp:
3086	* pp/opf_filter.cpp:
3087	* pp/oprofpp.h: handle the new db file format, this stuff is
3088	  not yet extensively tested
3089
3090	* pp/op_merge.c: not already updated, exit at run time
3091	  with an error message
3092
30932002-04-19  Philippe Elie  <phil.el@wanadoo.fr>
3094
3095	* dae/opd_proc.h:
3096	* dae/oprofiled.h: enable db samples file format
3097
30982002-04-19  Philippe Elie  <phil.el@wanadoo.fr>
3099
3100	* libdb/*: initial import from oprofile-tests module
3101	  note than this direcroty have it's own ChangeLog file
3102	* dae/Makefile.in: use libdb.a
3103	* dae/opd_util.h: use db.h. These change do not yet enable
3104	  the db samples files format.
3105
31062002-04-16  John Levon  <moz@compsoc.man.ac.uk>
3107
3108	* TODO:
3109	* doc/oprofile.xml:
3110	* pp/oprof_convert.c:
3111	* util/misc.h:
3112	* util/misc.c:
3113	* util/file_manip.h:
3114	* pp/Makefile.in: kill oprof_convert
3115	 
31162002-04-16  John Levon  <moz@compsoc.man.ac.uk>
3117
3118	* pp/opf_container.cpp:
3119	* pp/oprofpp.h:
3120	* pp/demangle_symbol.h:
3121	* pp/demangle_symbol.cpp:
3122	* pp/Makefile.in: move demangle_symbol into own
3123	  file
3124 
3125	* TODO: update some...
3126 
31272002-04-11  Philippe Elie  <phil.el@wanadoo.fr>
3128
3129	* pp/opf_filter.cpp: fix a memory leak uncovered
3130	  by valgrind <http://developer.kde.org/~sewardj>
3131
31322002-04-09  Philippe Elie  <phil.el@wanadoo.fr>
3133
3134	* dae/oprofiled.h: move definition of linked list to ...
3135	* dae/opd_list.h: this new file
3136	
3137	* dae/opd_proc.c: iterate on opened sample file
3138	  rather on image list to sync mmap'ed file
3139
31402002-04-07  Philippe Elie  <phil.el@wanadoo.fr>
3141
3142	* pp/oprofpp.h:
3143	* oprof_report/oprof_report.cpp:
3144	* pp/op_time.cpp:
3145	* pp/opf_container.cpp:
3146	* pp/opf_filter.cpp:
3147	* pp/oprofpp_util.cpp:
3148	* pp/oprofpp.cpp: use samples_file_t as internal implementation
3149	  of opp_samples_files. Now all samples files read are made
3150	  through samples_file_t object.
3151
31522002-04-04  Philippe Elie  <phil.el@wanadoo.fr>
3153
3154	* dae/op_start: fix bash1 detection
3155
3156	* doc/Makefile.in: fix install target
3157
31582002-03-25  John Levon  <moz@compsoc.man.ac.uk>
3159
3160	* configure.in: some preliminary stuff for NGPT
3161
3162	* TODO: update
3163
3164	* doc/Makefile.in:
3165	* doc/oprofile.sgml:
3166	* doc/oprofile.xml: move to DocBook/XML
3167
3168	* doc/oprofile.xml: document Bash 2 dependency
3169 
3170	* dae/op_start: fix for /bin/bash being bash v1 - untested
3171 
31722002-04-02  Philippe Elie  <phil.el@wanadoo.fr>
3173
3174	* pp/oprofpp.cpp:
3175	* pp/oprofp_util.cpp: debug and use opp_bfd::symbol_size()
3176
31772002-03-30  Philippe Elie  <phil.el@wanadoo.fr>
3178
3179	* ChangeLog: change my email address
3180
31812002-03-22  Philippe Elie  <ph_e@club-internet.fr>
3182
3183	* dae/op_start: default buffer size to zero and let module
3184	  override the default.
3185
3186	* module/op_rtc.c:
3187	* module/oprofile.h:
3188	* op_user.h:
3189	* gui/oprof_start.cpp:
3190	* gui/oprof_start_config.cpp:
3191	* gui/oprof_start_config.h: an another coherency fix, unhopefully
3192	  this bug fix does not fix the configuration file (see # )
3193
3194	* pp/oprofpp.cpp: for gprof dump do not print events settings
3195
3196	* pp/oprofpp.h:
3197	* pp/oprofpp_util.cpp: prepare using symbol size
3198
31992002-03-21  Philippe Elie  <ph_e@club-internet.fr>
3200
3201	* pp/opf_filter.cpp:
3202	* pp/oprofpp.cpp:
3203	* pp/oprofpp_util.cpp: factorize event settings output
3204	* pp/oprofpp.h: ditto + do_list_xxx/do_dump_gprof : static
3205	  free function rather than member function.
3206
32072002-03-21  Philippe Elie  <ph_e@club-internet.fr>
3208
3209	* op_user.h:
3210	* pp/oprofpp.h: more doxygen comments
3211
3212	* dae/opd_kernel.c:
3213	* dae/opd_proc.c:
3214	* dae/opd_util.c:
3215	* dae/oprofiled.c:
3216	* gui/oprof_start.cpp:
3217	* gui/oprof_start_util.cpp: exit(): use {EXIT_FAILURE|EXIT_SUCCESS}
3218
32192002-03-20  Philippe Elie  <ph_e@club-internet.fr>
3220
3221	* pp/opf_filter.h: simplify slightly interface of samples_files_t
3222	* oprof_report/oprof_report.cpp:
3223	* pp/op_time.cpp:
3224	* pp/opf_container.cpp:
3225	* pp/opf_filter.cpp:
3226	* pp/oprofp.cpp: reflect the new interface.
3227
3228	* pp/opp_symbol.cpp: ParseOutputOption --> static member of
3229	  OutputSymbol ...
3230
3231	* pp/opp_symbol.h:
3232	* util/file_manip.h:
3233	* util/string_manip.h: doxygen comments
3234
32352002-03-19  Philippe Elie  <ph_e@club-internet.fr>
3236
3237	* scripts/Doxyfile: small tweak
3238	* op_user.h:
3239	* pp/opp_symbol.h:
3240	* pp/oprofpp.h:
3241	* util/child_reader.h: doxygen comments.
3242
32432002-03-19  Philippe Elie  <ph_e@club-internet.fr>
3244
3245	* pp/opf_filter.h:
3246	* pp/opf_container.cpp: remove delegation
3247	  {symbol|samples}_container_t -> xxx_impl, no functionnal change
3248
3249	* pp/*: start a more serious doxygenization. first step
3250	  include fixing prototype and a client documentation for
3251 	  opp_bfd
3252	* script/Doxyfile: doxygen script for pp/*.h, util/*.h
3253	
32542002-03-19  John Levon  <moz@compsoc.man.ac.uk>
3255
3256	* module/op_fixmap.c: include pagemap.h, so
3257	we pick up highmem.h, which is needed with
3258	some kernels (missing kmap_pagetable define
3259	via pte_offset)
3260
32612002-03-18  Philippe Elie  <ph_e@club-internet.fr>
3262
3263	* pp/op_time.cpp:
3264	* doc/oprofile1.1.in:
3265	* doc/oprofile.sgml: allow reverse sort in all case
3266
3267	* pp/opp_symbol.h:
3268	* pp/opp_symbol.cpp: remove unnecessary cast
3269
3270	* oprof_report/oprof_report.cpp:
3271	* oprof_report/oprof_report.h:
3272	* oprof_report/*_view.*: revert partially 2002-03-17 patch,
3273	  making again data change notification in two step.
3274
32752002-03-17  John Levon  <moz@compsoc.man.ac.uk>
3276
3277	* pp/oprofpp_util.cpp: clarify binutils bug workaround
3278 
32792002-03-17  Philippe Elie  <ph_e@club-internet.fr>
3280
3281	* oprof_report/op_view.h:
3282	* oprof_report/hostpost_view.cpp:
3283	* oprof_report/hostpost_view.h:
3284	* oprof_report/oprof_report.cpp:
3285	* oprof_report/oprof_report.h:
3286	* oprof_report/oprof_view.cpp:
3287	* oprof_report/oprof_view.h: simplify virtual interface +
3288	  minor graphic bug fix
3289
32902002-03-16  Philippe Elie  <ph_e@club-internet.fr>
3291
3292	* TODO: update
3293
3294	* oprof_report/hotspot_view.cpp: new
3295	* oprof_report/hotspot_view.h: new HotspotView class
3296	* oprof_report/oprof_report.cpp:
3297	* oprof_report/oprof_report.h:  use HotspotView
3298	* oprof_report/Makefile.in: reflect above
3299
3300	* pp/op_time.cpp: small tidy
3301
33022002-03-15  Philippe Elie  <ph_e@club-internet.fr>
3303
3304	* TODO: update
3305
3306	* dae/oprofiled.c: fix --version when module is not loaded
3307
3308	* pp/opp_symbol.cpp:
3309	* pp/opp_symbol.h: avoid to padd the last field, use a positive
3310	  form for osf_header
3311
3312	* pp/oprofpp.h:
3313	* pp/oprofpp.cpp:
3314	* pp/opf_filter.cpp:
3315	* pp/opprofpp_util.cpp:
3316	* pp/op_time.cpp: fix --sort option
3317
33182002-03-14  Philippe Elie  <ph_e@club-internet.fr>
3319
3320	* TODO: update
3321
3322	* pp/op_time.cpp:
3323	* pp/opf_filter.cpp:
3324	* pp/opp_symbol.cpp:
3325	* pp/oprofpp_.cpp:
3326	* pp/oprofpp.h:
3327	* pp/oprofpp_util.cpp: handle -c0,1 and --sort #nr_ctr
3328	  for all post-profile tools allowing a more precise way
3329	  to specify on which counters tools must work
3330
33312002-03-13  Philippe Elie  <ph_e@club-internet.fr>
3332
3333	* pp/oprofpp_util.cpp: get_linenr() better handling
3334	  of bfd_find_nearest_line. Fix #529622
3335
3336	* pp/opf_container.cpp: simplify symbol_container_impl
3337
3338	* pp/opp_symbol.cpp: use ostringstream only when necessary
3339
33402002-03-09  John Levon  <moz@compsoc.man.ac.uk>
3341
3342	* doc/oprofile.sgml: some laptops have a usable local APIC
3343 
33442002-03-09  Philippe Elie  <ph_e@club-internet.fr>
3345
3346	* oprof_report: new directory, oprofpp/op_time like GUI
3347	* oprof_report/op_view.h: base class for view
3348	* oprof_report/oprof_report_main.cpp:
3349	* oprof_report/oprof_report.h:
3350	* oprof_report/oprof_report.cpp: main class
3351	* oprof_report/oprofpp_view.h:
3352	* oprof_report/oprofpp_view.cpp: oproffp like view
3353	* oprof_report/Makefile.in:
3354	* oprof_report/ui/oprof_report.base.ui: oprof_report UI
3355	* oprof_report/ui/Makefile.in:
3356
3357	* Makefile.in:
3358	* configure.in: handle oprof_report
3359
3360	* ui/Makefile.in: clarify how dependencies work
3361
33622002-03-08  John Levon  <moz@compsoc.man.ac.uk>
3363
3364	* configure.in: bump to 0.2cvs
3365
3366	* TODO: update
3367 
33682002-03-07  Philippe Elie  <ph_e@club-internet.fr>
3369
3370	* pp/opf_container.cpp: handle osf_short_linr_info
3371	* pp/opp_symbol.cpp: tweak output output when
3372	  linenr/filename is not available
3373
33742002-03-07  John Levon  <moz@compsoc.man.ac.uk>
3375
3376	* util/Makefile.in: remove -pedantic (Phil don't you
3377	  read comments ? ;)
3378 
33792002-03-07  John Levon  <moz@compsoc.man.ac.uk>
3380
3381	* TODO: update
3382
3383	* pp/: use "invalid" not "illegal"
3384 
33852002-03-06  John Levon  <moz@compsoc.man.ac.uk>
3386
3387	* TODO: update
3388 
33892002-03-06  Philippe Elie  <ph_e@club-internet.fr>
3390
3391	* pp/opfropp_util.cpp: more specific error messages
3392
3393	* doc/oprofile.sgml: clarify problem about sparse
3394	  samples files and filesystem.
3395
3396	* util/file_manip.h:
3397	* util/file_manip.cpp: create_file_list() allow recursive
3398	  file list creation.
3399	* pp/op_time.cpp: add option -p/-P to allow specifying
3400	  alternate path name where to search for image name
3401	* doc/oprofile.1.in:
3402	* doc/oprofile.sgml: update option for op_time
3403
34042002-03-05  Philippe Elie  <ph_e@club-internet.fr>
3405
3406	* pp/oprofpp_util.cpp: remove multiple symbols belonging
3407	  to the same vma (Fix #526098)
3408	  Accept also all symbol types, we filter them by name.
3409
34102002-03-04  Philippe Elie  <ph_e@club-internet.fr>
3411
3412	* util/misc.h: minor comment fix
3413
3414	* pp/oprofpp_util.cpp: tweak the last commit
3415
34162002-03-04  John Levon  <moz@compsoc.man.ac.uk>
3417
3418	* pp/oprofpp_util.cpp: welcome in the local symbols ...
3419 
34202002-03-03  Philippe Elie  <ph_e@club-internet.fr>
3421
3422	* pp/opf_filter.h:
3423	* pp/opf_container.cpp: samples_files_t::add() add an hint
3424	  parameter on what information will needed.
3425	* pp/op_time.cpp:
3426	* pp/oprofpp.cpp:
3427	* pp/opf_filter.cpp: use it
3428	
3429	* pp/op_time.cpp: when a samples files for one counter
3430	  does not exist avoid to load it (op_time -l) fix #525237
3431
34322002-03-02  Philippe Elie  <ph_e@club-internet.fr>
3433
3434	* pp/Makefile.in: add -pedantic to CXXFLAGS
3435	* pp/oprofpp.h: replace macro verpbrintf with a function
3436	* pp/oprofpp_util.cpp: implement it
3437	* pp/opp_symbol.h:
3438	* pp/op_time.cpp: fix pedantic warning
3439
3440	* pp/opevents.cpp:
3441	* op_user.h: op_get_cpu_nr_counters() new
3442
3443	* pp/op_time.cpp:
3444	* pp/opf_container.cpp:
3445	* pp/opf_filter.cpp:
3446	* pp/opf_filter.h:
3447	* pp/opp_symbol.cpp:
3448	* pp/oprofpp.cpp:
3449	* pp/oprofpp_util.cpp: remove global var op_nr_counters
3450
34512002-03-02  Philippe Elie  <ph_e@club-internet.fr>
3452
3453	* module/op_syscalls.c: do not pre-allocate some dname
3454	  hash map entry for common pathname but pre alloc entry
3455	  zero to reserve it
3456
3457	* pp/op_time.cpp: add image name to the default output format
3458
3459	* module/compat22.h: move cacheline_aligned macro to ...
3460	* module/op_cache.h: this new file
3461	* module/compat.h: use it
3462	* module/compat22.h:
3463	* module/oprofile.c: replace some __cacheline_aligned by
3464	  __cacheline_aligned_in_smp
3465
34662002-03-01  Philippe Elie  <ph_e@club-internet.fr>
3467
3468	* dae/opd_kernel.c:
3469	* dae/opd_proc.c: simplify handling of kernel samples
3470
3471	* pp/opt_time.cpp:
3472	* pp/opp_symbol.cpp:
3473	* pp/opp_symbol.h:
3474	* pp/oprofpp.cpp:
3475	* pp/oprofpp.h: tidy, gives a negative form to header output
3476	  format
3477
3478	* version.h.in: new macro show_version() to output version
3479	* doc/oprofile.sgml: document it
3480	* dae/oprofiled.c:
3481	* events/op_help.c:
3482	* pp/op_merge.cpp:
3483	* pp/op_time.cpp:
3484	* pp/opf_filter.cpp:
3485	* pp/oprofpp.cpp: use it
3486
34872002-03-01  John Levon  <moz@compsoc.man.ac.uk>
3488
3489	* TODO: update
3490
3491	* module/oprofile.c:
3492	* module/op_syscalls.c: merge note/map lock 
3493 
34942002-02-27  Philippe Elie  <ph_e@club-internet.fr>
3495
3496	* TODO: upadte
3497
3498	* doc/oprofile.1.in:
3499	* doc/oprofile.sgml:
3500	* pp/opp_symbol.h:
3501	* pp/opp_symbol.cpp:
3502	* pp/oprofpp.cpp: use columned output for oprofpp -L, -s
3503
3504	* pp/oprofpp.cpp: command-line counter specification
3505	  was broken by my last patch
3506	* pp/opf_filter.cpp: ditto but bug comes from the far past
3507
35082002-02-26  Philippe Elie  <ph_e@club-internet.fr>
3509
3510	* pp/op_merge.cpp: small tidy
3511
3512	* pp/op_time.cpp:
3513	* pp/opf_container.cpp:
3514	* pp/opf_filter.h:
3515	* pp/opf_filter.cpp:
3516	* pp/oprofpp.cpp:
3517	* pp/oprofpp.h:
3518	* pp/oprofpp_util.cpp: remove the nasty global var int ctr;
3519	  pass it as parameter to each relevant function using it.
3520
3521	* module/compat.h: support for 2.5.5. 2.4.18 also tested
3522
3523	* pp/opp_symbol.h:
3524	* pp/opp_symbol.cpp: new, mainly for implementing --output-format
3525	* pp/op_time.cpp:
3526	* pp/oprofpp.cpp: use output format stuff
3527	* pp/Makefile.in: reflect above change
3528	* doc/oprofile.1.in:
3529	* doc/oprofile.sgml: document --output-format
3530
35312002-02-13  Philippe Elie  <ph_e@club-internet.fr>
3532
3533	* TODO: update
3534
3535	* module/compat22.h:
3536	* module/compat24.h:
3537	* module/oprofile_nmi.S: small tidy
3538
3539	* module/op_apic.c:
3540	* module/op_fixmap.c:
3541	* module/op_nmi.c:
3542	* module/oprofile.h: avoid memory leak of apic mapping
3543
35442002-02-12  Philippe Elie  <ph_e@club-internet.fr>
3545
3546	* TODO: update
3547
3548	* pp/oprofpp_util.cpp: use stable sort and correct the comparison
3549	  function on symbol vma
3550	* pp/opf_filter.cpp: remove a boring new line in output
3551
3552	* module/makefile.in: optimize for 686 but do not use any specific
3553	  686 insn.
3554
3555	* configure.in: check against CONFIG_PREEMPT
3556
35572002-02-10  John Levon  <moz@compsoc.man.ac.uk>
3558
3559	* events/op_events_desc.c: remove dead code
3560 
3561	* module/compat.h: RedHat backported MODULE_LICENSE()
3562 
3563	* module/op_syscalls.c:
3564	* module/op_util.c: remove FIXMEs
3565 
35662002-02-09  Bob Montgomery  <bobm@fc.hp.com>
3567
3568	* module/op_rtc.c: right actual RTC value back
3569
3570	* doc/oprofile.sgml: document that
3571
35722002-02-09  John Levon  <moz@compsoc.man.ac.uk>
3573
3574	* module/op_init.c: set rtc cpu type directly
3575 
35762002-02-08  Philippe Elie  <ph_e@club-internet.fr>
3577
3578	* TODO: update
3579
3580	* module/oprofile_nmi.S: cut and copy from oprofile_nmi24.s
3581	* module/oprofile_nmi22.S: remove
3582	* module/oprofile_nmi22.S: remove
3583	* module/Makefile.in: reflect them
3584
3585	* pp/opf_filter.cpp: do not print unit mask for RTC cpu type
3586
3587	* doc/oprofile.sgml: document post-profile tools commons options
3588
35892002-02-05  Philippe Elie  <ph_e@club-internet.fr>
3590
3591	* TODO: update mainly by moving things to 0.1
3592
3593	* pp/opf_filter.h:
3594	* pp/opf_container.cpp: small cleanup + minor tweak to get
3595	  more reliable sort order on filename.
3596
35972002-02-05  Philippe Elie  <ph_e@club-internet.fr>
3598
3599	* pp/opf_filter.h: declare create_artificial_symbol()
3600	* pp/oprofpp_util.cpp: show how elf symbols size could
3601	  be handled.
3602
3603	* pp/oprofpp_util.cpp: add BSF_GLOBAL symbols to
3604	  symbols of interest.
3605
36062002-02-04  John Levon  <moz@compsoc.man.ac.uk>
3607
3608	* module/oprofile.c: add [un]lock_sysctl
3609 
36102002-02-04  John Levon  <moz@compsoc.man.ac.uk>
3611
3612	* dae/oprofiled.h:
3613	* dae/oprofiled.c:
3614	* dae/opd_proc.c: free stuff on shutdown (to
3615	  clean dmalloc reports)
3616 
36172002-02-03  John Levon  <moz@compsoc.man.ac.uk>
3618
3619	* configure.in: bump to 0.1
3620
3621	* TODO: update
3622 
36232002-02-02  John Levon  <moz@compsoc.man.ac.uk>
3624
3625	* configure.in: bump to 0.0.9
3626 
36272002-02-02  John Levon  <moz@compsoc.man.ac.uk>
3628
3629	* module/op_nmi.c: fix stupid bug spotted by Bob
3630	  Montgomery
3631 
36322002-02-01  Philippe Elie  <ph_e@club-internet.fr>
3633
3634	* module/compat.h: define REMAP_PAGE_RANGE
3635	* module/op_syscalls.c: use it (2.5.3 support)
3636
36372002-01-30  Philippe Elie  <ph_e@club-internet.fr>
3638
3639	* module/compat.h:
3640	* module/op_nmi.c: re-add explicit constant for all MSR_
3641	  constants.
3642
36432002-01-30  Philippe Elie  <ph_e@club-internet.fr>
3644
3645	* configure.in:
3646	* doc/oprofile.sgml:
3647	* module/compat22.h: remove support for kernel version
3648	  prior to 2.2.11
3649
3650	* module/op_fixmap.c:
3651	* module/compat.h: small cleanup
3652
3653	* module/oprofile.c: avoid multi-line literal string
3654
3655	* pp/oprofpp_util.cpp: better to get_symbols() ;)
3656
36572002-01-29  John Levon  <moz@compsoc.man.ac.uk>
3658
3659	* module/op_fixmap.c: remap fake mapping on 2.2 as well
3660	  when necessary
3661 
36622002-01-27  Philippe Elie  <ph_e@club-internet.fr>
3663
3664	* module/Makefile.in: sorry, -Werror is only usefull
3665	  for test.
3666
3667	* doc/oprofile.1.in: a few words about op_stop
3668
3669	* module/compat.h:
3670	* module/compat22.h:
3671	* module/compat24.h: change pte_page_address definition
3672	  for 2.2.20
3673
3674	* pp/opf_container.cpp: no warning when creating artificial symbols
3675	* pp/oprofpp_tuil.cpp: no warning for image without symbols
3676
36772002-01-27  John Levon  <moz@compsoc.man.ac.uk>
3678
3679	* gui/oprof_start.cpp:
3680	* pp/op_merge.cpp:
3681	* pp/op_time.cpp:
3682	* pp/opf_container.cpp: std namespace fixes.
3683 
36842002-01-27  John Levon  <moz@compsoc.man.ac.uk>
3685
3686	* pp/op_time.cpp: small hacky output cleanup
3687 
36882002-01-27  Philippe Elie  <ph_e@club-internet.fr>
3689
3690	* TODO: update
3691
3692	* dae/opd_proc.c: small cleanup
3693
3694	* doc/opf_container.cpp: handle image without symbols
3695
3696	* doc/oprofile.1.in:
3697	* doc/oprofile.sgml:
3698	* doc/op_time.cpp: implement and document --demangle
3699	  and --show-image-name
3700
3701	* pp/oprofpp_util.cpp: add using elf symbols size but
3702	  disable it
3703
37042002-01-26  John Levon  <moz@compsoc.man.ac.uk>
3705
3706	* TODO: update
3707
3708	* dae/opd_proc.c: tiny clean
3709
3710	* doc/oprofile.sgml: spell fix
3711 
37122002-01-26  Philippe Elie  <ph_e@club-internet.fr>
3713
3714	* TODO: update
3715
3716	* pp/op_merge.c: remove FIXME
3717	* pp/op_time.cpp: minor fix
3718	
3719	* pp/opf_filter.h:
3720	* pp/opf_filter.cpp:
3721	* pp/oprofpp.cpp:
3722	* pp/opf_container.cpp: Show more clearly than
3723	  samples_files_t support adding any number of samples
3724	  files to the underlined container.
3725
37262002-01-26  Philippe Elie  <ph_e@club-internet.fr>
3727
3728	* pp/oprofpp_util.cpp: allow to load image without symbols
3729
3730	* pp/Makefile.in:
3731	* pp/op_time: implement -l option that show symbols details.
3732	  Currently with separate-samples files symbols are showed
3733	  more than one time. This is a bug rather a feature.
3734	* doc/oprofile.1.in:
3735	* doc/oprofile.sgml: document op_time -l
3736
3737	* dae/opd_proc.c: bug fix from last change
3738
37392002-01-25  John Levon  <moz@compsoc.man.ac.uk>
3740
3741	* TODO:
3742	* dae/opd_proc.c: search maps in reverse order so we prefer
3743	  newer mappings.
3744 
37452002-01-25  Philippe Elie  <ph_e@club-internet.fr>
3746
3747	* pp/op_merge.cpp: minor fix + comment
3748	* pp/op_time.cpp: comment, use samples_file_t
3749	* pp/oprofpp.h:
3750	* pp/oprofpp_util.cpp: minor change
3751
37522002-01-24  John Levon  <moz@compsoc.man.ac.uk>
3753
3754	* dae/opd_proc.c: remove stale comment
3755
3756	* TODO: update
3757
3758	* module/compat.h:
3759	* module/compat22.h:
3760	* module/compat24.h: fix for pte_page on 2.2.20+
3761 
37622002-01-24  Philippe Elie  <ph_e@club-internet.fr>
3763
3764	* op_merge.cpp:
3765	* oprofpp.h:
3766	* oprofpp_util.cpp: code move + cleanup
3767
37682002-01-23  Philippe Elie  <ph_e@club-internet.fr>
3769
3770	* util/shared_ptr.h: a templatized shared pointer.
3771
3772	* pp/op_merge.c: new to merge samples files
3773	* pp/Makefile.in:
3774	* pp/opf_filter.cpp:
3775	* pp/opf_filter.h:
3776	* pp/oprofpp.h:
3777	* pp/oprofpp_util.cpp: minor change to add op_merge support
3778
3779	* doc/Makefile.in:
3780	* doc/oprofile.1.in:
3781	* doc/oprofle.smgl: document op_merge
3782
37832002-01-22  John Levon  <moz@compsoc.man.ac.uk>
3784
3785	* module/Makefile.in: can only depmod if we run that kernel
3786 
3787	* module/op_fixmap.c: deal with no APIC config for
3788	  2.4.10+
3789 
37902002-01-22  John Levon  <moz@compsoc.man.ac.uk>
3791
3792	* module/Makefile.in:
3793	* module/oprofile.h:
3794	* module/oprofile.c:
3795	* module/op_x86.c:
3796	* module/op_apic.c:
3797	* module/op_fixmap.c: split op_x86.c. Various changes to
3798	  only enable the APIC if it's not, and to remap / map the APIC
3799	  as is necessary.
3800
3801	* module/apic_up_compat.h: 
3802	* module/compat.h:
3803	* module/compat22.h: clean up V_*() macros
3804
3805	* module/op_init.c: remove FORCE_RTC
3806 
38072002-01-22  Philippe Elie  <ph_e@club-internet.fr>
3808
3809	* TODO: update
3810
3811	* dae/opd_proc.c: use remove not unlink
3812	* gui/oprof_start.cpp: use remove not system("rm xxx")
3813
3814	* doc/Makefile.in: slightly improvment
3815	* doc/oprofile.1.in: move --help --version to a common section
3816
38172002-01-21  John Levon  <moz@compsoc.man.ac.uk>
3818
3819	* module/compat22.h: fix missing cli()
3820 
38212002-01-21  John Levon  <moz@compsoc.man.ac.uk>
3822
3823	* module/oprofile.c: 
3824	* module/compat22.h:
3825	* module/compat24.h: fix NMI wake-up for 2.2 SMP
3826 
3827	* module/op_dcache.h: add KERN_ERR
3828 
3829	* module/op_x86.c: cleanup a little
3830 
38312002-01-21  Philippe Elie  <ph_e@club-internet.fr>
3832
3833	* TODO: update
3834
3835	* doc/oprofile.1.in:
3836	* doc/oprofile.sgml: minor change
3837
3838	* module/Makefile.in: auto-dependencies for compat.c
3839
3840	* module/compat.c:
3841	* module/compat22.h: FIXME remove for vmalloc_32
3842
38432002-01-20  Philippe Elie  <ph_e@club-internet.fr>
3844
3845	* gui/oprof_start.cpp: fix configuration saving when
3846	  switching of cpu_type.
3847
3848	* module/Makefile.in:
3849	* module/compat.c: minor change
3850
3851	* compat.h: add minor macro
3852	* oprofile.c: use minor instead MINOR (2.5.2 support)
3853
3854	* op_x86.c: check SPIV (missing from a previous patch)
3855
38562002-01-20  John Levon  <moz@compsoc.man.ac.uk>
3857
3858	* TODO: punt some things to next release
3859
3860	* dae/opd_proc.c: fix printf of null
3861 
38622002-01-20  John Levon  <moz@compsoc.man.ac.uk>
3863
3864	* TODO: update
3865 
3866	* module/oprofile.c: add comment
3867 
3868	* module/compat22.h:
3869	* module/compat24.h:
3870	* module/op_syscalls.c: fix locking for out_mmap
3871 
38722002-01-20  Philippe Elie  <ph_e@club-internet.fr>
3873
3874	* module/op_x86.c: check MSR + SPIV for enabling APIC
3875 
3876	* module/compat.c: don't attempt to get root
3877
3878	* module/compat.h: NEED_FIXMAP fixes
3879 
38802002-01-18  Philippe Elie  <ph_e@club-internet.fr>
3881
3882	* TODO: update
3883
3884	* module/compat.h:
3885	* module/compat24.h: move things needed for 2.2/2.4 in compat.h
3886
38872002-01-18  John Levon  <moz@compsoc.man.ac.uk>
3888
3889	* module/compat22.h: never wake up from NMI
3890	  on 2.2 SMP for now :(
3891 
38922002-01-18  John Levon  <moz@compsoc.man.ac.uk>
3893
3894	* module/compat.h:
3895	* module/compat22.h: 
3896	* module/compat24.h: s/VATLEAST/V_AT_LEAST/
3897 
3898	* module/oprofile.c: remove dead code
3899 
39002002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3901
3902	* module/compat.c: don't need to re-take BKL for
3903	  d_path on 2.2
3904 
39052002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3906
3907	* module/compat22.h:
3908	* module/compat24.h:
3909	* module/op_syscalls.c: we mustn't take the mmap sem
3910	  under 2.2
3911 
39122002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3913
3914	* module/compat22.h:
3915	* module/compat24.h:
3916	* module/op_syscalls.c: whoops, handy to lock the
3917	  BKL when it is necessary.
3918 
3919	* dae/oprofiled.c: fix warning
3920
39212002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3922
3923	* op_user.h:
3924	* dae/op_start:
3925	* gui/oprof_start_config.h:
3926	* module/oprofile.h: bump note size and watermark,
3927	  I was getting problems on my dual SMP box in kernel compiles
3928 
39292002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3930
3931	* module/Makefile.in:
3932	* module/oprofile_nmi.S:
3933	* module/oprofile_nmi22.S:
3934	* module/oprofile_nmi24.S: split assembly for 2.2/4 
3935
3936	* module/compat.h:
3937	* module/compat22.h:
3938	* module/compat24.h: s/AFTER/ATLEAST/
3939 
39402002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3941
3942	* module/compat24.h: define to have ->owner
3943 
39442002-01-17  Philippe Elie  <ph_e@club-internet.fr>
3945
3946	* gui/oprof_start.h:
3947	* gui/oprof_start_config.h:
3948	* gui/oprof_start.cpp: validate the RTC max count
3949
39502002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3951
3952	* TODO: update
3953
3954	* oprofile.c:
3955	* module/compat24.h: 
3956	* module/compat22.h: fix compile, nmi wake up check
3957	 
3958	* module/op_rtc.c: user/kernel profiling feature
3959 
39602002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3961
3962	* doc/oprofile.sgml: clarification
3963 
3964	* module/compat22.h:
3965	* module/compat24.h:
3966	* module/oprofile.c: ->owner fixes
3967 
39682002-01-17  John Levon  <moz@compsoc.man.ac.uk>
3969
3970	* module/oprofile.h: clean up
3971 
3972	* module/compat.h:
3973	* module/compat22.h:
3974	* module/compat24.h: split header files up
3975	  for readability
3976 
39772002-01-17  Philippe Elie  <ph_e@club-internet.fr>
3978
3979	* TODO: update
3980
3981	* doc/oprofile.sgml: speach about assembler
3982
3983	* module/compat.h: small tweak for 2.2, no impact on 2.4
3984
39852002-01-16  John Levon  <moz@compsoc.man.ac.uk>
3986
3987	* configure.in: look for rtc_lock
3988 
3989	* module/compat.h: use rtc_lock if there
3990
39912002-01-16  Philippe Elie  <ph_e@club-internet.fr>
3992
3993	* module/compat.h:
3994	* module/apic_up_compat.h: cleanup + allow compile
3995	  !CONFIG_X86_LOCAL_APIC on 2.4/2.5. (only compile
3996	  tested)
3997
39982002-01-15  Philippe Elie  <ph_e@club-internet.fr>
3999
4000	* events/op_events.c: avoid gui crash: event name must
4001	  contain only one word. If you test RTC patch destroy
4002	  ~/.oprofile/oprof_start_event#0
4003
40042002-01-15  John Levon  <moz@compsoc.man.ac.uk>
4005
4006	* module/compat.h:
4007	* module/compat.c:
4008	* module/op_rtc.c: 2.2 modversions fix
4009 
40102002-01-15  John Levon  <moz@compsoc.man.ac.uk>
4011
4012	* TODO: update
4013
4014	* module/compat.h:
4015	* module/compat.c:
4016	* module/op_rtc.c: fix 2.2 compile
4017
40182002-01-15  John Levon  <moz@compsoc.man.ac.uk>
4019
4020	* module/Makefile.in: whoops, forgot to commit this
4021 
40222002-01-15  John Levon  <moz@compsoc.man.ac.uk>
4023
4024	* gui/oprof_start.cpp: some improvements for RTC
4025 
40262002-01-15  John Levon  <moz@compsoc.man.ac.uk>
4027
4028	* dae/op_stop: fix "op_start && op_stop" bug using multiple
4029	  dump_stop writes.
4030
40312002-01-14  Dave Jones <davej@suse.de>
4032
4033	* pp/op_time.cpp: fix for printing (NaN%) in the zero sample case.
4034
40352002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4036
4037	* module/op_rtc.c: remove unneeded check
4038
40392002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4040
4041	* dae/op_start: fix for PMC case
4042 
40432002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4044
4045	* TODO: update
4046
4047	* dae/op_start: take --rtc-value
4048
4049	* dae/oprofiled.c: set headers sensibly for RTC
4050
4051	* doc/oprofile.1.in: update
4052
4053	* doc/oprofile.sgml: RTC update
4054
4055	* events/op_events_descr.c: 
4056	* events/op_events.c: good name for RTC event 
4057
4058	* gui/oprof_start.cpp: basic support for RTC
4059
4060	* module/op_rtc.c: implement and use rtc_value
4061
40622002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4063
4064	* TODO: update
4065
4066	* dae/op_start: load module at start. Handle CPU_RTC.
4067	  Avoid sysctl for now on RTC case.
4068
4069	* dae/oprofiled.c: only read sysctls if PMC. Needs clean.
4070
4071	* events/op_events.c: add RTC event.
4072
4073	* events/op_events_desc.c: get CPU type from module. 
4074
4075	* module/op_init.c: detect CPU_RTC.
4076
4077	* module/op_nmi.c: setup code moved from op_init.c
4078
4079	* module/op_rtc.c: enable interrupt, fixed at 128 for now.
4080
4081	* module/op_x86.c: add Athlon to needs_apic_setup checks
4082
4083	* module/oprofile.c: use correct interrupt handler based on
4084	  CPU type
4085
40862002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4087
4088	* TODO: update
4089
4090	* op_user.h: add CPU_RTC
4091
4092	* op_init.c: add FIXMEs
4093
4094	* op_nmi.c:
4095	* op_rtc.c:
4096	* oprofile.h:
4097	* oprofile.c: implement abstract interrupt handler code
4098
40992002-01-14  John Levon  <moz@compsoc.man.ac.uk>
4100
4101	* gui/oprof_start_config.cpp: fix vmlinux/system.map defaults
4102 
41032002-01-13  Philippe Elie  <ph_e@club-internet.fr>
4104
4105	* configure.in: reject unsupported kernel version
4106	* module/apic_up_compat.h:
4107	* module/compat.h: small cleanup
4108	* module/op_x86.c: ditto, always put apic memory page as
4109	  non cachable
4110
41112002-01-12  John Levon  <moz@compsoc.man.ac.uk>
4112
4113	* gui/oprof_start_util.h:
4114	* gui/oprof_start_util.cpp: implement whitelist for arguments
4115	  to op_start
4116 
4117	* TODO: update
4118
41192002-01-13  Philippe Elie  <ph_e@club-internet.fr>
4120
4121	* module/compat.h:
4122	* module/apic_up_compat.h:
4123	* module/op_x86.c: allow to run oprofile when
4124	  !CONFIG_X86_LOCAL_APIC on 2.2.x kernel
4125
41262002-01-12  Philippe Elie  <ph_e@club-internet.fr>
4127
4128	* module/compat.h: fix some FIXME
4129	* module/op_x86.c: do not hang SMP kernel UP box with 2.2.x
4130
41312002-01-11  Philippe Elie  <ph_e@club-internet.fr>
4132
4133	* module/compat.h: support for UP from 2.2.0, for SMP
4134	  from 2.2.8. It is worthwhile to try more support.
4135	  !CONFIG_X86_LOCAL_APIC not yet supported.
4136
41372002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4138
4139	* TODO: update
4140
4141	* dae/opd_proc.c:
4142	* doc/oprofile.sgml:
4143	* pp/op_time.cpp: add FIXMEs
4144 
41452002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4146
4147	* module/oprofile.c: never return 0 unless we're
4148	  really closing down
4149 
41502002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4151
4152	* TODO: update
4153 
4154	* gui/Makefile.in:
4155	* gui/oprof_start.cpp: use absolute paths
4156 
41572002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4158
4159	* doc/oprofile.sgml: add note about --with-linux
4160 
41612002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4162
4163	* Rules.make.in:
4164	* gui/Makefile.in:
4165	* gui/oprof_start_config.h:
4166	* gui/oprof_start_config.cpp: remove kernel headers
4167	  from userland !
4168
41692002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4170
4171	* configure.in: remove dead checks. comment out APIC check,
4172	  hide grep output
4173
4174	* module/Makefile.in: add compat.c
4175
4176	* apic_up_compat.h: UP 2.2 missing defines. Need to investigate
4177	  fixmap situation. 
4178
4179	* compat.c: move 2.2 dcache code here
4180
4181	* compat.h: dcache compat support. check for whether we
4182	  should check for mptable. Don't do fixmap hack on 2.2 
4183
4184	* op_dcache.h: shared dcache inline functions
4185
4186	* op_syscalls.c: clean up dcache code for 2.2/2.4 
4187
4188	* op_x86.c: update apic_need_setup for 2.2 and the possibility
4189	  of not enabling APIC support on 2.4 too. Needs checking ! Also
4190	  don't do mptable check on 2.2
4191
4192	* oprofile.h: add missing include guard ;)
4193 
41942002-01-11  John Levon  <moz@compsoc.man.ac.uk>
4195
4196	* module/compat.h: minor fixes
4197 
41982002-01-11  Philippe Elie  <ph_e@club-internet.fr>
4199
4200	* module/compat.h: many change, can be used down to 2.2.8
4201	* module/oprofile.h: move #ifdef on kernel version to compat.h
4202	* module/op_util.c:
4203	* module/op_syscalls.c: minor change
4204	* configure.in: comment unnecessary stuf.
4205
4206	* module/Makefile.in: missing include path for oprofile.s
4207
42082002-01-10  John Levon  <moz@compsoc.man.ac.uk>
4209
4210	* Makefile.in: update checklist for dist
4211
4212	* module/oprofile.h: add apparently needed version.h
4213 
42142002-01-10  John Levon  <moz@compsoc.man.ac.uk>
4215
4216	* configure.in: fix accidental trashing of BKCFLAGS
4217
4218	* module/op_util.c: include right header
4219
4220	* module/compat.h: use correct smp_call_function
4221 
42222002-01-10  Philippe Elie  <ph_e@club-internet.fr>
4223
4224	* module/compat.h: new file include backward compatibility
4225	  stuff
4226
42272002-01-09  John Levon  <moz@compsoc.man.ac.uk>
4228
4229	* doc/oprofile.sgml: update infodragon's email
4230	  address
4231 
4232	* configure.in: bump to 0.0.9cvs
4233
42342002-01-08  John Levon  <moz@compsoc.man.ac.uk>
4235
4236	* TODO: update
4237
4238	* configure.in: fix case when X isn't installed. Bump to 0.0.8
4239 
42402002-01-07  John Levon  <moz@compsoc.man.ac.uk>
4241
4242	* util/Makefile.in: "fix" last g++ 3.0 problem
4243	  with libiberty.h and string.h clashing prototypes
4244	  by disabling -pedantic for this directory
4245 
42462002-01-07  John Levon  <moz@compsoc.man.ac.uk>
4247
4248	* pp/opf_container.cpp:
4249	* pp/opf_filter.h:
4250	* pp/oprofpp.cpp: 
4251	* pp/oprofpp.h: 
4252	* pp/oprofpp_util.cpp: 
4253	* util/file_manip.h:
4254	* util/file_manip.cpp: 
4255	* util/string_manip.h: fix most g++ 3.0 problems
4256
42572002-01-07  John Levon  <moz@compsoc.man.ac.uk>
4258
4259	* TODO: update
4260 
42612002-01-05  Philippe Elie  <ph_e@club-internet.fr>
4262
4263	* doc/oprofile.sgml: Avoid to use -- inside
4264	  sgml comment
4265
42662002-01-05  John Levon  <moz@compsoc.man.ac.uk>
4267
4268	* dae/op_start:
4269	* dae/op_stop: (very) hacky loop to wait for
4270	daemon start and stop
4271 
42722002-01-05  John Levon  <moz@compsoc.man.ac.uk>
4273
4274	* module/oprofile.c: revert my broken stop fix,
4275	  and fix the old (new) one
4276 
42772002-01-05  John Levon  <moz@compsoc.man.ac.uk>
4278
4279	* dae/opd_kernel.c:
4280	* dae/opd_proc.c:
4281	* dae/opd_proc.h:
4282	* dae/opd_util.c:
4283	* dae/oprofiled.c: 
4284	* dae/oprofiled.h: further minor cleanups
4285
42862002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4287
4288	* module/oprofile.c: change last change to have an
4289	  explicit check in the sysctl dump, rather than generalised
4290	  code.
4291
42922002-01-04  Philippe Elie  <ph_e@club-internet.fr>
4293
4294	* module/oprofile.c: do not re-enable counter during
4295	  shutdown
4296
4297	* dae/Makefile.in: fix opd_kernel.c dependancy
4298
42992002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4300
4301	* dae/Makefile.in:
4302	* dae/opd_proc.c:
4303	* dae/opd_kernel.c: move kernel/module stuff into
4304	  new file. Some minor changes.
4305 
43062002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4307
4308	* dae/oprofiled.c: remove extra dump
4309 
43102002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4311
4312	* dae/opd_proc.c: minor crap
4313 
43142002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4315
4316	* TODO: update
4317
4318	* dae/oprofiled.c:
4319	* dae/oprofiled.h:
4320	* dae/opd_proc.c: print stats on shutdown too
4321
4322	* module/oprofile.c: additional check against daemon hanging on shutdown :(
4323 
43242002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4325
4326	* dae/op_stop:
4327	* dae/oprofiled.c:
4328	* doc/oprofile.sgml:
4329	* module/oprofile.h:
4330	* module/oprofile.c: implement new clean shutdown via
4331	  sysctl dump_stop
4332
43332002-01-04  Philippe Elie  <ph_e@club-internet.fr>
4334
4335	* module/oprofile.c: add a warning when note buff overflow.
4336
43372002-01-04  John Levon  <moz@compsoc.man.ac.uk>
4338
4339	* module/oprofile.c: pin note at the end on overflow
4340 
43412002-01-03  Philippe Elie  <ph_e@club-internet.fr>
4342
4343	* dae/opd_proc.c: Apologies: stupid bug. Never forget
4344	  than LRU list of samples files must not contain already
4345  	  unmaped files
4346
4347	* module/oprofile.c: another silly bug, detected cpu was
4348	  overwritten...
4349
43502002-01-03  John Levon  <moz@compsoc.man.ac.uk>
4351
4352	* doc/oprofile.sgml: some fixes, comments
4353
43542002-01-03  Philippe Elie  <ph_e@club-internet.fr>
4355
4356	* doc/oprofile.sgml: improve documentation, corrected
4357	  by John Levon
4358
43592002-01-03  John Levon  <moz@compsoc.man.ac.uk>
4360
4361	* gui/oprof_start.h:
4362	* gui/oprof_start.cpp:
4363	* gui/ui/oprof_start.base.ui: remove the config buttons
4364	  and save on a hide from the WM
4365 
43662002-01-03  John Levon  <moz@compsoc.man.ac.uk>
4367
4368	* module/oprofile.c: make sure note_pos never goes
4369	  past the buffer :P
4370 
43712002-01-03  John Levon  <moz@compsoc.man.ac.uk>
4372
4373	* dae/opd_util.c: allow EAGAINs through as well
4374 
43752002-01-02  Philippe Elie  <ph_e@club-internet.fr>
4376
4377	* pp/opf_container.cpp:
4378	* pp/opf_filter.cpp: minor change
4379
43802002-01-02  John Levon  <moz@compsoc.man.ac.uk>
4381
4382	* doc/oprofile.sgml: various docs improvements
4383 
43842002-01-02  John Levon  <moz@compsoc.man.ac.uk>
4385
4386	* dae/oprofiled.c: better enable the actual
4387	  profiling again :P
4388 
43892002-01-02  John Levon  <moz@compsoc.man.ac.uk>
4390
4391	* config.h.in: remove this again from CVS.
4392 
43932002-01-02  John Levon  <moz@compsoc.man.ac.uk>
4394
4395	* dae/op_stop: send SIGUSR1 to stop profiler
4396 
4397	* dae/opd_proc.c: reformat a little
4398 
4399	* dae/opd_util.h:
4400	* dae/opd_util.c: change opd_read_device semantics
4401 
4402	* dae/oprofiled.c: clean shutdown from SIGUSR1
4403 
4404	* module/oprofile.c: handle non-blocking reads
4405 
4406	* pp/opf_filter.h:
4407	* pp/opf_filter.cpp: slight cleanups
4408 
4409	* TODO: update
4410 
44112002-01-01  John Levon  <moz@compsoc.man.ac.uk>
4412
4413	* oprofile.sgml: clarify that -g is not necessary for
4414	  basic profiling (reported by Jeff Epler <jepler@inetnebr.com>)
4415
4416See ChangeLog-2001 for earlier changelogs.
4417