Hi there, I am discovering DRD tool today, after reading the following documentation: http://valgrind.org/docs/manual/drd-manual.html#drd-manual.data-races
I am trying to apply this to the following output (*). According to the doc, I need to: "Start at the bottom of both call stacks, and count the number stack frames with identical function name, file name and line number. In the above example the three bottommost frames are identical (clone, start_thread and vg_thread_wrapper). " However in my case, there does not seems to be any identical function name/filename/line number. can I still deduce anything from that particular output ? Thanks ! (*) ==15069== Thread 2: ==15069== Conflicting load by thread 2 at 0x00650958 size 8 ==15069== at 0x77FEEFD: std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x77FF2EE: std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x64AFBC8: tlp::PluginLoaderTxt::start(std::string const&, std::string const&) (PluginLoaderTxt.cpp:33) ==15069== by 0x64DFDF3: tlp::loadPluginsFromDir(std::string, std::string, tlp::PluginLoader*) (TlpTools.cpp:174) ==15069== by 0x6C0F1BF: tlp::GlyphManager::loadPlugins(tlp::PluginLoader*) (GlyphManager.cpp:92) ==15069== by 0x5895107: Visualization::display(void*) (Visualization.cc:275) ==15069== by 0x4C2FA44: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==15069== by 0x754C739: start_thread (pthread_create.c:300) ==15069== by 0x7FD569C: clone (clone.S:112) ==15069== Allocation context: BSS section of de/Csm-gcc/CodeGenerator/Testing/GeneratedEpidemiology/Bin/main ==15069== Other segment start (thread 1) ==15069== at 0x7FD5661: clone (clone.S:84) ==15069== by 0x754C923: T.102 (createthread.c:75) ==15069== by 0x754CE33: pthread_create@@GLIBC_2.2.5 (createthread.c:249) ==15069== by 0x4C2F566: pthread_cre...@* (drd_pthread_intercepts.c:409) ==15069== by 0x58B15F0: GraphicDisplayProbeExtension::GraphicDisplayProbe::GraphicDisplayProbe() (GraphicDisplayProbe.cc:28) ==15069== by 0x58B58E1: Csm::TemplateProbeFactory<Csm::Entity*, GraphicDisplayProbeExtension::GraphicDisplayProbe>::makeObject() const (csmTemplateProbeFactory.txx:31) ==15069== by 0x42C3B0: Csm::ProbeFactory<Csm::Entity*>::createProbe(std::string) (csmProbeFactory.txx:50) ==15069== by 0x4402A9: Csm::GenericProbeLoader<Csm::Entity*>::Load(_xmlDoc*, _xmlNode*) (csmGenericProbeLoader.txx:56) ==15069== by 0x4408AE: Csm::SimulationLoader<Csm::Entity*>::loadProbes(_xmlDoc*, _xmlNode*) (csmSimulationLoader.txx:133) ==15069== by 0x4420B2: Csm::SimulationLoader<Csm::Entity*>::load(std::string&) (csmSimulationLoader.txx:101) ==15069== by 0x442149: Csm::Simulator<Csm::Entity*>::SetConfigurationFile(std::string, std::string) (Simulator.txx:97) ==15069== by 0x427BFD: main (main.cxx:84) ==15069== Other segment end (thread 1) ==15069== at 0x4C26668: pthread_mutex_lock (drd_pthread_intercepts.c:580) ==15069== by 0x77CE1BE: std::locale::locale() (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x77CA82F: std::ios_base::_M_init() (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x77DF228: std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*) (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x7802652: std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream(std::_Ios_Openmode) (in /usr/lib/libstdc++.so.6.0.13) ==15069== by 0x5892EAB: Visualization::createGraph(std::list<std::pair<std::map<unsigned int, Visualization::HumanData*, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, Visualization::HumanData*> > >*, std::list<std::pair<unsigned int, unsigned int>, std::allocator<std::pair<unsigned int, unsigned int> > >*>, std::allocator<std::pair<std::map<unsigned int, Visualization::HumanData*, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, Visualization::HumanData*> > >*, std::list<std::pair<unsigned int, unsigned int>, std::allocator<std::pair<unsigned int, unsigned int> > >*> > >*) (Visualization.cc:343) ==15069== by 0x58B119F: GraphicDisplayProbeExtension::GraphicDisplayProbe::react() (GraphicDisplayProbe.cc:115) ==15069== by 0x58B1235: GraphicDisplayProbeExtension::GraphicDisplayProbe::run() (GraphicDisplayProbe.cc:41) ==15069== by 0x432265: Csm::RepeatTaskBlock<Csm::SchedulerTrait<float, Csm::TaskTrait<Csm::Entity*, Csm::EnvironmentInterface<Csm::Entity*>, void (Csm::Entity::*)(Csm::EnvironmentInterface<Csm::Entity*>*)> > >::runSimulation() (csmRepeatTaskBlock.txx:324) ==15069== by 0x43CA07: Csm::RepeatTaskBlock<Csm::SchedulerTrait<float, Csm::TaskTrait<Csm::Entity*, Csm::EnvironmentInterface<Csm::Entity*>, void (Csm::Entity::*)(Csm::EnvironmentInterface<Csm::Entity*>*)> > >::run() (csmRepeatTaskBlock.txx:279) ==15069== by 0x433A52: Csm::Scheduler<Csm::SchedulerTrait<float, Csm::TaskTrait<Csm::Entity*, Csm::EnvironmentInterface<Csm::Entity*>, void (Csm::Entity::*)(Csm::EnvironmentInterface<Csm::Entity*>*)> > >::runSimulation() (csmScheduler.txx:465) ==15069== by 0x436EA5: Csm::Scheduler<Csm::SchedulerTrait<float, Csm::TaskTrait<Csm::Entity*, Csm::EnvironmentInterface<Csm::Entity*>, void (Csm::Entity::*)(Csm::EnvironmentInterface<Csm::Entity*>*)> > >::run() (csmScheduler.txx:445) -- Mathieu ------------------------------------------------------------------------------ Return on Information: Google Enterprise Search pays you back Get the facts. http://p.sf.net/sfu/google-dev2dev _______________________________________________ Valgrind-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-users
