12001-12-31  Philippe Elie  <ph_e@club-internet.fr>
2
3	* module/op_init.c:
4	* module/oprofile.c: export cpu type preparing for user space
5	  cpu detection change
6	* module/oprofile.h: preparatory work to add support for
7	  preempt patch
8
9	* pp/oprofpp.cpp: cleanup #if 0 ... #else ... #endif
10	* pp/orofpp_util.cpp: allow to deduce image name from
11	  shared lib samples files name produced with
12	  --separate-samples
13
14	* gui/oprof_start.cpp: minor fix
15
162001-12-31  John Levon  <moz@compsoc.man.ac.uk>
17
18	* various files: use op_cpu enum for cpu type
19 
20	* all .cvsignore:
21	* Rules.make.in:
22	* all Makefile.in: hide .d files in .deps directories
23
242001-12-31  John Levon  <moz@compsoc.man.ac.uk>
25
26	* Makefile.in: move config.h.in to maintainerclean - it is included
27	in a tarball so a distclean shouldn't remove it
28 
292001-12-31  John Levon  <moz@compsoc.man.ac.uk>
30
31	* TODO: update
32 
33	* gui/ui/oprof_start.base.ui:
34	* doc/oprofile.sgml:
35	* doc/oprofile.1.in: small updates
36 
37	* oprofile.c: more detail on locking requirements for wake_up
38 
392001-12-31  Michel Dagenais  <michel.dagenais@polymtl.ca>
40
41	* gui/oprof_start.cpp:
42	* gui/oprof_start.h: show total samples so far
43 
442001-12-29  Philippe Elie  <ph_e@club-internet.fr>
45
46	* dae/oprofiled.c:
47	* dae/op_start: --separate-samples is working
48
49	* gui/oprof_start.cpp:
50	* gui/oprof_start_config.cpp:
51	* gui/oprof_start_config.h:
52	* gui/ui/oprof_start.base.ui: handle separating for
53	  shared libs, off by default.
54
55	* doc/oprofile.sgml:
56	* doc/oprofile.1.in: document --show-shared-libs
57
58	* pp/opf_filter.h:
59	* pp/opf_container.cpp: new class samples_files_t
60	  to easier access to subset of symbols/samples or
61	  source filename from multiple image
62
63	* pp/Makefile.in:
64	* pp/op_time.cpp:
65	* pp/opf_filter.cpp:
66	* pp/oprofpp.cpp:
67	* pp/oprofpp.h:
68	* pp/oprofpp_util.cpp: implement --show-shared-libs except
69	  for opf_filter
70
71	* util/file_manip.h:
72	* util/file_manip.cpp: new function to manipulate sample
73	  file name and list of sample file name.
74
752001-12-27  Philippe Elie  <ph_e@club-internet.fr>
76
77	* dae/op_stop: always do an op_dump before stopping
78	* gui/oprof_start.cpp: op_dump before op_stop
79	  no longer required
80
812001-12-26  Philippe Elie  <ph_e@club-internet.fr>
82
83	* pp/opf_filter.cpp:
84	* pp/opf_filter.h:
85	* pp/oprofpp.h:
86	* pp/opf_filter.cpp:	
87	* pp/oprofpp_util.cpp:
88	* pp/oprofpp.cpp:
89	* pp/op_time.c: remove some use of global var
90	  samplefile and imagefile
91
92	* pp/oprofpp.cpp: do_dump_gprof() free memory
93	  too soon. (was bugged from 2001-12-05)
94
95	* doc/oprofile.sgml: remove mention about oprof-thread
96
972001-12-23  Philippe Elie  <ph_e@club-internet.fr>
98
99	* util/string_manip.h:
100	* util/string_manip.cpp: separate_token() new function
101
102	* pp/opf_filter.cpp:
103	* pp/oprofpp.cpp:
104	* pp/oprofpp.h:
105	* pp/oprofpp_util.cpp:
106	* doc/oprofil.1.in:
107	* doc/oprofile.sgml: add support for --exclude-symbol
108
109	* TODO: update
110
1112001-12-22  Philippe Elie  <ph_e@club-internet.fr>
112
113	* dae/op_start: add --separate-samples
114	* dae/oprofiled.c: ditto
115	* dae/opd_proc.c:
116	* dae/opd_util.h:
117	* dae/opd_util.c:
118	* dae/oprofiled.h: implementation of above
119	* pp/op_time.cpp: 
120	* doc/oprofile.1.in:
121	* doc/oprfile.sgml: handle and document above
122	* pp/oprofpp_util.cpp: minor change related
123
124	* dae/oprofiled.c: bug fix while blocking signal
125
126	* doc/Makefile.in: avoid unecessary build of html doc
127
1282001-12-22  Dave Jones <davej@suse.de>
129
130	* config.h.in: Readd to CVS.
131
1322001-12-18  Dave Jones <davej@suse.de>
133
134	* Makefile.in: Make documentation build again.
135
1362001-12-14  Philippe Elie  <ph_e@club-internet.fr>
137
138	* dae/opd_proc.c: memory leak fix in opd_init_images()
139
1402001-12-12  Philippe Elie  <ph_e@club-internet.fr>
141
142	* module/oprofile.h: change slightly op_hash()
143
144	* util/file_manip.h:
145	* util/file_manip.cpp:
146	* util/string_manip.h:
147	* util/string_manip.cpp:
148	* util/child_reader.h:
149	* util/child_reader.cpp: cleanup John's FIXME
150
151	* dae/opd_util.h:
152	* dae/opd_util.c: move libiberty things to ...
153	* util/misc.h:
154	* util/misc.c: here
155	* util/Makefile.in: update
156	* dae/Makefile.in:
157	* pp/Makefile.in:
158
159	* doc/Makefile.in: install the html doc
160
1612001-12-10  John Levon  <moz@compsoc.man.ac.uk>
162
163	* dae/oprofiled.c: fix sigprocmask() blooper
164 
1652001-12-09  John Levon  <moz@compsoc.man.ac.uk>
166
167	* TODO: update again
168 
169	* util/child_reader.h:
170	* util/child_reader.cpp: 
171	* util/file_manip.cpp:
172	* util/string_manip.cpp: pedantic cleanup + FIXMEs
173
1742001-12-09  John Levon  <moz@compsoc.man.ac.uk>
175
176	* configure.in: add FIXME comment
177
178	* util/file_manip.h: add FIXME comment, 
179	  avoid warning with //
180 
1812001-12-09  John Levon  <moz@compsoc.man.ac.uk>
182
183	* TODO: update
184
1852001-12-09  Philippe Elie  <ph_e@club-internet.fr>
186
187	* dae/opd_proc.c: verbprintf() what cause the
188	  deletion of a sample file + minor cleanup
189	* doc/oprofile.sgml: document samples files backup
190
1912001-12-07  Philippe Elie  <ph_e@club-internet.fr>
192
193	* dae/oprofiled.h:
194	* dae/opd_proc.c: handle an accessed field of
195	  deleted of deleted procs to defer deleting
196	  the procs. This greatly reduce the Nr of lost
197	  samples due to no proc information.
198
1992001-12-06  Philippe Elie  <ph_e@club-internet.fr>
200
201	* dae/oprofiled.h:
202	* dae/opd_proc.c: separate stats for kernel
203	  and modules address space and minor cleanup
204
2052001-12-05  Philippe Elie  <ph_e@club-internet.fr>
206
207	* Rules.make.in:
208	* dae/Makefile.in:
209	* events/Makefile.in:
210	* pp/Makefile.in: 
211	* util/Makefile.in: tidy
212	* module/Makefile.in:
213	* gui/Makefile.in: use auto-deps
214
215	* util/child_reader.h: allow to compile with -ansi
216	* util/child_reader.cpp: fix memory leak fix
217	* pp/oprofpp.cpp: fix memory leak
218
219	* TODO: update
220
2212001-12-05  Philippe Elie  <ph_e@club-internet.fr>
222
223	* autogen.sh: use autoheader to create config.h
224	* configure.in: handle missing libiberty.h and
225	  missing xcalloc in libiberty.a
226	* dae/opd_util.cpp:
227	* dae/opd_proc.c: 
228	* dae/opd_util.h:
229	* dae/oprofiled.c:
230	* evets/Makefile.in
231	* pp/oprof_convert.c:
232	* pp/oprofpp.cpp:
233	* pp/oprofpp_util.cpp: replace opd_malloc() and related
234	  by xmalloc.
235	* util/op_popt.c: add call to xmalloc_set_program_name()
236	* ./cvsignore: add config.h, config.h.in
237
2382001-12-04  Dave Jones <davej@suse.de>
239
240	* events/op_events_desc.c:
241	  Add recognition for alternative PIII string.
242	  Reported by Lev Iserovich <lev@ciprico.com>
243	
2442001-12-04  Philippe Elie  <ph_e@club-internet.fr>
245
246	* dae/opd_util.c:
247	* dae/opd_util.c: move common fuctionnality to ...
248	* util/file_manip.h
249	* util/file_manip.c: here
250	* pp/oprof_convert.c: reflect above change
251	* pp/oprof_convert.c:
252	* pp/opf_filter.cpp: ditto + minor cleanup
253	* gui/Makefile.in:
254	* pp/Makefile.in: reflect above change
255
2562001-12-02  Philippe Elie  <ph_e@club-internet.fr>
257
258	* pp/oprofpp.h:
259	* pp/oprofpp.cpp:
260	* pp/oprofpp_util.cpp:
261	* pp/opf_filter.cpp: small tidies
262
2632001-12-01  Philippe Elie  <ph_e@club-internet.fr>
264
265	* Makefile.in: build util sub-dir first
266
267	* dae/opd_util.h:
268	* dae/opd_util.c: move opd_GetContext() ...
269	* util/opd_popt.h:
270	* util/opd_popt.c: in these new files
271
272	* pp/oprofpp.cpp:
273	* pp/opf_filter.cpp:
274	* pp/op_time.cpp:
275	* dae/oprofiled.c: free the poptContext + cleanup popt
276
277	* events/op_help.c:
278	* events/Makefile.in: use the popt library
279
280	* pp/oprofpp.cpp: allow to use --output-linenr-info with
281	  --list-symbols.
282	* doc/oprofile.1.in:
283	* doc/oprofile.sgml: reflect it
284
2852001-12-01  Philippe Elie  <ph_e@club-internet.fr>
286
287	* dae/opd_proc.c:
288	* dae/opd_util.c:
289	* dae/opd_util.h:
290	* dae/oprofiled.c: backup if needed old samples files
291	  in a separate directory
292
293	* pp/oprofpp.h:
294	* pp/oprofpp_util.cpp: cleanup + minor buglet fix
295
296	* util/file_manip.h:
297	* util/file_manip.cpp: create_file_list() new to create
298	  a list of all the file in a directory
299
300	* pp/op_time.cpp: new utility
301	* pp/Makefile.in: handle op_time
302
303	* doc/oprofile.sgml: 
304	* doc/oprofile.1.in: Document op_time
305
3062001-11-30  Philippe Elie  <ph_e@club-internet.fr>
307
308	* configure.in: cvs add Rules.make.in.
309
3102001-11-30  Dave Jones <davej@suse.de>
311
312	* configure.in: suppress reference to an inexistant
313	  Rules.make.in
314
3152001-11-29  Philippe Elie  <ph_e@club-internet.fr>
316
317	* pp/oprofpp_util.cpp: do not remove leading underscore to
318	  avoid C++ demangling failure
319
3202001-11-27  Philippe Elie  <ph_e@club-internet.fr>
321
322	* configure.in:
323	* pp/Makefile.in: work-around for gcc 3.0 and bfd pre-1998
324
325	* doc/oprofile.sgml: typo
326
3272001-11-26  Philippe Elie  <ph_e@club-internet.fr>
328
329	* Rules.make.in: new to add autodeps and share commons
330	  definitions
331	* all Makefile.in except module, gui: use autodeps
332
333	* doc/oprofile.1.in: typo
334
335	* util/filemanip.h: missing std::
336
3372001-11-25  Philippe Elie  <ph_e@club-internet.fr>
338
339	* oprofile-tests/understanding/persistent.cpp: new
340	* util/persistent.h: new. An attempt to provide a better
341	  configuration saving/restoring library. Not yet linked to
342	  oprof_start.
343
3442001-11-22  Philippe Elie  <ph_e@club-internet.fr>
345
346	* pp/oprofpp_util.cpp: take care than get_linenr() get
347	  line nr and filename info from bfd for the right symbol
348	  and not for the nearest symbol with debug info (#484660)
349
3502001-11-15  Philippe Elie  <ph_e@club-internet.fr>
351
352	* module/oprofile.h: work around against a gcc
353	  2.91.66 code generation bug in oprof_exit()
354
3552001-11-14  Philippe Elie  <ph_e@club-internet.fr>
356
357	* dae/op_start: do not pass bufsize, note_bufsize and
358	  kernel_only as option to the daemon but ...
359	* dae/oprofiled.c: read them from sysctl
360
361	* dae/opd_proc.c: in opd_handle_old_sample_file() do not
362	  delete sample file if mtime differ but backup it.
363
364	* doc/oprofile.sgml:
365	* pp/oprof_convert.c:
366	* pp/oprofpp_util.cpp: replace session number by
367	  backup number
368
369	* util/string_manip.cpp: fix stupid bug in rtrim()
370
3712001-11-13  Philippe Elie  <ph_e@club-internet.fr>
372
373	* gui/oprof_start.h:
374	* gui/oprof_start.cpp:
375	* dae/opd_util.h:
376	* dae/opd_util.cpp: small cleanup
377
378	* module/oprofile.c: simplify a little what the
379	  nmi handler
380
381	* doc/oprofile.sgml: clarify op_to_source options
382
383	* pp/child_reader.cpp:
384	* pp/child_reader.h: move these ...
385	* util/child_reader.cpp:
386	* util/child_reader.h: here
387	* util/file_manip.h:
388	* util/file_manip.cpp: new
389	* gui/Makefile.in:
390	* gui/oprof_start_util.h:
391	* gui/oprof_start_util.cpp:
392	* pp/Makefile.in:
393	* pp/opf_filter.cpp: use child_reader and file_manip
394
395	* pp/oprofpp_util.cpp: change ordering of opening in
396	  opp_bfd ctr to avoid cryptic error message
397
398	* TODO: update
399
4002001-11-12  Philippe Elie  <ph_e@club-internet.fr>
401
402	* events: new directory
403
404	* events/Makefile.in:
405	* events/op_events.c:
406	* events/op_events_desc.c:
407	* events/op_help.c: new, splitted from op_events.c
408
409	* pp/oprofpp_util.cpp: new, splitted from oprofpp.cpp
410
411	* pp/oprofpp.h:
412	* pp/oprofpp.c:
413	* op_user.h:
414	* all Makefile.in: update
415	* op_events.c: remove
416
4172001-11-12  Philippe Elie  <ph_e@club-internet.fr>
418
419	* op_events.c: last commit was bad
420	
421	* pp/oprofpp.c: use sstream
422
4232001-11-12  Philippe Elie  <ph_e@club-internet.fr>
424
425	* util: new directory
426	* util/string_manip.cpp:
427	* util/string_manip.h: new
428	* Makefile.in: handle util directory
429	* pp/Makefile.in:
430	* pp/opf_filter.h:
431	* pp/opf_filter.cpp:
432	* gui/Makefile.in:
433	* gui/oprof_start_util.cpp:
434	* gui/oprof_start_util.h: update to use string_manip.cpp
435
436	* op_events.c:
437	* op_user.h:
438	* pp/opf_filter.h:
439	* pp/opf_filter.cpp:
440	* pp/opf_container.cpp: remove dead code
441
4422001-11-11  Dave Jones <davej@suse.de>
443
444	* module/oprofile.[c|h]: Change MSR defines from
445	  MSR_IA32_xxx from MSR_P6_xxx, based on info on
446	  Linux kernel from Mikael Pettersson that these MSRs
447	  don't exist on Pentium 4.
448
4492001-11-11  Philippe Elie  <ph_e@club-internet.fr>
450
451	* gui/oprof_start.cpp: fix record_config()
452
453	* op_user.h: fix one comment
454
4552001-11-10  Bob Montgomery  <bob_montgomery@hp.com>
456
457	* module/oprofile.c: fix pid/pgrp filter to reset counter 
458
4592001-11-08  John Levon  <moz@compsoc.man.ac.uk>
460
461	* TODO: update
462
463	* configure.in: bump to 0.0.8cvs
464 
4652001-11-07  John Levon  <moz@compsoc.man.ac.uk>
466
467	* acinclude.m4:
468	* configure.in: fixes for configuration when Qt2 not found
469
470	* child_reader.h:
471	* child_reader.cpp: compile with gcc 3.0
472 
4732001-11-07  John Levon  <moz@compsoc.man.ac.uk>
474
475	* configure.in: bump to 0.0.7
476 
4772001-11-07  John Levon  <moz@compsoc.man.ac.uk>
478
479	* configure.in:
480	* module/oprofile.h:
481	* module/oprofile.c: fail if hard_get_current() exists
482	  - this won't work
483 
4842001-11-06  Philippe Elie  <ph_e@club-internet.fr>
485
486	* doc/oprofile.1.in: reformat options
487	* doc/oprofile.sgml: clarify options that require argument.
488	  Document short option
489
490	* gui/oprof_start_util.cpp: fix basename()
491
492	* pp/oprofpp.cpp:
493	* pp/oprofpp.h:
494	* pp/opf_filter.cpp: better options handling
495
496	* module/oprofile.c: update one comment
497
498	* TODO: update
499
5002001-11-06  John Levon  <moz@compsoc.man.ac.uk>
501
502	* configure.in:
503	* module/oprofile.h:
504	* module/oprofile.c: support for hard_get_current()
505 
5062001-11-06  John Levon  <moz@compsoc.man.ac.uk>
507
508	* module/oprofile.h:
509	* module/oprofile.c: make allow_unload exist for UP
510	  too (default to 1)
511 
5122001-11-05  John Levon  <moz@compsoc.man.ac.uk>
513
514	* TODO: update
515
516	* module/oprofile.c: fix nr_interrupts sysctl
517
5182001-11-04  Philippe Elie  <ph_e@club-internet.fr>
519
520	* dae/op_start:
521	* gui/oprof_start.cpp:
522	* gui/oprof_start_config.cpp:
523	* gui/oprof_start_config.h:
524	* gui/ui/oprof_start.base.ui: handle note table size sysctl
525
526	* module/op_syscalls.c: handle dname hash coding collision with
527	  a linear search.
528
529	* module/oprofile.c:
530	* module/oprofile.h:
531	* module/op_syscalls.c: Use a struct to hold the whole
532	  sysctl settable things rather global var.
533
5342001-11-03  Philippe Elie  <ph_e@club-internet.fr>
535
536	* modules/oprofile.h: add a sysctl struct to hold
537	  all sysctl set-able variable
538	
539	* modules/oprofile.c: two bugs fixes.
540
5412001-11-02  Philippe Elie  <ph_e@club-internet.fr>
542
543	* modules/oprofile.h: minor cleanup
544	* modules/oprofile.c: better handling of irq statistics
545
5462001-10-31  John Levon  <moz@compsoc.man.ac.uk>
547
548	* module/oprofile.c: add comment about unfixable
549	  races.
550 
5512001-10-30  John Levon  <moz@compsoc.man.ac.uk>
552
553	* Move module code into module/ subdir. Bye
554	  bye CVS history :/
555 
5562001-10-30  John Levon  <moz@compsoc.man.ac.uk>
557
558	* op_x86.c: complain properly about lAPIC-less
559	  machines
560 
5612001-10-26  John Levon  <moz@compsoc.man.ac.uk>
562
563	* TODO: update
564 
5652001-10-26  H. J. Lu <hjl@users.sf.net>
566
567	* Makefile.in: use $(LD) not ld
568 
5692001-10-25  Philippe Elie  <ph_e@club-internet.fr>
570
571	* configure.in: fix version.h checking for gcc 2.91.66
572
5732001-10-25  John Levon  <moz@compsoc.man.ac.uk>
574
575	* Makefile.in:
576	* doc/Makefile.in:
577	* dae/Makefile.in:
578	* pp/Makefile.in:
579	* gui/Makefile.in: add $DESTDIR to prefix (part from
580	  H.J. Lu)
581
5822001-10-25  H. J. Lu  <hjl@users.sf.net>
583
584	* configure.in: better version.h workaround
585
586	* doc/*.1:
587	* doc/Makefile.in: better .so manpage install
588
5892001-10-25  Philippe Elie  <ph_e@club-internet.fr>
590
591	* doc/oprofile.sgml: minor change.
592	* pp/opf_filter.cpp: repair short option -a and -s
593
5942001-10-24  Philippe Elie  <ph_e@club-internet.fr>
595
596	* pp/op_to_source: remove from cvs
597	* pp/Makefile.in: opf_filter application renamed to op_to_source
598	* pp/child_reader.h: new
599	* pp/child_reader.cpp: new, allow to fork a child and read
600	  its stdout/stderr
601	* pp/opf_filter.h:
602	* pp/opf_filter.cpp: use child_reader to launch objdump.
603	  op_to_source -a and -s must be specified with long
604	  form --assembly and --source-with-assembly. This also
605	  speed-up assembly output. Doc not updated.
606
6072001-10-18  John Levon  <moz@compsoc.man.ac.uk>
608
609	* configure.in: workaround #2, hopefully fixing
610	  Mandrake (bug #471448)
611 
6122001-10-17  John Levon  <moz@compsoc.man.ac.uk>
613
614	* oprofile.c: don't mask when restoring MSR values
615 
616	* doc/Makefile.in: don't use man symlinks
617 
6182001-10-17  John Levon  <moz@compsoc.man.ac.uk>
619
620	* oprofile.c: save original counter setup
621	  and restore on unload (bug #464094)
622
6232001-10-16  John Levon  <moz@compsoc.man.ac.uk>
624
625	* configure.in:
626	* oprofile.h: workaround for Mandrake randomly
627	  back-porting things.
628 
6292001-10-16  John Levon  <moz@compsoc.man.ac.uk>
630
631	* dae/opd_proc.c:
632	* gui/oprof_start.cpp:
633	* gui/oprof_start_config.cpp:
634	* gui/oprof_start_config.h:
635	* gui/oprof_start_util.cpp:
636	* pp/opf_container.cpp:
637	* pp/opf_filter.h:
638	* pp/opf_filter.cpp:
639	* pp/oprof_convert.cpp: add note device to gui,
640	  general cleanup
641	 
6422001-10-16  John Levon  <moz@compsoc.man.ac.uk>
643
644	* oprofile.h: fix likely() macro
645 
6462001-10-14  John Levon  <moz@compsoc.man.ac.uk>
647
648	* TODO: update
649 
650	* op_syscalls.c:
651	* op_user.h:
652	* oprofile.h:
653	* oprofile.c:
654	* dae/op_start:
655	* dae/opd_proc.c:
656	* dae/oprofiled.h:
657	* dae/oprofiled.c: use a separate map buffer.
658 
6592001-10-14  John Levon  <moz@compsoc.man.ac.uk>
660
661	* acinclude.m4: don't give up if we can't find moc
662 
6632001-10-14  John Levon  <moz@compsoc.man.ac.uk>
664
665	* oprofile.c: merge no-thread code
666 
6672001-10-14  John Levon  <moz@compsoc.man.ac.uk>
668
669	* dae/opd_proc.c:
670	* dae/oprofiled.c:
671	* op_user.h:
672	* oprofile.h:
673	* op_syscalls.c: use string pool. Prime hash table
674	  with common entries. Consider parent in name_hash.
675 
6762001-10-13  Philippe Elie  <ph_e@club-internet.fr>
677
678	* doc/oprofile.sgml: minor change
679	* pp/opf_filter.cpp: better warning
680
6812001-10-13  John Levon  <moz@compsoc.man.ac.uk>
682
683	* configure.in: 0.0.6 has been released -> 0.0.7cvs
684 
6852001-10-12  John Levon  <moz@compsoc.man.ac.uk>
686
687	* TODO: update
688
689	* doc/oprofile.sgml: new docs for annotation filter
690 
6912001-10-12  John Levon  <moz@compsoc.man.ac.uk>
692
693	* pp/opf_filter.cpp: make output filters more like diff (needs doc),
694	  briefer info message
695 
6962001-10-12  John Levon  <moz@compsoc.man.ac.uk>
697
698	* doc/Makefile.in: add FIXME
699
700	* gui/oprof_start.cpp: fix std::
701
702	* acinclude.m4: more fixes
703 
7042001-10-12  Philippe Elie  <ph_e@club-internet.fr>
705
706	* gui/oprof_start_util.cpp: use select() rather non-blocking
707	  mode to read output from the child process
708
7092001-10-11  Philippe Elie  <ph_e@club-internet.fr>
710
711	* doc/oprofile.sgml:
712	* doc/oprofile.1.in:
713	* pp/opf_filter: make --output and --no-output more intuitive
714
7152001-10-09  Philippe Elie  <ph_e@club-internet.fr>
716
717	* doc/oprofile.sgml:
718	* doc/oprofile.1.in: clarify doc
719	* pp/opf_filter.cpp: corner case fix in --output-dir and
720	  --source-dir handling.
721
7222001-10-08  John Levon  <moz@compsoc.man.ac.uk>
723
724	* acinclude.m4:
725	* configure.in:
726	* gui/Makefile.in: fix idiot config bug of mine
727 
7282001-10-06  Philippe Elie  <ph_e@club-internet.fr>
729
730	* pp/opf_filter.cpp:
731	* pp/op_to_source: small cleanup
732
7332001-10-05  Philippe Elie  <ph_e@club-internet.fr>
734
735	* doc/oprofile.1.in:
736	* doc/oprofile.sgml:
737	* pp/op_to_source:
738	* pp/opf_filter.cpp: implement --output and --no-output to
739 	  allow output file generation filtering
740
7412001-10-04  John Levon  <moz@compsoc.man.ac.uk>
742
743	* TODO: update
744 
7452001-10-03  Philippe Elie  <ph_e@club-internet.fr>
746
747	* doc/oprofile.1.in:
748	* doc/oprofile.sgml:
749	* pp/op_to_source:
750	* pp/opf_filter.cpp: implement --source-dir and --output-dir
751	  to generated separated annoted source file.
752
7532001-10-03  Philippe Elie  <ph_e@club-internet.fr>
754
755	* pp/oprofpp.cpp
756	* pp/oprofpp.h
757	* pp/opf_filter.cpp: minor cleanup
758
7592001-10-03  John Levon  <moz@compsoc.man.ac.uk>
760
761	* TODO: update
762
763	* Makefile.in: remove generated files on make distclean
764
765	* acinclude.m4: update from source
766 
7672001-10-02  Philippe Elie  <ph_e@club-internet.fr>
768
769	* pp/oprofpp.cpp: fix a silly bug in do_list_symbols (oprofpp -l)
770
7712001-10-02  John Levon  <moz@compsoc.man.ac.uk>
772
773	* doc/oprofile.sgml: fix
774
775	* Makefile.in: dist fix
776 
7772001-10-02  John Levon  <moz@compsoc.man.ac.uk>
778
779	* TODO: update
780
781	* configure.in: -> 0.0.5 for release
782 
7832001-10-01  Philippe Elie  <ph_e@club-internet.fr>
784
785	* pp/opf_container.cpp:
786	* pp/opf_filter.h: comment
787	* pp/opf_filter.cpp: speed-up
788
7892001-09-30  Philippe Elie  <ph_e@club-internet.fr>
790
791	* pp/opf_container.cpp:
792	* pp/opf_filter.cpp:
793	* pp/oprofpp.cpp:
794	* pp/oprofpp.h: cleanup
795
7962001-09-30  Philippe Elie  <ph_e@club-internet.fr>
797
798	* gui/oprof_start.cpp:
799	* gui/oprof_start.h:
800	* gui/ui/oprof_start.base.ui: cleanup
801
8022001-09-29  Philippe Elie  <ph_e@club-internet.fr>
803
804	* pp/opf_filter.cpp: check if we need debug info to work.
805
806	* gui/oprof_start.cpp: use one config file by counter. Store
807	  selected counter in oprof_start_config
808
809	* gui/oprof_start.cpp:
810	* gui/persistent_config.h: remove dirty flag in 
811	  persistent_config_t template class
812
8132001-09-29  John Levon  <moz@compsoc.man.ac.uk>
814
815	* TODO: update
816 
817	* gui/oprof_start.cpp:
818	* gui/ui/oprof_start_base.ui:
819	* gui/oprof_start_config.h:
820	* gui/oprof_start_config.cpp: add verbose option
821 
822	* pp/opf_container.cpp:
823	* pp/opf_filter.cpp: some FIXMEs and little cleanups
824 
8252001-09-29  Philippe Elie  <ph_e@club-internet.fr>
826
827	* pp/oprofpp.cpp: bug fix when calling the bfd lib.
828
8292001-09-29  Philippe Elie  <ph_e@club-internet.fr>
830
831	* gui/oprof_start.cpp: two minor fixes.
832
8332001-09-28  John Levon  <moz@compsoc.man.ac.uk>
834
835	* various files: the footer is now a header !
836
837	* dae/opd_start.c: fix msync !!
838
839	* gui/oprof_start.cpp:
840	* gui/oprof_start_util.h:
841	* gui/oprof_start_util.cpp: better default event count
842	  value. Save CPU type to oprofile file.
843
8442001-09-28  Philippe Elie  <ph_e@club-internet.fr>
845
846	* pp/opf_filter.c: fix op_to_source [-a] [-s]
847
8482001-09-28  Philippe Elie  <ph_e@club-internet.fr>
849
850	* doc/oprofile.sgml: oops, correct bad merging with
851 	  John's last update.
852
8532001-09-27  Philippe Elie  <ph_e@club-internet.fr>
854
855	* doc/oprofile.1.in: minor change
856	* op_events.c: remove --gui-description stuff
857	* pp/opf_filter.cpp: remove use of temporary array to
858	  pass argument to the popt library
859
8602001-09-27  John Levon  <moz@compsoc.man.ac.uk>
861
862	* doc/oprofile.sgml: updates
863
864	* gui/oprof_start_util.cpp: fix compile, revert
865	  g++ extension (different on g++ 3.0) 
866
8672001-09-27  John Levon  <moz@compsoc.man.ac.uk>
868
869	* gui/oprof_start_util.cpp: use g++ extension to
870	  avoid using temporary files
871 
8722001-09-27  John Levon  <moz@compsoc.man.ac.uk>
873
874	* gui/oprof_start_util.cpp: fix crasher bug
875 
8762001-09-27  John Levon  <moz@compsoc.man.ac.uk>
877
878	* gui/oprof_start.h:
879	* gui/oprof_start.cpp: get per-counter config working
880 
8812001-09-27  John Levon  <moz@compsoc.man.ac.uk>
882
883	* pp/Makefile.in:
884	* pp/oprofpp.c:
885	* pp/oprofpp.cpp: rename file
886 
8872001-09-27  John Levon  <moz@compsoc.man.ac.uk>
888
889	* pp/opf_container.cpp:
890	* pp/oprofpp.h:
891	* pp/oprofpp.c: speed improvements
892 
8932001-09-26  Philippe Elie  <ph_e@club-internet.fr>
894
895	* configure.in: typo
896
897	* pp/oprofpp.c: fix oprofpp -s.
898	  Use std::string (work not yet finish)
899	* pp/oprofpp.h:	ditto
900	* pp/opf_filter.cpp: ditto
901
9022001-09-26  John Levon  <moz@compsoc.man.ac.uk>
903
904	* oprofile.c: add nr_interrupts
905 
906	* gui/oprof_start.h:
907	* gui/oprof_start.cpp:
908	* gui/oprof_start_util.h:
909	* gui/oprof_start_util.cpp:
910	* gui/oprof_start_config.h:
911	* gui/oprof_start_config.cpp:
912	* gui/ui/oprof_start_base.ui: add daemon status
913	  display, fix basename()
914	 
9152001-09-26  John Levon  <moz@compsoc.man.ac.uk>
916
917	* configure.in: remove broken bit
918
919	* pp/Makefile.in: fix options
920 
921	* doc/oprofile.sgml: minor changes
922 
9232001-09-26  Philippe Elie  <ph_e@club-internet.fr>
924
925	* pp/Makefile.in: increase level of warning
926	* pp/oprof_convert.c: minor fix to avoid warning
927	* dae/opd_util.c: ditto
928	* pp/oprofpp.c: get_linenr() never return null in
929	  filename  (fix bug #464482). symcomp() ensure
930	  correct vma comparison (fix #464093)
931	* dae/opd_util.c: minor fixe in op_poptGetContext()
932	* gui/oprof_start.cpp: minor cleanup
933
9342001-09-25  John Levon  <moz@compsoc.man.ac.uk>
935
936	* dae/op_stop:
937	* gui/oprof_start_config.cpp: use pidof instead
938
9392001-09-25  John Levon  <moz@compsoc.man.ac.uk>
940
941	* gui/oprof_start_config.cpp: fix is_profiler_started() too 
942 
9432001-09-25  John Levon  <moz@compsoc.man.ac.uk>
944
945	* dae/op_stop: fix terribly stupid error
946 
9472001-09-25  John Levon  <moz@compsoc.man.ac.uk>
948
949	* op_event.c: whooops
950 
9512001-09-25  John Levon  <moz@compsoc.man.ac.uk>
952
953	* gui/oprof_start.cpp: std:: fix
954 
955	* dae/op_start:
956	* op_events.c: robustness fix
957
9582001-09-25  John Levon  <moz@compsoc.man.ac.uk>
959
960	* gui/oprof_start.cpp: fix silly bug
961 
9622001-09-24  John Levon  <moz@compsoc.man.ac.uk>
963
964	* pp/opf_filter.cpp: "fix" compile error
965 
9662001-09-24  John Levon  <moz@compsoc.man.ac.uk>
967
968	* gui/oprofile:
969	* gui/Makefile.in: remove old gui
970 
9712001-09-24  John Levon  <moz@compsoc.man.ac.uk>
972
973	* dae/op_start: make a little more robust
974 
9752001-09-24  John Levon  <moz@compsoc.man.ac.uk>
976
977	* include/sstream:
978	* Makefile.in:
979	* configure.in:
980	* pp/Makefile.in:
981	* gui/Makefile.in: configure/make fixes
982
983	* op_events.c: re-order for Athlon 
984	 
9852001-09-23  John Levon  <moz@compsoc.man.ac.uk>
986
987	* pp/oprofpp.c: small cleanup
988 
9892001-09-23  John Levon  <moz@compsoc.man.ac.uk>
990
991	* oprofile.h:
992	* op_x86.c: support for 2.4.10
993 
9942001-09-23  John Levon  <moz@compsoc.man.ac.uk>
995
996	* gui/oprof_start.h:
997	* gui/oprof_start.cpp: rework validator stuff a bit
998 
9992001-09-23  John Levon  <moz@compsoc.man.ac.uk>
1000
1001	* gui/oprof_start.cpp: use std::find_if
1002 
1003	* gui/oprof_start_config.cpp:
1004	* gui/oprof_start_util.cpp: minor tidies
1005 
10062001-09-23  John Levon  <moz@compsoc.man.ac.uk>
1007
1008	* dae/op_dump:
1009	* dae/op_start: echo errors to stderr
1010 
1011	* gui/oprof_start_util.h:
1012	* gui/oprof_start_util.cpp:
1013	* gui/oprof_start.cpp: use fork/exec to spawn children
1014
10152001-09-23  John Levon  <moz@compsoc.man.ac.uk>
1016
1017	* TODO: update
1018
1019	* gui/Makefile.in:
1020	* gui/oprof_start_config.h: 
1021	* gui/oprof_start_config.cpp: 
1022	* gui/oprof_start_util.h: 
1023	* gui/oprof_start_util.cpp: 
1024	* gui/oprof_start.h: 
1025	* gui/oprof_start.cpp: new file for util functions
1026 
10272001-09-23  John Levon  <moz@compsoc.man.ac.uk>
1028
1029	* dae/opd_util.c:
1030	* dae/opd_util.h:
1031	* dae/oprofiled.c: 
1032	* pp/oprofpp.c: 
1033	* pp/opf_filter.cpp: 
1034	* configure.in: enable __builtin_expect, fix popt problem
1035
1036	* pp/oprof_convert.c: small fixes
1037 
1038	* op_events.c: shorten event descriptions for GUI 
1039
1040	* gui/*: many more updates
1041 
1042	* pp/Makefile.in: fix
1043 
10442001-09-21  John Levon  <moz@compsoc.man.ac.uk>
1045
1046	* dae/opd_proc.c: removed over-verbose line
1047
1048	* configure.in:
1049	* oprofile.h:
1050	* oprofile.c: add likely/unlikely, take note lock on dump
1051 
10522001-09-21  Philippe Elie  <ph_e@club-internet.fr>
1053
1054	* pp/opf_filter.h: move declaration of counter_array_t to
1055	* pp/oprofpp.h: here
1056	* pp/oprofpp.c: define and use counter_array_t + minor cleanup
1057	* pp/opf_filter.cpp: remove definition of counter_array_t
1058
10592001-09-21  Philippe Elie  <ph_e@club-internet.fr>
1060
1061	* Makefile.in: remove aclocal.m4 in distclean
1062	* pp/Makefile.in: use $(CXX) and $(CXXFLAGS)
1063
1064	* pp/opf_container.cpp:
1065	* pp/opf_filter.cpp:
1066	* pp/opf_filter.h:
1067	* pp/oprofpp.c:
1068	* pp/oprofpp.h: cleanup
1069
10702001-09-20  Philippe Elie  <ph_e@club-internet.fr>
1071
1072	* Makefile.in: minor change in module building
1073	* pp/Makefile.in: link oprofpp with opf_filter
1074	* pp/op_to_source: avoid pipe from oprofpp to opf_filter
1075	* pp/opf_filter.h: remove a few member function
1076	* pp/opf_container.cpp: ditto + minor cleanup
1077	* pp/opf_filter.cpp: oprofpp is no longer piped to opf_filter
1078	  but linked with it. Many change, needs additional cleanup
1079	* pp/oprofpp.c: group all stuff in two class. Rather a
1080	  a C with class than a full C++ file for now. Fix a bug
1081	  in filename handling.
1082	* pp/oprofpp.h: add opp_bfd and opp_samples_files class.
1083	
1084	* dae/opd_util.c: add a few explicit cast for C++ compile
1085	* dae/opd_util.h: wrap function declaratio with extern "C"
1086
10872001-09-19  John Levon  <moz@compsoc.man.ac.uk>
1088
1089	* oprofile.c: fix silly read valid bug
1090 
10912001-09-19  John Levon  <moz@compsoc.man.ac.uk>
1092
1093	* Makefile.in: whoops, missed op_util.o from build
1094 
10952001-09-19  John Levon  <moz@compsoc.man.ac.uk>
1096
1097	* dae/oprofiled.c: fix little bug, tidy a bit
1098
1099	* TODO: update
1100 
11012001-09-18  John Levon  <moz@compsoc.man.ac.uk>
1102
1103	* Makefile.in:
1104	* op_syscalls.c:
1105	* op_util.c:
1106	* oprofile.h: move some code around
1107
1108	* oprofile.c: fix a tiny bug
1109
11102001-09-18  John Levon  <moz@compsoc.man.ac.uk>
1111
1112	* dae/opd_proc.c:
1113	* dae/oprofiled.h: implement hashing of images
1114
1115	* doc/oprofile.sgml: fix -- issue and use <screen>
1116 
11172001-09-18  John Levon  <moz@compsoc.man.ac.uk>
1118
1119	* .cvsignore:
1120	* README: update
1121 
1122	* configure.in: small cleanup
1123 
1124	* op_init.c: add comment
1125
1126	* oprofile.h: 
1127	* op_syscalls.c:
1128	* op_x86.c: move fixmap stuff, remove disable APIC
1129
1130	* oprofile.c: init failure fix 
1131 
1132	* doc/oprofile.sgml:
1133	* dae/opd_proc.c: fix handle_old_sample_files() bug,
1134	  check mtime hasn't changed on a new map
1135 
11362001-09-16  John Levon  <moz@compsoc.man.ac.uk>
1137
1138	* acinclude.m4:
1139	* autogen.sh:
1140	* configure.in:
1141	* gui/Makefile.in:
1142	* gui/ui/Makefile.in:
1143	* gui/ui/oprof_start.base.ui:
1144	* gui/oprof_start.h: autoconfiscation for Qt2
1145
1146	* gui/oprof_start_config.cpp: add comments
1147 
11482001-09-16  Philippe Elie  <ph_e@club-internet.fr>
1149
1150	* pp/opf_filter.cpp: fix unrecognized input
1151	* pp/opf_container.cpp: better error messages. put
1152	  op_nr_counters in the global namespace (gcc 2.91
1153	  work around)
1154
11552001-09-16  John Levon  <moz@compsoc.man.ac.uk>
1156
1157	* pp/oprofpp.cpp: small tidy
1158 
11592001-09-16  Philippe Elie  <ph_e@club-internet.fr>
1160
1161	* pp/opf_filter.cpp: minor tidy
1162
1163	* gui/oprof_start.base.ui: new oprof_start gui
1164	* gui/oprof_start.cpp: new, derived class of oprof_start_base
1165	* gui/oprof_start.h: ditto
1166	* gui/oprof_start_impl.cpp: implementation of oprof_start class
1167	* gui/oprof_start_config.cpp: utilities function for oprof_start
1168	* gui/oprof_start_config.h: ditto
1169	* gui/persistent_config.h: utility template
1170	* gui/oprof_start_main.cpp: main() for oprof_start
1171	* gui/Makefile.in: handle this stuff
1172
11732001-09-15  John Levon  <moz@compsoc.man.ac.uk>
1174
1175	* pp/oprofpp.c: some cleanup
1176
11772001-09-15  John Levon  <moz@compsoc.man.ac.uk>
1178
1179	* pp/oprofpp.c: allow non-matching mtimes in order
1180	  to allow pp on different machines. Make conflicting
1181	  counter specifications a fatal error
1182
11832001-09-15  John Levon  <moz@compsoc.man.ac.uk>
1184
1185	* all Makefile.in: install should depend on all
1186
1187	* pp/oprofpp.c: fixes for Athlon 4 counters. Enable debug info
1188	  for list-symbol. Some stricter checking
1189
11902001-09-15  Philippe Elie  <ph_e@club-internet.fr>
1191
1192	* op_events.c: some static variable to global
1193	* op_user.h: export these
1194
1195	* oprofile.c: typo in comment
1196
1197	* dae/opd_proc.c: fix size of samples files
1198
11992001-09-13  Dave Jones  <davej@suse.de>
1200
1201	* doc/oprofile.1.in:
1202	  Update so it doesn't say 'Intel only'
1203	* dae/op_start:
1204	  Fix output so that it prints [0-3] instead of [0-4[
1205
12062001-09-12  Philippe Elie  <ph_e@club-internet.fr>
1207
1208	* pp/oprofpp.c: fix cpu type output for opf_filter
1209
1210	* dae/op_stop: return error code properly
1211
12122001-09-12  John Levon  <moz@compsoc.man.ac.uk>
1213
1214	* pp/oprofpp.c: print name of cpu type
1215 
1216	* dae/op_stop:
1217	* dae/op_start: re-organise, tidy
1218 
12192001-09-12  John Levon  <moz@compsoc.man.ac.uk>
1220
1221	* oprofile.c: fix small but triggerable
1222	  SMP dump race
1223 
12242001-09-12  John Levon  <moz@compsoc.man.ac.uk>
1225
1226	* oprofile.h:
1227	* oprofile.c:
1228	* op_x86.c: move some code about
1229 
1230	* op_syscalls.c: add comment
1231 
12322001-09-12  John Levon  <moz@compsoc.man.ac.uk>
1233
1234	* configure.in: remove warning
1235 
1236	* op_user.h: 
1237	* op_events.c: fix and clean up cpu type detection
1238 
1239	* op_init.c: fix email
1240 
1241	* oprofile.c: add IRQ stats. Not sure whether to keep...
1242 
12432001-09-12  John Levon  <moz@compsoc.man.ac.uk>
1244
1245	* oprofile.h:
1246	* oprofile.c: use cpu_number_map (pedantry thing)
1247 
12482001-09-07  Philippe Elie  <ph_e@club-internet.fr>
1249
1250	* oprofile.c: remove /proc/.../cpu_type. Check if user
1251	  mode cpu type detection is identical to module cpu type
1252	* op_events.h:
1253	* op_events.c: add op_get_cpu_type(). script can get cpu_type
1254	  by op_help --get-cpu-type
1255	* gui/oprofile: use it	
1256	* dae/oprofiled.c: ditto
1257	* dae/op_start: ditto, pass expected_cpu_type to module
1258	* doc/oprofile.sgml: update
1259	* doc/oprofile.1.in: update
1260	* pp/oprofpp.c: get cpu_type from samples file
1261	* pp/opf_filter.cpp: get cpu type from stdin
1262
12632001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1264
1265	* dae/opd_proc.c: use j not i in msync !
1266 
12672001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1268
1269	* dae/op_start: more sanity checking of options
1270 
12712001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1272
1273	* doc/oprofile.sgml: update a bit
1274 
12752001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1276
1277	* <most files>: make op_nr_counters a var (no pp support for > 2 yet)
1278	 
1279	* dae/oprofiled.c: don't print help when counter event etc. are wrong
1280 
12812001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1282
1283	* oprofile.h:
1284	* oprofile.c: use MODULE_LICENSE
1285 
12862001-09-06  John Levon  <moz@compsoc.man.ac.uk>
1287
1288	* op_user.h: add missing prototype
1289
1290	* dae/op_start: fix counter extraction
1291 
12922001-09-05  Philippe Elie  <ph_e@club-internet.fr>
1293
1294	* pp/oprofpp.c: fix a few corner case, cleanup.
1295	* dae/opd_proc: ditto.	
1296
1297	* dae/op_start: better handling of counter number
1298
1299	* dae/opd_proc: minor change.
1300
1301	* op_user.h: enable support for four counters
1302	* oprofile.c: ditto. Split functions
1303
1304	* op_events.c: expose op_get_cpu_type_str(int) to world.
1305
13062001-09-04  John Levon  <moz@compsoc.man.ac.uk>
1307
1308	* oprofile.h:
1309	* oprofile.c: don't restore delivery mode to LVTPC (causes
1310	APIC error on SMP). Fix for silly sem hang with do_dump
1311 
13122001-09-04  John Levon  <moz@compsoc.man.ac.uk>
1313
1314	* dae/op_start: fix typo bug
1315 
13162001-09-04  John Levon  <moz@compsoc.man.ac.uk>
1317
1318	* doc/oprofile.sgml: some small tidies
1319 
13202001-09-04  John Levon  <moz@compsoc.man.ac.uk>
1321
1322	* oprofile.c: change lvtpc_apic_restore to be more careful !
1323 
13242001-09-02  John Levon  <moz@compsoc.man.ac.uk>
1325
1326	* oprofile.c: don't allow unload on SMP unless allow_unload
1327	  is set. Still needs docs (no point till SMP works).
1328 
13292001-09-02  John Levon  <moz@compsoc.man.ac.uk>
1330
1331	* dae/op_dump: complain if not root more clearly.
1332 
13332001-09-02  John Levon  <moz@compsoc.man.ac.uk>
1334
1335	* oprofile.c: remove bogus setting for NMI oopser.
1336	  smp_apic_restore() -> lvtpc_apic_restore()
1337
13382001-09-01  Philippe Elie  <ph_e@club-internet.fr>
1339
1340	* oprofile.c: fix pmc_setup()
1341
1342	* pp/Makefile.in:
1343	* dae/Makefile.in: fix uninstall problem
1344
13452001-08-31  Philippe Elie  <ph_e@club-internet.fr>
1346
1347	* oprofile.h:
1348	* dae/oprofiled.h:
1349	* op_user.h:
1350	* oprofpp.h:
1351	* dae/opd_util.h: share commmon declarations, put it in
1352	  op_user.h, include op_user.h in other .h when necessary.
1353	* op_events.c:
1354	* all Makefile.in: update dependancies.
1355 
13562001-08-30  Philippe Elie  <ph_e@club-internet.fr>
1357
1358	* oprofile.c: use loop instead of fixed counter number
1359 
13602001-08-26  Philippe Elie  <ph_e@club-internet.fr>
1361
1362	* op_events.c: add option to op_help for the gui
1363	* gui/oprofile: use op_help to build description
1364	  of events, accept Athlon (only 2 counters)
1365 
13662001-08-25  Philippe Elie  <ph_e@club-internet.fr>
1367
1368	* pp/oprofpp.c:
1369	* dae/op_start: use loop instead of fixed number of counter.
1370 
13712001-08-24  Philippe Elie  <ph_e@club-internet.fr>
1372
1373	* pp/oprof_convert.c: add v4 --> v5 conversion
1374 
13752001-08-23  Philippe Elie  <ph_e@club-internet.fr>
1376
1377	* oprofile.c: correct some comment.
1378 
13792001-08-22  Philippe Elie  <ph_e@club-internet.fr>
1380
1381	* op_user.h:
1382	* dae/opd_proc.c:
1383	* dae/opd_util.c:
1384	* dae/opd_util.h:
1385	* dae/oprofiled.h:
1386	* dae/oprofiled.c:
1387	* dae/oprofiled.c: row to column file format, lot of changes.
1388 
13892001-08-21  Philippe Elie  <ph_e@club-internet.fr>
1390
1391	* op_events.c: Add Athlon string/unit maks description
1392 
13932001-08-20  Philippe Elie  <ph_e@club-internet.fr>
1394
1395	* op_events.c: change in handling of search/check events
1396	* dae/oprofiled.c:
1397	* dae/oprofiled.h:
1398	* oprofile.c:
1399	* oprofile.h:
1400	* pp/oprofpp.c:
1401	* pp/oprofpp.h:	reflects caller/prototype, lot of changes.
1402
14032001-08-31  John Levon  <moz@compsoc.man.ac.uk>
1404  
1405	* Makefile.in:
1406	* op_x86.c:
1407	* oprofile.h:
1408	* oprofile.c: a prototype detector for SMP hardware,
1409	  some small cleanup
1410 
14112001-08-20  Dave Jones  <davej@suse.de>
1412
1413	* doc/oprofile.sgml:
1414	  Updated to reflect new Athlon/Duron capabilities.
1415	* pp/oprof_convert.c:
1416	* pp/oprofpp.c: use EXIT_FAILURE | EXIT_SUCCESS
1417	  in exit() calls.
1418	* oprofile.c: Make non-exported functions static
1419	  and remove duplicate definitions.
1420
14212001-08-19  John Levon  <moz@compsoc.man.ac.uk>
1422
1423	* dae/op_start: handle celeries in cpu type
1424
14252001-08-19  John Levon  <moz@compsoc.man.ac.uk>
1426
1427	* op_init.c:
1428	* oprofile.h:
1429	* oprofile.c: small tidies of the Athlon support
1430
14312001-08-19  Dave Jones  <davej@suse.de>
1432
1433	* op_events.c:
1434	* op_init.c: 
1435	* oprofile.h:
1436	* oprofile.c:
1437	* dae/op_start:
1438	* dae/oprofiled.h:
1439	* dae/oprofiled.c: initial Athlon support
1440
14412001-08-19  Philippe Elie  <ph_e@club-internet.fr>
1442
1443	* oprofile.c: use symbolic constant for all apic setup, no generated
1444	  code change
1445
14462001-08-18  Philippe Elie  <ph_e@club-internet.fr>
1447 
1448	* Makefile.in:
1449	* dae/Makefile.in:
1450	* pp/Makefile.in:
1451	* doc/Makefile.in:
1452	* gui/Makefile.in: add uninstall target
1453 
14542001-08-18  John Levon  <moz@compsoc.man.ac.uk>
1455
1456	* dae/opd_proc.c: tiny cleanup
1457 
14582001-08-17  Philippe Elie  <ph_e@club-internet.fr>
1459
1460	* dae/opd_proc.c:
1461	* TODO: minor cleanup.
1462
14632001-08-16  Philippe Elie  <ph_e@club-internet.fr>
1464
1465	* gui/oprofile:
1466	* dae/op_start:
1467	* doc/oprofile.1.in: document and use op_dump
1468
14692001-08-16  John Levon  <moz@compsoc.man.ac.uk>
1470
1471	* configure.in: bump version to 0.0.5cvs
1472 
14732001-08-16  John Levon  <moz@compsoc.man.ac.uk>
1474
1475	* all Makefile.in: mkdir install files
1476
14772001-08-15  Philippe Elie  <ph_e@club-internet.fr>
1478
1479	* dae/opd_proc.c: fix a FILE* leak in opd_get_ascii_maps()
1480
14812001-08-14  John Levon  <moz@compsoc.man.ac.uk>
1482
1483	* op_syscalls.c: don't return negative hashes !
1484	  revert dname len "fix"
1485	  use a much better hash function
1486
1487	* dae/opd_proc.c: protect against negative hashes
1488 
14892001-08-14  John Levon  <moz@compsoc.man.ac.uk>
1490
1491	* op_syscalls.c: some small fixes
1492
1493	* oprofile.c: add back unmasking code during set_gate, but only
1494	  LVTPC
1495 
14962001-08-11  John Levon  <moz@compsoc.man.ac.uk>
1497
1498	* oprofile.h: 2.4.8 doesn't either. *sigh*. looks like we need
1499	  some autoconfery :(
1500 
15012001-08-11  John Levon  <moz@compsoc.man.ac.uk>
1502
1503	* oprofile.h: 2.4.7-linus doesn't include the Andrew Morton
1504	  complete_and_exit(). Hopefully this will make it into 2.4.8,
1505	  I'm banking on this.
1506
15072001-08-11  John Levon  <moz@compsoc.man.ac.uk>
1508
1509	* dae/op_dump:
1510	* doc/oprofile.sgml:
1511	* dae/Makefile.in: a little utility for dumping
1512
15132001-08-11  Dave Jones  <davej@suse.de>
1514
1515	* oprofile.h:
1516	* oprofile.c: back-compat code and use of new struct completion
1517	  for the thread
1518
15192001-08-11  John Levon  <moz@compsoc.man.ac.uk>
1520
1521	* oprofile.c: corner case where an a miss against a full count,
1522	  we were attributing wrong (reported by Bob Montgomery)
1523
15242001-08-11  John Levon  <moz@compsoc.man.ac.uk>
1525
1526	* oprofile.c: use a simple cli/sti when installing the NMI
1527	  handler. It should work and avoids the unmasking problem.
1528
15292001-08-10  John Levon  <moz@compsoc.man.ac.uk>
1530
1531	* dae/oprofiled.h: fix header include (from Dave Jones)
1532
1533	* op_syscalls.c:
1534	* oprofile.c: fix undefined symbol (from Dave Jones)
1535
15362001-08-10  John Levon  <moz@compsoc.man.ac.uk>
1537
1538	* oprofile.c: small tidy in apic setup
1539 
15402001-08-02  John Levon  <moz@compsoc.man.ac.uk>
1541
1542	* oprofile.c: fix mod unload race, small fixes
1543 
1544	* dae/op_start: make sysctl error actually appear
1545 
1546	* doc/oprofile.sgml: document need for modutils 2.4.6
1547
1548	* op_syscalls.c: fix stupid mod use count problem
1549 
15502001-07-28  John Levon  <moz@compsoc.man.ac.uk>
1551
1552	* dae/opd_proc.c: d'oh, fat-fingered a slow memleak in the
1553	  a-ksymoops modules fix
1554 
15552001-07-27  Philippe Elie  <ph_e@club-internet.fr>
1556
1557	* pp/oprof_convert.c: fix bug when conversion skip more than one
1558	  version.
1559
15602001-07-27  John Levon  <moz@compsoc.man.ac.uk>
1561
1562	* doc/Makefile.in: ln -s -> ln -sf
1563
1564	* dae/opd_util.c: actually include the right header
1565 
1566	* dae/opd_util.h: compile freestanding from oprofiled.h
1567
15682001-07-26  John Levon  <moz@compsoc.man.ac.uk>
1569
1570	* oprofile.c: fix comment
1571 
1572	* doc/oprofile.sgml: document symbolless modules not working
1573
1574	* dae/Makefile.in:
1575	* dae/opd_proc.c:
1576	* dae/oprofiled.h: catch modules with no symbols via query_module()
1577	  and ignore samples for them quickly
1578 
15792001-07-25  Philippe Elie  <ph_e@club-internet.fr>
1580
1581	* dae/op_start: beautify the output of op_start --help
1582	* pp/op_to_source: ditto. better argument checking.
1583
1584	* pp/oprof_convert.c:
1585	* pp/oprofpp.h:
1586	* dae/oprofiled.h: fix problem with opd_footer, don't bump 
1587	  opd_footer version number !
1588
15892001-07-25  John Levon  <moz@compsoc.man.ac.uk>
1590
1591	* pp/Makefile.in:
1592	* pp/oprof_convert.c: convert to v4
1593 
1594	* pp/oprofpp.c: use opd_strdup
1595	 
15962001-07-25  John Levon  <moz@compsoc.man.ac.uk>
1597
1598	* dae/opd_util.c: small tidy
1599 
16002001-07-24  Philippe Elie  <ph_e@club-internet.fr>
1601
1602	* dae/opd_util.c:
1603	* dae/opd_util.h: add relative path name to absolute path name stuff
1604	* pp/oprofpp.c: use it.
1605	* pp/op_to_source: simplify code to reflect above change.
1606
16072001-07-25  John Levon  <moz@compsoc.man.ac.uk>
1608
1609	* dae/opd_proc.c: fix uninitialised pointer access (reported by
1610	<bobm@fc.hp.com>) that could segfault oprofile in case of
1611	module load/unload activity
1612
1613	* Makefile.in:
1614	* dae/opd_proc.c:
1615	* dae/opd_util.c:
1616	* dae/opd_util.h:
1617	* dae/oprofiled.c:
1618	* dae/oprofiled.h:
1619	* pp/Makefile.in:
1620	* pp/oprofpp.c:
1621	* pp/oprofpp.h: use mtime() instead of md5sum(). Still doesn't handle
1622	  "./a; gcc -o a a.c; ./a"
1623 
16242001-07-22  Philippe Elie  <ph_e@club-internet.fr>
1625
1626	* doc/oprofile.1.in:
1627	* doc/oprofile.sgml:
1628	* pp/opf_filter.h:
1629	* pp/opf_filter.cpp:
1630	* pp/opf_container.cpp: implement and document filtering for assembly
1631	  output.
1632
16332001-07-21  Philippe Elie  <ph_e@club-internet.fr>
1634 
1635	* doc/oprofile.sgml:
1636	* gui/oprofile:
1637	* oprofile.c: remove edge_detect support.
1638 
1639	* pp/oprofpp.c: check counter range for each event type.
1640	* oprofile.c: ditto.
1641	* gui/oprofile: ditto and save setup for each event type.
1642	* oprofile.h: op_check_range() : display the allowed range.
1643
16442001-07-18  Philippe Elie  <ph_e@club-internet.fr>
1645 
1646	* dae/op_start: disable all counters before starting the setup.
1647
16482001-07-18  John Levon  <moz@compsoc.man.ac.uk>
1649
1650	* doc/oprofile.sgml: add in bit I forgot about not profiling ring 0 
1651 
16522001-07-18  John Levon  <moz@compsoc.man.ac.uk>
1653
1654	* doc/oprofile.sgml: added a warning about very low counter values
1655	  (from Philippe, modified)
1656 
16572001-07-15  John Levon  <moz@compsoc.man.ac.uk>
1658
1659	* oprofile.c:
1660	* oprofile.h:
1661	* dae/op_start:
1662	* dae/oprofiled.c:
1663	* doc/oprofile.sgml: remove ability to set different values on
1664	  different CPUs
1665 
16662001-07-15  John Levon  <moz@compsoc.man.ac.uk>
1667
1668	* TODO: remove done thing
1669 
16702001-07-15  John Levon  <moz@compsoc.man.ac.uk>
1671
1672	* dae/opd_proc.c: backup old sample files if the profiling
1673	  details (count, unit mask etc.) disagree. Fixes #435245
1674 
16752001-07-15  Philippe Elie  <ph_e@club-internet.fr>
1676
1677	* dae/oprofiled.c: fix oprofiled --version to work even if the
1678	  profiler is not already started.
1679
1680	* gui/oprofile: many cleanup. Fix bug track #435248. Make the gui more
1681	  independant on the number of counter.
1682
1683	* pp/op_to_source: fix bug in command line arguments handling.
1684	
1685	* pp/opf_filter.h:
1686	* pp/opf_filter.cpp:
1687	* pp/opf_container.cpp: Apply some cleanup suggested by John, principally
1688	  change few inheritance to composition.
1689
1690	* pp/oprof_convert.c: fix --version.
1691
16922001-07-14  Philippe Elie  <ph_e@club-internet.fr>
1693
1694	* doc/oprofile.sgml:
1695	* doc/oprofile.1.in: minor doc fix.
1696
16972001-07-14  John Levon  <moz@compsoc.man.ac.uk>
1698
1699	* doc/oprofile.sgml: small tidies
1700 
17012001-07-01  Philippe Elie  <ph_e@club-internet.fr>
1702
1703	* doc/oprofile.1.in:
1704	* doc/oprofile.sgml: document op_to_source, oprof_convert and the
1705	  oprofile gui
1706
1707	* gui/oprofile: onStartProfiling() check that count is in the allowed
1708	  range. onStopProfiling() flush the samples
1709 
17102001-07-14  John Levon  <moz@compsoc.man.ac.uk>
1711
1712	* Makefile.in: dist fix
1713
17142001-07-14  John Levon  <moz@compsoc.man.ac.uk>
1715
1716	* doc/oprofile.sgml: make it clear we want vmlinux not vmlinuz
1717
1718	* doc/html/: remove generated files from CVS
1719
1720	* Makefile.in: changes to create HTML files on dist 
1721 
17222001-06-30  John Levon  <moz@compsoc.man.ac.uk>
1723
1724	* pp/Makefile.in: fix the fix
1725
1726	* pp/opf_filter.h: very minor changes
1727 
17282001-06-29  John Levon  <moz@compsoc.man.ac.uk>
1729
1730	* pp/Makefile.in: fix up for opf_filter
1731
1732	* configure.in: add AC_PROG_CXX
1733
17342001-06-29  Philippe Elie  <ph_e@club-internet.fr>
1735
1736	* pp/opf_filter.cpp:
1737	* pp/opf_container.cpp:
1738	* pp/opf_filter.h:
1739	* pp/op_to_source: new file which provide a source annotation utility.
1740	* pp/Makefile.in: build and install opf_filter / op_to_source
1741
17422001-06-29  John Levon  <moz@compsoc.man.ac.uk>
1743
1744	* configure.in:
1745	* dae/opd_util.h: hide __attribute__((malloc)) warnings
1746	  when necessary. Document --with-cc bug.
1747 
17482001-06-29  Philippe Elie  <ph_e@club-internet.fr>
1749
1750	* gui/oprofile: more saving of the user setup.
1751
17522001-06-27  John Levon  <moz@compsoc.man.ac.uk>
1753
1754	* dae/opd_util.c: document get_line() restriction
1755 
17562001-06-27  Philippe Elie  <ph_e@club-internet.fr>
1757
1758	* dae/oprofiled.c: fix cpu_speed_str/cpu_speed variable setup logic.
1759
1760	* gui/oprofile: save advanced setup form to persistent storage.
1761	  Add many validation.
1762
17632001-06-25  John Levon  <moz@compsoc.man.ac.uk>
1764
1765	* op_events.c:
1766	* pp/oprof_convert.c: add missing headers, remove CVS blip
1767 
1768	* dae/opd_util.h: specify malloc attribute. gives warnings on
1769	  older compilers, who cares. I doubt this will help but it can't
1770	  harm
1771 
17722001-06-25  John Levon  <moz@compsoc.man.ac.uk>
1773
1774	* pp/oprof_convert.c: continue if an error with one file occurs
1775 
1776	* dae/op_stop: remove rmmod again - it is user's choice on when/whether
1777	  to unload
1778 
17792001-06-23  Philippe Elie  <ph_e@club-internet.fr>
1780
1781	* pp/op_start: add missing support for specifying the log filename.
1782	  Get correct cpu speed information for smp as suggested by John.
1783
1784	* dae/oprofiled.c: Correct a warning with some older version of the
1785	  popt library.
1786	* pp/oprofpp: as above.
1787
1788	* gui/oprofile: advanced setup form added.
1789
1790	* pp/oprof_convert.c: version and help option support.
1791
17922001-06-23  John Levon  <moz@compsoc.man.ac.uk>
1793
1794	* pp/.cvsignore: add oprof_convert
1795 
17962001-06-23  Philippe Elie  <ph_e@club-internet.fr>
1797
1798	* pp/oprof_convert.c: new utility to convert samples files when the opd_footer
1799	  struct is changed.
1800	* pp/Makefile.in: reflect the above change. Tidy some unnecessary blank.
1801	* Makefile.in: Tidy some unnecessary blank/tabulation.
1802
18032001-06-23  John Levon  <moz@compsoc.man.ac.uk>
1804
1805	* README: update
1806 
18072001-06-22  John Levon  <moz@compsoc.man.ac.uk>
1808
1809	* oprofile.c: always have smp_apic_restore()
1810 
18112001-06-22  John Levon  <moz@compsoc.man.ac.uk>
1812
1813	* various: made spacing more consistent in C source,
1814	  removed unused utility functions.
1815 
18162001-06-22  John Levon  <moz@compsoc.man.ac.uk>
1817
1818	* oprofile.c: actually call smp_apic_restore() on UP
1819
1820	* dae/op_start: don't remove the module immediately after
1821	  inserting it !
1822 
18232001-06-22  Philippe Elie  <ph_e@club-internet.fr>
1824
1825	* dae/oprofiled.h, pp/oprofpp.h: change the opd_footer struct.
1826	  Bump OPD_VERSION to reflect the file format change.
1827	* pp/oprofpp.c: reflect the above change
1828	* dae/oprofiled.c: reflect the above change, many options supressed
1829	  because setup is read from the /proc/sys/dev/oprofile files.
1830	* dae/opd_proc: suppress some "extern variable" which no longer exist.
1831	* dae/op_start: reflect the above change
1832
18332001-06-22  Philippe Elie  <ph_e@club-internet.fr>
1834
1835	* dae/op_start: add --ctr[0|1]-edge-detect
1836	* gui/oprofile: add edge detect stuff
1837	* oprofile.c: add edge-detect stuff, the edge-detect is an
1838	  experimental feature which do not work actually (no effect for now).
1839	  Because this is experimental no documentation are provided on this
1840	  option.
1841
18422001-06-22  John Levon  <moz@compsoc.man.ac.uk>
1843
1844	* configure.in:
1845	* dae/op_stop:
1846	* doc/oprofile.sgml:
1847	* op_init.c:
1848	* op_syscalls.c:
1849	* oprofile.h:
1850	* oprofile.c: add and document the ability 
1851	  to make the module unloadable. Not well tested
1852	  (but seems to work).
1853 
1854	* doc/oprofile.sgml: document compile-time options
1855	  better, thank Philippe
1856 
18572001-06-21  John Levon  <moz@compsoc.man.ac.uk>
1858
1859	* oprofile.c: remove stale comments. fix theoretical
1860	  memory leaks when setting up the sysctls fails, small tidy
1861 
18622001-06-19  John Levon  <moz@compsoc.man.ac.uk>
1863
1864	* README: 
1865	* doc/oprofile.sgml:
1866	* doc/html/: s/sourceforge/sf/
1867 
18682001-06-16  Philippe Elie  <ph_e@club-internet.fr>
1869
1870	* op_events.c: op_check_events() fix two bad use of 
1871	  op_check_unit_mask(). op_get_um_desc() fix a typo.
1872
18732001-06-14  Philippe Elie  <ph_e@club-internet.fr>
1874
1875	* op_events.c: struct op_unit_mask, struct op_unit_desc allow up to
1876	  seven unit masks. Reflect this change in data, op_check_unit_mask()
1877	  and callers of op_check_unit_mask().
1878
18792001-06-12  John Levon  <moz@compsoc.man.ac.uk>
1880
1881	* results/intro: tidy up
1882
1883	* results/kernel-compile/time-aves.pl: fix regexps
1884 
1885	* results/latex/: results from the LaTeX runs
1886 
18872001-06-09  Philippe Elie  <ph_e@club-internet.fr>
1888
1889	* dae/op_start: avoid chmod to a non existing directory and setup access
1890	  mode from 700 to 755. Replace use of the sysctl utility by a
1891	  do_sysctl() function.
1892
1893	* gui/oprofile: some cleanup and bugfix.
1894
1895	* pp/oprofpp.c: add new output options --list-all-symbols-details,
1896	  --output-linenr-info
1897
1898	* doc/oprofile.1.in:
1899	* doc/oprofile.sgml: update documentation about the new oprofpp
1900	  option
1901
19022001-06-09  John Levon  <moz@compsoc.man.ac.uk>
1903
1904	* configure.in: fix build with CONFIG_MODVERSIONS
1905	  enabled.
1906 
19072001-06-04  John Levon  <moz@compsoc.man.ac.uk>
1908
1909	* dae/oprofiled.c: move logfile message to
1910	  before close(1) to not need to use stderr
1911 
19122001-06-03  John Levon  <moz@compsoc.man.ac.uk>
1913
1914	* gui/: new directory
1915
1916	* Makefile.in:
1917	* configure.in:
1918	* gui/.cvsignore:
1919	* gui/Makefile.in:
1920	* gui/oprofile: Philippe's prototype tcl/tk startup
1921	  script. Requires more work.
1922 
19232001-06-03  John Levon  <moz@compsoc.man.ac.uk>
1924
1925	* pp/oprofpp.h: remove libiberty header that was
1926	  apparently breaking install on slackware
1927 
19282001-06-03  John Levon  <moz@compsoc.man.ac.uk>
1929
1930	* README: update
1931 
19322001-06-03  Philippe Elie  <ph_e@club-internet.fr>
1933
1934	* op_events.c: allow unit mask option to be bit mask
1935
19362001-06-01  John Levon  <moz@compsoc.man.ac.uk>
1937
1938	* dae/opd_proc.c: actually use opd_get_count -
1939	  fix bug with counter 1 reported results
1940
1941	* dae/op_start: fix broken shell scripting
1942
1943	* dae/oprofpp.c: fix list-symbols output
1944
19452001-04-30  John Levon  <moz@compsoc.man.ac.uk>
1946
1947	* dae/op_start: better error reporting
1948
1949	* dae/opd_proc.c: fix indentation
1950 
19512001-04-08  John Levon  <moz@compsoc.man.ac.uk>
1952
1953	* configure.in: 0.0.3 has been released. Bump cvs version
1954	  to 0.0.4
1955
19562001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1957
1958	* dae/opd_proc.c: remove forced dumping. It was
1959	causing overhead spikes
1960
1961	* doc/html/results.html:
1962	* doc/oprofile.sgml:
1963	* dae/op_start: Hopefully document dump clearly enough
1964
19652001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1966
1967	* oprofile.h:
1968	* op_syscalls.c: 2.4.3 and above have a rw mmap_sem
1969
19702001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1971
1972	* doc/html/: added missing files
1973
19742001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1975
1976	* doc/oprofile.sgml:
1977	* doc/html/resources.html: add URLs
1978
19792001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1980
1981	* pp/oprofpp.c: fix gprof output bug. It works OK now,
1982	  but MULTIPLIER == 1 will break for some reason
1983
19842001-04-05  John Levon  <moz@compsoc.man.ac.uk>
1985
1986	* doc/oprofile.sgml:
1987	* doc/html/: finish SGML documentation (for now)
1988
19892001-04-04  John Levon  <moz@compsoc.man.ac.uk>
1990
1991	* doc/Makefile.in:
1992	* doc/oprofile.sgml:
1993	* doc/oprofile: start SGML documentation
1994
19952001-04-04  John Levon  <moz@compsoc.man.ac.uk>
1996
1997	* configure.in:
1998	* Makefile.in:
1999	* doc/Makefile.in:
2000	* doc/oprofile.1.in: add a manpage
2001 
20022001-04-04  John Levon  <moz@compsoc.man.ac.uk>
2003
2004	* pp/oprofpp.c: get some sort of half-working output
2005	in gprof format. Currently the numbers are screwed up,
2006	need a major trawl through gprof source to see what's
2007	going on. 
2008
20092001-04-04  John Levon  <moz@compsoc.man.ac.uk>
2010
2011	* dae/Makefile.in:
2012	* dae/md5.c:
2013	* dae/md5.h:
2014	* dae/opd_proc.c:
2015	* dae/oprofiled.h:
2016	* pp/Makefile.in:
2017	* pp/oprofpp.c:
2018	* pp/oprofpp.h: use md5sums to verify sample file
2019	  integrity. Stored in each sample file footer are
2020	  md5sums of the binary. These are checked by the daemon
2021	  when re-using an old file, and by the post-processor.
2022	  Bump OPD_VERSION to reflect the file format change.
2023
2024	* dae/oprofiled.c: make start up more friendly 
2025	
2026	* dae/op_start: make script more friendly
2027
20282001-03-10  John Levon  <moz@compsoc.man.ac.uk>
2029
2030	* dae/opd_proc.c: fixed some error messages
2031
2032	* results/kernel-compile/raw/ccu.gnuplot: add
2033 
20342001-02-05  John Levon  <moz@compsoc.man.ac.uk>
2035
2036	* TODO: update
2037
2038	* results/intro: update
2039
2040	* results/kernel-compile/: update, add FIG files
2041
2042	* results/lmbench: lmbench results
2043
2044	* results/output/kernel-ac12-output: add readprofile output
2045
20462001-02-04  John Levon  <moz@compsoc.man.ac.uk>
2047
2048	* TODO: update
2049
2050	* op_syscalls.c: small re-org, some micro-optimisations
2051	  to do_hash()
2052
2053	* pp/oprofpp.c: clean up --list-symbol output a little
2054
2055	* results/kernel-compile/overhead: update with results
2056
2057	* results/kernel-compile/time-aves.pl: add gnuplot output
2058
2059	* results/kernel-compile/raw/ : raw output files
2060
2061	* results/output/ : new dir for example output
2062
2063	* results/output/libc-2.1.92.so: output from libc profile
2064
2065	* results/output/kernel-ac12-output: output from kernel profile
2066
2067	* results/output/do_anonymous_page: detailed symbol profile
2068
2069	* results/output/oprofile.module: output for oprofile module
2070
20712001-02-03  John Levon  <moz@compsoc.man.ac.uk>
2072
2073	* TODO: update
2074
2075	* oprofile.h:
2076	* op_syscalls.c: make do_hash() non-recursive
2077
2078	* oprofile.c: make thread wake up half as often
2079
2080	* dae/opd_proc.c: quiesce dump sysctl
2081	  make resilient against broken sample (don't exceed mmap)
2082
2083	* pp/oprofpp.c: --gcc-demangle -> --demangle, just too
2084	  annoying to live
2085 
20862001-02-01  John Levon  <moz@compsoc.man.ac.uk>
2087
2088	* oprofile.h: add op_save_syscalls()
2089
2090	* oprofile.c: let interrupt_sleep_on() die
2091	  add kernel_only option
2092	  sysctl dumps everything it can now
2093 
2094	* op_syscalls.c: add op_save_syscalls() 
2095
2096	* dae/opd_proc.c:
2097	* dae/oprofiled.c:
2098	* dae/op_start: add --kernel-only
2099 
2100	* doc/guide.lyx: mention --kernel-only
2101 
2102	* TODO: update
2103 
21042001-02-01  John Levon  <moz@compsoc.man.ac.uk>
2105
2106	* Makefile.in: split out op_init.c
2107
2108	* autogen.sh: new file
2109
2110	* configure.in: fix --with-cc. Split out op_init.c
2111	
2112	* op_init.c: new file, to allow rest -march=i686
2113
2114	* oprofile.c: cut out init stuff to op_init.c 
2115
2116	* opd_proc.c: more verbose
2117
2118	* results/kernel-compile/time-aves.pl: work with other
2119	  time format too 
2120	 
21212001-01-25  John Levon  <moz@compsoc.man.ac.uk>
2122
2123	* configure.in: add --with-cc option
2124
2125	* pp/oprofpp.c: fix const discard warnings
2126
21272001-01-25  John Levon  <moz@compsoc.man.ac.uk>
2128
2129	* configure.in: must check for liberty *after*
2130	  libdl
2131
21322001-01-24  John Levon  <moz@compsoc.man.ac.uk>
2133
2134	* oprofile.c: we're not using op_check_ctr()
2135		return value, so don't have one
2136
21372001-01-23  John Levon  <moz@compsoc.man.ac.uk>
2138
2139	* configure.in:
2140	* op_syscalls.c:
2141	* oprofile.c:
2142	* oprofile.h: stripped the NMI error handling stuff
2143
2144	* op_events.c: fixed silly bug in the other place too :P
2145	
2146	* dae/oprofiled.c: improved error messages
2147
21482001-01-22  John Levon  <moz@compsoc.man.ac.uk>
2149
2150	* op_events.c: fix silly bug so you can set both
2151		counters at once
2152
2153	* oprofile.c: don't disable/enable counters in
2154		the interrupt handler. It's expensive and
2155		doesn't really buy anything.
2156		Fix a silly EBUSY bug when open fails once.
2157
2158	* dae/op_start: don't remove old sample files
2159		pass correct event to daemon for ctr1
2160
21612001-01-22  John Levon  <moz@compsoc.man.ac.uk>
2162
2163	* op_syscalls.c:do_hash(): use strcpy not strncpy. 
2164		It's probably faster, and if d_name.len is corrupted
2165		the kernel has bigger things to worry about.
2166
21672001-01-22  John Levon  <moz@compsoc.man.ac.uk>
2168
2169	* dae/guide.lyx:
2170	* dae/guide.html: update docs a little
2171
21722001-01-22  John Levon  <moz@compsoc.man.ac.uk>
2173
2174	* dae/op_start:
2175	* op_user.h: bump up hash table size
2176
2177	* results/kernel-compile/overhead: intro to kernel
2178		compile tests
2179
2180	* results/kernel-compile/time-aves.pl: script
2181		to generate averages + overheads
2182
2183	* op_syscalls.c: three fixes to do_hash(). It's
2184		going to be a pain to make iterative :(
2185
21862001-01-21  John Levon  <moz@compsoc.man.ac.uk>
2187
2188	* results/: Started a collection of results
2189
21902001-01-20  John Levon  <moz@compsoc.man.ac.uk>
2191
2192	* TODO: update
2193
2194	* configure.in: add comment
2195
2196	* Makefile.in: moved oprofile_k.c to op_syscalls.c, op_user.h added
2197
2198	* op_syscalls.c: rename of oprofile_k.c
2199		map buffer is dead now
2200		use vmalloc() and friends for hash map
2201		Reworking of hash_map stuff into abb's linked
2202		hash map structure
2203
2204	* op_user.h: new file representing shared structs etc.
2205		between daemon and kernel module
2206		Reworked OP_ flags in count.
2207		Reworked hash map structure
2208
2209	* oprofile.c: get along with the new UP APIC stuff in 2.4.0ac9
2210		remove extraneous lock_kernel()
2211		default buffer size added
2212		map buffer died
2213		Use up_and_exit() in kernel thread to fix zombies :P
2214		Set diethreaddie = 0 in start_thread()
2215		oprof_put_mapping() added
2216		we weren't turning OFF kernel/user counting when asked to
2217
2218	* oprofile.h: move shared stuff to op_user.h
2219		increase the watermark to a much safer 768
2220
2221	* dae/Makefile.in: dependencies on op_user.h and version.h 
2222
2223	* dae/op_start: hide confusing output of op_stop
2224		--verbose option
2225		map buffer died
2226
2227	* dae/opd_proc.c: --verbose option
2228		don't insist on new sample files
2229		Rework mapping code
2230		Be a little more forgiving with unstattable images 
2231
2232	* dae/opd_util.h:
2233	* dae/opd_util.c: add fatal flag to opd_get_fsize().
2234
2235	* dae/oprofiled.h: --verbose option
2236		move common code to op_user.h
2237
2238	* dae/oprofiled.c: add --verbose option (very verbose !)
2239		map buffer died
2240		Add code for unpacking mapping notifications, rework
2241		mapping recognition
2242
2243	* doc/guide.html:
2244	* doc/guide.lyx: some small updates
2245
2246	* pp/oprofpp.c: fix segfault on failure to open binary.
2247		add --verbose option
2248
2249	* pp/oprofpp.h: add --verbose option
2250
22512000-01-12  John Levon  <moz@compsoc.man.ac.uk>
2252
2253	* oprofile.c: use standard kernel names for MSRs.
2254		Don't re-do fixmap if UP oopser patch is installed.
2255		Allow UP oopser to work if patches enabled, disable
2256		otherwise
2257
2258	* oprofile.h: use standard kernel names for MSRs.
2259
2260	* oprofile_k.c: only include fixmap code if necessary
2261
2262	* configure.in: bump minor version
2263
22642000-12-15  John Levon  <moz@compsoc.man.ac.uk>
2265
2266	* configure.in: default to /lib/modules/`uname -r`/build
2267		as kernel source directory
2268
2269	* doc/guide.lyx:
2270	* doc/guide.html: update documentation
2271
22722000-12-13  John Levon  <moz@compsoc.man.ac.uk>
2273
2274	* configure.in: bump minor version
2275
2276	* oprofile.c: added KERN_<whatever> where needed,
2277		exclude the Pentium IV	
2278
2279	* pp/oprofpp.c: allow "oprofpp -l /bin/mv" and friends,
2280		some minor fixes
2281
22822000-12-12  John Levon  <moz@compsoc.man.ac.uk>
2283
2284	* Makefile.in:
2285	* configure.in: approximate working modversions
2286		a little more
2287
2288	* op_events.c: op_help INST_RETIRED will print out
2289		the value now
2290
2291	* op_ioctl.h:
2292	* oprofile.c:
2293	* oprofile.h:
2294	* oprofile_k.c:
2295	* dae/Makefile.in:
2296	* dae/op_start:
2297	* dae/op_stop:
2298	* dae/opd_proc.c:
2299	* dae/oprofctl.c:
2300	* dae/oprofctl.h:
2301	* dae/oprofiled.h: ioctl() didn't last long. Replaced with
2302		sysctls. This has had a knock-on effect of moving the
2303		start/stop mechanism into the driver open/close routines
2304	 
2305	* dae/oprofiled.c: must open devices in "reverse" order now
2306	 
2307	* oprofile_k.c: fix X86_FEATURE_PGE testing
2308	 
2309	* oprofile.c: use daemonize()
2310	
2311	* pp/oprofpp.c: fix working on constant argv
2312
23132000-11-04  John Levon  <moz@compsoc.man.ac.uk>
2314
2315	* oprofile.c: what if signal happens later ?
2316	* dae/opd_util.c: clarify opd_read_device() API
2317
23182000-11-04  John Levon  <moz@compsoc.man.ac.uk>
2319
2320	* ChangeLog: started ChangeLog (cue gc koan)
2321	* op_ioctl.h: added FIXME comment
2322	* oprofile.c: slight cleanup 
2323	* oprofile.h: cleanups, use u16 for data->ctrs,
2324		data->next
2325	
2326	* pp/oprofpp.c: added comments
2327	* pp/oprofpp.h: fixed #defines
2328