From: Bart Van Assche Date: Fri, 4 Jul 2008 15:34:23 +0000 (+0000) Subject: Changed exp-drd tool name into drd. X-Git-Tag: svn/VALGRIND_3_4_0~371 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=547e5c2c9f115b38cb9dc6294bfe2f3fb36a94ba;p=thirdparty%2Fvalgrind.git Changed exp-drd tool name into drd. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8362 --- diff --git a/coregrind/m_redir.c b/coregrind/m_redir.c index 959fecdef8..cd16a56757 100644 --- a/coregrind/m_redir.c +++ b/coregrind/m_redir.c @@ -904,9 +904,9 @@ void VG_(redir_initialise) ( void ) NULL /* not mandatory - so why bother at all? */ /* glibc-2.6.1 (openSUSE 10.3, ppc32) seems fine without it */ ); - } else if (0 == VG_(strcmp)("exp-drd", VG_(details).name)) { + } else if (0 == VG_(strcmp)("drd", VG_(details).name)) { /* Only continue if symbol information in ld.so.1 is present, */ - /* because otherwise exp-drd's suppression patterns on ld.so do */ + /* because otherwise drd's suppression patterns on ld.so do */ /* not have any effect. */ add_hardwired_spec( "ld.so.1", "strlen", @@ -939,9 +939,9 @@ void VG_(redir_initialise) ( void ) /* glibc-2.5 (FC6, ppc64) seems fine without it */ ); - } else if (0 == VG_(strcmp)("exp-drd", VG_(details).name)) { + } else if (0 == VG_(strcmp)("drd", VG_(details).name)) { /* Only continue if symbol information in ld64.so.1 is present, */ - /* because otherwise exp-drd's suppression patterns on ld.so do */ + /* because otherwise drd's suppression patterns on ld.so do */ /* not have any effect. */ add_hardwired_spec( "ld64.so.1", "strlen", diff --git a/drd/TODO.txt b/drd/TODO.txt index 70a443df72..b3fc34efb6 100644 --- a/drd/TODO.txt +++ b/drd/TODO.txt @@ -4,7 +4,6 @@ Last updated July 1, 2008. Data-race detection algorithm ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- Propose to rename exp-drd back to drd. - Memory pool support. - Find out why DRD reports an error on the POSIX implementation of libgomp.so. - Add locking order checking. Start from the following information: diff --git a/drd/Testing.txt b/drd/Testing.txt index fc6efdcc9b..90a2165308 100644 --- a/drd/Testing.txt +++ b/drd/Testing.txt @@ -3,21 +3,21 @@ How to test DRD 1. Run the regression tests. After having compiled DRD, run the following command: - perl tests/vg_regtest exp-drd + perl tests/vg_regtest drd 2. Test the slowdown for matinv for various matrix sizes via the script - exp-drd/scripts/run-matinv (must be about 24 for i == 1 and about + drd/scripts/run-matinv (must be about 24 for i == 1 and about 31 for i == 10 with n == 200). 3. Test whether DRD works with standard KDE applications and whether it does not print any false positives: - ./vg-in-place --tool=exp-drd kate - ./vg-in-place --tool=exp-drd --check-stack-var=yes kate - ./vg-in-place --trace-children=yes --tool=exp-drd knode - ./vg-in-place --trace-children=yes --tool=exp-drd --check-stack-var=yes knode - ./vg-in-place --trace-children=yes --tool=exp-drd amarokapp + ./vg-in-place --tool=drd kate + ./vg-in-place --tool=drd --check-stack-var=yes kate + ./vg-in-place --trace-children=yes --tool=drd knode + ./vg-in-place --trace-children=yes --tool=drd --check-stack-var=yes knode + ./vg-in-place --trace-children=yes --tool=drd amarokapp 4. Test whether DRD works with standard GNOME applications. Expect race reports triggered by ORBit_RootObject_duplicate() and after having closed the GNOME terminal window: - ./vg-in-place --trace-children=yes --tool=exp-drd gnome-terminal + ./vg-in-place --trace-children=yes --tool=drd gnome-terminal 5. Test DRD with Firefox. First of all, build and install Firefox 3. Next, run the following command: - LD_LIBRARY_PATH=$HOME/software/mozilla-build/dist/lib: ./vg-in-place --trace-children=yes --tool=exp-drd $HOME/software/mozilla-build/dist/bin/firefox-bin + LD_LIBRARY_PATH=$HOME/software/mozilla-build/dist/lib: ./vg-in-place --trace-children=yes --tool=drd $HOME/software/mozilla-build/dist/bin/firefox-bin diff --git a/drd/docs/drd-manual.xml b/drd/docs/drd-manual.xml index 9f44ed4af1..f696381f68 100644 --- a/drd/docs/drd-manual.xml +++ b/drd/docs/drd-manual.xml @@ -8,7 +8,7 @@ DRD: a thread error detector To use this tool, you must specify ---tool=exp-drd +--tool=drd on the Valgrind command line. @@ -549,7 +549,7 @@ Below you can find an example of a message printed by DRD when it detects a data race: exp-drd/scripts/download-and-build-gcc in the +drd/scripts/download-and-build-gcc in the Valgrind source tree for an example of how to compile gcc. You will also have to make sure that the newly compiled libgomp.so library is loaded when OpenMP programs @@ -1027,7 +1027,7 @@ export LD_LIBRARY_PATH=~/gcc-4.3.1/lib64:~/gcc-4.3.1/lib: As an example, the test OpenMP test program -exp-drd/scripts/omp_matinv triggers a data race +drd/scripts/omp_matinv triggers a data race when the option -r has been specified on the command line. The data race is triggered by the following code: @@ -1052,7 +1052,7 @@ not been declared private. DRD will print the following error message for the above code: Trace all load and store activity for the.\n" " specified address [off].\n" " --trace-barrier=yes|no Trace all barrier activity [no].\n" @@ -1216,7 +1216,7 @@ void drd_pre_clo_init(void) { // Basic tool stuff. - VG_(details_name) ("exp-drd"); + VG_(details_name) ("drd"); VG_(details_version) (NULL); VG_(details_description) ("a thread error detector"); VG_(details_copyright_author)("Copyright (C) 2006-2008, and GNU GPL'd," diff --git a/drd/scripts/run-matinv b/drd/scripts/run-matinv index ad8d7fa65f..a115528134 100755 --- a/drd/scripts/run-matinv +++ b/drd/scripts/run-matinv @@ -16,7 +16,7 @@ if [ "${DRD_SCRIPTS_DIR:0:1}" != "/" ]; then fi VG="${DRD_SCRIPTS_DIR}/../../vg-in-place" -MATINV="${DRD_SCRIPTS_DIR}/../../exp-drd/tests/matinv" +MATINV="${DRD_SCRIPTS_DIR}/../../drd/tests/matinv" for n in 200 400 @@ -34,6 +34,6 @@ do print_runtime_ratio ${avg1} ${stddev1} ${vsz1} ${vszdev1} \ ${VG} --tool=none ${MATINV} $n -t$i print_runtime_ratio ${avg1} ${stddev1} ${vsz1} ${vszdev1} \ - ${VG} --tool=exp-drd ${MATINV} $n -t$i + ${VG} --tool=drd ${MATINV} $n -t$i done done diff --git a/drd/scripts/run-splash2 b/drd/scripts/run-splash2 index 32fc51cb23..169812cf8d 100755 --- a/drd/scripts/run-splash2 +++ b/drd/scripts/run-splash2 @@ -41,12 +41,12 @@ function run_test { p=4 test_output="${1}-drd-with-stack-var-4.out" \ print_runtime_ratio ${avg4} ${stddev4} ${vsz4} ${vszdev4} \ - $VG --tool=exp-drd --check-stack-var=yes "$@" -p${psep}${p} "${test_args}" + $VG --tool=drd --check-stack-var=yes "$@" -p${psep}${p} "${test_args}" p=4 test_output="${1}-drd-without-stack-var-4.out" \ print_runtime_ratio ${avg4} ${stddev4} ${vsz4} ${vszdev4} \ - $VG --tool=exp-drd --check-stack-var=no "$@" -p${psep}${p} "${test_args}" + $VG --tool=drd --check-stack-var=no "$@" -p${psep}${p} "${test_args}" p=4 test_output="${1}-helgrind-4.out" \ @@ -95,10 +95,10 @@ fi # 9. Virtual memory size ratio for --tool=none -p1 versus -p1. # 10. Execution time ratio for --tool=none -p4 versus -p4. # 11. Virtual memory size ratio for --tool=none -p4 versus -p4. -# 12. Execution time ratio for --tool=exp-drd --check-stack-var=yes -p4 versus -p4. -# 13. Virtual memory size ratio for --tool=exp-drd --check-stack-var=yes -p4 versus -p4. -# 14. Execution time ratio for --tool=exp-drd --check-stack-var=no -p4 versus -p4. -# 15. Virtual memory size ratio for --tool=exp-drd --check-stack-var=no -p4 versus -p4. +# 12. Execution time ratio for --tool=drd --check-stack-var=yes -p4 versus -p4. +# 13. Virtual memory size ratio for --tool=drd --check-stack-var=yes -p4 versus -p4. +# 14. Execution time ratio for --tool=drd --check-stack-var=no -p4 versus -p4. +# 15. Virtual memory size ratio for --tool=drd --check-stack-var=no -p4 versus -p4. # 16. Execution time ratio for --tool=helgrind -p4 versus -p4. # 17. Virtual memory size ratio for --tool=helgrind -p4 versus -p4. # 18. Execution time ratio for Intel Thread Checker -p4 versus -p4. diff --git a/drd/tests/filter_stderr b/drd/tests/filter_stderr index d311813e22..f5e977c683 100755 --- a/drd/tests/filter_stderr +++ b/drd/tests/filter_stderr @@ -9,7 +9,7 @@ $dir/../../tests/filter_stderr_basic | # Remove libpthread's version number. # Remove line numbers from stack traces. sed \ --e "/^exp-drd, a thread error detector\.$/d" \ +-e "/^drd, a thread error detector\.$/d" \ -e "s/^Allocation context: stack of thread \([0-9]*\), offset -[0-9]*$/Allocation context: stack of thread \1, offset .../" \ -e "/^warning: evaluate_Dwarf3_Expr: unhandled DW_OP_.*/d" \ -e "s/, in frame #[0-9]* of thread /, in frame #? of thread /" \ diff --git a/glibc-2.X-drd.supp b/glibc-2.X-drd.supp index ad42fb76a5..2e9ac1a04e 100644 --- a/glibc-2.X-drd.supp +++ b/glibc-2.X-drd.supp @@ -1,81 +1,81 @@ { dl - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_dl_fixup fun:_dl_runtime_resolve } { dl - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_dl_fini fun:exit } { dl-2.6.* - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/lib*/ld-*.so fun:exit } { dl-2.6.* - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/lib*/ld-*.so obj:/lib*/ld-*.so obj:/lib*/ld-*.so } { libc - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__libc_enable_asynccancel obj:/lib*/libc-* } { libc - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__libc_disable_asynccancel obj:/lib*/libc-* } { librt - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__librt_enable_asynccancel } { librt - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__librt_disable_asynccancel } { libstdc++ - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_ZN9__gnu_cxx12__atomic_addEPVii } { libstdc++ std::string::string() - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_ZNSsC1ERKSs } { libstdc++ - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_ZN9__gnu_cxx18__exchange_and_addEPVii } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:start_thread fun:clone } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/lib*/libpthread-*.so fun:start_thread fun:clone } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:clone fun:create_thread fun:pthread_create* @@ -83,7 +83,7 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/lib*/libc-*.so fun:__libc_thread_freeres fun:start_thread @@ -91,7 +91,7 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/lib*/libc-*.so obj:/lib*/libc-*.so fun:__libc_thread_freeres @@ -100,20 +100,20 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__nptl_deallocate_tsd fun:start_thread fun:clone } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_create@@GLIBC_* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:clone fun:do_clone fun:pthread_create@@GLIBC_* @@ -121,52 +121,52 @@ } { pthread-glibc2.7-pthread_create - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:memset fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_mutex_lock fun:pthread_mutex_lock } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__pthread_mutex_cond_lock fun:pthread_cond_wait@@GLIBC_* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:clone fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:do_clone fun:pthread_create@@GLIBC_* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:memset fun:pthread_create@@GLIBC_* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_dl_allocate_tls_init fun:pthread_create@@GLIBC_* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:memset fun:_dl_allocate_tls_init fun:pthread_create@@GLIBC_* @@ -174,27 +174,27 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:mempcpy fun:pthread_create@@GLIBC_* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_join fun:pthread_join } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:allocate_stack fun:pthread_create* fun:pthread_create* } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:get_cached_stack fun:allocate_stack fun:pthread_create* @@ -202,12 +202,12 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__deallocate_stack } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:free_stacks fun:__deallocate_stack fun:pthread_join @@ -215,33 +215,33 @@ } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__free_tcb } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__pthread_enable_asynccancel } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:__pthread_disable_asynccancel } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_cancel } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:sigcancel_handler obj:/lib*/libpthread-* } { pthread-unwind - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_Unwind_ForcedUnwind fun:__pthread_unwind fun:sigcancel_handler @@ -249,63 +249,63 @@ } { pthread-unwind - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_Unwind_ForcedUnwind fun:__pthread_unwind } { pthread-unwind - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_Unwind_GetCFA fun:unwind_stop } { pthread-unwind - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:uw_update_context fun:_Unwind_ForcedUnwind_Phase2 } { pthread-unwind - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:uw_frame_state_for fun:_Unwind_ForcedUnwind_Phase2 } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_detach fun:pthread_detach } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_getspecific } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_setspecific } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:pthread_key_delete } { pthread - exp-drd:ConflictingAccess + drd:ConflictingAccess fun:_pthread_cleanup_push_defer } { gomp - exp-drd:ConflictingAccess + drd:ConflictingAccess obj:/usr/lib*/libgomp.so* obj:/usr/lib*/libgomp.so* } { libX11-XCreateFontSet - exp-drd:CondErr + drd:CondErr fun:pthread_cond_init* fun:_XReply fun:XListFontsWithInfo @@ -315,7 +315,7 @@ } { libxcb-xcb_wait_for_reply - exp-drd:CondErr + drd:CondErr fun:pthread_cond_destroy* fun:xcb_wait_for_reply }