1 2003-12-29 Philippe Elie <phil.el (a] wanadoo.fr> 2 3 * configure.in: my_op_prefix is not necessarily suffixed by a '/' 4 5 2003-12-29 John Levon <levon (a] movementarian.org> 6 7 * configure.in: 8 * doc/*.1.in: add HTML docs to SEE ALSO 9 10 2003-12-29 John Levon <levon (a] movementarian.org> 11 12 * doc/opcontrol.1.in: 13 * doc/oprofile.xml: minor language cleanups 14 15 * utils/opcontrol: only allow --verbose when it makes sense 16 17 2003-12-28 Philippe Elie <phil.el (a] wanadoo.fr> 18 19 * libutil++/tests/file_manip_tests.cpp: ensure filename passed to 20 op_realpath() exists 21 22 2003-12-28 John Levon <levon (a] movementarian.org> 23 24 * doc/internals.xml: 25 * libutil++/file_manip.h: fix typos 26 27 2003-12-16 Philippe Elie <phil.el (a] wanadoo.fr> 28 29 * utils/opcontrol: error message rewording 30 31 2003-12-16 Carlo Wood <carlo (a] alinoe.com> 32 33 * libregex/tests/Makefile.am: avoid to install mangled-name test file 34 35 2003-11-20 John Levon <levon (a] movementarian.org> 36 37 * libregex/op_regex.cpp: move global ctor out of namespace 38 anon (bug #845616) 39 40 2003-11-19 Philippe Elie <phil.el (a] wanadoo.fr> 41 42 * libpp/arrange_profiles.cpp: merge all unit mask before generating 43 event description string 44 45 2003-11-17 Philippe Elie <phil.el (a] wanadoo.fr> 46 47 * libpp/arrange_profiles.cpp: put unitmask in the same axis as 48 event:count, meaning than unitmask is now a part of the event 49 specification. 50 51 2003-12-19 Philippe Elie <phil.el (a] wanadoo.fr> 52 53 * daemon/opd_sfile.c: we reversed to/from pc in call graph sample 54 55 2003-11-23 Philippe Elie <phil.el (a] wanadoo.fr> 56 57 * libpp/profile.h: 58 * pp/opgprof.cpp: oops a simplify a bit too cg handling in my last 59 patch, it was segfaulting each time no cg file was found... 60 61 2003-11-15 Philippe Elie <phil.el (a] wanadoo.fr> 62 63 * pp/opgprof.cpp: simplify a bit cg handling, we don't need to know 64 if we retrieved some cg files since the profile_t will be empty 65 in this case 66 67 2003-11-15 Philippe Elie <phil.el (a] wanadoo.fr> 68 69 * libpp/profile.h: iterator::vma() must return the full key not only 70 an unsigned int. 71 * pp/opgprof.cpp: implement merging of cg files. 72 73 2003-11-15 Philippe Elie <phil.el (a] wanadoo.fr> 74 75 * libpp/profile_spec.cpp: 76 * libpp/profile_spec.h: 77 * pp/opannotate_options.cpp: 78 * pp/opgprof_options.cpp: 79 * pp/opreport_options.cpp: filter call graph samples files 80 81 2003-11-14 Philippe Elie <phil.el (a] wanadoo.fr> 82 83 * daemon/opd_mangling.c: oops, it's better to really open the cg file 84 85 * daemon/opd_sfile.c: 86 * daemon/opd_stats.c: 87 * daemon/opd_stats.h: 88 * daemon/liblegacy/opd_24_stats.c: 89 * daemon/liblegacy/opd_24_stats.h: 90 * daemon/liblegacy/opd_proc.c: log sample lost due to sample file open 91 failure 92 93 2003-11-15 Philippe Elie <phil.el (a] wanadoo.fr> 94 95 * daemon/liblegacy/opd_parse_proc.c: always provide an image name 96 for parsed process in /proc 97 98 2003-11-15 Philippe Elie <phil.el (a] wanadoo.fr> 99 100 * doc/oprofile.xml: 101 * libop/op_cpu_type.c: s/hammer/AMD64 processors/ for user visible 102 name. 103 104 2003-11-13 John Levon <levon (a] movementarian.org> 105 106 * libutil/op_file.h: 107 * libutil/op_file.c: remove op_c_dirname(), 108 op_relative_to_absolute_path(), op_is_directory(), 109 op_follow_link(), in favour of using realpath(3) 110 111 * libutil/tests/file_tests.c: fixes for above changes 112 113 * libutil++/file_manip.h: 114 * libutil++/file_manip.cpp: changes from above. Add 115 op_realpath(). 116 117 * libutil++/tests/file_manip_tests.cpp: changes from 118 above. 119 120 * daemon/oprofiled.c: 121 * daemon/liblegacy/opd_parse_proc.c: 122 * gui/oprof_start_util.cpp: 123 * libpp/locate_images.cpp: 124 * libpp/profile_spec.cpp: 125 * pp/opannotate.cpp: changes from above 126 127 2003-11-12 John Levon <levon (a] movementarian.org> 128 129 * configure.in: bump to 0.8cvs 130 131 2003-11-11 John Levon <levon (a] movementarian.org> 132 133 * configure.in: bump to 0.7.1 134 135 2003-11-11 Joseph VanAndel <unknown (a] unknown.org> 136 137 * daemon/liblegacy/init.c: fix #840046 (segfault when starting profiler 138 with --no-vmlinux setup), this bug was present in 0.7.0. 139 140 2003-11-11 Philippe Elie <phil.el (a] wanadoo.fr> 141 142 * libpp/profile_spec.cpp: more precise error message 143 * libutil++/tests/file_manip_tests.cpp: corner case test added 144 for dirname 145 146 2003-11-11 Philippe Elie <phil.el (a] wanadoo.fr> 147 148 * libpp/arrange_profiles.cpp: report_error() shows only distinct 149 conflicting name. 150 151 2003-11-10 Philippe Elie <phil.el (a] wanadoo.fr> 152 153 * doc/opcontrol.1.in: reverse kernel:user in event setting description. 154 Fix #838968 155 156 2003-11-09 Philippe Elie <phil.el (a] wanadoo.fr> 157 158 * daemon/init.c: 159 * daemon/liblegacy/init.c: move opd_read_fs_int ... 160 * daemon/oprofiled.h: 161 * daemon/oprofiled.c: here 162 * daemon/liblegacy/opd_24_stats.c: dump kernel note buffer overflow and 163 buffer overlow 164 165 2003-11-09 Philippe Elie <phil.el (a] wanadoo.fr> 166 167 * utils/op_help.c: do not use OP_MAX_COUNTERS but get counter number 168 at runtime 169 170 2003-11-09 Philippe Elie <phil.el (a] wanadoo.fr> 171 172 * libutil++/tests/string_manip_tests.cpp: rtrim/ltrim/trim tests 173 174 2003-11-08 Philippe Elie <phil.el (a] wanadoo.fr> 175 176 * libop/tests/Makefile.am: 177 * libop/tests/mangle_tests.c: new tests: sample filename mangling 178 179 2003-11-08 Philippe Elie <phil.el (a] wanadoo.fr> 180 181 * module/x86/op_syscalls.c: fix build with 2.2 kernel 182 183 2003-11-06 Philippe Elie <phil.el (a] wanadoo.fr> 184 185 * Makefile.am: use .PHONY for module goal to not statisfy this goal 186 with the subdir named module 187 * m4/findkernel.m4: minor fix. 188 189 2003-11-06 John Levon <levon (a] movementarian.org> 190 191 * Makefile.am: minor cleanup 192 193 2003-11-06 John Levon <levon (a] movementarian.org> 194 195 * gui/Makefile.am: remove unused -DKVERSION 196 197 2003-11-06 John Levon <levon (a] movementarian.org> 198 199 * configure.in: add --disable-werror and --disable-optimization 200 201 * doc/oprofile.xml: document above. Remove docs for 202 * --enable-gcov (only useful to developers) 203 204 2003-11-06 Philippe Elie <phil.el (a] wanadoo.fr> 205 206 * daemon/opd_kernel.c: 207 * daemon/liblegacy/opd_kernel.c: be less paranoid about kernel range, 208 this is slightly different than the patch Thomas Spatzier tested but 209 it can't hurt (famous last words ...). This fixes s390x where kernel 210 start can be zero and was rejected. 211 212 2003-11-06 Thomas Spatzier <tspat (a] de.ibm.com> 213 214 * daemon/opd_cookie.c: changed an #if defined for selecting right 215 system call for IBM s390 or s390x, respectively 216 217 2003-11-04 Philippe Elie <phil.el (a] wanadoo.fr> 218 219 * libutil++/path_filter.cpp: remove 2 identical FIXME 220 * libutil++/tests/file_manip_tests.cpp: 221 * libutil++/tests/path_filter_tests.cpp: reflect the behavior by 222 new tests 223 224 2003-11-04 Philippe Elie <phil.el (a] wanadoo.fr> 225 226 * libdb/db_manage.c: 227 * libop/op_events.h: -pedantic fix 228 229 2003-11-04 Philippe Elie <phil.el (a] wanadoo.fr> 230 231 * daemon/opd_sfile.c: 232 * daemon/liblegacy/opd_kernel.c: 233 * libutil/op_cpufreq.c: 234 * libutil/op_file.c: a few s/goto/break/ 235 * libpp/format_output.cpp: padding never used after initialization 236 237 2003-11-04 Philippe Elie <phil.el (a] wanadoo.fr> 238 239 * libutil++/comma_list.h: don't accept cumulative behavior 240 * libutil++/string_manip.cpp: separate_token() return by value 241 * gui/oprof_start.cpp: 242 * libopt++/popt_options.cpp: 243 * libpp/parse_filename.cpp: 244 * libpp/profile_spec.cpp: 245 * libutil++/comma_list.h: 246 * libutil++/string_filter.cpp: 247 * libutil++/string_manip.cpp: 248 * libutil++/string_manip.h: 249 * libutil++/tests/comma_list_tests.cpp: 250 * libutil++/tests/string_manip_tests.cpp: update according 251 * libpp/profile_spec.cpp: remove all trace of defunct op_alias 252 253 2003-11-04 Philippe Elie <phil.el (a] wanadoo.fr> 254 255 * daemon/liblegacy/opd_image.c: 256 * daemon/liblegacy/opd_image.h: 257 * daemon/liblegacy/opd_mapping.c: 258 * daemon/liblegacy/opd_mapping.h: 259 * daemon/liblegacy/opd_proc.c: 260 * gui/oprof_start.cpp: 261 * gui/oprof_start.h: 262 * gui/oprof_start_config.cpp: 263 * gui/oprof_start_util.cpp: 264 * libop/op_config_24.h: 265 * libpp/format_output.cpp: 266 * libpp/op_header.cpp: 267 * libpp/profile.h: 268 * libpp/profile_container.cpp: 269 * libpp/profile_spec.cpp: 270 * libpp/profile_spec.h: 271 * libpp/symbol.h: 272 * libpp/symbol_sort.cpp: 273 * libutil++/stream_util.cpp: 274 * libutil++/stream_util.h: 275 * libutil++/utility.h: 276 * pp/common_option.cpp: 277 * pp/common_option.h: 278 * pp/opannotate_options.h: 279 * pp/opgprof.cpp: 280 * pp/opgprof_options.cpp: 281 * pp/opgprof_options.h: 282 * pp/opreport_options.cpp: 283 * pp/opreport_options.h: 284 * pp/populate.cpp: remove some .h dependencies 285 286 2003-11-03 Philippe Elie <phil.el (a] wanadoo.fr> 287 288 * libutil++/tests/Makefile.am: 289 * libutil++/tests/utility_tests.cpp: new test files convering most of 290 utility.h and op_exception.h 291 292 2003-11-02 Philippe Elie <phil.el (a] wanadoo.fr> 293 294 * libpp/parse_filename.cpp: avoid repetitive vector::erase(v.begin()) 295 * libregex/stl.pat.in: 296 * libregex/tests/mangled-name.in: add (i|o)stream operator(>>|<<) 297 298 2003-11-02 Philippe Elie <phil.el (a] wanadoo.fr> 299 300 * daemon/liblegacy/opd_image.h: 301 * daemon/liblegacy/opd_image.c: 302 * daemon/liblegacy/opd_proc.c: 303 * daemon/liblegacy/opd_sample_files.c: sparse sample file array 304 allocated by line. 305 306 2003-11-02 Philippe Elie <phil.el (a] wanadoo.fr> 307 308 * libutil++/glob_filter.h: 309 * libutil++/path_filter.h: 310 * libutil++/string_filter.h: comment fix to match implementation 311 * libutil++/tests/path_filter_tests.cpp: new file test 312 * libutil++/tests/Makefile.am: upate build 313 * libutil++/tests/string_filter_tests.cpp: test white space at start 314 of pattern 315 316 2003-11-02 Philippe Elie <phil.el (a] wanadoo.fr> 317 318 * libutil++/string_manip.cpp: format_double can only format percent 319 * libutil++/string_manip.h: 320 * libpp/format_output.cpp: 321 * libutil++/tests/string_manip_tests.cpp: 322 * pp/opannotate.cpp: 323 * pp/opreport.cpp: s/format_double/format_percent/ 324 325 2003-11-02 Philippe Elie <phil.el (a] wanadoo.fr> 326 327 * libutil++/glob_filter.h: 328 * libutil++/string_filter.h: 329 * libutil++/tests/string_filter_tests.cpp: minor tidy 330 331 * libutil++/tests/glob_filter_tests.cpp: new file 332 * libutil++/tests/Makefile.am: update build 333 334 2003-11-01 Philippe Elie <phil.el (a] wanadoo.fr> 335 336 * libpp/arrange_profiles.cpp: typo 337 * libutil++/generic_spec.cpp: removed file 338 * libutil++/Makefile.am: update according 339 * libutil++/generic_spec.h: ensure generic_spec<string> will not link 340 * libutil++/path_filter.cpp: minor tidy 341 342 2003-11-01 Philippe Elie <phil.el (a] wanadoo.fr> 343 344 * libutil++/tests/string_manip_tests.cpp: ehance output on failure 345 * module/oprofile.h: 346 * module/oprofile.c: two new read-only sysctl: nr_buffer_overflow and 347 nr_note_buffer_overflow 348 349 2003-11-01 Philippe Elie <phil.el (a] wanadoo.fr> 350 351 * libutil++/tests/Makefile.am: 352 * libutil++/tests/file_manip_tests.cpp: don't use getcwd nor __FILE__ 353 but ${topdir} and hard coded filename 354 355 2003-11-01 John Levon <levon (a] movementarian.org> 356 357 * daemon/liblegacy/opd_parse_proc.c: use op_follow_link 358 359 * libutil/op_file.c: 360 * libutil/op_file.h: make op_get_link() static, rename 361 op_basename to op_c_basename 362 363 * libutil++/file_manip.cpp: 364 * libutil++/file_manip.h: rename to op_basename()/op_dirname(). 365 Use op_follow_link() for follow_link(). 366 367 * libutil++/tests/file_manip_tests.cpp: 368 * gui/oprof_start_util.cpp: 369 * libpp/locate_images.cpp: 370 * libpp/name_storage.cpp: 371 * libutil++/path_filter.cpp: 372 * pp/opannotate.cpp: 373 * pp/opreport.cpp: fixup from above changes 374 375 2003-11-01 Philippe Elie <phil.el (a] wanadoo.fr> 376 377 * libutil++/op_bfd.h: has_debug_info() new member 378 * pp/populate.h: 379 * pp/populate.cpp: 380 * pp/opannotate.cpp: use it to error out when --assembly is not 381 requested and no debug information exists 382 383 2003-10-31 Philippe Elie <phil.el (a] wanadoo.fr> 384 385 * pp/common_option.cpp: don't exit() if merge_by.lib is set through 386 !allow_lib 387 388 2003-10-31 Philippe Elie <phil.el (a] wanadoo.fr> 389 390 * pp/opreport_options.cpp: move handle_merge_option() ... 391 * pp/common_option.h: 392 * pp/common_option.cpp: here 393 * pp/opannotate_options.cpp: use it but disallow --merge=lib 394 395 2003-10-31 Philippe Elie <phil.el (a] wanadoo.fr> 396 397 * libutil/op_file.c: 398 * libutil/op_file.h: implement dirname(), is_directory() and 399 op_follow_link() 400 * daemon/oprofiled.c: follow symlink for image filter 401 * libutil++/file_manip.cpp: 402 * libutil++/file_manip.h: 403 * gui/oprof_start_util.cpp: 404 * libpp/profile_spec.cpp: rename op_follow_link() to follow_link() 405 406 2003-10-31 Philippe Elie <phil.el (a] wanadoo.fr> 407 408 * libutil/tests/file_tests.c: "//usr" --> "//usr" 409 * libutil++/tests/.cvsignore: 410 * libutil++/tests/Makefile.am: 411 * libutil++/tests/file_manip_tests.cpp: new tests file. 412 413 2003-10-31 John Levon <levon (a] movementarian.org> 414 415 * daemon/opd_perfmon.c: fix compilation 416 417 2003-10-30 John Levon <levon (a] movementarian.org> 418 419 * libpp/profile_spec.cpp: introduce a helper function 420 to make the comma_list matching clear 421 422 2003-10-30 Philippe Elie <phil.el (a] wanadoo.fr> 423 424 * libutil++/comma_list.h: is_set() new member 425 * libpp/profile_spec.cpp: fix matching logic for cpu/tid/tgid 426 427 2003-10-30 John Levon <levon (a] movementarian.org> 428 429 * libutil++/generic_spec.h: add value() and 430 is_set(), remove bool parameter from T value 431 match() (it was never set to true) 432 433 * libutil++/comma_list.h: do not accept 434 generic_spec, the behaviour was to implicitly 435 not match an "all" generic_spec. Instead: 436 437 * libpp/profile_spec.cpp: encode the matching 438 behaviour explicitly, and add a comment. 439 440 * libutil++/tests/comma_list_tests.cpp: fix to 441 match the above 442 443 2003-10-30 John Levon <levon (a] movementarian.org> 444 445 * Makefile.am: re-order build subdirs 446 447 * libabi/Makefile.am: only build abitest on 448 make check 449 450 * pp/Makefile.am: pp_common not pp_commons 451 452 2003-10-30 John Levon <levon (a] movementarian.org> 453 454 * libutil++/tests/Makefile.am: 455 * libutil++/tests/comma_list_tests.cpp: Add. 456 457 2003-10-30 John Levon <levon (a] movementarian.org> 458 459 * doc/Makefile.am: improve chunk rules 460 461 2003-10-30 John Levon <levon (a] movementarian.org> 462 463 * libutil++/tests/Makefile.am: 464 * libutil++/tests/string_filter_tests.cpp: Add. 465 466 * libutil++/tests/string_manip_tests.cpp: fix header include 467 468 2003-10-30 John Levon <levon (a] movementarian.org> 469 470 * libutil++/tests/string_manip_tests.cpp: fix tobool test 471 ("33" is not castable to bool) 472 473 2003-10-30 Philippe Elie <phil.el (a] wanadoo.fr> 474 475 * libutil++/string_manip.cpp: 476 * libutil++/string_manip.h: remove tostr()/tobool/touint(), rename 477 lexical_cast_no_ws<> to op_lexical_cast<> 478 479 * gui/oprof_start.cpp: 480 * gui/oprof_start_config.cpp: 481 * libpp/arrange_profiles.cpp: 482 * libpp/filename_spec.cpp: 483 * libpp/op_header.cpp: 484 * libutil++/comma_list.h: 485 * libutil++/generic_spec.h: 486 * libutil++/tests/string_manip_tests.cpp: use op_lexical_cast<> 487 488 2003-10-29 John Levon <levon (a] movementarian.org> 489 490 * pp/common_option.h: use std namespace 491 492 2003-10-28 Jason Lunz <lunz (a] falooley.org> 493 494 * doc/oprofile.1.in: document cpu,tid,tgid in profile 495 spec 496 497 2003-10-29 Philippe Elie <phil.el (a] wanadoo.fr> 498 499 * libpp/profile_spec.cpp: error out for all tag:value specified 500 more than once. 501 502 2003-10-29 Philippe Elie <phil.el (a] wanadoo.fr> 503 504 * doc/opannotate.1.in: 505 * doc/opreport.1.in: 506 * doc/oprofile.xml: 507 * libregex/demangle_symbol.cpp: 508 * libregex/demangle_symbol.h: 509 * pp/common_option.cpp: 510 * pp/common_option.h: 511 * pp/opannotate_options.cpp: 512 * pp/opannotate_options.h: 513 * pp/opreport_options.cpp: 514 * pp/opreport_options.h: remove --no-demangle, --smart-demangle and 515 --demangle, replace them with --demangle=none|smart|normal 516 517 2003-10-29 Philippe Elie <phil.el (a] wanadoo.fr> 518 519 * libutil++/tests: new directory 520 * libutil++/tests/string_manip_tests.cpp: new tests file 521 * configure.in: 522 * libutil++/Makefile.am: 523 * libutil++/tests/.cvsignore: 524 * libutil++/tests/Makefile.am: handle new test 525 526 * libutil++/string_manip.h: 527 * libutil++/string_manip.cpp: correct implementation of separate_token 528 to match the documentation 529 * daemon/liblegacy/opd_image.c: fix comment 530 531 2003-10-28 Philippe Elie <phil.el (a] wanadoo.fr> 532 533 * libpp/count_array.cpp: 534 * libpp/count_array.h: 535 * libpp/locate_images.h: 536 * libpp/parse_filename.cpp: 537 * libpp/profile.cpp: 538 * libpp/profile.h: 539 * libpp/profile_spec.cpp: 540 * libpp/symbol_sort.cpp: minor tidy 541 542 2003-10-28 Jason Lunz <lunz (a] falooley.org> 543 544 * doc/opcontrol.1.in: better wording for --separate= 545 * doc/oprofile.1.in: typo 546 547 2003-10-28 Philippe Elie <phil.el (a] wanadoo.fr> 548 549 * daemon/liblegacy/init.c: 550 * daemon/liblegacy/opd_24_stats.c: 551 * daemon/liblegacy/opd_24_stats.h: 552 * daemon/liblegacy/opd_image.c: 553 * daemon/liblegacy/opd_image.h: 554 * daemon/liblegacy/opd_kernel.c: 555 * daemon/liblegacy/opd_kernel.h: 556 * daemon/liblegacy/opd_mapping.c: 557 * daemon/liblegacy/opd_mapping.h: 558 * daemon/liblegacy/opd_parse_proc.c: 559 * daemon/liblegacy/opd_parse_proc.h: 560 * daemon/liblegacy/opd_proc.c: 561 * daemon/liblegacy/opd_proc.h: 562 * daemon/liblegacy/opd_sample_files.c: 563 * daemon/liblegacy/opd_sample_files.h: move doygen comment from *.c to 564 *.h. Add some doxygen comment. 565 566 2003-10-27 Philippe Elie <phil.el (a] wanadoo.fr> 567 568 * daemon/liblegacy/opd_24_stats.c: 569 * daemon/liblegacy/opd_image.h: 570 * daemon/liblegacy/opd_image.h: nr_images static 571 572 2003-10-27 John Levon <levon (a] movementarian.org> 573 574 * doc/opcontrol.1.in: document --image= 575 576 * doc/oprofile.xml: 577 * utils/opcontrol: make user specify "--image=all" 578 to reset. Clean up help message. Ensure note table 579 size is given a value. Add '-t' for '--stop', and 580 '-i' for '--image'. 581 582 2003-10-27 John Levon <levon (a] movementarian.org> 583 584 * doc/oprofile.xml: document opcontrol --image= 585 586 2003-10-27 John Levon <levon (a] movementarian.org> 587 588 * daemon/opd_events.h: 589 * daemon/opd_events.c: move code for handling 590 event descriptions here, and share find_counter_event(), 591 plus fill_header() 592 593 * daemon/opd_mangling.c: 594 * daemon/opd_perfmon.c: 595 * daemon/oprofiled.c: 596 * daemon/oprofiled.h: 597 * daemon/liblegacy/opd_proc.c: 598 * daemon/liblegacy/opd_sample_files.c: changes from 599 above 600 601 2003-10-27 John Levon <levon (a] movementarian.org> 602 603 * daemon/oprofiled.c: fix help text 604 605 * daemon/liblegacy/init.c: 606 * daemon/liblegacy/opd_proc.h: 607 * daemon/liblegacy/opd_proc.c: clean up headers 608 a bit 609 610 2003-10-27 Philippe Elie <phil.el (a] wanadoo.fr> 611 612 * gui/oprof_start.cpp: check we can get kernel interface 613 614 2003-10-27 John Levon <levon (a] movementarian.org> 615 616 * daemon/liblegacy/Makefile.am: remove unneeded 617 -I for abi 618 619 2003-10-27 John Levon <levon (a] movementarian.org> 620 621 * daemon/init.c: 622 * daemon/opd_perfmon.c: move timer interrupt checks 623 into perfmon 624 625 2003-10-27 John Levon <levon (a] movementarian.org> 626 627 * daemon/oprofiled.c: use op_get_interface() 628 629 * libop/op_get_interface.c: simplify 630 631 2003-10-26 Philippe Elie <phil.el (a] wanadoo.fr> 632 633 * gui/ui/oprof_start.base.ui: 634 * gui/oprof_start.cpp: 635 * gui/oprof_start.h: check separate_lib checkbox when 636 separate_kernel_cb is checked 637 638 2003-10-26 Philippe Elie <phil.el (a] wanadoo.fr> 639 640 * utils/opcontrol: allow to reset --image through empty --image= 641 or --image 642 643 2003-10-26 John Levon <levon (a] movementarian.org> 644 645 * daemon/opd_cookie.c: reduce the hash table size somewhat 646 647 * various: fixes for doxygen 648 649 2003-10-26 John Levon <levon (a] movementarian.org> 650 651 * HACKING: 652 * configure.in: 653 * Makefile.am: 654 * dae/: move all of 2.4 daemon code to ... 655 656 * daemon/liblegacy/: here 657 658 * daemon/Makefile.am: 659 * daemon/opd_util.h: 660 * daemon/opd_util.c: move to ... 661 662 * daemon/oprofiled.h: 663 * daemon/oprofiled.c: here, and call the right operations 664 depending upon oprofile kernel version. 665 666 * daemon/init.c: 667 * daemon/liblegacy/init.c: init and running for each version 668 669 2003-10-26 John Levon <levon (a] movementarian.org> 670 671 * daemon/opd_cookie.c: make sure to create the 672 cookie for the ignore value if it's not found 673 674 * daemon/opd_sfile.c: simplify ignored logic 675 676 2003-10-26 John Levon <levon (a] movementarian.org> 677 678 * doc/internals.xml: 679 * doc/buffers.png: add a diagram 680 681 2003-10-26 Philippe Elie <phil.el (a] wanadoo.fr> 682 683 implement image filtering: 684 685 * dae/opd_image.h: add a field filtered 686 * dae/opd_image.c: set it at image creation 687 * dae/opd_proc.c: don't record sample when !image->filtered 688 689 * daemon/opd_cookie.h: add a field filtered 690 * daemon/opd_cookie.c: set it a cookie_entry creation. 691 * daemon/opd_sfile.h: add a field filtered 692 * daemon/opd_file.c: set it a opd_sfile struct creation 693 * daemon/opd_trans.c: record sample if filtered 694 695 * daemon/opd_util.h: export opd_hash_name(), is_image_filtered() 696 * daemon/opd_util.c: implement --image=xxx 697 698 * oprofiled.c: #include "config.h" not <> 699 700 * utils/opcontrol: handle --image 701 702 2003-10-26 John Levon <levon (a] movementarian.org> 703 704 * doc/oprofile.xml: remove some outdated stuff 705 706 2003-10-25 John Levon <levon (a] movementarian.org> 707 708 * doc/internals.xml: more docs 709 710 2003-10-25 John Levon <levon (a] movementarian.org> 711 712 * daemon/opd_perfmon.c: cleanups 713 714 2003-10-24 John Levon <levon (a] movementarian.org> 715 716 * doc/internals.xml: write some more 717 718 2003-10-23 John Levon <levon (a] movementarian.org> 719 720 * configure.in: bump to 0.7.1cvs 721 722 2003-10-22 John Levon <levon (a] movementarian.org> 723 724 * libop/tests/Makefile.am: 725 * libop/tests/load_events_files_tests.c: 726 * libop/tests/alloc_counter_tests.c: fix 727 make distcheck 728 729 * configure.in: bump to 0.7 730 731 2003-10-22 John Levon <levon (a] movementarian.org> 732 733 * daemon/Makefile.am: 734 * daemon/opd_perfmon.h: 735 * daemon/opd_perfmon.c: re-enable. Wait for children. 736 More safety checking. 737 738 * daemon/oprofiled.c: only use perfmon if !timer 739 740 2003-10-20 Philippe Elie <phil.el (a] wanadoo.fr> 741 742 * doc/oprofile.xml: 743 * doc/oprofile.1.in: s/physical CPU/CPU/ 744 745 2003-10-20 John Levon <levon (a] movementarian.org> 746 747 * daemon/Makefile.am: 748 * daemon/opd_perfmon.h: disable perfmon nicely 749 750 * gui/oprof_start.cpp: 751 * gui/oprof_start_config.h: 752 * gui/oprof_start_config.cpp: 753 * gui/ui/oprof_start.base.ui: Fix reading of separate 754 parameters. Add CPU and thread separation 755 756 2003-10-20 Philippe Elie <phil.el (a] wanadoo.fr> 757 758 * libpp/profile_spec.cpp: relative path are relative to current dir 759 not filename. 760 761 2003-10-20 John Levon <levon (a] movementarian.org> 762 763 * doc/oprofile.xml: 764 * doc/opreport.1.in: fix --merge docs and profile specs 765 766 2003-10-20 John Levon <levon (a] movementarian.org> 767 768 * dae/opd_sample_files.c: 769 * daemon/opd_mangling.c: 770 * libabi/abi.cpp: 771 * libabi/abi_test.cpp: 772 * libabi/op_import.cpp: 773 * libop/op_config.h: 774 * libop/op_sample_file.h: 775 * libpp/op_header.cpp: remove ctr and separate_* from 776 header. Re-arrange it a little, and make it 64 bytes 777 on ILP32. Bump the version. 778 779 2003-10-20 John Levon <levon (a] movementarian.org> 780 781 * libpp/arrange_profiles.cpp: rework the clashing-axes 782 error message to be nicer to the user 783 784 2003-10-20 John Levon <levon (a] movementarian.org> 785 786 * libpp/arrange_profiles.cpp: if tid == tgid for 787 every profile class, allow axes of both TID and TGID 788 - there is no actual difference, only theoretical 789 790 2003-10-20 Philippe Elie <phil.el (a] wanadoo.fr> 791 792 * dae/oprofiled.c: correct an error message 793 * libop/op_alloc_counter.h: remove bogus FIXME 794 * libutil++/child_reader.cpp: avoid quadratic behaviour if child does a 795 lot of output in stderr 796 * libpp/opgprof.cpp: fix comment 797 798 2003-10-19 Philippe Elie <phil.el (a] wanadoo.fr> 799 800 * gui/oprof_start.cpp: redundant return 801 802 2003-10-19 John Levon <levon (a] movementarian.org> 803 804 * libop/op_events.c: move to a fixed value for the default 805 event count value 806 807 2003-10-19 Philippe Elie <phil.el (a] wanadoo.fr> 808 809 remove some FIXME: 810 * libpp/format_output.h: remove first_output bool member 811 * libpp/format_output.cpp: call output_header from the right place 812 * libpp/op_header.h: remove bogus FIXME 813 814 * libregex/tests/Makefile.am: fix dependencies on mangled-name file, 815 fix make dist 816 * libregex/tests/mangled-name.in: simplify a bit and remove a bogus 817 FIXME 818 * libregex/tests/regex_test.cpp: fix comment 819 820 * module/ia64/op_syscalls.c: 821 * module/x86/hammer_op_syscalls.c: 822 * module/x86/op_syscalls.c: remove some FIXME 823 824 2003-10-17 Philippe Elie <phil.el (a] wanadoo.fr> 825 826 * libpp/arrange_profiles.cpp: clarify suggestion. 827 * pp/opreport_options.cpp: update options help string for --merge. 828 829 * libpp/profile_container.cpp: 830 * libpp/profile_spec.cpp: 831 * pp/common_option.cpp: 832 * pp/populate.cpp: ';' are not necessary to end namespace 833 834 2003-10-17 Philippe Elie <phil.el (a] wanadoo.fr> 835 836 * libpp/arrange_profiles.cpp: use a set<profile_classes> instead 837 of a vector<...> to replace a O(N*M) by a O(N*log(M)) behavior. 838 (N number of samples files, M number of class). 839 840 2003-10-17 Philippe Elie <phil.el (a] wanadoo.fr> 841 842 * libutil++/op_bfd.cpp: show filename when warning about no debug 843 information available. get_linenr(): s/filename/source_filename/ 844 845 2003-10-16 Philippe Elie <phil.el (a] wanadoo.fr> 846 847 * events/ia64/itanium/events: counter 0,1 not 2,3 for IA64_INST_RETIRED 848 849 * daemon/opd_util.c: opd_parse_events() fix use after free. 850 851 2003-10-16 John Levon <levon (a] movementarian.org> 852 853 * daemon/opd_perfmon.c: disable the code 854 855 2003-10-15 John Levon <levon (a] movementarian.org> 856 857 * daemon/opd_perfmon.c: fflushes to improve 858 order of debug log 859 860 2003-10-15 John Levon <levon (a] movementarian.org> 861 862 * daemon/opd_perfmon.c: fix dumb allocation typo; 863 handle signals correctly; wait for children to 864 come up before returning 865 866 2003-10-15 Philippe Elie <phil.el (a] wanadoo.fr> 867 868 * dae/opd_sample_files.c: 869 * daemon/opd_mangling.c: 870 * daemon/opd_perfmon.c: 871 * daemon/opd_util.c: check we not overflow op_nr_counters 872 873 2003-10-15 Philippe Elie <phil.el (a] wanadoo.fr> 874 875 * events/ia64/itanium/events: correct counter available according 876 to intel doc. 877 878 2003-10-15 John Levon <levon (a] movementarian.org> 879 880 * dae/opd_image.c: 881 * dae/opd_kernel.c: 882 * dae/opd_proc.c: 883 * dae/opd_sample_files.c: 884 * dae/oprofiled.c: 885 * daemon/opd_kernel.c: 886 * daemon/opd_mangling.c: 887 * daemon/opd_sfile.c: 888 * daemon/opd_trans.c: 889 * daemon/opd_util.c: 890 * daemon/opd_util.h: 891 * daemon/oprofiled.c: merge the options handling 892 for dae and daemon 893 894 2003-10-15 Philippe Elie <phil.el (a] wanadoo.fr> 895 896 * daemon/opd_perfmon.c: 897 * module/ia64/op_pmu.c: bit mask for event select field is 8 bits not 7 898 899 2003-10-14 John Levon <levon (a] movementarian.org> 900 901 * configure.in: 902 * m4/findkernel.m4: 903 * utils/opcontrol: 2.5 refs -> 2.6 904 905 2003-10-14 John Levon <levon (a] movementarian.org> 906 907 * utils/opcontrol: merge some 2.4/6 code 908 909 2003-10-14 John Levon <levon (a] movementarian.org> 910 911 * dae/opd_image.c: 912 * dae/opd_sample_files.c: 913 * dae/oprofiled.c: 914 * utils/opcontrol: use --events for 2.4 daemon 915 too 916 917 * daemon/opd_perfmon.c: 918 * daemon/opd_mangling.c: fix counter numbering 919 on !perfmon 920 921 2003-10-14 John Levon <levon (a] movementarian.org> 922 923 * configure.in: xmemdup not xmemdump 924 925 2003-10-14 John Levon <levon (a] movementarian.org> 926 927 * daemon/opd_perfmon.c: propagate a SIGTERM 928 up to the parent. 929 930 2003-10-14 John Levon <levon (a] movementarian.org> 931 932 * m4/perfmon.m4: 933 * configure.in: remove pfmlib checks 934 935 * daemon/opd_util.h: 936 * daemon/opd_util.c: 937 * daemon/opd_mangling.c: 938 * daemon/oprofiled.c: parse more detailed events 939 passed on command line 940 941 * daemon/opd_perfmon.h: 942 * daemon/opd_perfmon.c: don't use libpfm at all, 943 do it ourselves. 944 945 * utils/opcontrol: pass more of the events info to 946 the daemon 947 948 2003-10-14 John Levon <levon (a] movementarian.org> 949 950 * m4/perfmon.m4: 951 * configure.in: look for pfmlib 3 952 953 * daemon/Makefile.am: 954 * daemon/opd_perfmon.h: 955 * daemon/opd_perfmon.c: interface to perfmon on 2.6 IA64 956 957 * daemon/opd_mangling.c: 958 * daemon/oprofiled.c: read event descriptions from command 959 line not oprofilefs 960 961 * daemon/opd_util.h: 962 * daemon/opd_util.c: receive SIGUSR1/2 for perfmon 963 964 * utils/opcontrol: handle multiple oprofileds. Send SIGUSR1/2 965 on start/stop. Pass in events list to oprofiled on 2.6. Don't 966 attempt to fill in oprofilefs with event info if using perfmon. 967 968 2003-10-14 Philippe Elie <phil.el (a] wanadoo.fr> 969 970 * daemon/opd_mangling.c: 971 * daemon/opd_sfile.c: 972 * daemon/opd_sfile.h: protect the sfile we are acting on to be freed 973 by sfile_lru_clear() 974 975 * libdb/db_manage.c: 976 * libdb/odb_hash.h: Do not put hash->descr in an inconsistent state 977 when a failure occur. 978 979 2003-10-13 Philippe Elie <phil.el (a] wanadoo.fr> 980 981 * module/oprofile.c: don't restore syscall and stop counter twice 982 983 2003-10-13 Will Cohen <wcohen (a] redhat.com> 984 985 * libop/op_parse_event.c(parse_events): Correct fprintf. 986 987 2003-10-13 Philippe Elie <phil.el (a] wanadoo.fr> 988 989 * module/x86/hammer_op_syscalls.c: pass tgid to daemon. Not tested! 990 991 2003-10-12 John Levon <levon (a] movementarian.org> 992 993 * utils/opcontrol: share --separate-cpu/thread code now 994 995 2003-10-12 Philippe Elie <phil.el (a] wanadoo.fr> 996 997 * configure.in: add libregex/tests/mangled-name.in 998 * libregex/tests/mangled-name.txt: move ... 999 * libregex/tests/mangled-name.in: here, tune to support different arch 1000 * libregex/tests/Makefile.am: s/mangled-name.txt/mangled-name.in 1001 * libregex/stl.pat.in: fix iterator<... ptrdiff_t> 1002 * libregex/tests/Makefile.am: update according to filename change 1003 1004 * libregex/tests/regex_test.cpp: really fails on exception. 1005 1006 2003-10-12 Philippe Elie <phil.el (a] wanadoo.fr> 1007 1008 * dae/oprofiled.c: don't set cpu_number when !--separate=cpu 1009 1010 * libop/tests/alloc_counter_tests.c: printf format for 64 bits arch 1011 * libop/tests/cpu_type_tests.c: #include <string.h> 1012 * libop/tests/parse_event_tests.c: #include <string.h> 1013 1014 2003-10-11 Philippe Elie <phil.el (a] wanadoo.fr> 1015 1016 * libop/op_interface.h: struct op_sample: remove packed attribute 1017 1018 2003-10-11 Philippe Elie <phil.el (a] wanadoo.fr> 1019 1020 * dae/opd_image.c: 1021 * dae/opd_image.h: reference count opd_image. Remove modification time 1022 checking. Remove hash field. Tidy 1023 * dae/opd_kernel.c: pass tid, tgid to op_get_kernel_image() 1024 * dae/opd_mapping.c: 1025 * dae/opd_mapping.h: use module hash code for image name to index 1026 a cache of name, this hash code is no longer used elsewhere. When 1027 killing map delete associated image, reference count of image 1028 will check for a real delete. 1029 * dae/opd_parse_proc.c: get tgid from /proc/pid/status 1030 * dae/opd_proc.c: create an opd_proc by process when 1031 separate_thread == true. Tidy by adding an opd_for_each_proc() 1032 * dae/opd_proc.h: add tid/tgid to opd_proc struct 1033 * dae/opd_sample_files.c: 1034 * dae/opd_sample_files.h: lru all samples files, allowing to cleanup 1035 a part of the lru if we go out of resource. Remove 1036 opd_handle_old_sample_files() since we no longer check for image 1037 modification time. 1038 * dae/opd_stats.c: 1039 * dae/opd_stats.h: statistics for opd_image struct depth search 1040 * dae/oprofiled.c: add --separate-cpu and --separate-thread 1041 * libop/op_interface.h: add tgid to samples struct passed from module 1042 to daemon. 1043 * module/compat22.h: 1044 * module/compat24.h: op_get_tgid() return tgid, fall back to return 1045 tid on 2.2 kernel. 1046 * module/oprofile.c: 1047 * module/ia64/op_syscalls.c: pass tgid to daemon. NOT TESTED but I 1048 think it's ok. Note than even if it's broken ia64 should work w/o 1049 --separate=thread 1050 * module/x86/op_syscalls.c: pass tgid to daemon. 1051 * utils/opcontrol: enable 2.4 thread/cpu separation 1052 1053 * libdb/tests/db_test.c: verbose on when we provide filename of db file 1054 to test on command line. 1055 1056 2003-10-11 Philippe Elie <phil.el (a] wanadoo.fr> 1057 1058 * libop/op_cpu_type.h: 1059 * libop/op_cpu_type.c: constification 1060 * utils/op_help.c: check only if CPU_NO_GOOD not range 1061 1062 * libutil/tests/Makefile.am: 1063 * libregex/tests/Makefile.am: 1064 * libdb/tests/Makefile.am: s/TEST = (.*)/TESTS = ${check_PROGRAMS}/ 1065 1066 * libop/tests/alloc_counter_tests.c: comment fix 1067 1068 * libop/tests/Makefile.am: 1069 * libop/tests/cpu_type_tests.c: new file, test libop/op_cpu_type.c 1070 1071 2003-10-10 Will Cohen <wcohen (a] redhat.com> 1072 1073 * libop/op_cpu_type.h (op_get_cpu_number): Clarify comment. 1074 * libop/op_cpu_type.c (op_get_cpu_number): Check number. 1075 * utils/op_help.c (main): Make check with CPU_NO_GOOD. 1076 1077 2003-10-10 Will Cohen <wcohen (a] redhat.com> 1078 1079 * libop/op_cpu_type.h (op_get_cpu_number): Declare. 1080 * libop/op_cpu_type.c (op_get_cpu_number): New. 1081 (op_get_cpu_type): Use op_get_cpu_number. 1082 * utils/op_help.c (main): Use op_get_cpu_number. 1083 1084 2003-10-10 John Levon <levon (a] movementarian.org> 1085 1086 * libop/op_parse_event.c: fix compile for IA64 1087 1088 2003-10-09 John Levon <levon (a] movementarian.org> 1089 1090 * doc/oprofile.xml: document "no results" and 1091 how to fix it 1092 1093 2003-10-08 John Levon <levon (a] movementarian.org> 1094 1095 * utils/op_help.c: standardise name 1096 1097 * gui/oprof_start.cpp: Qt 2.3.1 compile fix 1098 (bug 819943) 1099 1100 2003-10-07 Philippe Elie <phil.el (a] wanadoo.fr> 1101 1102 * dae/opd_kernel.c: memory leak 1103 1104 * dae/opd_mapping.c: 1105 * dae/opd_mapping.h: 1106 * dae/opd_parse_proc.c: 1107 * dae/opd_proc.c: 1108 * dae/opd_proc.h: use a list of struct opd_map instead of an array, 1109 remove last_map optimization. 1110 1111 * dae/oprofiled.c: memory leak 1112 1113 * libutil/op_cpufreq.c: memory leak, FILE* leak 1114 * libutil/op_list.h: fix @author 1115 1116 2003-10-06 Philippe Elie <phil.el (a] wanadoo.fr> 1117 1118 * dae/oprofiled.c: 1119 * dae/opd_proc.h: 1120 * dae/opd_proc.c: use struct list_head to chain opd_proc struct in hash 1121 table 1122 1123 * utils/op_help.c: comment fix 1124 1125 2003-10-06 John Levon <levon (a] movementarian.org> 1126 1127 * utils/opcontrol: work around 2.6 daemon's signal 1128 handling race that could cause it to hang during 1129 a --shutdown 1130 1131 2003-10-05 Philippe Elie <phil.el (a] wanadoo.fr> 1132 1133 * events/i386/p4/events: 1134 * events/i386/p4-ht/events: put GLOBAL_POWER_EVENTS on top 1135 1136 * events/i386/pii/unit_masks: 1137 * events/i386/piii/unit_masks: typo in help string 1138 1139 * utils/op_help.c: show "counter: all" instead an enumeration of all 1140 counter 1141 1142 2003-10-02 Philippe Elie <phil.el (a] wanadoo.fr> 1143 1144 * events/*.events *.unit_masks: move these files to subdir named 1145 arch/processor_name/events and arch/processor_name/unit_masks 1146 * events/Makefile.am: update according 1147 1148 * libop/op_events.c: now it's safe to allow loading events file from a 1149 directory provided through environment var OPROFILE_EVENTS_FILE_DIR 1150 * libop/tests/alloc_counter_tests.c: use it 1151 * libop/tests/load_events_files_tests.c: use it 1152 1153 2003-10-02 Philippe Elie <phil.el (a] wanadoo.fr> 1154 1155 * libop/op_events.c: revert last commit (allowed to find events files 1156 description directory in alternate directory) 1157 1158 * libop/tests/Makefile.am: 1159 * libop/tests/load_events_files_tests.c: new files. Validate events 1160 description file by loading them. 1161 1162 * libutil/op_cpufreq.c: comment why we don't have any code handling 1163 s390 1164 1165 2003-10-01 Philippe Elie <phil.el (a] wanadoo.fr> 1166 1167 * configure.in: 1168 * libop/Makefile.am: new subdir 1169 * libop/op_events.c: allow to retrieve events file dir through 1170 environment variable 1171 * utils/op_help.c: move parse_events() and parsed_event struct to ... 1172 * libop/op_parse_event.h: 1173 * libop/op_parse_event.c: these new files 1174 1175 * libop/tests/Makefile.am: new tests subdir 1176 * libop/tests/alloc_counter_tests.c: events mapping to counter nr tests 1177 * libop/tests/parse_event_tests.c: event parsing tests 1178 1179 2003-10-01 Philippe Elie <phil.el (a] wanadoo.fr> 1180 1181 * libop/op_alloc_counter.c: add forward declaration 1182 * libop/op_alloc_counter.c: alloc counter in increasing number order, 1183 it's less surprising. 1184 1185 2003-10-01 Philippe Elie <phil.el (a] wanadoo.fr> 1186 1187 * libdb/tests/db_test.c: if previous tests fails a corrupted samples 1188 file can exist in test dir and will be re-used, remove() it. 1189 1190 2003-10-01 John Levon <levon (a] movementarian.org> 1191 1192 * daemon/opd_sfile.c: 1193 * libabi/op_import.cpp: 1194 * libop/op_interface.h: 1195 * libpp/locate_images.h: small cleanups 1196 1197 * pp/opreport_options.cpp: don't complain about 1198 "-x -m all" 1199 1200 2003-09-28 Philippe Elie <phil.el (a] wanadoo.fr> 1201 1202 * libutil/op_file.c: 1203 * libutil/tests/file_tests.c: honor posix "//" filename namespace 1204 1205 2003-09-28 Philippe Elie <phil.el (a] wanadoo.fr> 1206 1207 * libop/op_alloc_counter.h: 1208 * libop/op_alloc_counter.c: change allocator by a backtracking 1209 algorithm walking only through possible solution. 1210 1211 2003-09-26 Philippe Elie <phil.el (a] wanadoo.fr> 1212 1213 * libdb/tests/db_test.c: success must be silent 1214 * dae/oprofiled.c: 1215 * daemon/oprofiled.c: 1216 * libutil/op_deviceio.c: 1217 * libutil/op_deviceio.h: op_open_device(): remove unused parameter 1218 fatal 1219 1220 2003-09-26 Philippe Elie <phil.el (a] wanadoo.fr> 1221 1222 * libutil/tests/file_tests.c: Fix some test: in some case the pathname 1223 component must be valid since we lstat() them. Fix a segfault due 1224 to missing ',' 1225 1226 2003-09-26 John Levon <levon (a] movementarian.org> 1227 1228 * libdb/tests/Makefile.am: 1229 * libregex/tests/Makefile.am: 1230 * libutil/tests/Makefile.am: don't build tests 1231 unless "make check" 1232 1233 2003-09-26 John Levon <levon (a] movementarian.org> 1234 1235 * libutil/op_file.c: don't test for NULL path 1236 passed in, we want to crash here instead of 1237 in xstrdup 1238 1239 * configure.in: 1240 * libutil/Makefile.am: 1241 * libutil/tests/Makefile.am: 1242 * libutil/tests/file_tests.c: 1243 * libutil/tests/string_tests.c: add some unit tests 1244 for libutil string and path handling 1245 1246 2003-09-26 Philippe Elie <phil.el (a] wanadoo.fr> 1247 1248 * libdb/db_debug.c: remove useless display interface 1249 * libdb/db_db_travel.c: remove callback interface 1250 * libdb/odb_hash.h: remove display/callback interface 1251 * libdb/db_test.cpp: move to tests subdir 1252 * libdb/Makefile.am: update according 1253 * libdb/tests: new dir 1254 * libdb/tests/.cvsignore: 1255 * libdb/tests/Makefile.am: new files 1256 * libdb/tests/db_test.cpp: shorter tests 1257 1258 * libregex/mangled-name.txt: 1259 * libregex/regex_testc.cpp: move to ... 1260 * libregex/tests: new directory 1261 * libdb/Makefile.am: update according 1262 * libregex/tests/.cvsignore: 1263 * libregex/tests/Makefile.am: new files 1264 1265 2003-09-26 John Levon <levon (a] movementarian.org> 1266 1267 * libabi/abi_test.cpp: 1268 * libabi/op_import.cpp: small cleanups 1269 1270 2003-09-25 John Levon <levon (a] movementarian.org> 1271 1272 * daemon/opd_cookie.c: 1273 * daemon/opd_kernel.c: 1274 * daemon/opd_sfile.c: 1275 * daemon/opd_trans.c: 1276 * daemon/oprofiled.c: trivial cleanups 1277 1278 2003-09-25 Marc Herbert <marc.herbert (a] ens-lyon.fr> 1279 1280 * configure.in: fix prefix stuff to allow stow 1281 to work 1282 1283 2003-09-25 Philippe Elie <phil.el (a] wanadoo.fr> 1284 1285 * pch-c++.h: remove 1286 * Makefile.am: update according 1287 * configure.in: no longer need for conditional enable_pch 1288 * m4/precompiledheader.m4: don't use -Winvalid-pch 1289 1290 2003-09-25 Philippe Elie <phil.el (a] wanadoo.fr> 1291 1292 * daemon/opd_sfile.c: sfile_lru_clear() return 0 if lru is empty 1293 * daemon/opd_mangling.c: abort() if lru was empty (not tested) 1294 * daemon/oprofiled.c: likewise; opd_alarm(): don't sfile_lru_clear() 1295 1296 * utils/op_help.c: 1297 * daemon/opd_sfile.h: 1298 * daemon/opd_cookie.h: s/()/(void)/ in some function prototype and 1299 definition 1300 1301 * daemon/opd_cookie.c: s/"not looked up"/"not hashed"/ 1302 1303 2003-09-25 John Levon <levon (a] movementarian.org> 1304 1305 * daemon/oprofiled.c: push rlimit down back to 2048. 1306 This gives a running RSS of about 10Mb when thread 1307 profiling on my box, which seems reasonable (at 8192 1308 it was hitting 40Mb) 1309 1310 2003-09-25 Philippe Elie <phil.el (a] wanadoo.fr> 1311 1312 * doc/oprofile.xml: clarify what means a configured kernel. 1313 1314 2003-09-25 John Levon <levon (a] movementarian.org> 1315 1316 * daemon/opd_sfile.c: bump LRU_AMOUNT to 1000 1317 1318 2003-09-24 John Levon <levon (a] movementarian.org> 1319 1320 * doc/opcontrol.1.in: 1321 * doc/oprofile.xml: document thread and cpu 1322 profiling a bit 1323 1324 * daemon/opd_mangling.c: 1325 * daemon/opd_sfile.c: 1326 * daemon/oprofiled.c: 1327 * utils/opcontrol: implement per-CPU profiling, 1328 not tested yet 1329 1330 2003-09-24 John Levon <levon (a] movementarian.org> 1331 1332 * dae/opd_proc.c: 1333 * dae/opd_sample_files.c: 1334 * daemon/opd_mangling.c: 1335 * daemon/opd_sfile.c: 1336 * libabi/abi_test.cpp: 1337 * libabi/op_import.cpp: 1338 * libdb/db_insert.c: 1339 * libdb/db_manage.c: 1340 * libdb/db_test.c: 1341 * libdb/odb_hash.h: 1342 * libpp/op_header.cpp: 1343 * libpp/profile.cpp: remove samples_odb_t.err_msg 1344 entirely - prefer UNIX-style errno returns. Modify 1345 error messages to match 1346 1347 2003-09-24 John Levon <levon (a] movementarian.org> 1348 1349 * dae/opd_sample_files.c: 1350 * daemon/opd_sample_files.c: 1351 * libpp/op_header.cpp: 1352 * libpp/profile.cpp: 1353 * libabi/abi_test.cpp: 1354 * libabi/op_import.cpp: 1355 * libdb/db_test.c: 1356 * libdb/odb_hash.h: 1357 * libdb/odb_manage.c: make odb_open return errno 1358 instead of EXIT_FAILURE/SUCCESS to allow EMFILE 1359 handling. Also do not leak fd's on failure. 1360 1361 * libutil/op_types.h: cookie_t moved into daemon/ 1362 1363 * daemon/: major rewrite: move to a hash on all 1364 parameters of struct transient. Lots of readability 1365 cleanups, plus resistance to cookie lookup failures, 1366 and hitting open file limits. Additionally thread 1367 profiling for kernel threads is enabled now. 1368 1369 2003-09-24 John Levon <levon (a] movementarian.org> 1370 1371 * daemon/opd_image.c: remove support for missing 1372 CTX_TGID 1373 1374 2003-09-24 John Levon <levon (a] movementarian.org> 1375 1376 * daemon/oprofiled.c: remove /proc/kcore support 1377 1378 2003-09-22 Philippe Elie <phil.el (a] wanadoo.fr> 1379 1380 * dae/opd_parse_proc.c: both op_file.h and op_fileio.h are needed 1381 1382 2003-09-22 John Levon <levon (a] movementarian.org> 1383 1384 * doc/CodingStyle: document doxygen placing rule 1385 1386 * libop/op_alloc_counter.h: 1387 * libop/op_get_interface.c: 1388 * libutil++/file_manip.cpp: 1389 * libutil++/file_manip.h: 1390 * libutil++/op_bfd.cpp: 1391 * libutil++/op_bfd.h: 1392 * libutil/op_deviceio.c: 1393 * libutil/op_deviceio.h: 1394 * libutil/op_get_time.c: 1395 * libutil/op_get_time.h: 1396 * libutil/op_libiberty.c: 1397 * libutil/op_libiberty.h: 1398 * libutil/op_lockfile.c: 1399 * libutil/op_lockfile.h: 1400 * libutil/op_popt.c: 1401 * libutil/op_popt.h: follow the above 1402 1403 * libutil/op_file.c: 1404 * libutil/op_file.h: 1405 * libutil/op_fileio.c: 1406 * libutil/op_fileio.h: 1407 * dae/opd_parse_proc.c: 1408 * libutil++/string_manip.cpp: move op_get_link to 1409 op_file 1410 1411 2003-09-22 John Levon <levon (a] movementarian.org> 1412 1413 * libutil/op_fileio.h: 1414 * libutil/op_fileio.c: warn about op_get_link() 1415 restrictions 1416 1417 * libutil++/file_manip.h: 1418 * libutil++/file_manip.cpp: s/op_read_link/op_follow_link, 1419 and behaviour change to match 1420 1421 * libpp/profile_spec.cpp: 1422 * gui/oprof_start_util.cpp: use op_follow_link 1423 1424 2003-09-22 Philippe Elie <phil.el (a] wanadoo.fr> 1425 1426 * dae/makefile.am: missing AM_CFLAGS setting 1427 1428 * dae/oprofiled.c: 1429 * daemon/oprofiled.c: handle signal in read loop 1430 * daemon/opd_util.h: 1431 * daemon/opd_util.c: move opd_setup_signal() from dae/ daemon/ 1432 1433 2003-09-22 John Levon <levon (a] movementarian.org> 1434 1435 * dae/oprofiled.c: 1436 * daemon/oprofiled.c: mask SIGTERM too to prevent 1437 the possibility of empty sample files 1438 1439 2003-09-21 Philippe Elie <phil.el (a] wanadoo.fr> 1440 1441 * libpp/format_output.h: 1442 * libpp/format_output.cpp: 1443 * pp/opreport.cpp: format_output::show_header no hide_header 1444 1445 2003-09-21 Philippe Elie <phil.el (a] wanadoo.fr> 1446 1447 * doc/opreport.1.in: 1448 * doc/oprofile.xml: 1449 * libpp/format_output.h: 1450 * libpp/format_output.cpp: 1451 * pp/opreport.cpp: --global_percent must be effective for detailed 1452 output too 1453 1454 2003-09-21 John Levon <levon (a] movementarian.org> 1455 1456 * pp/opreport_options.cpp: prevent --global-percent 1457 when appropriate 1458 1459 2003-09-21 John Levon <levon (a] movementarian.org> 1460 1461 * Makefile.am: back out broken make clean change 1462 1463 2003-09-21 John Levon <levon (a] movementarian.org> 1464 1465 * Makefile.am: make clean now removes *.html 1466 1467 * internals.xml: add some outline sections 1468 1469 2003-09-21 John Levon <levon (a] movementarian.org> 1470 1471 * doc/internals.xml: provide a short overview 1472 and start a glossary 1473 1474 * libpp/count_array.h: 1475 * libpp/format_output.cpp: 1476 * libpp/format_output.h: 1477 * libpp/profile.cpp: 1478 * libpp/profile.h: 1479 * libpp/profile_container.cpp: 1480 * libpp/profile_container.h: 1481 * pp/opreport.cpp: replace residual references to 1482 count groups with profile class concept 1483 1484 2003-09-21 John Levon <levon (a] movementarian.org> 1485 1486 * doc/Makefile.am: 1487 * doc/internals.xml: start an internals manual ... 1488 1489 2003-09-19 John Levon <levon (a] movementarian.org> 1490 1491 * pp/image_errors.cpp: missing include 1492 1493 2003-09-19 John Levon <levon (a] movementarian.org> 1494 1495 * libopt++/popt_options.h: 1496 * libopt++/popt_options.cpp: remove additional_help 1497 stuff, unused for some time 1498 1499 2003-09-18 John Levon <levon (a] movementarian.org> 1500 1501 * libutil++/Makefile.am: 1502 * libutil++/image_flags.h: move to ... 1503 1504 * libpp/Makefile.am: 1505 * libpp/image_error.h: ... here, and rename 1506 1507 * libutil++/op_bfd.h: 1508 * libutil++/op_bfd.cpp: take an in-out bool 1509 instead of image_flags 1510 1511 * libpp/arrange_profiles.cpp: 1512 * libpp/arrange_profiles.h: 1513 * libpp/locate_images.cpp: 1514 * libpp/locate_images.h: 1515 * libpp/profile_spec.cpp: 1516 * pp/image_errors.cpp: 1517 * pp/opgprof.cpp: 1518 * pp/populate.cpp: changes from above 1519 1520 2003-09-18 John Levon <levon (a] movementarian.org> 1521 1522 * libutil++/Makefile.am: 1523 * libutil++/image_flags.h: flags for image read failure 1524 1525 * libpp/profile_spec.cpp: 1526 * libpp/locate_images.h: 1527 * libpp/locate_images.cpp: 1528 * libpp/arrange_profiles.h: 1529 * libpp/arrange_profiles.cpp: use image_flags 1530 1531 * libutil++/op_bfd.h: 1532 * libutil++/op_bfd.cpp: use image_flags, no longer error 1533 out on format failure 1534 1535 * pp/Makefile.am: 1536 * pp/image_errors.cpp: 1537 * pp/image_errors.h: errors previously reported in locate_images 1538 are now reported here by the client 1539 1540 * pp/opannotate.cpp: 1541 * pp/opgprof.cpp: 1542 * pp/opgprof_options.cpp: 1543 * pp/opreport.cpp: 1544 * pp/populate.h: 1545 * pp/populate.cpp: use the above 1546 1547 2003-09-18 Philippe Elie <phil.el (a] wanadoo.fr> 1548 1549 * libpp/format_output.cpp: use 9 not 12 for % field width 1550 * libutil++/string_manip.cpp: shrink 100.0000 to 100.000 1551 * pp/opreport.cpp: s/" "/' ' 1552 1553 2003-09-18 John Levon <levon (a] movementarian.org> 1554 1555 * pp/opannotate_options.cpp: 1556 * pp/opreport_options.cpp: clean up error messages 1557 1558 * pp/opgprof_options.h: 1559 * pp/opgprof_options.cpp: 1560 * pp/opgprof.cpp: use inverted_profile API 1561 1562 2003-09-18 Philippe Elie <phil.el (a] wanadoo.fr> 1563 1564 * utils/opcontrol: overwrite all current settings with --separate, 1565 this change behavior of --separate=kernel,library now we really setup 1566 both in this case. 1567 1568 2003-09-18 John Levon <levon (a] movementarian.org> 1569 1570 * libpp/locate_images.cpp: rewrite a little 1571 1572 * libutil++/op_bfd.cpp: set fsize to default to -1, 1573 for fake artificial symbol 1574 1575 2003-09-18 Philippe Elie <phil.el (a] wanadoo.fr> 1576 1577 * libpp/locate_images.h: 1578 * libpp/locate_images.cpp: find_module_path() extra bool parameter 1579 to know if we fail to retrieve the image. 1580 * libpp/arrange_profiles.h: 1581 * libpp/arrange_profiles.cpp: use it and save this bool in 1582 inverted_profile struct 1583 * libpp/profile_spec.cpp: update caller according 1584 1585 * libutil++/op_bfd.h: 1586 * libutil++/op_bfd.cpp: use the above change to create fake op_bfd 1587 1588 * pp/opgprof_options.cpp: 1589 * pp/opgprof.cpp: update caller but never allow fake op_bfd 1590 1591 * pp/populate.cpp: allow to create fake op_bfd 1592 1593 1594 2003-09-18 John Levon <levon (a] movementarian.org> 1595 1596 * dae/opd_image.c: 1597 * dae/opd_proc.c: 1598 * dae/opd_sample_files.c: 1599 * dae/oprofiled.c: 1600 * daemon/opd_image.c: 1601 * daemon/opd_image.h: 1602 * daemon/opd_kernel.c: 1603 * daemon/opd_sample_files.c: 1604 * daemon/oprofiled.c: 1605 * gui/oprof_start.cpp: 1606 * gui/oprof_start_config.cpp: 1607 * gui/oprof_start_config.h: 1608 * gui/ui/oprof_start.base.ui: 1609 * libabi/abi.cpp: 1610 * libabi/abi_test.cpp: 1611 * libabi/op_import.cpp: 1612 * libop/op_sample_file.h: 1613 * libpp/op_header.cpp: 1614 * utils/opcontrol: renamings of separate stuff 1615 1616 2003-09-17 Philippe Elie <phil.el (a] wanadoo.fr> 1617 1618 * dae/opd_kernel.c: thinko in opd_get_module_info(): we must take 1619 care to re-use a previously created module not to create a new 1620 1621 2003-09-17 John Levon <levon (a] movementarian.org> 1622 1623 * daemon/opd_kernel.c: logging improvements 1624 1625 2003-09-17 Philippe Elie <phil.el (a] wanadoo.fr> 1626 1627 * dae/opd_kernel.c: 1628 * daemon/opd_kernel.c: fix use after free of module 1629 1630 2003-09-17 John Levon <levon (a] movementarian.org> 1631 1632 * daemon/opd_image.c: fix thread profiling when 1633 --separate-library=0 1634 1635 2003-09-17 Philippe Elie <phil.el (a] wanadoo.fr> 1636 1637 * dae/opd_kernel.c: add module to list of module ... 1638 * daemon/opd_kernel.c: s/print/verbprintf 1639 1640 2003-09-17 Philippe Elie <phil.el (a] wanadoo.fr> 1641 1642 * libop/op_config.h: remove OPD_MAX_MODULEs 1643 * dae/opd_kernel.c: 1644 * daemon/opd_kernel.c: remove fixed array of modules replaced by 1645 a list. Unify the way we create opd_module 1646 * utils/opcontrol: don't use --thread-profiling for 2.4 1647 1648 2003-09-17 Ka Fai Lu <kafai0928 (a] yahoo.com> 1649 1650 I adapted slightly this patch Phil. 1651 * daemon/opd_image.c: 1652 * daemon/opd_image.h: 1653 * daemon/opd_kernel.c: 1654 * daemon/opd_sample_files.c: 1655 * daemon/oprofiled.c: 1656 * utils/opcontrol: implement per thread profiling 1657 1658 2003-09-16 Philippe Elie <phil.el (a] wanadoo.fr> 1659 1660 * libopt++/popt_options.h: 1661 * libpp/locate_images.cpp: minor tidy 1662 1663 2003-09-16 John Levon <levon (a] movementarian.org> 1664 1665 * utils/opcontrol: don't pass pid/pgrp filter 1666 to 2.6 daemon 1667 1668 * dae/oprofiled.c: 1669 * daemon/oprofiled.c: setrlimit to 8192 (lame 1670 workaround for now), minor cleanups 1671 1672 2003-09-15 John Levon <levon (a] movementarian.org> 1673 1674 * common_option.cpp: rename the array to 1675 avoid a link error in GCC 3.4 1676 1677 2003-09-15 John Levon <levon (a] movementarian.org> 1678 1679 * libop/Makefile.am: 1680 * libop/op_interface_25.h: move to ... 1681 1682 * daemon/Makefile.am: 1683 * daemon/opd_interface.h: ... here 1684 1685 * daemon/opd_image.c: 1686 * daemon/oprofiled.c: use above. Remove pointless 1687 command line options. 1688 1689 * libop/op_config_25.h: remove. 1690 1691 * libop/op_hw_config.h: move DCOOKIE_SHIFT to 1692 opd_interface.h 1693 1694 2003-09-15 John Levon <levon (a] movementarian.org> 1695 1696 * configure.in: use -Wdeclaration-after-statement 1697 if available 1698 1699 * README: 1700 * daemon/opd_util.c: 1701 * daemon/opd_util.h: 1702 * doc/opannotate.1.in: 1703 * doc/opgprof.1.in: 1704 * doc/opreport.1.in: 1705 * doc/oprofile.1.in: 1706 * doc/oprofile.xml: 1707 * gui/oprof_start.cpp: 1708 * gui/oprof_start_util.cpp: 1709 * libop/op_cpu_type.c: 1710 * libop/op_cpu_type.h: 1711 * libop/op_get_interface.c: 1712 * libpp/locate_images.cpp: remove references to 1713 2.5, replaced with 2.6 1714 1715 2003-09-15 John Levon <levon (a] movementarian.org> 1716 1717 * doc/opreport.1.in: document --show-address 1718 1719 2003-09-15 John Levon <levon (a] movementarian.org> 1720 1721 * libpp/arrange_profiles.cpp: 1722 * libpp/arrange_profiles.h: 1723 * pp/populate.cpp: more commentary 1724 1725 2003-09-14 Philippe Elie <phil.el (a] wanadoo.fr> 1726 1727 * pp/opreport.cpp: handle 2.95 right io manipulator and the lack 1728 of a proper setw(w) << std::string 1729 1730 2003-09-14 John Levon <levon (a] movementarian.org> 1731 1732 * pp/opreport.cpp: re-add header for image summary 1733 1734 2003-09-14 John Levon <levon (a] movementarian.org> 1735 1736 * libpp/arrange_profiles.cpp: throw an exception 1737 if there are two many unmerged profiles, with details 1738 of how to fix it 1739 1740 * pp/opgprof_options.cpp: 1741 * pp/common_option.cpp: clean up error messages 1742 1743 2003-09-14 John Levon <levon (a] movementarian.org> 1744 1745 * libpp/arrange_profiles.h: 1746 * libpp/arrange_profiles.cpp: add location of 1747 images when inverting profiles 1748 1749 * libpp/locate_images.cpp: return empty string 1750 if file isn't readable 1751 1752 * pp/opannotate.cpp: use the above 1753 1754 * pp/opreport.cpp: use the above; place warnings 1755 before any other output 1756 1757 2003-09-14 John Levon <levon (a] movementarian.org> 1758 1759 * pp/opgprof_options.cpp: use locate_image_path 1760 1761 2003-09-14 John Levon <levon (a] movementarian.org> 1762 1763 * Makefile.am: 1764 * populate.h: 1765 * populate.cpp: shared code for populating from 1766 inverted profiles 1767 1768 * opreport.cpp: 1769 * opannotate.cpp: use above 1770 1771 2003-09-14 John Levon <levon (a] movementarian.org> 1772 1773 * libpp/arrange_profiles.h: 1774 * libpp/arrange_profiles.cpp: add invert_profiles 1775 1776 * pp/opreport.cpp: use it 1777 1778 2003-09-14 John Levon <levon (a] movementarian.org> 1779 1780 * doc/oprofile.xml: 1781 * pp/opreport.cpp: 1782 * pp/opreport_options.cpp: 1783 * pp/opreport_options.h: Turn off VMA report by 1784 default, add --show-address 1785 1786 2003-09-14 John Levon <levon (a] movementarian.org> 1787 1788 * pp/opreport.cpp: nice formatting of image report 1789 column headers, respect --no-header 1790 1791 2003-09-14 Philippe Elie <phil.el (a] wanadoo.fr> 1792 1793 * libpp/arrange_profiles.cpp: use string::erase() not string::clear() 1794 for 2.95 1795 1796 * libutil++/generic_spec.h: allow to ignore "all" match 1797 * libutil++/comma_list.h: use it 1798 1799 2003-09-14 John Levon <levon (a] movementarian.org> 1800 1801 * pp/opreport.cpp: output column headers for 1802 image report 1803 1804 2003-09-14 John Levon <levon (a] movementarian.org> 1805 1806 * libpp/op_header.h: 1807 * libpp/op_header.cpp: output header info to 1808 a string not a stream 1809 1810 * libpp/arrange_profiles.h: 1811 * libpp/arrange_profiles.cpp: give classes a long 1812 name, and fill in global event/cpu info 1813 1814 * pp/opannotate.cpp: 1815 * pp/opannotate_options.cpp: 1816 * pp/opannotate_options.h: 1817 * pp/opgprof_options.cpp: 1818 * pp/opreport.cpp: 1819 * pp/opreport_options.cpp: 1820 * pp/opreport_options.h: use the class long names 1821 and info 1822 1823 2003-09-14 Philippe Elie <phil.el (a] wanadoo.fr> 1824 1825 * libpp/profile_spec.cpp: handle symlink 1826 1827 2003-09-14 John Levon <levon (a] movementarian.org> 1828 1829 * arrange_profiles.h: 1830 * arrange_profiles.cpp: Add code to give short names 1831 to each class, unused yet 1832 1833 2003-09-14 Philippe Elie <phil.el (a] wanadoo.fr> 1834 1835 * libpp/arrange_profiles.cpp: missing include<> with gcc 2.95 1836 1837 2003-09-14 John Levon <levon (a] movementarian.org> 1838 1839 * libpp/Makefile.am: 1840 * libpp/split_sample_filename.cpp: 1841 * libpp/split_sample_filename.h: rename as ... 1842 1843 * libpp/parse_filename.cpp: 1844 * libpp/parse_filename.h: ... this 1845 1846 * libpp/filename_spec.cpp: 1847 * libpp/arrange_profiles.cpp: 1848 * libpp/arrange_profiles.h: sort classes for niceness, 1849 changes from above 1850 1851 * pp/opreport.cpp: remove needless double check of 1852 exclude_dependent 1853 1854 * libutil++/string_manip.cpp: touint should init to 0 1855 in case of parse failure 1856 1857 2003-09-14 Philippe Elie <phil.el (a] wanadoo.fr> 1858 1859 * configure.in: fix maximum template depth to 50 1860 * libutil/op_fileio.c: op_get_link() don't truncate silently results 1861 * m4/sstream.m4: use OP_CXXFLAGS not CXXFLAGS 1862 1863 2003-09-14 John Levon <levon (a] movementarian.org> 1864 1865 * pp/partition_files.h: 1866 * pp/partition_files.cpp: remove, now unused 1867 1868 2003-09-14 John Levon <levon (a] movementarian.org> 1869 1870 * pp/opannotate.cpp: 1871 * pp/opannotate_options.cpp: 1872 * pp/opannotate_options.h: use arrange_profiles API 1873 1874 2003-09-14 John Levon <levon (a] movementarian.org> 1875 1876 * pp/opgprof_options.h: 1877 * pp/opgprof_options.cpp: 1878 * pp/opgprof.cpp: use arrange_profiles API 1879 1880 2003-09-14 John Levon <levon (a] movementarian.org> 1881 1882 * libpp/Makefile.am: 1883 * libpp/arrange_profiles.cpp: 1884 * libpp/arrange_profiles.h: introduce new 1885 code for partitioning profiles and handling 1886 merging 1887 1888 * libpp/partition_files.h: 1889 * pp/opreport_options.cpp: 1890 * pp/opreport_options.h: 1891 * pp/opreport.cpp: use the above code 1892 1893 * libpp/format_flags.h: 1894 * libpp/profile_container.cpp: remove unneeded 1895 multiple apps hint 1896 1897 * libpp/count_array.cpp: 1898 * libpp/count_array.h: remove unnecessary code 1899 1900 2003-09-14 John Levon <levon (a] movementarian.org> 1901 1902 * configure.in: back to 0.7cvs 1903 1904 2003-09-14 John Levon <levon (a] movementarian.org> 1905 1906 * pp/opannotate.cpp: gcc 2.91 workaround 1907 (in 0.6.1 release) 1908 1909 2003-09-14 John Levon <levon (a] movementarian.org> 1910 1911 * configure.in: bump to 0.6.1 1912 1913 2003-09-13 John Levon <levon (a] movementarian.org> 1914 1915 * doc/oprofile.xml: document "incorrect source attribution" 1916 a bit 1917 1918 2003-09-12 Philippe Elie <phil.el (a] wanadoo.fr> 1919 1920 * libpp/op_header.cpp: typo in comment 1921 1922 2003-09-11 John Levon <levon (a] movementarian.org> 1923 1924 * configure.in: check for -lintl, tweak -ldl check 1925 1926 2003-09-11 John Levon <levon (a] movementarian.org> 1927 1928 * dae/oprofiled.c: 1929 * daemon/oprofiled.c: 1930 * libdb/db_manage.c: 1931 * libdb/db_test.c: correct headers 1932 1933 2003-09-11 John Levon <levon (a] movementarian.org> 1934 1935 * op_lockfile.c: use correct headers 1936 1937 2003-09-07 Philippe Elie <phil.el (a] wanadoo.fr> 1938 1939 * utils/op_help.c: check than all events are distincts 1940 1941 2003-09-06 Philippe Elie <phil.el (a] wanadoo.fr> 1942 1943 * pch-c++.h: 1944 * m4/precompiledheader.m4: new file to handle precompiled header 1945 * m4/Makefile.am: 1946 * configure.in: 1947 * Makefile.am: handle precompiled header 1948 1949 2003-09-05 John Levon <levon (a] movementarian.org> 1950 1951 * opd_image.c: cleanup of ctx_switch_set_image() 1952 1953 2003-09-05 Philippe Elie <phil.el (a] wanadoo.fr> 1954 1955 * daemon/opd_image.c: After a context switch ensure we update correctly 1956 the current image. 1957 1958 2003-09-04 Philippe Elie <phil.el (a] wanadoo.fr> 1959 1960 * pp/opreport.cpp: 1961 * pp/opannotate.cpp: catch op_bfd exception and recover gracefully 1962 1963 2003-09-04 Philippe Elie <phil.el (a] wanadoo.fr> 1964 1965 * utils/opcontrol: tweak "signaling daemon " message as suggested 1966 by Carlo Wood 1967 1968 2003-09-04 John Levon <levon (a] movementarian.org> 1969 1970 * doc/oprofile.xml: mention --reset in 1971 "Getting Started" 1972 1973 2003-09-03 John Levon <levon (a] movementarian.org> 1974 1975 * libop/op_events.c: 1976 * libpp/op_header.cpp: 1977 * dae/opd_sample_files.c: 1978 * daemon/opd_sample_files.c: propagate event 1979 error back up to caller 1980 1981 * libdb/odb_hash.h: fix comment 1982 1983 2003-09-02 John Levon <levon (a] movementarian.org> 1984 1985 * dae/opd_image.c: 1986 * dae/opd_proc.c: 1987 * dae/oprofiled.c: 1988 * daemon/opd_image.c: use abort() not exit() 1989 on "can't happen" errors 1990 1991 2003-09-02 John Levon <levon (a] movementarian.org> 1992 1993 * dae/opd_proc.c: 1994 * daemon/opd_image.c: fix error message 1995 1996 2003-08-28 Philippe Elie <phil.el (a] wanadoo.fr> 1997 1998 * events/alpha.ev6.events: fix duplicate um tag 1999 2000 2003-08-28 John Levon <levon (a] movementarian.org> 2001 2002 * events/i386.athlon.events: fix duplicate minimum tag 2003 2004 * daemon/opd_image.c: 2005 * libop/op_events.c: check for duplicate tags 2006 2007 2003-08-28 John Levon <levon (a] movementarian.org> 2008 2009 2010 2003-08-27 Will Cohen <wcohen (a] redhat.com> 2011 2012 * utils/op_help.c (resolve_events): Typecast printf argument. 2013 2014 2003-08-25 Philippe Elie <phil.el (a] wanadoo.fr> 2015 2016 * pp/opannotate_options.cpp: 2017 * pp/opannotate_options.h: 2018 * pp/opannotate.cpp: enable multiple events 2019 2020 * pp/opreport_options.cpp: remove #if 0 .... #endif 2021 2022 2003-08-25 Philippe Elie <phil.el (a] wanadoo.fr> 2023 2024 * libpp/count_array.cpp: avoid to access invalid memory 2025 2026 2003-08-25 Philippe Elie <phil.el (a] wanadoo.fr> 2027 2028 * configure.in: 2029 * m4/builtinexpect.m4: 2030 * m4/configmodule.m4: 2031 * module/Makefile.in: 2032 * module/ia64/Makefile.in: 2033 * module/x86/makefile.in: always use EXTRA_CFLAGS_MODULE not 2034 EXTRA_CFLAGS for module build flags 2035 2036 2003-08-23 Philippe Elie <phil.el (a] wanadoo.fr> 2037 2038 * libregex/op_regex.h: 2039 * libregex/op_regex.cpp: tidy 2040 2041 * libutil++/op_bfd.cpp: remove obsolete comment 2042 2043 2003-08-23 Philippe Elie <phil.el (a] wanadoo.fr> 2044 2045 * libutil++/file_manip.h: 2046 * libutil++/file_manip.cpp: is_directory(dirname): return true if 2047 dirname exists 2048 * pp/common_option.cpp: validate --image-path parameters 2049 2050 2003-08-22 Philippe Elie <phil.el (a] wanadoo.fr> 2051 2052 * events/i386.p4.events: clarify than 128BIT_MMX_UOP count only integer 2053 SSE2 ops 2054 * pp/opreport.cpp: minor spacing change in output 2055 2056 2003-08-22 John Levon <levon (a] movementarian.org> 2057 2058 * daemon/oprofiled.c: report the kernel pointer size 2059 2060 2003-08-22 John Levon <levon (a] movementarian.org> 2061 2062 * daemon/oprofiled.c: read new /dev/oprofile/pointer_size 2063 in preference to kcore. kcore code will eventually go. 2064 2065 2003-08-21 John Levon <levon (a] movementarian.org> 2066 2067 * libutil++/op_bfd.cpp: update gcc2_compiled. comment 2068 to reflect reality 2069 2070 2003-08-19 Philippe Elie <phil.el (a] wanadoo.fr> 2071 2072 * pp/opreport.cpp: really merge when --merge=lib and image name are 2073 specified. 2074 2075 2003-08-16 Philippe Elie <phil.el (a] wanadoo.fr> 2076 2077 * pp/opannotate.cpp: output threshold percent when necessary. 2078 2079 2003-08-16 Philippe Elie <phil.el (a] wanadoo.fr> 2080 2081 * libutil++/op_bfd.cpp: remove ELF-based symbol size code 2082 2083 2003-08-15 William Cohen <wcohen (a] redhat.com> 2084 2085 * doc/opcontrol.1.in: 2086 * doc/oprofile.1.in: 2087 * doc/oprofile.xml: Correct path to /root/.oprofile/daemonrc. 2088 2089 2003-08-15 Thomas Spatzier <TSPAT (a] de.ibm.com> 2090 2091 * daemon/opd_cookie.h: fix s390 syscall 2092 2093 2003-08-14 Philippe Elie <phil.el (a] wanadoo.fr> 2094 2095 * libutil++/string_manip.cpp: erase_to_last_of() is not a ltrim() 2096 2097 2003-08-14 Philippe Elie <phil.el (a] wanadoo.fr> 2098 2099 Dave Jones suggested this change. 2100 2101 * module/x86/op_model_p4.c: remove superflous ';' at end of some macro 2102 2103 2003-08-14 Philippe Elie <phil.el (a] wanadoo.fr> 2104 2105 * libutil++/string_manip.h: remove erase_from_last_of() 2106 * libutil++/string_manip.cpp: and tidy erase_to_last_of(), rtrim() and 2107 ltrim() 2108 2109 2003-08-13 Philippe Elie <phil.el (a] wanadoo.fr> 2110 2111 * libutil++/op_bfd.h: 2112 * libpp/profile_container.cpp: remove nil_symbol_index 2113 2114 2003-08-13 John Levon <levon (a] movementarian.org> 2115 2116 * libpp/profile_container.cpp: 2117 * libpp/profile_container.h: remove "base_vma" parameter 2118 to add_samples(), we can just re-grab it straight from 2119 the abfd 2120 2121 2003-08-13 John Levon <levon (a] movementarian.org> 2122 2123 * libpp/profile_container.cpp: 2124 * libpp/profile_container.h: remove unused "zero samples" 2125 optimization hint: it's always false 2126 2127 * pp/opannotate.cpp: 2128 * pp/opgprof.cpp: 2129 * pp/opreport.cpp: from above 2130 2131 2003-08-12 John Levon <levon (a] movementarian.org> 2132 2133 * pp/opreport.cpp: small trivialities 2134 2135 2003-08-12 Philippe Elie <phil.el (a] wanadoo.fr> 2136 2137 * libregex/stl.pat.in: minor fix/improvements 2138 * libregex/mangled-name.txt: add tests 2139 2140 2003-08-12 Philippe Elie <phil.el (a] wanadoo.fr> 2141 2142 * pp/opreport.cpp: fix thinko when --merge=lib 2143 2144 2003-08-12 John Levon <levon (a] movementarian.org> 2145 2146 * pp/opreport.cpp: s/count_groups_summary/summary_container/g 2147 2148 2003-08-12 John Levon <levon (a] movementarian.org> 2149 2150 * doc/oprofile.xml: document opreport's side-by-side a little 2151 bit 2152 2153 2003-08-12 John Levon <levon (a] movementarian.org> 2154 2155 * pp/opreport.cpp: s/group_summary/app_summary/, and 2156 a lot of other renamings to clarify the count groups 2157 usage. 2158 2159 2003-08-12 John Levon <levon (a] movementarian.org> 2160 2161 * utils/op_help.c: add --unit-mask 2162 2163 * utils/opcontrol: use --unit-mask 2164 2165 2003-08-12 Philippe Elie <phil.el (a] wanadoo.fr> 2166 2167 * pp/opreport.cpp: re write using count_array_t 2168 2169 2003-08-11 John Levon <levon (a] movementarian.org> 2170 2171 * libpp/count_array.cpp: 2172 * libpp/count_array.h: auto-resize the number of groups 2173 based on how we index. 2174 2175 * libpp/profile_container.cpp: remove check 2176 2177 * pp/opannotate.cpp: count_array.zero() not .empty() 2178 2179 2003-08-11 John Levon <levon (a] movementarian.org> 2180 2181 * libpp/filename_spec.h: 2182 * libpp/profile_spec.cpp: 2183 * libpp/profile_spec.h: add comments, allow comma lists 2184 for event, count, and unit mask 2185 2186 * libutil++/comma_list.h: implement missing method 2187 2188 2003-08-11 John Levon <levon (a] movementarian.org> 2189 2190 * libpp/format_output.cpp: 2191 * libpp/format_output.h: add set_nr_groups(), remove 2192 pp_nr_counters. 2193 2194 * libpp/profile_container.cpp: 2195 * libpp/profile_container.h: 2196 * pp/opannotate.cpp: 2197 * pp/opgprof.cpp: 2198 * pp/opreport.cpp: count_group not counter 2199 2200 2003-08-11 John Levon <levon (a] movementarian.org> 2201 2202 * libpp/Makefile.am: 2203 * libpp/counter_array.cpp: 2204 * libpp/counter_array.h: rename to ... 2205 2206 * libpp/count_array.h: 2207 * libpp/count_array.cpp: ... this ... 2208 2209 * libpp/format_output.cpp: 2210 * libpp/format_output.h: 2211 * libpp/profile.cpp: 2212 * libpp/profile.h: 2213 * libpp/profile_container.cpp: 2214 * libpp/profile_container.h: 2215 * libpp/sample_container.cpp: 2216 * libpp/sample_container.h: 2217 * libpp/symbol.h: 2218 * pp/opannotate.cpp: 2219 * pp/opgprof.cpp: 2220 * pp/opreport.cpp: ... and several renamings to starting 2221 change the notion from "counters" to the more general notion 2222 of "count groups" 2223 2224 2003-08-10 Philippe Elie <phil.el (a] wanadoo.fr> 2225 2226 Multiple counter support for pp tools. 2227 2228 * libpp/counter_array.h: 2229 * libpp/counter_array.cpp: resurrected from pp-interface-branch, for 2230 now memory use is inefficient. 2231 * libpp/Makefile.am: add counter_array.cpp .h 2232 * libpp/format_out.h: 2233 * libpp/format_out.cpp: handle multiple counter + a general tidy 2234 * libpp/format_flags.h: remove ff_immutable_mask and some nasty 2235 requisite on flags value 2236 * libpp/profile_container.h: 2237 * libpp/profile_container.cpp: 2238 * libpp/sample_container.h: 2239 * libpp/sample_container.cpp: 2240 * libpp/symbol.h: 2241 * libpp/symbol_container.cpp: 2242 * libpp/symbol_sort.cpp: 2243 * pp/opreport.cpp: handle multiple counter 2244 * pp/opannotate.cpp: partial handling of multiple counter 2245 * pp/opgprof.cpp: 2246 * pp/opreport.cpp: minor bits 2247 2248 2003-08-08 Will Cohen <wcohen (a] redhat.com> 2249 2250 * dae/Makefile.am: 2251 * daemon/Makefile.am: Correct library linking order. 2252 * daemon/opd_util.c: Add needed include files. 2253 2254 2003-08-08 Philippe Elie <phil.el (a] wanadoo.fr> 2255 2256 * utils/opcontrol: move_and_remove() do nothing if source doesn't exist 2257 2258 2003-08-08 Philippe Elie <phil.el (a] wanadoo.fr> 2259 2260 revert the previous patch 2261 * dae/Makefile.am: 2262 * dae/opd_sample_files.h: 2263 * dae/opd_sample_files.c: 2264 * daemon/Makefile.am: 2265 * daemon/opd_sample_files.c: un-share opd_sample_files 2266 code 2267 2268 2003-08-08 John Levon <levon (a] movementarian.org> 2269 2270 * dae/Makefile.am: 2271 * dae/opd_sample_files.h: 2272 * dae/opd_sample_files.c: 2273 * daemon/Makefile.am: 2274 * daemon/opd_sample_files.c: share opd_sample_files 2275 code 2276 2277 2003-08-08 John Levon <levon (a] movementarian.org> 2278 2279 * dae/oprofiled.c: 2280 * daemon/oprofiled.c: 2281 * daemon/opd_util.h: 2282 * daemon/opd_util.c: share opd_write_abi() 2283 2284 2003-08-08 Philippe Elie <phil.el (a] wanadoo.fr> 2285 2286 * libop/op_alloc_counter.c: 2287 * libop/op_events.h: minor doxygen fix 2288 2289 2003-08-08 John Levon <levon (a] movementarian.org> 2290 2291 * dae/Makefile.am: 2292 * dae/oprofiled.c: 2293 * daemon/Makefile.am: 2294 * daemon/oprofiled.c: 2295 * daemon/opd_util.h: 2296 * daemon/opd_util.c: share some small bits of code 2297 between the daemons 2298 2299 2003-08-08 John Levon <levon (a] movementarian.org> 2300 2301 * dae/oprofiled.c: 2302 * daemon/oprofiled.c: remove mypid, unused 2303 2304 2003-08-08 John Levon <levon (a] movementarian.org> 2305 2306 * dae/Makefile.am: 2307 * dae/opd_printf.h: remove duplicate header 2308 and use daemon/opd_printf.h 2309 2310 2003-08-08 John Levon <levon (a] movementarian.org> 2311 2312 * dae/opd_image.c: 2313 * dae/opd_sample_files.h: 2314 * dae/opd_sample_files.c: 2315 * daemon/opd_image.c: 2316 * daemon/opd_sample_files.h: 2317 * daemon/opd_sample_files.c: remove "create" bool 2318 from opd_mangle_filename(): only one callsite needs 2319 that functionality, open code the create instead 2320 2321 * dae/opd_proc.c: 2322 * dae/opd_sample_files.h: 2323 * dae/opd_sample_files.c: 2324 * daemon/opd_sample_files.h: 2325 * daemon/opd_sample_files.c: return error from 2326 opd_open_sample_filename(). Do not fail when odb_open 2327 fails due to --reset races. 2328 2329 * dae/oprofiled.c: 2330 * daemon/oprofiled.c: a little more verbosity. 2331 2332 * libutil/op_file.h: 2333 * libutil/op_file.c: fix create_dir/path() comments, 2334 don't use access() 2335 2336 * utils/opcontrol: reduce chance of --reset races 2337 2338 2003-08-06 Philippe Elie <phil.el (a] wanadoo.fr> 2339 2340 * libpp/symbol_sort.h: 2341 * libpp/symbol_sort.cpp: add app_name sort order, force sort order 2342 for criteria unspecified by user. 2343 * pp/opreport_options.cpp: update --sort option help string. 2344 2345 2003-08-04 John Levon <levon (a] movementarian.org> 2346 2347 * doc/oprofile.xml: 2348 * doc/opannotate.1.in: 2349 * pp/opannotate.cpp: 2350 * pp/opannotate_options.h: 2351 * pp/opannotate_options.cpp: add --base-dirs 2352 2353 2003-08-04 John Levon <levon (a] movementarian.org> 2354 2355 * doc/oprofile.xml: 2356 * doc/opannotate.1.in: 2357 * pp/opannotate.cpp: 2358 * pp/opannotate_options.h: 2359 * pp/opannotate_options.cpp: add --search-dirs 2360 2361 2003-08-04 John Levon <levon (a] movementarian.org> 2362 2363 * doc/oprofile.xml: 2364 * doc/opannotate.1.in: 2365 * pp/opannotate.cpp: 2366 * pp/opannotate_options.h: 2367 * pp/opannotate_options.cpp: remove --source-dir and --base-dir, 2368 they're confusing and not useful in the current form 2369 2370 2003-08-03 John Levon <levon (a] movementarian.org> 2371 2372 * utils/opcontrol: avoid using ps, it's very slow with kallsyms 2373 2374 2003-08-03 Philippe Elie <phil.el (a] wanadoo.fr> 2375 2376 * libutil++/op_bfd.cpp: c++ static function doesn't get a mangled name 2377 in debug info (see gcc #11774). Try to recover through a not 2378 completely reliable mechanism but better than ignoring the problem 2379 2380 2003-08-02 Philippe Elie <phil.el (a] wanadoo.fr> 2381 2382 * pp/opreport.cpp: minor: more consistency about function ordering 2383 2384 2003-08-02 Philippe Elie <phil.el (a] wanadoo.fr> 2385 2386 * libpp/profile.h: 2387 * libpp/profile.cpp: profile::sample_count() new to allow raw access 2388 to samples count 2389 * pp/opreport.cpp: use above function to implement opreport (w/o -l 2390 or --details options). opreport is roughly twice faster. 2391 2392 2003-08-02 Philippe Elie <phil.el (a] wanadoo.fr> 2393 2394 * pp/opreport.cpp: clarify multiple counter support 2395 2396 2003-08-01 John Levon <levon (a] movementarian.org> 2397 2398 * libregex/stl.pat.in: fix _List_iterator regex 2399 (from Phil) 2400 2401 2003-07-31 Philippe Elie <phil.el (a] wanadoo.fr> 2402 2403 * pp/opannotate.cpp: output cpu type and cpu speed. 2404 2405 2003-07-30 John Levon <levon (a] movementarian.org> 2406 2407 * libpp/partition_files.cpp: remove some apparently 2408 dead code 2409 2410 2003-07-30 John Levon <levon (a] movementarian.org> 2411 2412 * events/i386.p4.unit_masks: make flame_uops value 2413 mandatory, Yuan.Lu (a] rrze.uni-erlangen.de does not 2414 see any events without setting the unit mask 2415 2416 2003-07-30 John Levon <levon (a] movementarian.org> 2417 2418 * libutil++/op_bfd.h: 2419 * libutil++/op_bfd.cpp: bfd_openr() keeps a copy of 2420 the passed in char * around, sickenly enough. Ensure lifetimes 2421 will always be correct by adding a filename data member to 2422 op_bfd 2423 2424 2003-07-29 Philippe Elie <phil.el (a] wanadoo.fr> 2425 2426 * libpp/op_header.h: 2427 * libpp/op_header.cpp: separate output of cpu_type, cpu_speed 2428 and counter setup 2429 2430 * libpp/partition_files.h: 2431 * libpp/partition_files.cpp: unmergeable_profile() split profile 2432 by the unmergeable. 2433 2434 * pp/opreport_options.h: 2435 * pp/opreport_options.cpp: 2436 * pp/opreport.cpp: initial multiple counter output, multiple counter 2437 with -l is not yet available. 2438 2439 2003-07-29 John Levon <levon (a] movementarian.org> 2440 2441 * doc/opcontrol.1.in: update for --event 2442 2443 2003-07-29 John Levon <levon (a] movementarian.org> 2444 2445 * configure.in: 2446 * doc/srcdoc/Doxyfile.in: 2447 * oprof_report/: remove badly out of date oprof_report 2448 2449 2003-07-28 John Levon <levon (a] movementarian.org> 2450 2451 * configure.in: bump to 0.7cvs 2452 2453 2003-07-26 John Levon <levon (a] movementarian.org> 2454 2455 * configure.in: bump to 0.6 2456 2457 2003-07-26 John Levon <levon (a] movementarian.org> 2458 2459 * utils/opcontrol: fix call of op_help 2460 2461 2003-07-26 John Levon <levon (a] movementarian.org> 2462 2463 * gui/oprof_start.cpp: replace folder icons with clearer 2464 red/green circles 2465 2466 2003-07-26 John Levon <levon (a] movementarian.org> 2467 2468 * gui/oprof_start.cpp: actually select and show the default 2469 event 2470 2471 2003-07-26 John Levon <levon (a] movementarian.org> 2472 2473 * gui/oprof_start.cpp: small string tweak, show "conflicts" 2474 message consistently 2475 2476 2003-07-26 John Levon <levon (a] movementarian.org> 2477 2478 * gui/oprof_start.cpp: don't use invalidated iterator 2479 2480 2003-07-26 Philippe Elie <phil.el (a] wanadoo.fr> 2481 2482 * gui/oprof_start.cpp: fix for 2.91.66 2483 2484 * libpp/profile.cpp: typo invoking an undefined behavior revealed 2485 by gcc stl debug mode 2486 * libpp/profile.h: ensure we provide the right typedef to std:: 2487 for profile::const_iterator revealed by gcc stl debug mode at compile 2488 time. The implementation is a bit tricky to work with old compiler 2489 * libpp/symbol_sort.cpp: compare must define a weak ordered relation 2490 order, revealed by gcc stl debug mode. 2491 2492 2003-07-26 Philippe Elie <phil.el (a] wanadoo.fr> 2493 2494 * gui/ui/oprof_start.base.ui: 2495 * gui/oprof_start.h: 2496 * gui/oprof_start.cpp: change UI to use the new counter allocation 2497 API 2498 2499 * libop/op_alloc_counter.h: 2500 * libop/op_alloc_counter.c: 2501 * utils/op_help.c: minor const-ness api change 2502 2503 2003-07-25 Will Cohen <wcohen (a] redhat.com> 2504 2505 * utils/opcontrol: Restrict the search path. 2506 2507 2003-07-25 Philippe Elie <phil.el (a] wanadoo.fr> 2508 2509 * libop/op_alloc_counter.c: use tabulation 2510 2511 * libop/op_events.c: 2512 * libop/op_events.h: find_event_by_name() new 2513 * utils/op_help.c: use find_event_by_name() 2514 2515 2003-07-24 Philippe Elie <phil.el (a] wanadoo.fr> 2516 2517 * utils/op_help.c: make valgrind happy + minor cleanup 2518 2519 2003-07-24 Philippe Elie <phil.el (a] wanadoo.fr> 2520 2521 * libop/op_alloc_counter.h: 2522 * libop/op_alloc_counter.c: new file providing mapping from an event 2523 list to hardware counter number 2524 * utils/op_help.c: use the above api 2525 2526 2003-07-24 Philippe Elie <phil.el (a] wanadoo.fr> 2527 2528 * utils/op_help.c: fix hardware counter allocation order 2529 2530 2003-07-23 John Levon <levon (a] movementarian.org> 2531 2532 * doc/oprofile.xml: comment out --base-dir mention 2533 2534 2003-07-23 John Levon <levon (a] movementarian.org> 2535 2536 * doc/oprofile.xml: remove mention of oprof_start_event 2537 2538 2003-07-23 John Levon <levon (a] movementarian.org> 2539 2540 * dae/oprofiled.c: 2541 * daemon/oprofiled.c: don't uselessly try to unlink 2542 non-existent lockfile 2543 2544 * daemon/opd_image.c: 2545 * daemon/oprofiled.c: clean up buffer read messages 2546 2547 2003-07-23 John Levon <levon (a] movementarian.org> 2548 2549 * utils/opcontrol: error out at --setup time if vmlinux is not 2550 valid. Cleanup the error message if so 2551 2552 * daemon/opd_kernel.c: fix potential null deref 2553 2554 2003-07-21 John Levon <levon (a] movementarian.org> 2555 2556 * gui/oprof_start.cpp: select "No event" when switching counter 2557 if needed 2558 2559 2003-07-21 John Levon <levon (a] movementarian.org> 2560 2561 * gui/oprof_start.cpp: fix default event choosing when 2562 daemonrc exists 2563 2564 2003-07-21 Philippe Elie <phil.el (a] wanadoo.fr> 2565 2566 * gui/oprof_start.cpp: thinko in has_unique_event(), don't warn for 2567 no counter with CPU_TIMER_INT 2568 2569 2003-07-21 Philippe Elie <phil.el (a] wanadoo.fr> 2570 2571 * gui/oprof_start.cpp: allow to de-select a counter 2572 2573 2003-07-21 John Levon <levon (a] movementarian.org> 2574 2575 * gui/oprof_start.cpp: 2576 * gui/oprof_start_util.h: 2577 * gui/oprof_start_util.cpp: remove uptime pretty printing. 2578 It's broken for 2.5 and ugly code 2579 2580 2003-07-21 John Levon <levon (a] movementarian.org> 2581 2582 * gui/oprof_start.h: 2583 * gui/oprof_start.cpp: use a default event if no 2584 events are set yet 2585 2586 2003-07-20 Philippe Elie <phil.el (a] wanadoo.fr> 2587 2588 * m4/compileroption.m4: fix for autoconf 2.13 2589 2590 2003-07-19 Philippe Elie <phil.el (a] wanadoo.fr> 2591 2592 * gui/oprof_start.cpp: 2593 * libpp/format_output.cpp: 2594 * libpp/format_output.h: 2595 * pp/opannotate.cpp: 2596 * pp/opreport_options.cpp: minor tidy 2597 2598 2003-07-19 Philippe Elie <phil.el (a] wanadoo.fr> 2599 2600 * gui/oprof_start.cpp: RTC mode was not working 2601 2602 2003-07-16 Philippe Elie <phil.el (a] wanadoo.fr> 2603 2604 * gui/oprof_start_config.h: 2605 * gui/oprof_start_config.cpp: remove dead code, fix kernel_only read 2606 2607 2003-07-16 John Levon <levon (a] movementarian.org> 2608 2609 * utils/opcontrol: fix typo that was partly breaking 2610 CPU_TIMER_INT 2611 2612 2003-07-16 John Levon <levon (a] movementarian.org> 2613 2614 * gui/oprof_start.h: 2615 * gui/oprof_start.cpp: fixes for CPU_TIMER_INT 2616 2617 2003-07-16 John Levon <levon (a] movementarian.org> 2618 2619 * gui/ui/oprof_start.base.ui: remove add/remove event buttons, 2620 fix resize weirdness 2621 2622 * gui/oprof_start.h: 2623 * gui/oprof_start.cpp: remove add/remove event buttons, allow 2624 short-form event descriptions 2625 2626 2003-07-15 Philippe Elie <phil.el (a] wanadoo.fr> 2627 2628 * gui/persistent_config.h: remove 2629 * gui/oprof_start.h: 2630 * gui/oprof_start.cpp: debug, remove dead code, works better now, see 2631 TODO 2632 2633 2003-07-15 Philippe Elie <phil.el (a] wanadoo.fr> 2634 2635 * gui/oprof_start.h: 2636 * gui/oprof_start.cpp: 2637 * gui/oprof_start_util.cpp: re-enable partially the gui, sorta of 2638 working if cautioulsy used 2639 2640 2003-07-15 John Levon <levon (a] movementarian.org> 2641 2642 * gui/ui/oprof_start_base.ui: 2643 * gui/oprof_start.h: 2644 * gui/oprof_start.cpp: some steps towards fixing gui for 2645 the new events stuff 2646 2647 2003-07-15 John Levon <levon (a] movementarian.org> 2648 2649 * libop/op_events.h: 2650 * libop/op_events.c: add op_default_event 2651 2652 * utils/op_help.c: move default event stuff to libop, 2653 fix -c option 2654 2655 2003-07-15 John Levon <levon (a] movementarian.org> 2656 2657 * utils/op_help.c: fix default RTC event to be 2658 "RTC_INTERRUPTS" 2659 2660 2003-07-15 Philippe Elie <phil.el (a] wanadoo.fr> 2661 2662 * utils/opcontrol 2663 * events/rtc..events: use RTC_INTERRUPTS as event name 2664 2665 2003-07-15 Philippe Elie <phil.el (a] wanadoo.fr> 2666 2667 * daemon/opd_sample_files.c: C89 compile fix 2668 2669 2003-07-15 John Levon <levon (a] movementarian.org> 2670 2671 * utils/opcontrol: 2672 * utils/op_help.c: move the default event strings into 2673 op_help.c instead of in opcontrol 2674 2675 2003-07-15 John Levon <levon (a] movementarian.org> 2676 2677 * doc/oprofile.xml: document event name for timer interrupt 2678 2679 * daemon/opd_sample_files.c: handle CPU_TIMER_INT 2680 2681 * utils/op_help.c: fix a core dump 2682 2683 2003-07-13 Philippe Elie <phil.el (a] wanadoo.fr> 2684 2685 * daemon/opd_image.c: verbprintf() when starting reading buffer not 2686 printf 2687 2688 2003-07-12 Philippe Elie <phil.el (a] wanadoo.fr> 2689 2690 * from BRANCH_CALLGRAPH: 2691 * daemon/opd_image.c: printf -> verbprintf, fix comment 2692 * daemon/opd_kernel.c: kernel/module samples statistics was wrong 2693 2694 * daemon/opd_image.c: 2695 * daemon/opd_image.h: 2696 * daemon/opd_kernel.c: 2697 * daemon/opd_kernel.h: import cleanup from branch, mainly don't handle 2698 samples in opd_kernel.c but return (creating if necessary) an 2699 opd_image struct where the sample must go and let opd_image caller 2700 in opd_image.c do sample insertion 2701 2702 2003-07-11 Philippe Elie <phil.el (a] wanadoo.fr> 2703 2704 * utils/opcontrol: shows basename $0 with --version 2705 * libpp/op_header.cpp: formating 2706 2707 2003-07-11 Philippe Elie <phil.el (a] wanadoo.fr> 2708 2709 * utils/opcontrol: don't try to save current if the directory doesn't 2710 exist 2711 2712 2003-07-11 Philippe Elie <phil.el (a] wanadoo.fr> 2713 2714 * libutil++/stream_util.h: 2715 * libutil++/stream_util.cpp: new file, io_state() save object 2716 * libutil++/Makefile.am: handle new file 2717 * libutil++/op_bfd.cpp: 2718 * pp/opreport.cpp: 2719 * libpp/op_header.cpp: use io_state 2720 2721 2003-07-09 Philippe Elie <phil.el (a] wanadoo.fr> 2722 2723 * module/x86/op_model_p4.c: reflect intel documentation fix. 2724 2725 2003-07-08 Will Cohen <wcohen (a] redhat.com> 2726 2727 * daemon/opd_kernel.c: Handle /proc/modules format. 2728 2729 2003-07-08 Will Cohen <wcohen (a] redhat.com> 2730 2731 * doc/oprofile.xml: 2732 * configure.in: --enable-gcov option and documentation. 2733 2734 2003-07-08 Will Cohen <wcohen (a] redhat.com> 2735 2736 * utils/opcontrol: Correct P4 default event. 2737 2738 2003-06-03 John Levon <levon (a] movementarian.org> 2739 2740 * from BRANCH_CALLGRAPH 2741 * libdb/odb_hash.h: 2742 * libdb/db_manage.c: 2743 * libdb/db_insert.c: namespace safety 2744 2745 * libpp/partition_files.cpp: 2746 * libpp/profile.cpp: spacing, add a FIXME 2747 2748 2003-07-07 Philippe Elie <phil.el (a] wanadoo.fr> 2749 2750 * pp/opannotate.cpp: 2751 * pp/opgprof.cpp: 2752 * pp/opreport.cpp: cleanup walking through multimap with a 2753 pair<iterator, iterator> 2754 2755 2003-07-05 Philippe Elie <phil.el (a] wanadoo.fr> 2756 2757 * daemon/opd_image.c: 2758 * libdb/db_insert.c: 64 bits arch compile fix, thanks to Falk Hueffner 2759 <falk (a] debian.org> 2760 2761 2003-07-02 Philippe Elie <phil.el (a] wanadoo.fr> 2762 2763 * pp/opreport.cpp: honor options::show_header 2764 2765 2003-06-30 Graydon Hoare <graydon (a] redhat.com> 2766 2767 * libpp/op_header.cpp: Handle printing multiple bitmask values. 2768 2769 2003-06-19 John Levon <levon (a] movementarian.org> 2770 2771 * doc/Makefile.am: fix make distcheck 2772 2773 2003-06-18 John Levon <levon (a] movementarian.org> 2774 2775 * pp/opannotate_options.c: hide the unhandled 2776 --base-dir option 2777 2778 2003-06-18 John Levon <levon (a] movementarian.org> 2779 2780 * pp/Makefile.am: don't build opdiff 2781 2782 2003-06-17 Will Cohen <wcohen (a] redhat.com> 2783 2784 * daemon/opd_cookie.h: Add s390 syscall value. 2785 2786 2003-06-17 John Levon <levon (a] movementarian.org> 2787 2788 * utils/opcontrol: don't accept "-r" - it's too easy to typo 2789 2790 2003-06-17 John Levon <levon (a] movementarian.org> 2791 2792 * doc/srcdoc/Doxyfile: removed 2793 2794 * doc/srcdoc/Doxyfile.in: 2795 * configure.in: generate doxygen version nr. automatically 2796 2797 2003-06-17 Philippe Elie <phil.el (a] wanadoo.fr> 2798 2799 * libdb/db_insert.cpp: missing initialization of error message on 2800 error path 2801 2802 2003-06-17 John Levon <levon (a] movementarian.org> 2803 2804 * utils/opcontrol: accept some short forms for common 2805 operations 2806 2807 2003-06-17 John Levon <levon (a] movementarian.org> 2808 2809 * utils/opcontrol: accept --foo blah as well as 2810 --foo=blah 2811 2812 2003-06-16 John Levon <levon (a] movementarian.org> 2813 2814 * utils/opcontrol: "opcontrol" will show usage 2815 instead of doing nothing 2816 2817 2003-06-16 Will Cohen <wcohen (a] nc.rr.com> 2818 2819 * libabi/abi.cpp: 2820 * libabi/op_import.cpp: Add required include for cassert. 2821 2822 2003-06-16 John Levon <levon (a] movementarian.org> 2823 2824 * events/x86-64.hammer.unit_masks: remove some 2825 bogus FIXMEs 2826 2827 2003-06-15 John Levon <levon (a] movementarian.org> 2828 2829 * README: fix autogen.sh line 2830 2831 2003-06-15 John Levon <levon (a] movementarian.org> 2832 2833 * daemon/opd_image.c: 64 bit fixes 2834 2835 2003-06-15 John Levon <levon (a] movementarian.org> 2836 2837 * utils/op_help.c: c89 fix 2838 2839 2003-06-15 John Levon <levon (a] movementarian.org> 2840 2841 * daemon/opd_image.c: c89 fix 2842 2843 2003-06-15 John Levon <levon (a] movementarian.org> 2844 2845 * doc/oprofile.xml: document --event 2846 2847 * utils/opcontrol: 2848 * utils/op_help.c: allow unit mask, kernel, user to be 2849 optional. Verify not too many events are passed. 2850 2851 2003-06-15 John Levon <levon (a] movementarian.org> 2852 2853 * libop/op_cpu_type.c: fix nr_counters cpu type check 2854 2855 * utils/op_help: implement --check_events, event validation 2856 and counter allocation 2857 2858 * utils/opcontrol: use the above, implement --event=default 2859 2860 2003-06-14 John Levon <levon (a] movementarian.org> 2861 2862 * daemon/opd_image.c: fix a stupid error in my previous TGID patch 2863 2864 2003-06-12 Graydon Hoare <graydon (a] redhat.com> 2865 2866 * libop/op_events.c (op_check_events): Check bitmasks as well as 2867 exclusive values, for unit masks. 2868 2869 2003-06-12 John Levon <levon (a] movementarian.org> 2870 2871 * daemon/opd_image.c: we were not handling a truncated 2872 TGID entry properly 2873 2874 2003-06-12 John Levon <levon (a] movementarian.org> 2875 2876 * libutil++/unique_storage.h: missing typename 2877 2878 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2879 2880 * pp/opannotate_options.cpp: typo in option name 2881 2882 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2883 2884 * libutil++/op_bfd.cpp: boring_symbol() new to get a better choice 2885 when eliminating symbol at identical vma 2886 2887 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2888 2889 * utils/opcontrol: fix rtc option checking, bug added after 0.5.3, 2890 no big deal 2891 2892 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2893 2894 * libregex/op_regex.cpp: 2895 * libpp/profile.cpp: compile fix, tree was broken by my previous patch 2896 2897 2003-06-11 Jason Yeh <jason.yeh (a] amd.com> 2898 2899 * events/i386.athlon.events: add CPU_CLK_UNHALTED 2900 2901 * utils/opcontrol: use the above by default 2902 2903 * events/x86-64.hammer.events: 2904 * events/x86-64.hammer.unit_masks: various fixes 2905 2906 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2907 2908 * libpp/op_header.cpp: 2909 * libpp/profile.cpp: 2910 * libpp/profile_spec.cpp: 2911 * libpp/symbol_sort.cpp: 2912 * libregex/op_regex.cpp: 2913 * libutil++/op_bfd.cpp: use exception rather exit(EXIT_FAILURE) in 2914 library code 2915 2916 2003-06-11 John Levon <levon (a] movementarian.org> 2917 2918 * daemon/opd_image.c: future-proof the code handlers 2919 2920 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2921 2922 * pp/opannotate.cpp: output_asm() avoid output when the set of selected 2923 symbols doesn't contain any samples 2924 2925 2003-06-11 Philippe Elie <phil.el (a] wanadoo.fr> 2926 2927 * libutil++/unique_storage.h: we don't need to check if key is present 2928 before trying to insert it 2929 2930 2003-06-10 Philippe Elie <phil.el (a] wanadoo.fr> 2931 2932 * libpp/name_storage.h: minor tidy 2933 * libutil++/unique_storage.h: small efficiency improvement 2934 2935 2003-06-09 John Levon <levon (a] movementarian.org> 2936 2937 * pp/Makefile.am: 2938 * libutil/Makefile.am: fix make distcheck 2939 2940 2003-06-09 John Levon <levon (a] movementarian.org> 2941 2942 * libpp/opp_symbol.h: rename to ... 2943 2944 * libpp/symbol.h: ... this 2945 2946 * libpp/Makefile.am: 2947 * libpp/format_output.h: 2948 * libpp/format_output.cpp: 2949 * libpp/profile_container.h: 2950 * libpp/profile_container.cpp: 2951 * libpp/sample_container.h: 2952 * libpp/sample_container.cpp: 2953 * libpp/symbol_functors.h: 2954 * libpp/symbol_sort.cpp: fix up from above and some header 2955 cleanups 2956 2957 2003-06-09 John Levon <levon (a] movementarian.org> 2958 2959 * libpp/profile.h: std::pair not pair 2960 2961 2003-06-08 Philippe Elie <phil.el (a] wanadoo.fr> 2962 2963 * libpp/profile.cpp: don't underflow start offset when the vma range 2964 is unknown 2965 * pp/opreport.cpp: use samples_range() not samples_range(0, ~0) 2966 2967 2003-06-08 Philippe Elie <phil.el (a] wanadoo.fr> 2968 2969 * libpp/profile.h: 2970 * libpp/profile.cpp: replace accumulate_samples() API by an iterator 2971 interface 2972 * libpp/profile_container.h: 2973 * libpp/profilecontainer.cpp: 2974 * pp/opreport.cpp: use new API 2975 2976 2003-06-08 Philippe Elie <phil.el (a] wanadoo.fr> 2977 2978 * include/sstream: replace old version by the once shipped with 2979 2.95.3, seekg() in the old was not working 2980 2981 2003-06-08 John Levon <levon (a] movementarian.org> 2982 2983 * libpp/name_storage.h: don't need to define the tag structs 2984 2985 * libutil++/unique_storage.h: fix the comments, 2986 make get() public 2987 2988 2003-06-08 Philippe Elie <phil.el (a] wanadoo.fr> 2989 2990 * libpp/profile_container.cpp: 2991 * libutil++/string_manip.cpp: gcc 2.91.66 fix 2992 2993 2003-06-08 John Levon <levon (a] movementarian.org> 2994 2995 * libpp/name_storage.h: 2996 * libpp/name_storage.cpp: 2997 * libpp/opp_symbol.h: 2998 * libpp/profile_container.cpp: 2999 * libpp/symbol_functors.cpp: 3000 * libutil++/unique_storage.h: don't derive from I() 3001 at all for id_value, it's not needed. Hide .id and 3002 provide operator<(), operator==(), operator!=(), and 3003 set() 3004 3005 2003-06-08 John Levon <levon (a] movementarian.org> 3006 3007 * libutil++/unique_storage.h: make some of 3008 id_value only visible to unique_storage. 3009 3010 2003-06-08 John Levon <levon (a] movementarian.org> 3011 3012 * libpp/name_storage.h: 3013 * libutil++/unique_storage.h: move the ID class 3014 into unique_storage, and make it derive from the 3015 template parameter, to give simpler type safe support 3016 3017 2003-06-08 John Levon <levon (a] movementarian.org> 3018 3019 * libutil++/Makefile.am: 3020 * libutil++/unique_storage.h: add new template for 3021 unique storage of values 3022 3023 * libpp/name_storage.h: 3024 * libpp/name_storage.cpp: use it 3025 3026 2003-06-07 Philippe Elie <phil.el (a] wanadoo.fr> 3027 3028 * libpp/profile_container.cpp: fix order of file output with opannotate 3029 --source to be consistent with other tools 3030 3031 2003-06-07 John Levon <levon (a] movementarian.org> 3032 3033 * libpp/profile_container.cpp: fix operator< 3034 3035 2003-06-07 Philippe Elie <phil.el (a] wanadoo.fr> 3036 3037 * libpp/profile.h: 3038 * libpp/profile.cpp: change API to walk through vma with non zero 3039 samples count rather looking for all vma. This is not very clean, an 3040 iterator interface will be perhaps a better idea. Measures shows it's 3041 to do it so for now I apply it. 3042 * libpp/profile_container.cpp: update according to above change. 3043 3044 2003-06-07 Philippe Elie <phil.el (a] wanadoo.fr> 3045 3046 * libpp/profile_container.h: 3047 * libpp/profile_container.cpp: 3048 * libpp/symbol_container.h: 3049 * libpp/symbol_container.cpp: remove dead api 3050 find_symbol(string symbol_name) 3051 3052 2003-06-07 Philippe Elie <phil.el (a] wanadoo.fr> 3053 3054 * libpp/name_storage.h: 3055 * libpp/name_storage.cpp: 3056 * libpp/profile_container.cpp: 3057 * libpp/profile_container.h: 3058 * libpp/sample_container.h: 3059 * libpp/sample_container.cpp: 3060 * libpp/symbol_container.h: 3061 * libpp/symbol_container.cpp: 3062 * pp/opannotate.cpp: replace some use of string filename by 3063 debug_name_id 3064 3065 2003-06-05 John Levon <levon (a] movementarian.org> 3066 3067 * daemon/Makefile.am: 3068 * daemon/opd_kernel.c: 3069 * daemon/p_module.h: remove p_module.h, unused 3070 3071 * daemon/opd_cookie.h: use __NR_lookup_dcookie and 3072 use our definitions only if it's not defined 3073 3074 * daemon/opd_image.c: 3075 * daemon/opd_kernel.c: 3076 * daemon/opd_sample_files.c: 3077 * daemon/oprofiled.c: pedantry 3078 3079 * libabi/op_import.cpp: 3080 * libabi/abi_test.cpp: fix build from odb change 3081 3082 * libop/op_config.h: move NR_CPUS to ... 3083 3084 * libop/op_config_24.h: ... here 3085 3086 * libop/op_hw_config.h: remove unused OP_COUNT_MAX 3087 3088 2003-06-03 Philippe Elie <phil.el (a] wanadoo.fr> 3089 3090 * libpp/op_header.cpp: 3091 * libpp/profile.cpp: 3092 * dae/opd_proc.c: 3093 * dae/opd_sample_files.c: 3094 * daemon/opd_image.c: 3095 * daemon/opd_sample_files.c: 3096 * libdb/odb_hash.h: 3097 * libdb/db_insert.c: 3098 * libdb/db_manage.c: 3099 * libdb/db_test.c: error message is now a field of a samples_odb_t 3100 3101 2003-06-03 John Levon <levon (a] movementarian.org> 3102 3103 * libutil++/child_reader.cpp: 3104 * libabi/abi.cpp: 3105 * libabi/abi.h: 3106 * libabi/abi_test.cpp: 3107 * libabi/op_api.h: 3108 * libabi/op_abi.cpp: 3109 * libabi/op_import.cpp: pedantry, remove unused code 3110 3111 2003-06-01 Philippe Elie <phil.el (a] wanadoo.fr> 3112 3113 * dae/oprofiled.c: 3114 * libop/oprofiled.c: 3115 * libop/op_cpu_type.c: 3116 * module/oprofile.c: 3117 * module/oprofile.h: 3118 * pp/opdiff.cpp: more static data and function 3119 3120 2003-05-31 Philippe Elie <phil.el (a] wanadoo.fr> 3121 3122 * gui/oprof_start_util.h: 3123 * libdb/db_stat.c: 3124 * libdb/odb_hash.h: 3125 * libpp/format_output.h: 3126 * libpp/locate_image.h: 3127 * libpp/name_storage.h: 3128 * libpp/partition_files.h: 3129 * libpp/profile.h: 3130 * libutil++/op_bfd.h: 3131 * libutil++/op_bfd.cpp: improve doxygen comment 3132 3133 2003-05-31 Philippe Elie <phil.el (a] wanadoo.fr> 3134 3135 * configure.in: use AC_DEFINE_UNQUOTED() to define version string 3136 in config.h not in version-1.h 3137 * Makefile.am: distclean-local: is no longer used 3138 * version-1.h.in: delete 3139 * libutil/op_version.h: 3140 * libutil/op_version.c: new file: package version output 3141 * libutil/Makefile.am: 3142 * dae/oprofiled.c: 3143 * daemon/oprofiled.c: 3144 * gui/oprof_start.h: 3145 * libop/op_events.c: 3146 * libopt++/popt_options.cpp: 3147 * libregex/demangle_sybol.cpp: 3148 * module/oprofile.c: 3149 * utils/op_help.c: tweak # include according 3150 3151 2003-05-30 Dan Zink <Dan.Zink (a] hp.com> 3152 3153 * module/x86/op_apic.c: really disable the apic if it was disabled 3154 3155 2003-05-29 John Levon <levon (a] movementarian.org> 3156 3157 * utils/opcontrol: don't allow --rtc-value if not RTC mode 3158 3159 2003-05-27 John Levon <levon (a] movementarian.org> 3160 3161 * libutil++/string_manip.h: add <stdexcept> 3162 3163 * pp/opannotate.cpp: use '\n' not endl 3164 3165 * pp/opreport.cpp: untie cout 3166 3167 2003-05-29 Philippe Elie <phil.el (a] wanadoo.fr> 3168 3169 * merge with pp-interface-branch: following ChangeLog was unmerged 3170 to branch 3171 3172 2003-05-27 John Levon <levon (a] movementarian.org> 3173 3174 * configure.in: oprofile 0.5.3 is released, back to 3175 0.6cvs 3176 3177 2003-05-26 John Levon <levon (a] movementarian.org> 3178 3179 * doc/oprofile.xml: update docs for --no-vmlinux 3180 3181 2003-05-26 John Levon <levon (a] movementarian.org> 3182 3183 * libop/op_interface_25.h: 3184 * daemon/opd_image.c: handle tgid for future 3185 compatibility, fix compile on older gccs 3186 3187 2003-05-26 John Levon <levon (a] movementarian.org> 3188 3189 * libop/op_interface_25.h: add LAST_CODE 3190 3191 * daemon/opd_stats.h: 3192 * daemon/opd_stats.c: count short reads of 3193 buffer and unplaceable samples 3194 3195 * daemon/opd_image.c: rewrite buffer parsing 3196 code, handle window where we can't place a 3197 sample 3198 3199 2003-05-26 John Levon <levon (a] movementarian.org> 3200 3201 * libutil++/utility.h: fix typo 3202 3203 * utils/opcontrol: fix typo 3204 3205 2003-05-16 John Levon <levon (a] movementarian.org> 3206 3207 * pp/counter_profile.cpp: remove bogus cpu speed 3208 consistency check 3209 3210 2003-05-09 John Levon <levon (a] movementarian.org> 3211 3212 * m4/Makefile.am: 3213 * m4/compileroption.m4: add a generalised compiler option 3214 tester 3215 3216 * configure.in: use it, add -fno-common 3217 3218 2003-05-09 John Levon <levon (a] movementarian.org> 3219 3220 * daemon/oprofiled.c: 3221 * dae/oprofiled.c: remove duplicate declaration found 3222 via -fno-common 3223 3224 2003-05-04 John Levon <levon (a] movementarian.org> 3225 3226 * doc/oprofile.xml: fix validation errors from xmllint --valid 3227 3228 3229 2003-05-28 Philippe Elie <phil.el (a] wanadoo.fr> 3230 3231 * libpp/profile_spec.cpp: make image:/path/to:image working 3232 3233 2003-05-28 Philippe Elie <phil.el (a] wanadoo.fr> 3234 3235 * libutil++/string_manip.h: 3236 * libutil++/string_manip.cpp: specialize 3237 lexical_cast_no_ws<unsigned int> to accept hexadecimal input 3238 3239 * pp/common_option.cpp: missing << endl 3240 3241 2003-05-27 Philippe Elie <phil.el (a] wanadoo.fr> 3242 3243 * doc/oprofile.xml: update example in "Interpreting profiling results" 3244 section 3245 3246 2003-05-26 John Levon <levon (a] movementarian.org> 3247 3248 * doc/oprofile.xml: add new pp tools options 3249 3250 2003-05-26 John Levon <levon (a] movementarian.org> 3251 3252 * doc/opreport.1.in: 3253 * doc/opgprof.1.in: 3254 * doc/opannotate.1.in: 3255 * doc/op_help.1.in: complete 3256 3257 2003-05-26 John Levon <levon (a] movementarian.org> 3258 3259 * configure.in: 3260 * doc/Makefile.am: 3261 * doc/oprofile.1.in: 3262 * doc/op_help.1.in: 3263 * doc/opcontrol.1.in: 3264 * doc/opreport.1.in: 3265 * doc/opannotate.1.in: 3266 * doc/opgprof.1.in: re-organise and add manpages 3267 3268 2003-05-26 John Levon <levon (a] movementarian.org> 3269 3270 * doc/oprofile.xml: start to document the pp interface 3271 3272 2003-05-26 Philippe Elie <phil.el (a] wanadoo.fr> 3273 3274 * pp/opreport.cpp: remove automatic switch to --symbols mode 3275 3276 2003-05-26 Philippe Elie <phil.el (a] wanadoo.fr> 3277 3278 * libpp/symbol_sort.h: 3279 * pp/opannotate_options.cpp: 3280 * pp/opgprof_options.cpp: 3281 * pp/opreport_options.cpp: handle meaningless options combinations 3282 3283 2003-05-26 Philippe Elie <phil.el (a] wanadoo.fr> 3284 3285 * pp/opgprof_options.cpp: no need to use unmergeable_profile here 3286 3287 2003-05-25 Philippe Elie <phil.el (a] wanadoo.fr> 3288 3289 * events/i386.piii.unit_masks: tweak comment, change default unit mask 3290 for kni instruction to 0 and type to exclusive 3291 3292 2003-05-25 Philippe Elie <phil.el (a] wanadoo.fr> 3293 3294 * libpp/profile_container.cpp: thinko 3295 * pp/opreport.cpp: typo 3296 3297 2003-05-25 John Levon <levon (a] movementarian.org> 3298 3299 * libopt++/popt_options.h: 3300 * libopt++/popt_options.cpp: obvious cleanup, 3301 remove some dead code 3302 3303 2003-05-25 Philippe Elie <phil.el (a] wanadoo.fr> 3304 3305 * libpp/format_flags: cf_image_name new column_flags flag 3306 * libpp/profile_container.cpp: use above flag. Don't compare app_name 3307 by string but id 3308 * pp/opreport.cpp: hide image_name when un-necessary 3309 3310 2003-05-24 Philippe Elie <phil.el (a] wanadoo.fr> 3311 3312 * doc/srcdoc/Doxyfile: 3313 * libpp/profile.h: 3314 * libpp/profile_container.h: 3315 * libutil++/utility.h: remove gcc 2.91 noncopyable as empty base class 3316 work-around 3317 3318 2003-05-23 Philippe Elie <phil.el (a] wanadoo.fr> 3319 3320 * configure.in: do early check of libiberty 3321 3322 * libpp/symbol_sort.cpp: 2.91 compile fix 3323 3324 2003-05-22 Philippe Elie <phil.el (a] wanadoo.fr> 3325 3326 * libutil++/child_reader.h: minor #include fix 3327 3328 2003-05-22 Philippe Elie <phil.el (a] wanadoo.fr> 3329 3330 * libpp/name_storage.cpp: debug_name_storage::name() 3331 return an empty string when for zero id to avoid exception 3332 3333 2003-05-21 Philippe Elie <phil.el (a] wanadoo.fr> 3334 3335 * libpp/profile.cpp: 3336 * libpp/op_header.h: 3337 * libpp/op_header.cpp: when sample file differ output the sample 3338 filename 3339 3340 * pp/opannotate.cpp: remove spurious output 3341 3342 * */Makefile.am: 3343 * configure.in: handle our own OP_CFLAGS, OP_CXXFLAGS to let user 3344 free to use make CFLAGS= 3345 3346 2003-05-20 Philippe Elie <phil.el (a] wanadoo.fr> 3347 3348 * libpp/profile_spec.h: 3349 * libpp/profile_spec.cpp: remove lib_image_exclude, use image_exclude 3350 instead. match() Handle image exclusion. 3351 3352 * libregex/stl.pat.in: FIXME 3353 3354 * libutil++/string_manip.h: compile fix 3355 3356 2003-05-19 John Levon <levon (a] movementarian.org> 3357 3358 * libutil++/comma_list.h: 3359 * libpp/filename_spec.cpp: 3360 * libutil++/string_manip.h: 3361 * libutil++/generic_spec.h: rename strict_convert<> 3362 to lexical_cast_no_ws<> 3363 3364 2003-05-19 John Levon <levon (a] movementarian.org> 3365 3366 * libutil++/generic_spec.h: move strict_convert<> to... 3367 3368 * libutil++/string_manip.h: ...here 3369 3370 2003-05-19 John Levon <levon (a] movementarian.org> 3371 3372 * libutil++/generic_spec.h: comma_list isn't a friend 3373 any more 3374 3375 * libutil++/comma_list.h: use generic_spec<>::match() 3376 directly 3377 3378 2003-05-19 John Levon <levon (a] movementarian.org> 3379 3380 * libpp/name_storage.h: s/name_map/stored_names/, it's not 3381 a map any more. 3382 3383 2003-05-19 Philippe Elie <phil.el (a] wanadoo.fr> 3384 3385 * libregex/mangled-name.txt: 3386 * libregex/stl.pat.in: partial handling of _Identity<> and 3387 _Select1st<>, pattern fail if type are too complex 3388 3389 2003-05-19 Philippe Elie <phil.el (a] wanadoo.fr> 3390 3391 * libpp/format_output.cpp: small cleanup 3392 3393 * libpp/name_storage.h: 3394 * libpp/name_storage.cpp: ensure type safety by providing distinct 3395 type identifier for each name_storage based container 3396 3397 * libpp/profile_container.cpp: 3398 * libpp/sample_container.cpp: 3399 * libpp/symbol_functors.cpp: 3400 * libpp/symbol_sort.cpp: 3401 * libpp/opp_symbol.h: use the name identifier api 3402 3403 * libpp/op_header.cpp: 3404 * libpp/partition_files.cpp: use a set<string> not a name_storage 3405 3406 * libpp/format_output.cpp: small cleanup 3407 3408 3409 2003-05-18 Philippe Elie <phil.el (a] wanadoo.fr> 3410 3411 * libpp/partition_files.cpp: merge partition entry when necessary 3412 fixing a corner case when a binary can be a dependent or a primary 3413 image and was not merged 3414 3415 2003-05-18 Philippe Elie <phil.el (a] wanadoo.fr> 3416 3417 * pp/opreport_options.cpp: 3418 * pp/opannotate_options.cpp: remove conflicting options shortcut 3419 3420 2003-05-18 Philippe Elie <phil.el (a] wanadoo.fr> 3421 3422 * libregex/stl.pat.in: add list<T>::{const_}+iterator 3423 3424 2003-05-17 Philippe Elie <phil.el (a] wanadoo.fr> 3425 3426 * libpp/name_storage.cpp: basename() return an empty string for nil id 3427 3428 2003-05-17 Philippe Elie <phil.el (a] wanadoo.fr> 3429 3430 * libutil++/op_bfd.cpp: get_linenr() init linenr to zero 3431 3432 * libpp/name_storage.cpp: don't use id zero 3433 * libpp/opp_symbol.h: now we use id and not string we must provide 3434 default ctor to initialize the id 3435 * libpp/profile_container.cpp: init debug info entry only if 3436 get_linenr() succeed 3437 3438 2003-05-17 Philippe Elie <phil.el (a] wanadoo.fr> 3439 3440 * libdb/db_manage.c: better handling of zero sample file size when 3441 opening in read only mode 3442 3443 * module/x86/op_nmi.c: printk format fix 3444 3445 2003-05-17 John Levon <levon (a] movementarian.org> 3446 3447 * pp/opannotate_option.cpp: 3448 * pp/opreport_options.cpp: command line changes 3449 3450 2003-05-17 John Levon <levon (a] movementarian.org> 3451 3452 * libpp/name_storage.h: 3453 * libpp/name_storage.cpp: add present() 3454 3455 * libpp/op_header.cpp: 3456 * libpp/partition_files.cpp: use a name store 3457 to track what we've warned about, and clean up 3458 the warnings a bit 3459 3460 2003-05-16 John Levon <levon (a] movementarian.org> 3461 3462 * libutil++/op_bfd.h: 3463 * libutil++/op_bfd.cpp: expose anonymous symbols 3464 to the world as "??sectionname". Useful for .plt 3465 and .fini, which are quite common. 3466 3467 * libpp/name_storage.cpp: demangle anonymous symbols 3468 nicely. 3469 3470 2003-05-16 John Levon <levon (a] movementarian.org> 3471 3472 * libpp/symbol_sort.cpp: fix image-sorting 3473 3474 2003-05-16 John Levon <levon (a] movementarian.org> 3475 3476 * libpp/name_storage.h: 3477 * libpp/name_storage.cpp: make ID be per-container 3478 3479 2003-05-16 John Levon <levon (a] movementarian.org> 3480 3481 * libpp/name_storage.h: 3482 * libpp/name_storage.cpp: merge processed names 3483 into one string, remove the boolean 3484 3485 2003-05-16 John Levon <levon (a] movementarian.org> 3486 3487 * libpp/name_storage.h: 3488 * libpp/name_storage.cpp: whoops, use string 3489 not stored_name for the ID map 3490 3491 2003-05-16 John Levon <levon (a] movementarian.org> 3492 3493 * libpp/name_storage.h: 3494 * libpp/name_storage.cpp: split into three 3495 stores for debug filenames, symbols, and images 3496 3497 * libpp/format_output.cpp: 3498 * libpp/profile_container.cpp: 3499 * libpp/sample_container.cpp: 3500 * libpp/symbol_container.cpp: 3501 * libpp/symbol_sort.cpp: 3502 * pp/opannotate.cpp: changes from above 3503 3504 2003-05-16 John Levon <levon (a] movementarian.org> 3505 3506 * libpp/Makefile.am: 3507 * libpp/name_storage.h: 3508 * libpp/name_storage.cpp: add shared storage 3509 and caching of symbol and file names 3510 3511 * libpp/opp_symbol.h: 3512 * libpp/format_output.cpp: 3513 * libpp/profile_container.cpp: 3514 * libpp/sample_container.cpp: 3515 * libpp/symbol_container.cpp: 3516 * libpp/symbol_container.h: 3517 * libpp/symbol_sort.cpp: 3518 * libpp/symbol_sort.h: 3519 * pp/opannotate.cpp: 3520 * pp/opreport.cpp: use it 3521 3522 * pp/opgprof_options.cpp: add unused demangle 3523 options to hack-fix the build 3524 3525 2003-05-16 John Levon <levon (a] movementarian.org> 3526 3527 * libpp/symbol_sort.cpp: fix --sort debug 3528 3529 2003-05-16 John Levon <levon (a] movementarian.org> 3530 3531 * libutil++/op_bfd.h: 3532 * libutil++/op_bfd.cpp: remove have_debug_info() 3533 3534 2003-05-16 Philippe Elie <phil.el (a] wanadoo.fr> 3535 3536 * libpp/op_header.cpp: remove cpu_speed checking 3537 3538 * libutil++/op_bfd.h: 3539 * libutil++/op_bfd.cpp: bail out in get_linenr() if binary doesn't 3540 contain any debug info. Speed up my test case opreport --debug-info 3541 -l by 25 3542 3543 2003-05-16 John Levon <levon (a] movementarian.org> 3544 3545 * libutil++/op_bfd.cpp: clean up interesting_symbol 3546 a bit 3547 3548 2003-05-16 John Levon <levon (a] movementarian.org> 3549 3550 * libutil++/op_bfd.cpp: make sure linenr is 3551 always set to something 3552 3553 * libpp/opp_symbol.h: linenr should be unsigned 3554 3555 * libpp/profile_container.cpp: remove some unneeded 3556 copies 3557 3558 2003-05-16 John Levon <levon (a] movementarian.org> 3559 3560 * pp/opannotate.cpp: small renaming 3561 3562 2003-05-15 John Levon <levon (a] movementarian.org> 3563 3564 * libpp/symbol_container.h: 3565 * libpp/symbol_container.cpp: add begin(), end(), 3566 remove symbols_by_count() 3567 3568 * libpp/profile_container.cpp: use symbol container 3569 iterator directly in select_symbols() 3570 3571 2003-05-15 John Levon <levon (a] movementarian.org> 3572 3573 * libpp/format_output.h: 3574 * libpp/format_output.cpp: 3575 * libpp/profile_container.h: 3576 * libpp/profile_container.cpp: 3577 * libpp/symbol_container.h: 3578 * libpp/symbol_container.cpp: 3579 * libpp/symbol_sort.h: 3580 * libpp/symbol_sort.cpp: 3581 * pp/opannotate.cpp: 3582 * pp/opreport.cpp: 3583 * pp/opgprof.cpp: move symbol_collection typedef 3584 into global namespace, and use consistently 3585 3586 2003-05-15 John Levon <levon (a] movementarian.org> 3587 3588 * libpp/format_output.h: 3589 * libpp/format_output.cpp: add vma_format_64bit(), 3590 remove bool parameter from output() 3591 3592 * pp/opreport.cpp: change from above, refactor flags 3593 code into get_format_flags() helper 3594 3595 2003-05-12 Philippe Elie <phil.el (a] wanadoo.fr> 3596 3597 * libpp/format_output.h: 3598 * libpp/format_output.cpp: 3599 * libpp/symbol_sort.h: 3600 * libpp/symbol_sort.cpp: handle reverse sort in sorting not in output 3601 * pp/opannotate.cpp: 3602 * pp/opreport.cpp: update according 3603 3604 2003-05-12 Philippe Elie <phil.el (a] wanadoo.fr> 3605 3606 * libpp/symbol_sort.h: 3607 * libpp/symbol_sort.cpp: handle sort order as specified on command line 3608 3609 * pp/opgprof.cpp: sort symbol is not necessary for gprof 3610 * pp/opreport.cpp: 3611 * pp/opreport_options.cpp: 3612 * pp/opannotate.cpp: use new sort API 3613 3614 2003-05-12 John Levon <levon (a] movementarian.org> 3615 3616 * libpp/symbol_sort.h: 3617 * libpp/symbol_sort.cpp: partial implementation 3618 of other sort options 3619 3620 2003-05-12 John Levon <levon (a] movementarian.org> 3621 3622 * libpp/Makefile.am: 3623 * libpp/symbol_sort.h: 3624 * libpp/symbol_sort.cpp: add sorting code 3625 3626 * symbol_functors.h: move some less() into 3627 symbol_sort.cpp 3628 3629 * libpp/profile_container.h: 3630 * libpp/profile_container.cpp: don't pass in 3631 sort option to select_symbols(), do it in caller 3632 3633 * pp/opannotate.cpp: 3634 * pp/opgprof.cpp: 3635 * pp/opreport.cpp: 3636 * pp/opreport_options.h: 3637 * pp/opreport_options.cpp: from the above 3638 3639 2003-05-12 John Levon <levon (a] movementarian.org> 3640 3641 * format_flags.h: remove vma64_p. Add column_flags 3642 3643 * libpp/profile_container.h: 3644 * libpp/profile_container.cpp: pass in a struct 3645 to select_symbols. Generate hints for 64-bit VMA 3646 and multiple apps in the profile. 3647 3648 * pp/opannotate.cpp: 3649 * pp/opgprof.cpp: 3650 * pp/opreport.cpp: use the above 3651 3652 2003-05-12 John Levon <levon (a] movementarian.org> 3653 3654 * libpp/format_output.cpp: 3655 * libpp/format_flags.h: 3656 * pp/opreport.cpp: trivial renaming of flags 3657 3658 2003-05-11 John Levon <levon (a] movementarian.org> 3659 3660 * libpp/format_output.cpp: 3661 * libpp/format_flags.h: better output for 3662 the default of short filenames 3663 3664 2003-05-11 John Levon <levon (a] movementarian.org> 3665 3666 * pp/opreport.cpp: improve the app/image name column 3667 showing a bit 3668 3669 2003-05-11 John Levon <levon (a] movementarian.org> 3670 3671 * pp/opreport.cpp: default to -l if we were just 3672 going to show one image summary. 3673 3674 2003-05-11 John Levon <levon (a] movementarian.org> 3675 3676 * pp/opreport.cpp: move some code around that 3677 outputs the image summaries 3678 3679 2003-05-11 John Levon <levon (a] movementarian.org> 3680 3681 * libpp/format_output.h: 3682 * libpp/format_output.cpp: 3683 * pp/opreport.cpp: 3684 * pp/opreport_options.h: 3685 * pp/opreport_options.cpp: s/--short-filename/--long-filenames/ 3686 3687 2003-05-11 John Levon <levon (a] movementarian.org> 3688 3689 * libpp/profile_spec.h: 3690 * libpp/profile_spec.cpp: take exclude_dependent not 3691 include_dependent 3692 3693 * pp/opannotate_options.c: 3694 * pp/opgprof_options.c: 3695 * pp/opreport_options.h: 3696 * pp/opreport_options.c: change to use exclude_dependent, 3697 remove --hide-dependent 3698 3699 2003-05-11 John Levon <levon (a] movementarian.org> 3700 3701 * locate_images.h: 3702 * locate_images.cpp: extra_images can now use 3703 relative paths for its search dirs. Move most of 3704 the warnings out of find_image_path, and make it 3705 also handle relative paths. Return the file 3706 even if it wasn't readable. 3707 3708 * libpp/partition_files.cpp: give warnings when 3709 necessary. 3710 3711 * libpp/profile_spec.h: 3712 * libpp/profile_spec.cpp: handle relative paths 3713 inside image specs, as stated in pp_interface; also 3714 use the extra images search path for resolution. 3715 3716 * pp/opannotate_options.cpp: 3717 * pp/opreport_options.cpp: 3718 * pp/opgprof_options.cpp: changes from above 3719 3720 2003-05-11 John Levon <levon (a] movementarian.org> 3721 3722 * libpp/format_flags.h: source doc improvements 3723 3724 2003-05-11 John Levon <levon (a] movementarian.org> 3725 3726 * libpp/opp_symbol.h: move vma64_p to ... 3727 3728 * libpp/format_flags.h: ... here 3729 3730 2003-05-11 John Levon <levon (a] movementarian.org> 3731 3732 * libpp/Makefile.am: 3733 * libpp/outsymbflags.h: 3734 * libpp/format_flags.h: 3735 * libpp/profile_container.h: 3736 * libpp/format_output.h: 3737 * libpp/format_output.cpp: 3738 * pp/opreport.cpp: rename outsymbflags to format_flags 3739 3740 2003-05-11 John Levon <levon (a] movementarian.org> 3741 3742 * profile_container.h: 3743 * profile_container.cpp: 3744 * opannotate.cpp: clean up select_filename() in a 3745 similar fashion 3746 3747 2003-05-11 John Levon <levon (a] movementarian.org> 3748 3749 * libpp/profile_container.h: 3750 * libpp/profile_container.cpp: 3751 * pp/opreport.cpp: 3752 * pp/opannotate.cpp: 3753 * pp/opgprof.cpp: another select_symbols() API cleanup 3754 3755 2003-05-11 John Levon <levon (a] movementarian.org> 3756 3757 * pp/opgprof.cpp: use select_symbols so we can 3758 handle --threshold 3759 3760 2003-05-11 Philippe Elie <phil.el (a] wanadoo.fr> 3761 3762 * pp/opannotate.cpp: use threshold for source output 3763 3764 2003-05-11 John Levon <levon (a] movementarian.org> 3765 3766 * pp/common_option.h: 3767 * pp/common_option.cpp: 3768 * pp/opannotate_options.cpp: 3769 * pp/opreport_options.cpp: make --threshold 3770 be a common option. 3771 3772 2003-05-11 John Levon <levon (a] movementarian.org> 3773 3774 * pp/profile_container.h: 3775 * pp/profile_container.cpp: 3776 * pp/opannotate.cpp: 3777 * pp/opreport.cpp: clean up select_symbols 3778 interface 3779 3780 2003-05-11 John Levon <levon (a] movementarian.org> 3781 3782 * pp/opreport.cpp: make --threshold work for 3783 image summaries too 3784 3785 2003-05-11 John Levon <levon (a] movementarian.org> 3786 3787 * pp/opreport_options.cpp: fix --threshold 3788 description to match reality 3789 3790 2003-05-11 John Levon <levon (a] movementarian.org> 3791 3792 * libpp/partition_files.h: 3793 * libpp/partition_files.cpp: 3794 * pp/opannotate_options.cpp: 3795 * pp/opgprof_options.cpp: 3796 * pp/opreport.cpp: 3797 * pp/opreport_options.cpp: rename merge_by members 3798 3799 2003-05-11 John Levon <levon (a] movementarian.org> 3800 3801 * pp/opreport.cpp: add some logic to not output 3802 duplicate lines for dep images when we've already 3803 shown all the possible details in the main image summary 3804 3805 2003-05-11 John Levon <levon (a] movementarian.org> 3806 3807 * pp/common_option.h: use std:: 3808 3809 2003-05-11 Philippe Elie <phil.el (a] wanadoo.fr> 3810 3811 * pp/opreport_options.cpp: move handle_threshold() 3812 * pp/common_option.h: 3813 * pp/common_option.cpp: here 3814 * pp/opannotate_options.h: 3815 * pp/opannotate_options.cpp: 3816 * pp/opannotate.cpp: handle --threshold 3817 3818 2003-05-10 John Levon <levon (a] movementarian.org> 3819 3820 * libop/op_mangle.h: 3821 * libop/op_mangle.c: use a temp struct for 3822 passing the mangle parameters with a set of 3823 flags. 3824 3825 * dae/opd_sample_files.c: 3826 * daemon/opd_sample_files.c: use it 3827 3828 2003-05-10 John Levon <levon (a] movementarian.org> 3829 3830 * Makefile.am: 3831 * HACKING: 3832 * libop++/: 3833 * pp/Makefile.am: 3834 * libpp/Makefile.am: 3835 * libpp/op_header.h: 3836 * libpp/op_header.cpp: remove libop++ after 3837 moving op_header into libpp 3838 3839 2003-05-10 John Levon <levon (a] movementarian.org> 3840 3841 * libop++/op_header.cpp: make CPU info take up 3842 one line not two 3843 3844 2003-05-10 John Levon <levon (a] movementarian.org> 3845 3846 * libop++/Makefile.am: 3847 * libop++/op_header.cpp: 3848 * libop++/op_print_event.h: 3849 * libop++/op_print_event.cpp: remove op_print_event 3850 files, making it a function local to op_header.cpp 3851 3852 2003-05-10 John Levon <levon (a] movementarian.org> 3853 3854 * libop++/op_header.h: 3855 * libop++/op_header.cpp: make output_header() be 3856 an operator<< 3857 3858 * pp/opannotate.cpp: 3859 * pp/opreport.cpp: changes from the above 3860 3861 * libpp/profile.h: small cleanup 3862 3863 2003-05-10 Philippe Elie <phil.el (a] wanadoo.fr> 3864 3865 * libutil++/string_manip.h: 3866 * libutil++/string_manip.cpp: replace format_percent() by 3867 format_double() 3868 3869 * libpp/format_output.cpp: 3870 * pp/opannotate.cpp: 3871 * pp/opreport.cpp: use format_double() 3872 3873 2003-05-09 John Levon <levon (a] movementarian.org> 3874 3875 * libpp/opp_symbol.h: app name, image name should 3876 be in symbol not in file_location 3877 3878 * libpp/format_output.cpp: 3879 * libpp/profile_container.h: 3880 * libpp/profile_container.cpp: 3881 * libpp/symbol_container.cpp: 3882 * libpp/symbol_functors.cpp: changes from above 3883 3884 2003-05-09 John Levon <levon (a] movementarian.org> 3885 3886 * libpp/format_output.h: 3887 * libpp/format_output.cpp: vma_64 doesn't need 3888 to be in field_datum. make one output() private 3889 3890 2003-05-09 John Levon <levon (a] movementarian.org> 3891 3892 * libpp/format_output.h: 3893 * libpp/format_output.cpp: pass a symbol ref 3894 not name down into the formatters 3895 3896 2003-05-09 John Levon <levon (a] movementarian.org> 3897 3898 * libutil++/string_manip.h: 3899 * libutil++/string_manip.cpp: sample_filename() is unused 3900 3901 2003-05-09 Philippe Elie <phil.el (a] wanadoo.fr> 3902 3903 * libop++/op_header.h: 3904 * libop++/op_header.cpp: read_header() new 3905 * libop++/Makefile.in: we depend on libdb 3906 3907 * pp/opannotate.cpp: 3908 * pp/opreport.cpp: better way to get sample file header 3909 3910 2003-05-09 Philippe Elie <phil.el (a] wanadoo.fr> 3911 3912 * libpp/format_output.cpp: remove redundant map formater 3913 * pp/opannotate.cpp: spurious cout 3914 3915 2003-05-08 John Levon <levon (a] movementarian.org> 3916 3917 * pp/opreport.cpp: 3918 * pp/opreport_options.cpp: 3919 * pp/opreport_options.h: clean up cout stuff as 3920 suggested by Phil 3921 3922 2003-05-08 John Levon <levon (a] movementarian.org> 3923 3924 * libpp/profile_spec.h: 3925 * libpp/profile_spec.c: rename the set_p variables, 3926 remove pointless is_empty() function 3927 3928 * pp/opreport.cpp: split collation and output into 3929 two separate functions. Rename the temporary structures 3930 so it's hopefully a bit more obvious what's happening. 3931 Add sourcedocs. 3932 3933 2003-05-08 John Levon <levon (a] movementarian.org> 3934 3935 * pp/opreport_options.h: 3936 * pp/opreport_options.cpp: add options::cout, 3937 --output-file option 3938 3939 * pp/opreport.cpp: use options::cout 3940 3941 2003-05-08 John Levon <levon (a] movementarian.org> 3942 3943 * pp/format_output.cpp: fix cumulative column widths 3944 3945 2003-05-08 John Levon <levon (a] movementarian.org> 3946 3947 * opreport_options.h: add accumulated 3948 3949 * opreport.cpp: handle --accumulated 3950 3951 2003-05-08 Philippe Elie <phil.el (a] wanadoo.fr> 3952 3953 * libpp/symbol_container.cpp: minor tidy 3954 3955 * libpp/profile.h: 3956 * libpp/profile.cpp: allow to cumulate sample file 3957 * libpp/profile_container.h: 3958 * libpp/profile_container.cpp: remove free function add_samples() 3959 3960 * pp/annotate.cpp: 3961 * pp/opgprof.cpp: 3962 * pp/opreport.cpp: when possible cumulate samples into a profile_t 3963 first before cumulating them in a profile_container 3964 3965 2003-05-07 John Levon <levon (a] movementarian.org> 3966 3967 * pp/opannotate.cpp: small cleanup 3968 3969 2003-05-07 John Levon <levon (a] movementarian.org> 3970 3971 * pp/opreport_options.cpp: remove unneeded include 3972 3973 2003-05-07 John Levon <levon (a] movementarian.org> 3974 3975 * libpp/Makefile.am: 3976 * libpp/parse_cmdline.h: 3977 * libpp/parse_cmdline.cpp: rename to ... 3978 3979 * libpp/profile_spec.h: 3980 * libpp/profile_spec.cpp: this. Make handle_nonoptions() 3981 be a static factory create() method instead. Make 3982 select_sample_filenames() be a member generate_file_list() 3983 instead. Concomitant cleanups. 3984 3985 * libpp/filename_spec.h: 3986 * pp/opannotate_options.cpp: 3987 * pp/opgprof_options.cpp: 3988 * pp/opreport_options.cpp: changes from above 3989 3990 2003-05-07 John Levon <levon (a] movementarian.org> 3991 3992 * libpp/profile.cpp: fix stupid error in last commit 3993 3994 2003-05-07 John Levon <levon (a] movementarian.org> 3995 3996 * libpp/profile.h: 3997 * libpp/profile.cpp: remove sample_filename member, 3998 bogus old spurious check, set_start_offset(). 3999 4000 * libpp/profile_container.cpp: 4001 * pp/opannotate.cpp: 4002 * pp/opreport.cpp: changes from above 4003 4004 2003-05-07 John Levon <levon (a] movementarian.org> 4005 4006 * libpp/derive_files.h: 4007 * libpp/derive_files.cpp: rename files as ... 4008 4009 * libpp/locate_images.h: 4010 * libpp/locate_images.cpp: this. 4011 4012 * libpp/Makefile.am: 4013 * libpp/partition_files.h: 4014 * pp/common_option.h: 4015 * pp/opgprof.cpp: 4016 * pp/opgprof_options.h: 4017 * pp/opreport_options.h: changes from above 4018 4019 2003-05-07 John Levon <levon (a] movementarian.org> 4020 4021 * libpp/derive_files.h: 4022 * libpp/derive_files.cpp: rework into extra_images 4023 class 4024 4025 * libpp/partition_files.h: 4026 * libpp/partition_files.cpp: 4027 * pp/common_option.h: 4028 * pp/common_option.cpp: 4029 * pp/opannotate.cpp: 4030 * pp/opgprof.cpp: 4031 * pp/opreport.cpp: use the above 4032 4033 2003-05-07 John Levon <levon (a] movementarian.org> 4034 4035 * libpp/Makefile.am: 4036 * session.h: 4037 * session.cpp: remove session.{h,cpp} 4038 4039 2003-05-07 Philippe Elie <phil.el (a] wanadoo.fr> 4040 4041 * pp/oprofpp.cpp pp/oprofpp_options.cpp pp/oprofpp_options.h: 4042 * pp/op_time.cpp pp/op_time_options.cpp pp/op_time_options.h: 4043 * pp/op_to_source.cpp pp/op_to_source_options.cpp: 4044 * pp/op_to_source_options.h pp/op_merge.cpp: removed files 4045 4046 * pp/Makefile.am: update 4047 4048 2003-05-06 Philippe Elie <phil.el (a] wanadoo.fr> 4049 4050 * pp/opgprof.cpp: infamous typo 4051 4052 * pp/opannotate.cpp: output sample file header 4053 4054 4055 2003-05-06 Philippe Elie <phil.el (a] wanadoo.fr> 4056 4057 * libpop++/op_mangling.h: 4058 * libpop++/op_mangling.cpp: removed file 4059 * libop++/op_header.h: 4060 * libop++/op_header.cpp: new file, misc function acting on sample 4061 file header stolen from libpp/profile.(cpp|h) 4062 * libop++/op_print_event.h: typo 4063 * libop++/op_print_event.cpp: save/restore ostream state 4064 * libop++/Makefile.am: update 4065 4066 * libop/op_sample_file.h: remove dead #define OPD_MANGLE_CHAR 4067 4068 * libpp/profile.h: 4069 * libpp/profile.cpp: move some member function to free function in 4070 libop++/op_header.(cpp|h) 4071 * libpp/profile_container.cpp: minor call change 4072 4073 * libpp/Makefile.am: op_merge can't be compiled currently inhibit build 4074 4075 * libpp/opreport.cpp: output sample file header 4076 4077 2003-05-06 Philippe Elie <phil.el (a] wanadoo.fr> 4078 4079 * libutil++/path_filter.h: default param to empty string not "*" 4080 4081 * libpp/symbol_functors.h: remove dead code 4082 4083 * pp/opgprof.cpp: off by one in histsize calculation 4084 4085 2003-05-04 Philippe Elie <phil.el (a] wanadoo.fr> 4086 4087 * libutil/op_file.h: 4088 * libutil/op_file.c: sanitize create_path() 4089 4090 * libutil++/path_filter.h: default ctor match all 4091 4092 * libpp/profile_container.h: 4093 * libpp/profile_container.cpp: 4094 * libpp/sample_container.h: 4095 * libpp/sample_container.cpp: 4096 * libpp/symbol_container.h: 4097 * libpp/symbol_container.cpp: extend api to allow selecting symbol 4098 restricted to one application, ditto for retrieving samples 4099 4100 * pp/opannotate_options.h: 4101 * pp/opannotate_options.cpp: 4102 * pp/opannotate.cpp: implement 4103 4104 * pp/opgprof_options.h: 4105 * pp/opgprof_options.cpp: 4106 * pp/opreport_options.h: 4107 * pp/opreport_options.cpp: comment fix 4108 4109 * pp/opreport.cpp: update to match new profile_container api 4110 4111 2003-05-03 Philippe Elie <phil.el (a] wanadoo.fr> 4112 4113 * pp/opreport.cpp: don't show dependent file if !--include-dependent 4114 4115 2003-05-02 Philippe Elie <phil.el (a] wanadoo.fr> 4116 4117 * libpp/partition_files.h: 4118 * libpp/partition_files.cpp: sort_by_image_name() new return a list 4119 of sample filename sorted by bfd image name. 4120 * libpp/profile_container.cpp: add_samples() don't build op_bfd object 4121 used here but pass it as parameters 4122 4123 * pp/opgprof.cpp: 4124 * pp/opreport.cpp: use the above change to avoid opening multiple time 4125 a bfd object. 4126 4127 * pp/opannotate_options.cpp: add --(include|exclude)-symbols 4128 4129 * libpp/parse_cmdline.cpp: 4130 * pp/opgprof_options.cpp: 4131 * pp/opreport.cpp: make a distinction in error message between no 4132 sample available and sample file available but no one was selected 4133 4134 2003-05-01 Philippe Elie <phil.el (a] wanadoo.fr> 4135 4136 * pp/opannotate_options.h: 4137 * pp/opannotate_options.cpp: 4138 * pp/opdiff.cpp: 4139 * pp/opdiff_options.h: 4140 * pp/opdiff_options.cpp: 4141 * pp/opgprof.cpp: 4142 * pp/opgprof_options.h: 4143 * pp/opgprof_options.cpp: 4144 * pp/opreport.cpp: 4145 * pp/opreport_options.h: 4146 * pp/opreport_options.cpp: move common options handling ... 4147 * pp/common_option.h: 4148 * pp/common_option.cpp: here 4149 4150 * pp/opannotate.cpp: add options 4151 4152 * libpp/parse_cmdline.cpp: #include <iterator> ... 4153 4154 2003-05-01 Philippe Elie <phil.el (a] wanadoo.fr> 4155 4156 * libpp/counter_util.h: 4157 * libpp/counter_util.cpp: remove these files from cvs 4158 4159 * libpp/derive_files.h: 4160 * libpp/derive_files.cpp: remove dead code derive_files() + typo 4161 4162 * libpp/parse_cmdline.cpp: select_sample_filename() throw if empty 4163 session after filtering 4164 4165 * pp/common_option.cpp: catch invalid_argument, return failure on 4166 catched exception 4167 4168 2003-05-01 Philippe Elie <phil.el (a] wanadoo.fr> 4169 4170 * libutil++/op_bfd.cpp: remove _init from excluded symbol 4171 * libpp/profile_container.cpp: tidy 4172 4173 * pp/opgprof.cpp: fix capping samples 4174 4175 2003-04-30 John Levon <levon (a] movementarian.org> 4176 4177 * pp/opgprof.cpp: 4178 * pp/opgprof_options.cpp: 4179 * libpp/profile.cpp: tiny cleanups, fix compile 4180 4181 2003-04-30 Philippe Elie <phil.el (a] wanadoo.fr> 4182 4183 * libdb/db_stat.c: minor improvement to stat, useful to track missed 4184 sample by our tools. 4185 4186 * pp/op_report.cpp: move matching_sample_filename() to ... 4187 * libpp/parse_cmdline.h: 4188 * libpp/parse_cmdline.cpp: here renamed select_sample_filename() 4189 4190 * libpp/profile_container.h: 4191 * libpp/profile_container.cpp: expose begin() / end() from 4192 sample_container 4193 4194 * pp/common_option.h: 4195 * pp/common_option.cpp: move option which was not really common to .. 4196 * pp/opreport_options.h: 4197 * pp/opreport_options.cpp: here 4198 * pp/opannotate_options.h: 4199 * pp/opannotate_options.cpp: and here 4200 4201 * pp/operport.cpp: 4202 * pp/opannotate.cpp: better to return a value from main() ... 4203 4204 * pp/opgprof_options.h: 4205 * pp/opgprof_options.cpp: 4206 * pp/opgprof.cpp: implement opgprof 4207 4208 2003-04-29 Philippe Elie <phil.el (a] wanadoo.fr> 4209 4210 * libpp/parse_cmdline.h: 4211 * libpp/parse_cmdline.cpp: handle opreport /lib/libc-2.2.5.so, now 4212 non tag, non option argument match either an image name or lib name 4213 4214 2003-04-29 John Levon <levon (a] movementarian.org> 4215 4216 * libutil++/op_bfd.cpp: remove "static " inside anon namespace 4217 4218 2003-04-28 Philippe Elie <phil.el (a] wanadoo.fr> 4219 4220 * libpp/format_output.h: 4221 * libpp/format_output.cpp: need header tweaking 4222 4223 * pp/opannotate.cpp: 4224 * pp/opgprof.cpp: minor tidy 4225 4226 * pp/opreport_options.h: 4227 * pp/opreport_options.cpp: 4228 * pp/opreport.cpp: handle -no-header and --image-path 4229 4230 2003-04-28 Philippe Elie <phil.el (a] wanadoo.fr> 4231 4232 * libutil++/glob_filter.cpp: 4233 * libutil++/path_filter.cpp: 4234 * libutil++/string_filter.cpp: #include <algorithm> 4235 4236 2003-04-28 John Levon <levon (a] movementarian.org> 4237 4238 * libutil++/string_filter.cpp: 4239 * libutil++/string_filter.h: 4240 * libutil++/glob_filter.h: 4241 * libutil++/glob_filter.cpp: 4242 * libutil++/path_filter.h: 4243 * libutil++/path_filter.cpp: use std::find[_if], 4244 share some code 4245 4246 2003-04-28 Philippe Elie <phil.el (a] wanadoo.fr> 4247 4248 * libutil++/op_bfd.cpp: replace a loop by a std::copy() 4249 4250 2003-04-28 John Levon <levon (a] movementarian.org> 4251 4252 * libutil++/op_bfd.h: 4253 * libutil++/op_bfd.cpp: cleanup of last fix 4254 4255 2003-04-28 John Levon <levon (a] movementarian.org> 4256 4257 * libutil++/op_bfd.h: 4258 * libutil++/op_bfd.cpp: make symbol filtering 4259 happen *after* adding of artificial symbol 4260 4261 2003-04-28 John Levon <levon (a] movementarian.org> 4262 4263 * libutil++/string_filter.cpp: 4264 * libutil++/glob_filter.cpp: 4265 * libutil++/path_filter.cpp: match as true if 4266 include_list is empty and not excluded 4267 4268 * libutil++/op_bfd.h: 4269 * libutil++/op_bfd.cpp: use string_filter to 4270 filter symbols 4271 4272 * libpp/profile_container.h: 4273 * libpp/profile_container.cpp: 4274 * pp/opreport_options.h: 4275 * pp/opreport_options.cpp: 4276 * pp/opreport.cpp: changes from using string_filter 4277 4278 2003-04-28 Philippe Elie <phil.el (a] wanadoo.fr> 4279 4280 * pp/opreport.cpp: finish to remove use of split_sample_filename 4281 4282 2003-04-28 John Levon <levon (a] movementarian.org> 4283 4284 * libutil++/filename_match.h: 4285 * libutil++/filename_match.cpp: replace with ... 4286 4287 * libutil++/Makefile.am: 4288 * libutil++/string_filter.h: 4289 * libutil++/string_filter.cpp: 4290 * libutil++/glob_filter.h: 4291 * libutil++/glob_filter.cpp: 4292 * libutil++/path_filter.h: 4293 * libutil++/path_filter.cpp: .. split up variants 4294 of the filters 4295 4296 * libpp/parse_cmdline.cpp: use glob_filter 4297 4298 * pp/op_to_source.cpp: use path_filter 4299 4300 2003-04-28 Philippe Elie <phil.el (a] wanadoo.fr> 4301 4302 * libpp/partition_files.h: 4303 * libpp/partition_files.cpp: 4304 * libpp/split_sample_filename.h: 4305 * libpp/split_sample_filename.cpp: 4306 * pp/opreport.cpp: replace some use of std::string sample_filename 4307 by a split_sample_filename struct 4308 4309 2003-04-28 John Levon <levon (a] movementarian.org> 4310 4311 * libutil++/filename_match.h: 4312 * libutil++/filename_match.cpp: use file-scope 4313 not private static member function 4314 4315 2003-04-27 Philippe Elie <phil.el (a] wanadoo.fr> 4316 4317 * libpp/format_output.h: 4318 * libpp/format_output.cpp: remove all string based output format flag 4319 4320 * libpp/format_output.cpp: move options::demangle handling ... 4321 * libregx/demangle_symbol.cpp: here 4322 4323 * libpp/profile_container.h: 4324 * libpp/profile_container.cpp: 4325 * pp/opreport_options.h: 4326 * pp/opreport_options.cpp: 4327 * pp/opreport.cpp: handle --include-symbols 4328 4329 2003-04-27 Philippe Elie <phil.el (a] wanadoo.fr> 4330 4331 * pp/opreport_options.h: 4332 * pp/opreport_options.cpp: 4333 * pp/opreport.cpp: handle --threshold, remove --ignore-symbols 4334 4335 2003-04-27 John Levon <levon (a] movementarian.org> 4336 4337 * libpp/<various>: minor spacing etc. 4338 4339 2003-04-27 Philippe Elie <phil.el (a] wanadoo.fr> 4340 4341 * libpp/outsymbflag.h: remove osf_short_xxx variant 4342 * libpp/format_output.h: 4343 * libpp/format_output.cpp: replace osf_short_xxx by a boolean 4344 * libpp/profile_container.cpp: update according 4345 4346 * pp/opreport_options.h: export short_filename option 4347 * pp/opreport.cpp: use short_filename 4348 4349 2003-04-27 Philippe Elie <phil.el (a] wanadoo.fr> 4350 4351 * libpp/symbol_functors.h: add less_symbol predicate 4352 * libpp/symbol_functors.cpp: new file, less_symbol implementation 4353 * libpp/Makefile.am: symbol_functors.cpp 4354 4355 * libpp/symbol_container.h: 4356 * libpp/symbol_container.cpp: use a node based container for symbols 4357 ensuring validity of symbol pointer over a symbol_container life time 4358 * libpp/sample_container.h: 4359 * libpp/sample_container.cpp: ditto as above for samples 4360 * libpp/profile_container.h: 4361 * libpp/profile_container.cpp: use this new api to merge symbols 4362 and sample. 4363 4364 * libpp/format_output.h: 4365 * libpp/format_output.cpp: use new api to iterate over sample by symbol 4366 4367 * pp/opreport.cpp: detailed output 4368 4369 4370 2003-04-27 John Levon <levon (a] movementarian.org> 4371 4372 * pp/opreport.cpp: make opreport -l put largest results 4373 at the top like opreport does 4374 4375 2003-04-26 Philippe Elie <phil.el (a] wanadoo.fr> 4376 4377 * libpp/profile_container.h: comment 4378 4379 * pp/opreport_options.h: more options export 4380 * pp/opreport.cpp: implement -l. Doesn't works correctly: --merge=lib 4381 4382 2003-04-25 Philippe Elie <phil.el (a] wanadoo.fr> 4383 4384 * pp/opreport_options.h: export global_percent 4385 * pp/opreport.cpp: finish to implement op_time like behavior. Remains 4386 to implement op_time -l 4387 4388 2003-04-25 Philippe Elie <phil.el (a] wanadoo.fr> 4389 4390 * libpp/partition_files.cpp: fix a crash when profile spec is empty 4391 4392 * pp/opreport_options.cpp: bail out if no samples files are found 4393 4394 2003-04-25 John Levon <levon (a] movementarian.org> 4395 4396 * pp/opreport_options.cpp: --hide-dependent should have 'h' as 4397 short form. Add a FIXME for a crash 4398 4399 2003-04-25 Philippe Elie <phil.el (a] wanadoo.fr> 4400 4401 * libpp/partition_files.cpp: thinko in sample filename partition 4402 4403 * pp/opreport_options.h: export more options 4404 * pp/opreport_options.cpp: add --hide-dependent, change --merge to not 4405 default to all 4406 * pp/opreport.cpp: handle --hide-dependent --include-dependent and 4407 --merge=lib. Code is ugly, tidy incoming 4408 4409 2003-04-25 John Levon <levon (a] movementarian.org> 4410 4411 * libpp/format_output.cpp: 4412 * libpp/format_output.h: 4413 * libpp/outsymbflag.h: "immutable" not "imutable" 4414 4415 * libpp/partition_files.cpp: include <iterator> to compile 4416 4417 2003-04-24 Philippe Elie <phil.el (a] wanadoo.fr> 4418 4419 * libpp/partition_files.h: typo 4420 * libpp/profile.cpp: difficult to get right result with a random value 4421 in profile::start_offset 4422 4423 * pp/opreport_options.h: export options::reverse_sort 4424 * pp/opreport_options.cpp: bail out if we get multiple counter 4425 4426 * pp/opreport.cpp: raw output result for application (not symbol) 4427 output. 4428 4429 2003-04-24 Philippe Elie <phil.el (a] wanadoo.fr> 4430 4431 * libpp/filename_spec.h: 4432 * libpp/filename_spec.cpp: 4433 * libpp/parse_cmdline.h: 4434 * libpp/parse_cmdline.cpp: 4435 * libpp/split_sample_filename.h: 4436 * libpp/split_sample_filename.cpp: s/unit_mask/unitmask 4437 4438 * libpp/merge_spec.cpp: 4439 * libpp/merge_spec.h: rename to 4440 * libpp/partition_files.h: 4441 * libpp/partition_files.cpp: here. Add and merge_option. 4442 partition_files is now a class. 4443 * pp/opreport_options.h: 4444 * pp/opreport_options.cpp: 4445 * pp/opreport.cpp: update according to the above. Add a roughly support 4446 to count samples for plain op_time opreport like 4447 4448 2003-04-24 John Levon <levon (a] movementarian.org> 4449 4450 * libpp/profile_container.h: 4451 * libpp/profile_container.cpp: chop off the _t of the class name 4452 4453 * libpp/format_output.cpp: 4454 * libpp/format_output.h: 4455 * libpp/symbol_container.cpp: 4456 * libpp/symbol_container.h: 4457 * pp/op_time.cpp: 4458 * pp/op_to_source.cpp: 4459 * pp/oprofpp.cpp: changes from the above 4460 4461 2003-04-24 John Levon <levon (a] movementarian.org> 4462 4463 * libpp/profile_container.h: 4464 * libpp/profile_container.cpp: pedantry for sample_container 4465 indices. 4466 4467 * libpp/sample_container.h: 4468 * libpp/sample_container.cpp: various cleanups and docs. Add 4469 and use size_type. 4470 4471 * libpp/symbol_container.h: 4472 * libpp/symbol_container.cpp: renamings. Add and use size_type. 4473 4474 2003-04-24 John Levon <levon (a] movementarian.org> 4475 4476 * libpp/symbol_container.h: 4477 * libpp/symbol_container.cpp: remove unused operator[]. 4478 Add some docs. Some small cleanups 4479 4480 2003-04-24 John Levon <levon (a] movementarian.org> 4481 4482 * libpp/symbol_container_imp.h: 4483 * libpp/symbol_container_imp.cpp: 4484 * libpp/sample_container_imp.h: 4485 * libpp/sample_container_imp.cpp: These classes weren't using 4486 the pimpl idiom, so the _imp was spurious. Remove that as well 4487 as removing the _t from the names, and rename to ... 4488 4489 * libpp/symbol_container.h: 4490 * libpp/symbol_container.cpp: 4491 * libpp/sample_container.h: 4492 * libpp/sample_container.cpp: ...files moved from the above with 4493 new names. 4494 4495 2003-04-23 Philippe Elie <phil.el (a] wanadoo.fr> 4496 4497 * libutil++/generic_spec.h: minor formating tweak 4498 4499 * libpp/parse_cmdline.h: 4500 * libpp/parse_cmdline.cpp: handle_non_options(): return parse_cmdline 4501 by value 4502 4503 * libpp/merge_spec.h: 4504 * libpp/merge_spec.cpp: new files: partition list of samples filename 4505 according to merge options. 4506 * libpp/Makefile.am: update 4507 4508 * pp/opreport_options.cpp: more options handling, use partition_files() 4509 4510 2003-04-22 John Levon <levon (a] movementarian.org> 4511 4512 * pp/opreport_options.cpp: compile fix 4513 4514 2003-04-21 Philippe Elie <phil.el (a] wanadoo.fr> 4515 4516 * libutil++/filename_match.h: 4517 * libutil++/filename_match.cpp: add strict_match() 4518 4519 * libutil++/generic_spec.cpp: generic_spec<string>::set() was not 4520 setting is_all member leading to bad matching 4521 4522 * libpp/filename_spec.cpp: minor tidy 4523 4524 * libpp/parse_cmdline.h: 4525 * libpp/parse_cmdline.cpp: fix match() 4526 4527 * libpp/split_sample_filename.h: 4528 * libpp/split_sample_filename.cpp: handle sample file base directory 4529 4530 * libop++/op_print_event.h: 4531 * libop++/op_print_event.cpp: 4532 * libpp/format_output.h: 4533 * libpp/format_output.cpp: 4534 * libpp/opp_symbol.h: 4535 * libpp/profile.h: 4536 * libpp/profile.cpp: 4537 * libpp/profile_container.h: 4538 * libpp/profile_container.cpp: 4539 * libpp/sample_container_imp.h: 4540 * libpp/sample_container_imp.cpp: 4541 * libpp/symbol_container_imp.h: 4542 * libpp/symbol_container_imp.cpp: 4543 * libpp/symbol_functors.h: remove all use of counter number 4544 4545 * libpp/counter_array.h: 4546 * libpp/counter_array.cpp: 4547 * libpp/counter_profile.h: 4548 * libpp/counter_profile.cpp: no longer used, move some bits to 4549 libpp/profile.(h|cpp) and remove these files. 4550 * libpp/Makefile.am: update according 4551 4552 * pp/op_merge.cpp: use profile_t not counter_profile_t 4553 * pp/makefile.am: correct lib for op_merge 4554 4555 * pp/opreport_options.cpp: more options handling 4556 4557 2003-04-19 Philippe Elie <phil.el (a] wanadoo.fr> 4558 4559 * libopt++/popt_options.cpp: don't show help_str with --usage 4560 * libpp/format_output.cpp: typo 4561 * libutil/op_file.c: create dir with 755 not 700 4562 * pp/common_option.cpp: source formating 4563 4564 * libpp/parse_cmdline.h: 4565 * libpp/parse_cmdline.cpp: handle_non_options() new 4566 * pp/opreport_options.cpp: handle more options 4567 4568 * pp/opsummary.cpp: 4569 * pp/opsummary_options.h: 4570 * pp/opsummary_options.cpp: remove, opreport should do its job. 4571 * pp/Makefile.am: update 4572 4573 2003-04-18 Philippe Elie <phil.el (a] wanadoo.fr> 4574 4575 * libopt++/popt_options.cpp: allow "no-" prefix to long option name 4576 implicitly specify the value must be negated 4577 * libopt++/popt_options.cpp: update doxygen documentation 4578 4579 * libpp/format_output.h: missing #include 4580 * libpp/format_output.cpp: space + minor change 4581 4582 * pp/opannotate_options.h: 4583 * pp/opannotate_options.cpp: 4584 * pp/opdiff_options.h: 4585 * pp/opdiff_options.cpp: 4586 * pp/opgprof_options.h: 4587 * pp/opgprof_options.cpp: 4588 * pp/opreport_options.h: 4589 * pp/opreport_options.cpp: 4590 * pp/opsummary_options.h: 4591 * pp/opsummary_options.cpp: new skeleton file 4592 4593 * pp/opannotate.cpp: 4594 * pp/opdiff.cpp: 4595 * pp/opgprof.cpp: 4596 * pp/opreport.cpp: 4597 * pp/opsummary.cpp: update to handle options 4598 4599 * pp/common_option.cpp: follow more closely pp_interface 4600 4601 * pp/opsummary_options.cpp: start to handle opsummary option 4602 4603 * pp/Makefile.am: update 4604 4605 2003-04-17 Philippe Elie <phil.el (a] wanadoo.fr> 4606 4607 * libpp/format_output.h: 4608 * libpp/format_output.cpp: 4609 * libpp/outsymbflag.h: 4610 * libpp/profile_container.h: 4611 * libpp/profile_container.cpp: osf_header/osf_details are no longer 4612 flags but separate boolean. 4613 4614 2003-04-17 Philippe Elie <phil.el (a] wanadoo.fr> 4615 4616 * dae/opd_kernel.c: 4617 * daemon/opd_kernel.c: remove leading '/' on module name fixing 2.5 4618 module not under {kern} and similar case for "no-vmlinux" with 2.4/2.5 4619 4620 * libutil/op_file.c: tiny tidy 4621 4622 2003-04-17 Philippe Elie <phil.el (a] wanadoo.fr> 4623 4624 * libop/op_mangle.c: app_name and image was reversed, {dep} was missing 4625 4626 2003-04-17 John Levon <levon (a] movementarian.org> 4627 4628 * libpp/filename_spec.h: 4629 * libutil++/comma_list.h: compile fixes 4630 4631 2003-04-17 Philippe Elie <phil.el (a] wanadoo.fr> 4632 4633 * utils/opcontrol: better --reset handling 4634 4635 2003-04-16 Philippe Elie <phil.el (a] wanadoo.fr> 4636 4637 * dae works, daemon compiles but not tested. 4638 4639 * libop/op_config.h: 4640 * libpp/op_session.h: 4641 * libpp/session.cpp: 4642 * pp/op_merge: handle new path to samples files. 4643 4644 * libutil++/file_manip.h: 4645 * libutil++/file_manip.cpp: move create_dir(), create_path() ... 4646 * libutil/op_file.h: 4647 * libutil/op_file.c: here. Remove op_move_regular_file() 4648 4649 * daemon/opd_image.c: 4650 * daemon/opd_sample_files.h: 4651 * daemon/opd_sample_files.c: 4652 * dae/opd_image.c: 4653 * dae/opd_sample_files.h: 4654 * dae/opd_sample_files.c: use new filename scheme 4655 4656 * daemon/oprofiled.c: 4657 * dae/oprofiled.c: remove samples files backup stuff 4658 4659 * libop/op_mangle.h: 4660 * libop/op_mangle.c: ugly modification to handle new samples filename 4661 4662 * utils/opcontrol: handle new samples files path, --save and --reset 4663 are working too. 4664 4665 * gui/oprof_start_util.cpp: use new create_path() API 4666 4667 2003-04-16 Philippe Elie <phil.el (a] wanadoo.fr> 4668 4669 * pp/common_option.cpp: 4670 * pp/common_option.h: 4671 * libregex/demangle_symbol.cpp: rename demangle_and_shrink to 4672 smart_demangle 4673 4674 2003-04-16 Philippe Elie <phil.el (a] wanadoo.fr> 4675 4676 * starting branch pp-interface-branch 4677 4678 * Makefile.am: 4679 * configure.in: handle new sub dir libpp 4680 4681 * libutil++/comma_list.h: new file handling of comma separated list of 4682 items. 4683 * libutil++/generic_spec.cpp: 4684 * libutil++/generic_spec.h: new file 4685 * libutil++/Makefile.am: handle new file 4686 4687 * pp/counter_array.*: 4688 * pp/counter_profile.*: 4689 * pp/counter_util.*: 4690 * pp/derive_files.*: 4691 * pp/format_output.*: 4692 * pp/opp_symbol.h: 4693 * pp/outsymbflag.h: 4694 * pp/profile.*: 4695 * pp/profile_container.*: 4696 * pp/sample_container_imp.*: 4697 * pp/session.*: 4698 * pp/symbol_container_imp.*: 4699 * pp/symbol_functors.*: move to 4700 4701 * libpp/*: here 4702 * libpp/filename_spec.cpp: 4703 * libpp/filename_spec.h: new file handling of pp sample filename 4704 * libpp/parse_cmdline.cpp: 4705 * libpp/parse_cmdline.h: new file, handling of command line tag:value 4706 * libpp/Makefile.am: new file build libpp.a 4707 4708 * pp/common_option.h: 4709 * pp/common_option.cpp: common option to pp tools. Implement common 4710 entry point to pp tools. 4711 * pp/opannotate.cpp: 4712 * pp/opdiff.cpp: 4713 * pp/opgprof.cpp: 4714 * pp/opreport.cpp: 4715 * pp/opsummary.cpp: skeleton file for all pp tools. 4716 * pp/Makefile.am: remove old pp tools, add the news. 4717 4718 2003-04-28 Alex Tsariounov <alext (a] fc.hp.com> 4719 4720 * module/ia64/op_pmu.c: fix compile 4721 4722 2003-04-24 Philippe Elie <phil.el (a] wanadoo.fr> 4723 4724 * module/compat22.h: add cpuid_edx when linux version < 2.2.21 4725 4726 2003-04-24 Dave Jones <davej (a] codemonkey.org.uk> 4727 4728 * events/x86-64.hammer.events: 4729 * events/x86-64.hammer.unit_masks: typo fixes from AMD. 4730 * module/x86/cpu_type.c: Check for APIC on Athlon before enabling it. 4731 4732 2003-04-15 Philippe Elie <phil.el (a] wanadoo.fr> 4733 4734 * events/i386-ht.events: all events allow only one counter, remove 4735 three events due to ESCR restriction. 4736 * events/i386.events: add some comments. 4737 4738 * module/x86/op_model_p4.c: synch with linux 2.5 mainline 4739 - except events CTR_BPU_0 all virtual counter was not working. 4740 - Prevents a segfault when using incorrect counter number. 4741 - ESCR event select is 6 bits length not 5. 4742 - Don't fail silently in p4_setup_ctrs(). 4743 * module/x86/op_msr.h: match name used in linux. 4744 4745 2003-04-15 John Levon <levon (a] movementarian.org> 4746 4747 * doc/oprofile.1.in: 4748 * doc/oprofile.xml: small english fixes 4749 4750 2003-04-14 Philippe Elie <phil.el (a] wanadoo.fr> 4751 4752 * dae/opd_kernel.c: 4753 * dae/opd_proc.c: 4754 * dae/oprofiled.c: 4755 * utils/opcontrol: 4756 * doc/oprofile.1.in: 4757 * doc/oprofile.xml: handle --no-vmlinux 4758 4759 * daemon/opd_kernel.c: use no-vmlinux not /no-vmlinux when user 4760 specify --no-vmlinux 4761 4762 2003-04-08 John Levon <levon (a] movementarian.org> 4763 4764 * HACKING: describe what happens with oprofile-www 4765 4766 2003-04-08 Philippe Elie <phil.el (a] wanadoo.fr> 4767 4768 * libutil++/op_bfd.cpp: check for #717720 and direct user to 4769 FAQ if detected. Note than we don't detect all symptom of this bug. 4770 4771 2003-04-08 Philippe Elie <phil.el (a] wanadoo.fr> 4772 4773 * libutil++/op_exception.h: op_runtime_error is no longer abstract 4774 4775 * libregex/op_regex.h: comment and tidy 4776 * libregex/op_regex.cpp: tidy 4777 4778 2003-04-07 Philippe Elie <phil.el (a] wanadoo.fr> 4779 4780 * pp/op_to_source.cpp: make each line be prefixed with the samples 4781 counts. It was too hard to find samples inside previous format. 4782 4783 2003-04-07 Philippe Elie <phil.el (a] wanadoo.fr> 4784 4785 * libutil++/string_manip.cpp: work around for gcc 2.95 4786 * p/op_to_source.cpp: minor cleanup 4787 4788 2003-04-07 John Levon <levon (a] movementarian.org> 4789 4790 * pp/op_to_source.cpp: cheat a bit to get 4791 better indentation on the default setup, by 4792 widening counter width to 7. 4793 4794 2003-04-07 John Levon <levon (a] movementarian.org> 4795 4796 * pp/op_to_source.cpp: append symbol summary 4797 annotations separate from the prolog samples on 4798 the same line. 4799 4800 2003-04-07 John Levon <levon (a] movementarian.org> 4801 4802 * pp/op_to_source.cpp: only output line 0 annotation 4803 if samples found there. 4804 4805 2003-04-07 John Levon <levon (a] movementarian.org> 4806 4807 * utils/opcontrol: make sure --ctrX-event=none gets noticed 4808 4809 2003-04-06 John Levon <levon (a] movementarian.org> 4810 4811 * libutil++/string_manip.h: 4812 * libutil++/string_manip.cpp: remove ws_prefix(). Add 4813 format_percent(). 4814 4815 * pp/op_to_source.cpp: make each line be prefixed with 4816 the sample counts, instead of on a line above, to preserve 4817 line numbering. 4818 4819 2003-04-06 John Levon <levon (a] movementarian.org> 4820 4821 * pp/op_to_source.cpp: some renamings for clarity 4822 4823 2003-04-06 John Levon <levon (a] movementarian.org> 4824 4825 * pp/op_to_source.cpp: move extract_blank_at_begin() to ... 4826 4827 * libutil++/string_manip.cpp: ... here, and rename as 4828 ws_prefix(). 4829 4830 2003-04-06 John Levon <levon (a] movementarian.org> 4831 4832 * pp/op_to_source.cpp: prefix comment lines. 4833 Output the general footer on each separate file. 4834 Output the info at the bottom when outputting 4835 separate files (towards maintaining line numbering). 4836 4837 2003-04-06 John Levon <levon (a] movementarian.org> 4838 4839 * pp/op_to_source.cpp: construct a file-scope 4840 cmdline string, instead of passing it around. 4841 4842 2003-04-06 John Levon <levon (a] movementarian.org> 4843 4844 * libregex/op_regexp.cpp: re-arrange a bit 4845 4846 2003-04-06 John Levon <levon (a] movementarian.org> 4847 4848 * configure.in: 4849 * all Makefile.am: don't blindly set $LIBS, use 4850 explicit mention of which libs are needed. 4851 4852 * dae/Makefile.am: 4853 * daemon/Makefile.am: only link with C++ if needed. 4854 4855 2003-04-05 Philippe Elie <phil.el (a] wanadoo.fr> 4856 4857 * libop/op_config_24.h: 4858 * module/oprofile.c: 4859 * module/oprofile.c: make watermark size proportional to buffer size. 4860 4861 2003-04-05 Philippe Elie <phil.el (a] wanadoo.fr> 4862 4863 * libop/op_events.h: 4864 * libop/op_events.c: re-add op_min_count(); 4865 4866 * dae/oprofiled.c: 4867 * daemon/oprofiled.c: use op_min_count() fixing #715923 4868 4869 2003-04-01 John Levon <levon (a] movementarian.org> 4870 4871 * libdb/Makefile.am: fix make dist 4872 4873 * daemon/opd_cookie.h: add SPARC syscall number. 4874 The system call function is OK for sparc/sparc64 4875 4876 2003-03-31 Will Cohen <wcohen (a] redhat.com> 4877 4878 * libdb/odb_hash.h: Renamed db_hash.h. 4879 4880 * dae/Makefile.am: 4881 * dae/opd_image.c: 4882 * dae/opd_image.h: 4883 * dae/opd_proc.c: 4884 * dae/opd_sample_files.c: 4885 * daemon/Makefile.am: 4886 * daemon/opd_image.c: 4887 * daemon/opd_image.h: 4888 * daemon/opd_sample_files.c: 4889 * libabi/Makefile.am: 4890 * libabi/abi.cpp: 4891 * libabi/abi_test.cpp: 4892 * libabi/op_import.cpp: 4893 * libdb/Makefile.am: 4894 * libdb/db_debug.c: 4895 * libdb/db_hash.h: 4896 * libdb/db_insert.c: 4897 * libdb/db_manage.c: 4898 * libdb/db_stat.c: 4899 * libdb/db_test.c: 4900 * libdb/db_travel.c: 4901 * pp/Makefile.am: 4902 * pp/counter_profile.cpp: 4903 * pp/counter_profile.h: 4904 * pp/op_merge.cpp: Change names to avoid libdb.a name conflicts. 4905 4906 2003-03-30 John Levon <levon (a] movementarian.org> 4907 4908 * configure.in: bump to 0.6cvs 4909 4910 * doc/oprofile.xml: fix id. Add java etc. mention 4911 4912 * utils/Makefile.am: 4913 * utils/op_start: 4914 * utils/op_start_25: 4915 * utils/op_stop: 4916 * utils/op_stop_25: 4917 * utils/op_dump: 4918 * utils/op_dump_25: 4919 * utils/op_session: finally remove the back compat crap 4920 4921 * HACKING: add release-notes policy 4922 4923 2003-03-30 John Levon <levon (a] movementarian.org> 4924 4925 * configure.in: bump to 0.5.2 4926 4927 2003-03-30 John Levon <levon (a] movementarian.org> 4928 4929 * Makefile.am: remove op_arch.h for ia64 4930 4931 2003-03-27 John Levon <levon (a] movementarian.org> 4932 4933 * doc/oprofile.xml: several more examples and fixes 4934 4935 2003-03-26 John Levon <levon (a] movementarian.org> 4936 4937 From a patch by Bryan Rittmeyer. 4938 4939 * module/oprofile.c: 4940 * module/oprofile.h: push "irq_enabled" test 4941 into arch code, don't pass struct pt_regs. 4942 4943 * module/x86/op_arch.h: cleanups 4944 4945 * module/x86/op_model_athlon.c: 4946 * module/x86/op_model_ppro.c: 4947 * module/x86/op_model_p4.c: 4948 * module/x86/op_rtc.c: changes from above 4949 4950 * module/ia64/op_arch.h: remove 4951 * module/ia64/op_pmu.c: change from above 4952 4953 2003-03-24 John Levon <levon (a] movementarian.org> 4954 4955 * doc/oprofile.xml: document prologues, and inline functions 4956 4957 2003-03-24 Will Cohen <wcohen (a] redhat.com> 4958 4959 * libutil/op_fileio.c (op_get_line): Use lower cost getc(). 4960 4961 2003-03-24 John Levon <levon (a] movementarian.org> 4962 4963 * m4/configmodule.m4: fix quoting problem for awk 4964 4965 2003-03-23 John Levon <levon (a] movementarian.org> 4966 4967 * configure.in: 4968 * m4/: move lots of stuff into separate .m4 files 4969 4970 * m4/typedef.m4: improve configure message 4971 4972 2003-03-23 John Levon <levon (a] movementarian.org> 4973 4974 * configure.in: 4975 * m4/Makefile.am: 4976 * m4/copyifchange.m4: 4977 * m4/docbook.m4: 4978 * m4/kerneloption.m4: 4979 * m4/kernelversion.m4: 4980 * m4/resultyn.m4: move configure.in macros to m4/ 4981 4982 2003-03-23 John Levon <levon (a] movementarian.org> 4983 4984 * m4/ChangeLog: add comment 4985 4986 * m4/typedef.m4: can't use AC_LANG_PUSH/POP 4987 4988 2003-03-23 Philippe Elie <phil.el (a] wanadoo.fr> 4989 4990 * TODO: update 4991 4992 * m4/Makefile.am: 4993 * m4/typedef.m4: new file to get underlined type for a typedef. 4994 4995 * configure.in: get at configure time the real underlined type 4996 for size_t and ptrdiff_t 4997 4998 * libregex/stl.pat: move to ... 4999 * libregex/stl.pat.in: here. Use @SIZE_T_TYPE@ and @PTRDIFF_T_TYPE@ 5000 * libregex/Makefile.am: update according 5001 * libregex/.cvsignore: ignore stl.pat 5002 5003 2003-03-22 Philippe Elie <phil.el (a] wanadoo.fr> 5004 5005 * utils/opcontrol: use $OP_HELP not op_help 5006 * utils/op_help.c: remove short option for --get-cpu-frequency 5007 5008 2003-03-22 Philippe Elie <phil.el (a] wanadoo.fr> 5009 5010 * TODO: update 5011 5012 * m4: new directory 5013 * m4/.cvsignore: new 5014 5015 * acinclude.m4: move to 5016 * m4/qt.m4: here 5017 * m4/Makefile.am: new for EXTRA_DIST = all our .m4 5018 * Makefile.am: 5019 * configure.in: 5020 * autogen.sh: handle m4 subdir, add -I m4 to aclocal flags 5021 5022 2003-03-22 Philippe Elie <phil.el (a] wanadoo.fr> 5023 5024 Suggested by John 5025 5026 * libutil/op_cpufreq.c: typo in comment 5027 5028 * utils/op_help.c: add --get-cpu-frequency, intentionnaly not 5029 documented. 5030 * utils/opcontrol: use op_help --get-cpu-frequency and remove 5031 ugly shell script doing the same thing. 5032 5033 2003-03-22 Philippe Elie <phil.el (a] wanadoo.fr> 5034 5035 * libutil/op_cpufreq.h: 5036 * libutil/op_cpufreq.c: new file exporting op_cpu_frequency() 5037 * libutil/Makefile.am: update according 5038 5039 * utils/opcontrol: handle other arch 5040 5041 * gui/oprof_start_util.h: 5042 * gui/oprof_start_util.cpp: remove get_cpu_speed() 5043 * gui/oprof_start.h: 5044 * gui/oprof_start.cpp: and use instead op_cpu_frequency() 5045 5046 * daemon/oprofiled.c: 5047 * dae/oprofiled.c: replace --cpu-speed option by a call to 5048 op_cpu_frequencey() 5049 5050 2003-03-20 John Levon <levon (a] movementarian.org> 5051 5052 * doc/oprofile.xml: doc some 2.5 module stuff 5053 5054 2003-03-20 John Levon <levon (a] movementarian.org> 5055 5056 * utils/opcontrol: fix opcontrol --dump to do something 5057 5058 * daemon/opd_image.c: give a printf when reading the buffer. 5059 5060 2003-03-19 Philippe Elie <phil.el (a] wanadoo.fr> 5061 5062 * libutil++/op_bfd.cpp: correct get_vma_range() 5063 5064 * pp/oprofpp.cpp: do_dump_gprof() this time it's right! 5065 5066 2003-03-18 John Levon <levon (a] movementarian.org> 5067 5068 * pp/profile.cpp: improve mtime warning for 2.5 modules 5069 5070 2003-03-18 John Levon <levon (a] movementarian.org> 5071 5072 * pp/derive_files.cpp: some more 2.5 modules derivation fixes 5073 5074 2003-03-18 Philippe Elie <phil.el (a] wanadoo.fr> 5075 5076 * pp/derive_files.cpp: fix handling of 2.5 module name 5077 5078 2003-03-18 John Levon <levon (a] movementarian.org> 5079 5080 * daemon/opd_image.c: 5081 * libop/op_interface_25.h: rename to MODULE_LOADED_CODE 5082 5083 2003-03-18 Philippe Elie <phil.el (a] wanadoo.fr> 5084 5085 * TODO: update 5086 5087 * pp/derive_files.cpp: special to retrieve 2.5 module 5088 5089 2003-03-18 Philippe Elie <phil.el (a] wanadoo.fr> 5090 5091 * TODO: update 5092 5093 * pp/symbol_container_imp.h: 5094 * pp/symbol_container_imp.cpp: 5095 * pp/profile_container.h: 5096 * pp/profile_container.cpp: find(string symbol_name) return a vector 5097 of symbol rather a a single symbol 5098 * pp/oprofpp.cpp: use above change so oprofpp -s will show all 5099 symbol with the same name. 5100 5101 * pp/symbol_functors.h: remove unused functors equal_symbol_by_name 5102 5103 2003-03-17 Philippe Elie <phil.el (a] wanadoo.fr> 5104 5105 * TODO: update 5106 5107 * libutil/op_fileio.h: 5108 * libutil/op_fileio.c: op_write_u64() new 5109 * libutil/op_types.h: continue our silly typedef: add u64 5110 5111 * libutil++/op_bfd.h: 5112 * libutil++/op_bfd.cpp: op_bfd::arch_bits_per_address() new allowing 5113 to get, on a per-binary basis, the vma size. 5114 5115 * pp/oprofpp.cpp: fix 64 bits arch gprof output. Fix multiplier and 5116 get the multiplier of gprof file at runtime. Fix a very old bug 5117 where we credit the samples to previous gprof bin having the effect 5118 than sample at start of function was credited to the previous 5119 function 5120 5121 2003-03-17 John Levon <levon (a] movementarian.org> 5122 5123 * daemon/opd_kernel.c: 5124 * daemon/opd_kernel.h: 5125 * daemon/opd_image.c: 5126 * daemon/oprofiled.c: don't try to reread the module 5127 list on a failed EIP match. We must have the module load 5128 notification instead. 5129 5130 2003-03-17 John Levon <levon (a] movementarian.org> 5131 5132 * daemon/opd_kernel.c: fix module accounting. Remove 5133 quick-drop code that can't work. 5134 5135 * doc/oprofile.1.in: 5136 * doc/oprofile.xml: english tweaks 5137 5138 2003-03-17 Philippe Elie <phil.el (a] wanadoo.fr> 5139 5140 * TODO: update 5141 5142 * doc/oprofile.1.in: 5143 * doc/oprofile.xml: remove documentation about -P, update doc about -p 5144 5145 * pp/derive_files.h: 5146 * pp/derive_files.cpp: check_image_name(), add_to_alternate_filename() 5147 functions moved from op_time.cpp 5148 5149 * pp/op_time_options.h: 5150 * pp/op_time_options.cpp: 5151 * pp/op_time.cpp: remove -P option, minor cleanup 5152 5153 * pp/oprofpp_options.h: 5154 * pp/oprofpp_options.cpp: 5155 * pp/oprofpp.cpp: add -p option, minor cleanup 5156 5157 * pp/op_to_source.cpp: minor cleanup 5158 5159 2003-03-16 Philippe Elie <phil.el (a] wanadoo.fr> 5160 5161 * utils/opcontrol: check return code for --ctr??-event=none 5162 5163 2003-03-16 Philippe Elie <phil.el (a] wanadoo.fr> 5164 5165 * gui/oprof_start.cpp: check for --separate=xxxx in the right order. 5166 Old code do: if user set separate=library and separate=kernel only 5167 separate=library was taken by opcontrol 5168 5169 2003-03-16 Philippe Elie <phil.el (a] wanadoo.fr> 5170 5171 * configure.in: typo 5172 5173 2003-03-16 John Levon <levon (a] movementarian.org> 5174 5175 * configure.in: more docbook macro fixes 5176 5177 2003-03-15 Philippe Elie <phil.el (a] wanadoo.fr> 5178 5179 * libutil/op_libiberty.h: cut&paste typo breaking compilation on box 5180 w/o libiberty.h 5181 5182 * daemon/opd_image.c: remove bogus fprintf. compilation was broken 5183 on alpha. 5184 5185 * configure.in: xsltproc checking fix, was always accepted even 5186 on box where xsltproc is not installed 5187 5188 2003-03-15 Philippe Elie <phil.el (a] wanadoo.fr> 5189 5190 * TODO: update 5191 5192 * Makefile.am: add ChangeLog-2002 in dist files 5193 * all Makefile.am: put one item by line for most xxxx = blah 5194 * doc/CodingStyle: rationale for the above change 5195 5196 2003-03-15 Philippe Elie <phil.el (a] wanadoo.fr> 5197 5198 * libop/op_events.c: minor cleanup 5199 5200 2003-03-15 Dave Jones <davej (a] codemonkey.org.uk> 5201 5202 * module/x86/op_nmi.c: Remove stale debug code from yesterdays commit. 5203 5204 2003-03-15 Philippe Elie <phil.el (a] wanadoo.fr> 5205 5206 * configure.in: add checking for existence of xmemdup() 5207 5208 * libutil/Makefile.am: 5209 * libutil/op_string.h: 5210 * libutil/op_string.c: new, a few C string handling function 5211 5212 * libutil/op_libiberty.h: 5213 * libutil/op_libiberty.c: xmemdup() new. 5214 5215 * libop/op_events.h: 5216 * libop/op_events.c: tidy parser. Add op_free_events(). Fix minor 5217 buglet. 5218 5219 * dae/oprofiled.c: 5220 * daemon/oprofiled.c: fix memleak from parsing events files 5221 5222 * gui/Makefile.am: 5223 * pp/Makefile.am: fix lib ordering, now libop depend on libutil 5224 5225 * utils/op_help.c: error message if invalid cpu type. Fix op_help 5226 when using timer interrupt. 5227 5228 2003-03-14 Andi Kleen <ak (a] suse.de> 5229 5230 * module/x86/op_nmi.c: Fix another possible race condition. 5231 5232 2003-03-14 Philippe Elie <phil.el (a] wanadoo.fr> 5233 5234 * TODO: update 5235 5236 * libregex/stl.pat: support for rb tree, set/map, anonymous namespace. 5237 Fix incorrect pattern for gcc 3.2. Handle 2.95 vector/string 5238 iterator and a few stl free function handling. add all C++ base type. 5239 * libregex/mangled-name.txt: test for the above change 5240 5241 2003-03-14 Philippe Elie <phil.el (a] wanadoo.fr> 5242 5243 * gui/oprof_start.cpp: gcc 2.91 warning work around 5244 5245 2003-03-14 Philippe Elie <phil.el (a] wanadoo.fr> 5246 5247 * libop/op_events.c: fix a daemon segfault depending on the used 5248 libc version, added 2003-03-04 (0.5.1 is ok) 5249 5250 2003-03-13 Dave Jones <davej (a] codmeonkey.org.uk> 5251 5252 * events/x86-64.hammer.events: Remove duplicate minimum tag 5253 from RETIRED_INSNS counter. 5254 5255 2003-03-11 John Levon <levon (a] movementarian.org> 5256 5257 * module/ia64/op_pmu.c: include op_arch.h not arch.h 5258 5259 2003-03-10 Philippe Elie <phil.el (a] wanadoo.fr> 5260 5261 * configure.in: remove unsupported --warnnet, fix docbook root dir test 5262 * doc/oprofile.xml: typo 5263 5264 2003-03-10 John Levon <levon (a] movementarian.org> 5265 5266 * doc/Makefile.am: 5267 * configure.in: 5268 * doc/xsl/catalog-1.xml.in: more docbook changes 5269 5270 2003-03-10 John Levon <levon (a] movementarian.org> 5271 5272 * configure.in: 5273 * doc/Makefile.am: 5274 * doc/xsl/xhtml.xsl: 5275 * doc/xsl/xhtml-chunk.xsl: 5276 * doc/xsl/catalog-1.xml.in: Use a catalog for finding 5277 the XSL, so we only have one .in file now. 5278 5279 2003-03-08 Will Cohen <wcohen (a] redhat.com> 5280 5281 * doc/Makefile.am: Correct path for htmldir. 5282 5283 2003-03-08 John Levon <levon (a] movementarian.org> 5284 5285 * libop/op_cpu_type.c: improve error message 5286 5287 * utils/op_help.c: show CPU name in events list. Show CPU 5288 pretty name in op_help --get-cpu-type. 5289 5290 2003-03-08 John Levon <levon (a] movementarian.org> 5291 5292 * configure.in: specify distcheck ./configure flags. 5293 Add version.h to distclean. 5294 5295 * doc/Makefile.am: 5296 * doc/xsl/xhtml-1.in: 5297 * doc/xsl/xhtml-chunk-1.in: fix make distcheck 5298 5299 2003-03-08 Philippe Elie <phil.el (a] wanadoo.fr> 5300 5301 * doc/xsl/.cvsignore: update 5302 5303 * module/x86/cpu_type.c: <smpboot.h> is not necessary 5304 5305 2003-03-07 John Levon <levon (a] movementarian.org> 5306 5307 * README: document autogen.sh 5308 5309 2003-03-07 Philippe Elie <phil.el (a] wanadoo.fr> 5310 5311 * TODO: update 5312 5313 * doc/xsl/xhtml.xsl.in: move to 5314 * doc/xsl/xhtml-1.xsl.in: here 5315 * doc/xsl/xhtml-chunk.xsl.in: move to 5316 * doc/xsl/xhtml-chunk-1.xsl.in: here 5317 * doc/Makefile.am; update according 5318 * configure.in: avoid to touch doc/xsl generated files 5319 5320 2003-03-07 Philippe Elie <phil.el (a] wanadoo.fr> 5321 5322 * TODO: update 5323 5324 * daemon/opd_image.c: 5325 * daemon/op_stats.c: 5326 * daemon/opd_stats.h: add statistics for nil image whilst receiving 5327 user space samples. 5328 5329 2003-03-06 Philippe Elie <phil.el (a] wanadoo.fr> 5330 5331 * TODO: update 5332 5333 * libdb/db_hash.h: 5334 * libdb/db_insert.c: get error message from db_insert() 5335 5336 * libdb/db_test.c: 5337 * dae/opd_proc.c: 5338 * daemon/opd_image.c: 5339 * libabi/abi_test.cpp: 5340 * libabi/op_import.cpp: 5341 * pp/op_merge.cpp: update according to the new api 5342 5343 2003-03-06 John Levon <levon (a] movementarian.org> 5344 5345 * doc/oprofile.xml: pedantry 5346 5347 2003-03-06 Philippe Elie <phil.el (a] wanadoo.fr> 5348 5349 * TODO: update 5350 5351 * doc/oprofile.1.in: 5352 * doc/oprofile.xml: document --smart-demangle 5353 5354 2003-03-06 Philippe Elie <phil.el (a] wanadoo.fr> 5355 5356 * module/ia64/op_pmu.c: 5357 * module/x86/op_nmi.c: remove #include <op_events.h> 5358 5359 2003-03-06 John Levon <levon (a] movementarian.org> 5360 5361 * utils/opcontrol: sh != C. This is the last opcontrol 5362 bug, honest ! OK, maybe not. 5363 5364 2003-03-06 Philippe Elie <phil.el (a] wanadoo.fr> 5365 5366 * TODO: update 5367 5368 * gui/oprof_start.cpp: save_config() gcc 2.95.3 warning work-around 5369 5370 2003-03-05 John Levon <levon (a] movementarian.org> 5371 5372 * utils/opcontrol: Make --setup optional (e.g. 5373 opcontrol --no-vmlinux). Fix a bug in the --setup 5374 exclusive arg testing. 5375 5376 * doc/oprofile.xml: reflect the above 5377 5378 2003-03-05 John Levon <levon (a] movementarian.org> 5379 5380 * libutil++/string_manip.h: 5381 * libutil++/string_manip.cpp: cleanup, use s.find 5382 because older gcc's don't have the right s.compare 5383 5384 2003-03-04 John Levon <levon (a] movementarian.org> 5385 5386 * utils/opcontrol: only sleep 2 after dump on 2.4 5387 5388 2003-03-04 John Levon <levon (a] movementarian.org> 5389 5390 * configure.in: tweak the xsltproc test 5391 5392 2003-03-04 John Levon <levon (a] movementarian.org> 5393 5394 * configure.in: 5395 * doc/Makefile.am: don't try to build the docs 5396 if it will fail. 5397 5398 2003-03-04 John Levon <levon (a] movementarian.org> 5399 5400 * utils/opcontrol: 5401 * daemon/opd_kernel.h: 5402 * daemon/opd_image.c: 5403 * daemon/opd_kernel.c: 5404 * daemon/oprofiled.c: implement --no-vmlinux. 5405 Remove back compat for is_kernel. 5406 5407 * gui/uioprof_start.base.ui: 5408 * gui/oprof_start.cpp: 5409 * gui/oprof_start_config.h: 5410 * gui/oprof_start_config.cpp: support the above 5411 5412 * doc/oprofile.1.in: 5413 * doc/oprofile.xml: doc the above 5414 5415 2003-03-04 John Levon <levon (a] movementarian.org> 5416 5417 * utils/opcontrol: allow --version, --help early on 5418 5419 2003-03-04 John Levon <levon (a] movementarian.org> 5420 5421 * libop/op_events.c: alter the parser to give file/linenr on 5422 error, and handle more whitespace. 5423 5424 2003-03-04 John Levon <levon (a] movementarian.org> 5425 5426 * gui/oprof_start.cpp: 5427 * gui/oprof_start.h: 5428 * gui/oprof_start_config.cpp: 5429 * gui/oprof_start_config.h: 5430 5431 * libutil++/string_manip.h: 5432 * libutil++/string_manip.cpp: add is_prefix(), 5433 make the trimmers take an argument 5434 5435 2003-03-04 John Levon <levon (a] movementarian.org> 5436 5437 * gui/oprof_start.cpp: 5438 * gui/oprof_start.h: 5439 * gui/oprof_start_config.cpp: 5440 * gui/oprof_start_config.h: 5441 * gui/persistent_config.h: 5442 5443 * libutil++/string_manip.h: 5444 * libutil++/string_manip.cpp: add split(), tobool(), touint() 5445 5446 * utils/opcontrol: don't write BUF_SIZE twice. Write 5447 RTC_VALUE properly. Write KERNEL_ONLY 5448 5449 2003-03-03 John Levon <levon (a] movementarian.org> 5450 5451 * gui/oprof_start.cpp: use --ctrX-event=none, 5452 --separate=none. --pid/pgrp-filter=0 was already 5453 being done. 5454 5455 2003-03-03 John Levon <levon (a] movementarian.org> 5456 5457 * doc/oprofile.1.in: 5458 * doc/oprofile.xml: 5459 * doc/opcontrol: add --ctrX-event=none 5460 5461 2003-03-03 Will Cohen <wcohen (a] redhat.com> 5462 5463 * gui/oprof_start.cpp (oprof_start::on_start_profiler): Limit 5464 check to only utm_bitmask. 5465 5466 2003-03-03 Will Cohen <wcohen (a] redhat.com> 5467 5468 * events/ia64.itanium2.events: 5469 * events/ia64.itanium2.unit_masks: Add Itanium 2 events. 5470 5471 2003-03-03 Will Cohen <wcohen (a] redhat.com> 5472 5473 * libop/op_events.h: 5474 * libop/op_events.c: Correct checking for the number of unit 5475 masks. 5476 5477 2003-03-03 John Levon <levon (a] movementarian.org> 5478 5479 * doc/oprofile.1.in: 5480 * doc/oprofile.xml: another round of cleanups 5481 5482 * pp/op_merge.cpp: --counter not --use-counter, 5483 for consistency 5484 5485 2003-03-03 John Levon <levon (a] movementarian.org> 5486 5487 Patch from Chris Moller, modified. 5488 5489 * dae/opd_proc.c: 5490 * dae/opd_sample_files.c: 5491 * daemon/opd_image.c: 5492 * daemon/opd_sample_files.c: 5493 * libabi/abi_test.cpp: 5494 * libabi/op_import.cpp: 5495 * libdb/db_hash.h: 5496 * libdb/db_insert.c: 5497 * libdb/db_manage.c: 5498 * libdb/db_test.c: 5499 * pp/counter_profile.cpp: 5500 * pp/op_merge.cpp: push asserts in libdb down into 5501 the clients. 5502 5503 2003-03-03 John Levon <levon (a] movementarian.org> 5504 5505 * doc/oprofile.xml: 5506 * doc/oprofile.1.in: 5507 * utils/opcontrol: add --separate=none, --pid/pgrp-filter=non 5508 5509 2003-03-03 John Levon <levon (a] movementarian.org> 5510 5511 * configure.in: 5512 * doc/Makefile.am: 5513 * doc/oprofile.xml: 5514 * doc/xsl/xhtml-chunk.xsl.in: 5515 * doc/xsl/xhtml.xsl.in: 5516 * doc/xsl/xhtml-common.xsl: Add version to the 5517 docs. Some doc cleanups 5518 5519 2003-03-02 John Levon <levon (a] movementarian.org> 5520 5521 * utils/opcontrol: --separate=library should turn kernel off 5522 5523 2003-03-02 John Levon <levon (a] movementarian.org> 5524 5525 * events/Makefile.am: fix uninstall 5526 5527 2003-03-02 John Levon <levon (a] movementarian.org> 5528 5529 * doc/oprofile.xml: more re-workings prodded by aeb 5530 5531 2003-03-02 John Levon <levon (a] movementarian.org> 5532 5533 * daemon/opd_kernel.c: remove /proc/ksyms reading 5534 5535 2003-03-02 John Levon <levon (a] movementarian.org> 5536 5537 * libutil/op_fileio.c: change op_get_line to return 5538 NULL on EOF. Also bump up the default allocation some. 5539 5540 * dae/opd_kernel.c: 5541 * dae/opd_parse_proc.c: 5542 * daemon/opd_kernel.c: 5543 * libop/op_events.c: changes from the above 5544 5545 2003-03-02 John Levon <levon (a] movementarian.org> 5546 5547 * configure.in: 5548 * Makefile.am: 5549 * events/: add text files describing the CPU counters 5550 and unit masks. Install them. 5551 5552 * libop/op_events.h: 5553 * libop/op_events.c: remove the bletcherous hard coded 5554 descriptions. 5555 5556 * module/ia64/op_pmu.c: 5557 * module/x86/op_nmi.c: remove another big of validation 5558 5559 * libutil/op_list.h: make C++ friendly 5560 5561 * libop/op_cpu_type.h: 5562 * libop/op_cpu_type.c: add op_get_cpu_name() 5563 5564 * libop/Makefile: 5565 * libop/op_events_desc.h: 5566 * libop/op_events_desc.cpp: removed 5567 5568 * libop++/op_print_event.cpp: 5569 * utils/Makefile.am: 5570 * utils/op_help.c: 5571 * gui/oprof_start.h: 5572 * gui/oprof_start.cpp: changes from above 5573 5574 2003-03-01 John Levon <levon (a] movementarian.org> 5575 5576 * doc/oprofile.xml: tweaks 5577 5578 * utils/opcontrol: scale the default event count. Please 5579 test ... 5580 5581 2003-03-01 John Levon <levon (a] movementarian.org> 5582 5583 * utils/opcontrol: setup default events. Allow part-setting 5584 using --setup. Fix a help text. 5585 5586 * doc/oprofile.xml: changes from the above 5587 5588 2003-03-01 John Levon <levon (a] movementarian.org> 5589 5590 * libop/op_cpu_type.c: fix alpha/ev4 mis-detection 5591 5592 2003-03-01 John Levon <levon (a] movementarian.org> 5593 5594 * doc/oprofile.xml: expand intro a little, small fixes 5595 5596 2003-03-01 John Levon <levon (a] movementarian.org> 5597 5598 * pp/format_output.cpp: use "%" not "%-age" 5599 5600 2003-02-28 John Levon <levon (a] movementarian.org> 5601 5602 * utils/opcontrol: fix IS_TIMER setting, noticed by 5603 Duncan Sands 5604 5605 2003-02-28 John Levon <levon (a] movementarian.org> 5606 5607 * configure.in: bump to 0.6cvs 5608 5609 2003-02-28 John Levon <levon (a] movementarian.org> 5610 5611 * doc/Makefile.am: tweak 5612 5613 * libregex/Makefile.am: fix make dist 5614 5615 2003-02-27 John Levon <levon (a] movementarian.org> 5616 5617 * configure.in: bump to 0.5.1 5618 5619 2003-02-27 John Levon <levon (a] movementarian.org> 5620 5621 * doc/oprofile.xml: clarify --separate=kernel 5622 5623 2003-02-25 John Levon <levon (a] movementarian.org> 5624 5625 * configure.in: clarify --with-kernel-support 5626 5627 * libop/op_events.c: 5628 * module/x86/op_nmi.c: 5629 * module/ia64/op_nmi.c: remove sanity checking - it's 5630 the wrong place to have such code, is a barrier to op_events 5631 cleanup, and makes life harder for NDAers. 5632 5633 2003-02-25 Will Cohen <wcohen (a] redhat.com> 5634 5635 * utils/opcontrol (do_deinit): Correct search for /dev/oprofile. 5636 5637 2003-02-24 Dave Jones <davej (a] codemonkey.org.uk> 5638 5639 * module/x86/op_apic.[c|h]: move NMI gate setup to architecture 5640 specific SET_NMI_GATE macro. x86=no change. 5641 Make x86-64 use the kernels _set_gate instead of its own open 5642 coded variant. 5643 5644 2003-02-23 John Levon <levon (a] movementarian.org> 5645 5646 * version-1.h.in: another rename 5647 5648 2003-02-23 John Levon <levon (a] movementarian.org> 5649 5650 * configure.in: set up OP_DATADIR and OP_BINDIR 5651 5652 * gui/oprof_start.cpp: 5653 * libregex/demangle_symbol.cpp: use the above 5654 5655 * version_tpl.h.in: move to ... 5656 5657 * version.h.in.in: ... here 5658 5659 2003-02-23 Philippe Elie <phil.el (a] wanadoo.fr> 5660 5661 * TODO: update 5662 5663 * configure.in: add AX_COPY_IF_CHANGE() use it to generate version.h 5664 * .cvsignore: update 5665 5666 * gui/Makefile.am: 5667 * gui/oprof_start.cpp: 5668 * libregex/Makefile.am: 5669 * libregex/demangle_symbol.cpp: don't use -DBINDIR, rather include 5670 version.h to get install path 5671 5672 2003-02-23 John Levon <levon (a] movementarian.org> 5673 5674 * README: quick start build insns 5675 5676 2003-02-23 Philippe Elie <phil.el (a] wanadoo.fr> 5677 5678 * TODO: update 5679 5680 * libregex/Makefile.am: install stl.pat in $prefix/share/oprofile 5681 * libregex/demangle_symbol.cpp: use DATADIR not BINDIR 5682 * libregex/magle-name.txt: add test for pointer 5683 * libregex/stl.pat: partial support for pointer 5684 5685 2003-02-23 John Levon <levon (a] movementarian.org> 5686 5687 * autogen.sh: error out if options passed 5688 5689 2003-02-23 John Levon <levon (a] movementarian.org> 5690 5691 * libregex/op_regex.h: 5692 * libregex/regex_test.cpp: fix std:: 5693 5694 2003-02-23 Philippe Elie <phil.el (a] wanadoo.fr> 5695 5696 * libutil++/demangle_symbol.cpp: 5697 * libutil++/demangle_symbol.h: move to 5698 * libregex/demangle_symbol.cpp: 5699 * libregex/demangle_symbol.h: here to avoid circular reference between 5700 libutil++ and libregex 5701 * libregex/Makefile.am: 5702 * libutil++/Makefile.am: update according to file move 5703 5704 * pp/Makefile.am: 5705 * pp/op_time.cpp: 5706 * pp/op_time_options.cpp: 5707 * pp/op_to_source.cpp: 5708 * pp/op_to_source_options.cpp: 5709 * pp/oprofpp.cpp: 5710 * pp/oprofpp_options.cpp: add -D --Demangle options enabling C++ 5711 demangled name filtering. 5712 5713 2003-02-23 Philippe Elie <phil.el (a] wanadoo.fr> 5714 5715 * libutil++/string_manip.h: 5716 * libutil++/string_manip.cpp: trim(), ltrim(), rtrim() new functions 5717 5718 * Makefile.am: handle libregex directory 5719 * configure.in: handle libregex/Makefile 5720 5721 * libregex/.cvsignore: 5722 * libregex/Makefile.am : 5723 * libregex/mangled-name.txt: 5724 * libregex/op_regex.cpp: 5725 * libregex/op_regex.h: 5726 * libregex/regex_test.cpp: 5727 * libregex/stl.pat: new file implementing a match and replace regular 5728 expression around glibc regex. Not used for now, next commit will 5729 use this for pp tools C++ name demangling. 5730 5731 2003-02-22 John Levon <levon (a] movementarian.org> 5732 5733 * configure.in: fix X, non-Qt build case 5734 5735 2003-02-22 John Levon <levon (a] movementarian.org> 5736 5737 * libutil++/Makefile.am: fix make dist 5738 5739 2003-02-21 Dave Jones <davej (a] codemonkey.org.uk> 5740 5741 * configure.in: Enable building on hammer again. 5742 5743 2003-02-21 John Levon <levon (a] movementarian.org> 5744 5745 * utils/opcontrol: "Params used" was lying 5746 5747 2003-02-20 John Levon <levon (a] movementarian.org> 5748 5749 * daemon/opd_image.c: Fixed a bitch of a bug with separate-kernel, 5750 now attribution of kernel samples should be more accurate 5751 5752 2003-02-20 John Levon <levon (a] movementarian.org> 5753 5754 * utils/opcontrol: set LIB_SAMPLES if KERNEL_SAMPLES in .daemonrc 5755 5756 2003-02-20 John Levon <levon (a] movementarian.org> 5757 5758 * dae/opd_stats.h: 5759 * dae/opd_stats.c: 5760 * daemon/opd_stats.h: 5761 * daemon/opd_stats.c: 5762 * dae/opd_proc.c: 5763 * daemon/opd_image.c: remove unused OPD_SAMPLE_COUNTS. Actually 5764 count samples for 2.5 5765 5766 2003-02-20 John Levon <levon (a] movementarian.org> 5767 5768 * libop/op_interface_25.h: 5769 * daemon/opd_kernel.c: implement module dropping 5770 5771 * daemon/opd_image.c: 5772 * daemon/opd_kernel.c: attempt to make verbose logs 5773 less confusing 5774 5775 2003-02-22 Dave Jones <davej (a] codemonkey.org.uk> 5776 5777 * libop/op_events.c: segregload is utm_mask not utm_exclusive 5778 5779 2003-02-20 Philippe Elie <phil.el (a] wanadoo.fr> 5780 5781 * TODO: update 5782 5783 * pp/output_format.h: 5784 * pp/output_format.cpp: 5785 * pp/op_time.cpp: 5786 * pp/oprofpp.cpp: 5787 * pp/opp_symbol.h: better handling of 64/32 bits bfd_vma 5788 in output 5789 5790 2003-02-20 John Levon <levon (a] movementarian.org> 5791 5792 * libutil++/op_exception.h: 5793 * libutil++/op_exception.cpp: throw() where needed 5794 5795 2003-02-19 Philippe Elie <phil.el (a] wanadoo.fr> 5796 5797 * TODO: update 5798 5799 * daemon/opd_image.h: 5800 * daemon/opd_image.cpp: 5801 * daemon/opd_kernel.cpp: fix thinko with --separate=kernel resulting 5802 in duplicate opening of the same samples file. 5803 5804 2003-02-19 Philippe Elie <phil.el (a] wanadoo.fr> 5805 5806 * libutil++/op_exception.h: 5807 * libutil++/op_exception.cpp: new files, base class for exception. 5808 Not used for now. 5809 5810 2003-02-19 John Levon <levon (a] movementarian.org> 5811 5812 * acinclude.m4: update from upstream 5813 5814 * gui/ui/oprof_start.base.ui: 5815 * gui/oprof_start.cpp: separate --setup,--start. 5816 Hide non-2.5 stuff in 2.5. 5817 5818 2003-02-18 Philippe Elie <phil.el (a] wanadoo.fr> 5819 5820 * TODO: update 5821 5822 * dae/opd_sample_files.c: 5823 * daemon/opd_sample_files.c: opd_handle_old_sample_file() don't 5824 try to delete old samples files if they don't exist. 5825 5826 2003-02-18 Will Cohen <wcohen (a] redhat.com> 5827 5828 * utils/opcontrol (do_options): Better option error checking. 5829 5830 2003-02-17 Will Cohen <wcohen (a] redhat.com> 5831 5832 * pp/format_output.h (show_help): namespace std. 5833 5834 2003-02-17 Will Cohen <wcohen (a] redhat.com> 5835 5836 * TODO: update. 5837 5838 2003-02-17 Philippe Elie <phil.el (a] wanadoo.fr> 5839 5840 From Anton Blanchard : 5841 5842 * daemon/opd_image.c: cookie_t fix for 64 bits 5843 5844 2003-02-17 Philippe Elie <phil.el (a] wanadoo.fr> 5845 5846 * TODO: update 5847 5848 * libopt++/popt_options.cpp: 5849 * libopt++/popt_options.h: handle an user specific additional 5850 help string 5851 5852 * pp/output_format.h: 5853 * pp/output_format.cpp: 5854 * pp/op_time_options.cpp: 5855 * pp/oprofpp_options.cpp: use it to show in --output_format 5856 options details. 5857 5858 2003-02-14 Philippe Elie <phil.el (a] wanadoo.fr> 5859 5860 * doc/oprofile.1.in: 5861 * doc/oprofile.xml: 5862 * pp/oprofpp_options.cpp: allow --show-shared-libs with -s 5863 5864 2003-02-13 Philippe Elie <phil.el (a] wanadoo.fr> 5865 5866 * TODO: update 5867 5868 * pp/output_format.h: 5869 * pp/output_format.cpp: fix #686272, crash when using 5870 oprofpp -s symb_name. 5871 5872 2003-02-13 Philippe Elie <phil.el (a] wanadoo.fr> 5873 5874 * dae/opd_kernel.h: 5875 * dae/opd_image.h: 5876 * dae/opd_image.c: don't use hash entry zero for kernel image 5877 fix #686175 5878 5879 2003-02-13 Will Cohen <wcohen (a] redhat.com> 5880 5881 * daemon/opd_cookie.h(opd_nr_lookup_dcookie): Correct number. 5882 5883 2003-02-13 Will Cohen <wcohen (a] redhat.com> 5884 5885 * daemon/opd_cookie.h(opd_nr_lookup_dcookie): Add x86_64. 5886 5887 2003-02-13 John Levon <levon (a] movementarian.org> 5888 5889 * dae/opd_image.c: little cleanup and fix error message 5890 to not lie 5891 5892 2003-02-12 Philippe Elie <phil.el (a] wanadoo.fr> 5893 5894 * doc/oprofile.1.in: 5895 * doc/oprofile.xml: enhance doc about --separate=kernel 5896 5897 * utils/opcontrol: handle gracefully opcontrol --deinit if profiler 5898 was already shutdown. Avoid wrong warning when umount /dev/oprofile 5899 5900 2003-02-12 Will Cohen <wcohen (a] redhat.com> 5901 5902 * gui/oprof_start.cpp (oprof_start::oprof_start, 5903 oprof_start::on_flush_profiler_data, 5904 oprof_start::on_start_profiler, 5905 oprof_start::on_stop_profiler): Use opcontrol. 5906 * gui/oprof_start_util.cpp (daemon_status::daemon_status): 5907 Allow reading interrupt info from new kernel interface. 5908 * libop/op_get_interface.c: New. 5909 * libop/Makefile.am: Add libop/op_get_interface.c. 5910 * libop/op_cpu_type.h: Add enum op_interface. 5911 5912 I Added some bits. Phil 5913 * gui/oprof_start.cpp: correct --separate= handling 5914 * gui/oprof_start_util.cpp: read only the real number of interrupts 5915 5916 2003-02-12 Philippe Elie <phil.el (a] wanadoo.fr> 5917 5918 * utils/opcontrol: handle --note-table-size --kernel-only (2.4 kernel) 5919 5920 2003-02-12 Philippe Elie <phil.el (a] wanadoo.fr> 5921 5922 * utils/op_start: map --separate-samples to daemon option 5923 --separate-lib-samples. 5924 5925 2003-02-11 Philippe Elie <phil.el (a] wanadoo.fr> 5926 5927 * dae/opd_image.c: 5928 * dae/opd_kernel.c: 5929 * dae/opd_kernel.h: 5930 * dae/opd_parse_proc.c: 5931 * dae/opd_proc.c: 5932 * dae/opd_proc.h: 5933 * dae/opd_sample_files.c: 5934 * dae/oprofiled.c: 5935 * daemon/opd_image.c: 5936 * daemon/opd_image.h: 5937 * daemon/opd_kernel.c: 5938 * daemon/opd_kernel.h: 5939 * daemon/opd_sample_files.c: 5940 * daemon/oprofiled.c: per application kernel samples files 5941 5942 * doc/oprofile.1.in: 5943 * doc/oprofile.xml: document opcontrol --separate=kernel 5944 5945 * gui/oprof_start.cpp: 5946 * gui/oprof_start_config.cpp: 5947 * gui/oprof_start_config.h: 5948 * gui/ui/oprof_start.base.ui: remove ignore_daemon checkbox, handle 5949 --separate=[library|kernel] 5950 5951 * libop/op_sample_file.h: add separate_kernel_samples field, file 5952 format is backward compatible 5953 5954 * libabi/abi.cpp: 5955 * libabi/abi_test.cpp: 5956 * libabi/op_import.cpp: handle new samples file header field 5957 5958 * pp/counter_profile.cpp: dump new sample files header field. 5959 5960 * utils/opcontrol: handle --separate=kernel 5961 5962 2003-02-09 Will Cohen <wcohen (a] redhat.com> 5963 5964 * utils/opcontrol: Add rtc-value option. 5965 5966 2003-02-09 John Levon <levon (a] movementarian.org> 5967 5968 * utils/opcontrol: stale lock file detection 5969 5970 2003-02-06 Will Cohen <wcohen (a] redhat.com> 5971 5972 * utils/opcontrol (do_dump): Do not exit if no daemon. 5973 5974 2003-02-06 Will cohen <wcohen (a] redhat.com> 5975 5976 * doc/oprofile.1.in: Update man page information. 5977 5978 2003-02-03 John Levon <levon (a] movementarian.org> 5979 5980 * configure.in: 0.6cvs 5981 5982 2003-02-02 John Levon <levon (a] movementarian.org> 5983 5984 * configure.in: bump to 0.5 5985 5986 2003-02-02 John Levon <levon (a] movementarian.org> 5987 5988 * configure.in: disable x86_64 5989 5990 2003-02-02 John Levon <levon (a] movementarian.org> 5991 5992 * pp/format_output.cpp: revert previous patch, Phil's 5993 x86 binutils is built with 64-bit bfd_vma 5994 5995 2003-02-01 John Levon <levon (a] movementarian.org> 5996 5997 * utils/opcontrol: rename --separate-samples to --separate=library 5998 for future proofing. 5999 6000 * pp/format_output.cpp: output vma at a suitable width 6001 6002 2003-01-31 Will Cohen <wcohen (a] redhat.com> 6003 6004 * utils/opcontrol(get_kernel_range): Match only .text segment. 6005 6006 2003-01-31 Graydon Hoare <graydon (a] redhat.com> 6007 6008 * libabi/abi.cpp 6009 * libabi/abi_test.cpp 6010 * libabi/op_import.cpp: Treat endianness as a property of the datum 6011 being imported, rather than the memory architecture. 6012 6013 2003-01-31 Dave Jones <davej (a] codemonkey.org.uk> 6014 6015 * module/x86/op_model_athlon.c: Don't poke reserved bits in the counter. 6016 Only rdmsr/wrmsr counters that we've enabled in the NMI handler. 6017 ulong->uint conversion. 6018 6019 2003-01-30 Philippe Elie <phil.el (a] wanadoo.fr> 6020 6021 From Randolph Chung : 6022 6023 * daemon/opd_cookie.h: add parisc support 6024 6025 2003-01-30 John Levon <levon (a] movementarian.org> 6026 6027 From Anton Blanchard : 6028 6029 * daemon/opd_cookie.h: add ppc32/64 6030 6031 * utils/op_start_25: fix start of kernel for ppc 6032 6033 2003-01-30 Will Cohen <wcohen (a] redhat.com> 6034 6035 * utils/opcontrol(get_kernel_range): Avoid using perl arithmetic. 6036 6037 2003-01-29 Dave Jones <davej (a] codemonkey.org.uk> 6038 6039 * utils/opcontrol: Trying to use the options --pid-filter=pid and 6040 --pgmr-filter=pgmr, opcontrol returned "command not found. 6041 This was due to 2 missing 'test' statements. 6042 6043 2003-01-29 Philippe Elie <phil.el (a] wanadoo.fr> 6044 6045 * pp/op_to_source.cpp: read vma with strtoull not strtoul fixing 6046 32/64 failure to read output of objdump 6047 6048 2003-01-29 Dave Jones <davej (a] codemonkey.org.uk> 6049 6050 * libop/op_cpu_type.c: Clue the user in on why the cpu type isn't 6051 recognised, by suggesting the module wasn't loaded. 6052 * libop/op_events.c: Doh, unit masks use bit numbers, not values. 6053 6054 2003-01-28 Philippe Elie <phil.el (a] wanadoo.fr> 6055 6056 * utils/op_help.c: get cpu type only if not forced on command line. 6057 Avoid wrong warning about unsupported cpu type. 6058 6059 2003-01-27 Will Cohen <wcohen (a] redhat.com> 6060 6061 * daemon/opd_cookie.h(opd_nr_lookup_dcookie): Add ia64 version. 6062 6063 2003-01-27 Dave Jones <davej (a] codemonkey.org.uk> 6064 6065 * libop/op_events.c: K8 HT events are utm_exclusive, not utm_bitmask 6066 * libop/op_events.c: Add additional K8 unit masks. 6067 6068 2003-01-23 Philippe Elie <phil.el (a] wanadoo.fr> 6069 6070 * libop/op_interface_25.h: 6071 * daemon/opd_image.c: prepare drop modules support. exit() when 6072 receiving unknown escape code. 6073 6074 2003-01-23 Randolph Chung <tausq (a] debian.org> 6075 6076 Added minor change: backward compatibility, u_int to uint, fix 6077 32/64 bits escape code marker comparison. Phil 6078 6079 * libop/op_interface_25.h: 6080 * daemon/opd_kernel.c: 6081 * daemon/opd_image.c: new scheme to recognize kernel or user space 6082 eip, now kernel module pass the relevent information through 6083 escape sequence. 6084 6085 2003-01-21 Dave Jones <davej (a] codemonkey.org.uk> 6086 6087 * libop/op_events.c: Add unit mask for Hypertransport events. 6088 6089 2003-01-21 Dave Jones <davej (a] codemonkey.org.uk> 6090 6091 * libop/op_events.c: Add x86-64 specific events. 6092 6093 2003-01-21 Philippe Elie <phil.el (a] wanadoo.fr> 6094 6095 * daemon/opd_kernel.c: use sscanf to parse /proc/modules 6096 6097 2003-01-20 Philippe Elie <phil.el (a] wanadoo.fr> 6098 6099 * daemon/opd_kernel.c: more robust /proc/modules parsing. 6100 6101 2003-01-20 Philippe Elie <phil.el (a] wanadoo.fr> 6102 6103 * daemon/opd_kernel.c: 2.5 modules support, for now I keep 6104 the code for /proc/ksyms parsing in daemon. Let's it living a few 6105 weeks please. 6106 6107 2003-01-18 Falk Hueffner <falk (a] debian.org> 6108 6109 I added to the original patch all %L to %ll, Phil 6110 6111 * daemon/opd_image.c: 6112 * daemon/opd_kernel.c: 6113 * libutil/op_types.h: 64 bits printf/scanf safety. 6114 6115 2003-01-18 Falk Hueffner <falk (a] debian.org> 6116 6117 * libop/op_cpu_type.h: 6118 * libop/op_cpu_type.c: add Alpha CPU families. 6119 * libop/op_events.h: make op_event.cpu_mask u32, since we now have 6120 more than 16 CPU types 6121 * libop/op_hw_config.h: bump OP_MAX_COUNTERS to 20 for Alpha 6122 * libop/op_events.c: add Alpha events 6123 * daemon/opd_cookie.h: add dcookie syscall number for Alpha 6124 * utils/op_help.c (main): add help string for Alpha 6125 6126 2003-01-18 John Levon <levon (a] movementarian.org> 6127 6128 * module/Makefile.in: 6129 * module/x86/Makefile.in: 6130 * module/ia64/Makefile.in: kernel headers are too fubar 6131 for -Werror. So I'm taking my ball home. 6132 6133 2003-01-17 John Levon <levon (a] movementarian.org> 6134 6135 * HACKING: 6136 * doc/CodingStyle: add 6137 6138 2003-01-17 John Levon <levon (a] movementarian.org> 6139 6140 * TODO: some updates 6141 6142 2003-01-15 Philippe Elie <phil.el (a] wanadoo.fr> 6143 6144 * module/x86/op_model_p4.c: pmc_setup_one_p4_counter() show clearly 6145 than event == 0 is an error 6146 6147 2003-01-15 John Levon <levon (a] movementarian.org> 6148 6149 * utils/opcontrol: prefer oprofiled/op_help binaries in the same 6150 dir as opcontrol 6151 6152 2003-01-12 Philippe Elie <phil.el (a] wanadoo.fr> 6153 6154 * libop/op_events.c: rename OP_P4_HT2 to OP_P4_ALL 6155 6156 2003-01-12 Philippe Elie <phil.el (a] wanadoo.fr> 6157 6158 * libop++/op_print_event.cpp: no event,nor unit mask for CPU_TIMER_INT, 6159 problem reported by Ka Fai Lu. 6160 6161 2003-01-12 John Levon <levon (a] movementarian.org> 6162 6163 From Graydon Hoare 6164 6165 * libop/op_cpu_type.h: 6166 * libop/op_cpu_type.c: add P4 HT 6167 6168 * libop/op_events.c: tag P4 HT events 6169 6170 2003-01-11 Randolph Chung <tausq (a] debian.org> 6171 6172 * daemon/oprofiled.c: fix ELF sniff 6173 6174 2003-01-11 John Levon <levon (a] movementarian.org> 6175 6176 * daemon/opd_image.c: bail out immediately on dcookie 6177 lookup failure. 6178 6179 2003-01-10 John Levon <levon (a] movementarian.org> 6180 6181 * daemon/opd_cookie.h: insulate against missing arch support 6182 for sys_lookup_dcookie 6183 6184 * daemon/opd_image.c: use the above 6185 6186 2003-01-10 John Levon <levon (a] movementarian.org> 6187 6188 * daemon/opd_image.c: 6189 * daemon/oprofiled.c: move complete_dump to a better place 6190 6191 2003-01-10 John Levon <levon (a] movementarian.org> 6192 6193 * libutil/op_types.h: add cookie_t and vma_t 6194 6195 * daemon/opd_image.c: 6196 * daemon/opd_image.h: 6197 * daemon/opd_kernel.c: 6198 * daemon/opd_kernel.h: use above types, and kernel_pointer_size 6199 6200 * daemon/oprofiled.c: sniff /proc/kcore for kernel_pointer_size 6201 6202 2003-01-10 Philippe Elie <phil.el (a] wanadoo.fr> 6203 6204 * libopt++/popt_options.cpp: 6205 * libopt++/popt_options.h: work-around to support both gcc new parser 6206 and gcc 2.95 6207 6208 2003-01-08 John Levon <levon (a] movementarian.org> 6209 6210 * libop/op_type.cpp: support for ascii-string cpu types 6211 6212 2003-01-08 Philippe Elie <phil.el (a] wanadoo.fr> 6213 6214 * libutil++/op_bfd.cpp: 6215 * libutil++/op_bfd.h: 6216 * pp/oprofpp.cpp: more use of bfd_vma 6217 6218 2003-01-08 Philippe Elie <phil.el (a] wanadoo.fr> 6219 6220 * libdb/Makefile.am: fix include dir 6221 * libdb/db_test.c: don't assume than sizeof(struct opd_header) == 128 6222 6223 2003-01-06 Philippe Elie <phil.el (a] wanadoo.fr> 6224 6225 * libutil++/op_bfd.h: fix for 64 bits. 6226 6227 2003-01-06 Philippe Elie <phil.el (a] wanadoo.fr> 6228 6229 * libabi/abi.cpp: 6230 * libabi/op_import.cpp: broken by my last change in libdb. 6231 6232 2003-01-06 Philippe Elie <phil.el (a] wanadoo.fr> 6233 6234 * db/db_hash.h: do_hash() use db_key_t as parameter 6235 6236 2003-01-04 John Levon <levon (a] movementarian.org> 6237 6238 * pp/op_time.cpp: suggest opcontrol --dump instead 6239 6240 * utils/opcontrol: implement --start-daemon. Fix a number 6241 of bugs 6242 6243 * doc/oprofile.xml: 6244 * doc/oprofile.1.in: document --start-daemon 6245 6246 2003-01-03 Will Cohen <wcohen (a] redhat.com> 6247 6248 * daemon/oprofiled.c (opd_do_samples): Typecast to match 6249 arguments. 6250 6251 See ChangeLog-2002 for earlier changelogs. 6252