2 from __future__
import print_function
11 ,
'edm::FunctorWaitingTask'
12 ,
'edm::ModuleCallingContext::setContext'
13 ,
'edm::SerialTaskQueue::'
14 ,
'edm::SerialTaskQueueChain::'
15 ,
'edm::WaitingTaskList'
16 ,
'edm::Worker::RunModuleTask<'
17 ,
'edm::Worker::beginStream'
18 ,
'edm::eventsetup::EventSetupRecord::getFromProxy'
19 ,
'edm::GlobalSchedule::processOneGlobalAsync'
20 ,
'edm::SerialTaskQueueChain::push'
21 ,
'edm::Worker::doWorkNoPrefetchingAsync'
22 ,
'edm::ServiceRegistry::setContext'
23 ,
'edm::ServiceRegistry::presentToken()'
24 ,
'edm::service::InitRootHandlers::ThreadTracker::on_scheduler_entry'
25 ,
'__TBB_machine_fetchstore4'
26 ,
'__TBB_machine_cmpswp4'
27 ,
'__TBB_machine_fetchstore1'
28 ,
'acquire (spin_rw_mutex.h:118)'
29 ,
'reset_extra_state ('
30 ,
'priority (scheduler_common.h:130)'
31 ,
'edm::service::MessageLogger::'
34 ,
'edm::service::MessageLogger::unEstablishModule'
36 ,
'edm::RunForOutput::RunForOutput('
37 ,
'edm::stream::EDAnalyzerAdaptor<'
38 ,
'edm::EventSetup::find('
39 ,
'edm::eventsetup::EventSetupRecord::find('
40 ,
'edm::eventsetup::DataKey::operator<('
41 ,
'edm::eventsetup::SimpleStringTag::operator<('
42 ,
'std::__shared_ptr<edm::serviceregistry::ServicesManager'
43 ,
'try_acquire (spin_mutex.h:109)'
45 ,
'FastTimerService::preStreamBeginRun('
46 ,
'decltype ({parm#1}()) edm::convertException::wrap<bool edm::Worker::runModule'
47 ,
'edm::Worker::reset()'
48 ,
'edm::stream::ProducingModuleAdaptorBase<edm::stream::EDProducerBase>::doStreamBeginLuminosityBlock('
49 ,
'edm::stream::ProducingModuleAdaptorBase<edm::stream::EDFilterBase>::doStreamBeginLuminosityBlock('
50 ,
'edm::LuminosityBlock::LuminosityBlock(edm::LuminosityBlockPrincipal'
51 ,
'edm::StreamSchedule::processOneStreamAsync<'
52 ,
'edm::Worker::doWorkAsync<'
53 ,
'edm::StreamSchedule::processOneEventAsync('
54 ,
'edm::ParentContext::moduleCallingContext()'
55 ,
'edm::ModuleCallingContext::getTopModuleCallingContext'
57 ,
'edm::Path::workerFinished('
58 ,
'edm::Path::updateCounters('
59 ,
'edm::Path::recordStatus('
60 ,
'FastTimerService::postPathEvent('
61 ,
'edm::hash_detail::isCompactForm_('
62 ,
'edm::InputProductResolver::resolveProduct_'
63 ,
'edm::NoProcessProductResolver::dataValidFromResolver('
64 ,
'edm::DataManagingProductResolver::productWasFetchedAndIsValid_(bool)'
65 ,
'FastTimerService::postModuleEvent('
66 ,
'edm::UnscheduledProductResolver::prefetchAsync_'
69 ,
'edm::NoProcessProductResolver::'
70 ,
'reco::Jet::detectorP4'
71 ,
'edm::EarlyDeleteHelper::moduleRan'
72 ,
'edm::clearLoggedErrorsSummary('
73 ,
'edm::ProductProvenanceRetriever::branchIDToProvenance('
74 ,
'HistogramProbabilityEstimator::probability'
75 ,
'edm::EventPrincipal::setLuminosityBlockPrincipal'
76 ,
'edm::DataManagingProductResolver::'
80 'edm::service::MessageLogger::'
81 ,
'edm::MessageSender::ErrorObjDeleter'
82 ,
'edm::Run::runPrincipal() const'
83 ,
'edm::WaitingTaskList::'
84 ,
'edm::EventProcessor::beginJob()'
85 ,
'edm::StreamSchedule::processOneEventAsync'
86 ,
'edm::WorkerManager::resetAll()'
87 ,
'edm::ParentageRegistry::insertMapped('
88 ,
'edm::one::EDFilterBase::doEvent('
89 ,
'edm::one::EDProducerBase'
90 ,
'edm::EventBase::triggerNames_'
91 ,
'edm::EDFilter::doEvent('
92 ,
'edm::EDAnalyzer::doEvent('
93 ,
'edm::one::OutputModuleBase::doEvent'
94 ,
'edm::EDProducer::doEvent'
95 ,
'edm::Principal::clearPrincipal'
96 ,
'edm::RootOutputFile::writeOne'
97 ,
'edm::PrincipalCache::deleteRun('
98 ,
'edm::eventsetup::EventSetupProvider::eventSetupForInstance'
99 ,
'edm::EventPrincipal::clearEventPrincipal()'
100 ,
'FastTimerService::Resources::operator+='
101 ,
'FastTimerService::preSourceEvent(edm::StreamID)'
102 ,
'edm::EventPrincipal::fillEventPrincipal('
103 ,
'edm::InputProductResolver::putProduct_('
106 addressesToIgnore = [
111 'is in a rw- anonymous segment'
113 ,
'tbb::internal::arena::arena('
128 ,
'L1TdeCSCTF::L1TdeCSCTF'
130 ,
'std::vector<reco::TrackExtra'
131 ,
'std::vector<reco::Track'
132 ,
'std::vector<reco::PFConversion'
135 addressesToIgnoreIfRead = [
136 'edm::eventsetup::makeEventSetupProvider('
137 ,
' edm::eventsetup::DataProxy::get('
138 ,
'cond::createPayload<'
139 ,
'edm::pset::Registry::getMapped('
141 ,
'edm::RootFile::fillRunAuxiliary'
143 ,
'edm::EventPrincipal::fillEventPrincipal('
144 ,
'edm::Principal::addUnscheduledProduct('
145 ,
'edm::RootDelayedReader::getProduct_'
146 ,
'TBranchElement::GetEntry('
148 ,
'edm::stream::EDProducerAdaptorBase::doEvent'
149 ,
'edm::stream::EDFilterAdaptorBase::doEvent('
150 ,
'edm::EventProcessor::init('
151 ,
'edm::global::EDProducerBase::doEvent'
152 ,
'FastTimerService::postBeginJob()'
153 ,
'edm::EDProducer::doEvent('
154 ,
'_ZN3pat15PackedCandidate27covarianceParameterization_E'
155 ,
'edm::RootOutputFile::writeOne'
157 ,
'bytes inside data symbol'
158 ,
'FSQ::HandlerTemplate'
161 ,
'edm::service::MessageLogger::'
166 endOfMessage =
'-------------------'
167 startOfMessage =
'Possible data race'
168 startOfMessageLength = len(startOfMessage)
169 messageStarted =
False
173 lookForAddress =
False
176 possibleDataRaceRead =
False
177 foundStartOfMessage =
False
178 for l
in f.readlines():
181 if l.find(endOfMessage) != -1:
184 if l.find(startOfMessage) != -1:
185 lookForAddress =
False
187 possibleDataRaceRead = (l.find(
'data race during read') != -1)
190 print(
'---------------------')
202 if lineCount < maxCount:
204 for i
in stackToIgnore:
215 for i
in messageToIgnore:
222 if l.find(
'Address 0x') != -1:
223 lookForAddress =
True
226 if lineCount == maxCount:
227 lookForAddress =
True
231 if l.find(
'Address 0x') != -1:
233 lookForAddress =
False
238 if addressCount < maxCount:
240 for i
in addressesToIgnore:
246 if possibleDataRaceRead:
247 for i
in addressesToIgnoreIfRead: