Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UBSAN] Initialize missing PixelBarrelValues members for phase1 #44796

Merged
merged 1 commit into from
Apr 24, 2024

Conversation

smuzaffar
Copy link
Contributor

@smuzaffar smuzaffar commented Apr 22, 2024

UBSAN IBs have a lot of runtime errors like [a]. This is because PixelBarrelValues::doubleStartBit_ and PixelBarrelValues::doubleMask_ are not initialized for phase 1. This PR proposes to explicitly initialize these data members to fix the UBSAN runtime errors.

@cms-sw/reconstruction-l2 , may be we should avoid calling TrackerTopology::pixFirst and TrackerTopology::pixSecond for phase 1?

[a]

10001.0/step3:DataFormats/TrackerCommon/interface/TrackerTopology.h:301:26: runtime error: shift exponent 5308 is too large for 32-bit type 'unsigned int'
10001.0/step3:DataFormats/TrackerCommon/interface/TrackerTopology.h:344:22: runtime error: shift exponent 5308 is too large for 32-bit type 'unsigned int'

@cmsbuild
Copy link
Contributor

cmsbuild commented Apr 22, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-44796/40027

  • This PR adds an extra 20KB to repository

@cmsbuild
Copy link
Contributor

A new Pull Request was created by @smuzaffar for master.

It involves the following packages:

  • DataFormats/TrackerCommon (reconstruction)

@jfernan2, @mandrenguyen, @cmsbuild can you please review it and eventually sign? Thanks.
@gpetruc, @mtosi, @missirol, @mmusich, @JanFSchulte, @VourMa, @rovere, @VinInn this is something you requested to watch as well.
@sextonkennedy, @rappoccio, @antoniovilela you are the release manager for this.

cms-bot commands are listed here

@mmusich
Copy link
Contributor

mmusich commented Apr 22, 2024

@emiglior @Raffaella07 FYI

@jfernan2
Copy link
Contributor

@cmsbuild, please test for CMSSW_14_1_UBSAN_X

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-1bf1f6/38983/summary.html
COMMIT: f3785e3
CMSSW: CMSSW_14_1_UBSAN_X_2024-04-19-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/44796/38983/install.sh to create a dev area with all the needed externals and cmssw changes.

@smuzaffar
Copy link
Contributor Author

please test

lets run the production arch tests. UBSAN relvals are now clean. No more runtime errors like the following in workflow 5.1/step1

/data/cmsbld/jenkins/workspace/build-any-ib/w/tmp/BUILDROOT/5f685fc60aee554ebba0a8c863b4a50e/opt/cmssw/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_UBSAN_X_2024-04-19-2300/src/DataFormats/TrackerCommon/interface/TrackerTopology.h:301:26: runtime error: shift exponent 5294 is too large for 32-bit type 'unsigned int'
    #0 0x14ae81dc88f9 in TrackerTopology::pixFirst(DetId const&) const /data/cmsbld/jenkins/workspace/build-any-ib/w/tmp/BUILDROOT/5f685fc60aee554ebba0a8c863b4a50e/opt/cmssw/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_UBSAN_X_2024-04-19-2300/src/DataFormats/TrackerCommon/interface/TrackerTopology.h:301
    #1 0x14ae81dc88f9 in TrackerTopology::isFirst(DetId const&) const src/DataFormats/TrackerCommon/src/TrackerTopology.cc:310
    #2 0x14ae81dcdda3 in TrackerTopology::print[abi:cxx11](DetId) const src/DataFormats/TrackerCommon/src/TrackerTopology.cc:373
    #3 0x14adc60891ec in TrackingLayer::createFromDetId(DetId const&, TrackerTopology const&) src/FastSimulation/Tracking/src/TrackingLayer.cc:76
    #4 0x14adc6098b0e in TrajectorySeedHitCandidate::TrajectorySeedHitCandidate(FastTrackerRecHit const*, TrackerTopology const*) src/FastSimulation/Tracking/src/TrajectorySeedHitCandidate.cc:8
    #5 0x14adc6741788 in SeedFinder::getSeed(std::vector<FastTrackerRecHit const*, std::allocator<FastTrackerRecHit const*> > const&) const /data/cmsbld/jenkins/workspace/build-any-ib/w/tmp/BUILDROOT/5f685fc60aee554ebba0a8c863b4a50e/opt/cmssw/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_UBSAN_X_2024-04-19-2300/src/FastSimulation/Tracking/interface/SeedFinder.h:53
    #6 0x14adc6708f52 in TrajectorySeedProducer::produce(edm::Event&, edm::EventSetup const&) src/FastSimulation/Tracking/plugins/TrajectorySeedProducer.cc:192

@cmsbuild
Copy link
Contributor

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-1bf1f6/39002/summary.html
COMMIT: f3785e3
CMSSW: CMSSW_14_1_X_2024-04-22-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/44796/39002/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

@jfernan2
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @antoniovilela, @rappoccio, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2)

@antoniovilela
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 8194938 into cms-sw:master Apr 24, 2024
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants