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:
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)