Closed Bug 797573 Opened 12 years ago Closed 12 years ago

Upgrade Valgrind on build machines to a special 3.8.x tarball with additional Mozilla fixes

Categories

(Infrastructure & Operations Graveyard :: CIDuty, task)

All
Linux
task
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: gkw, Assigned: rail)

References

Details

To get Valgrind green on tbpl, Julian can help roll a special Valgrind 3.8.x (definitely post-3.8.1) tarball with some Mozilla fixes soon, instead of us waiting for the next release of Valgrind in the medium/long term future.

catlee described how he did it in bug 750856 comment 19.
I placed a tarball at

  http://valgrind.org/downloads/valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2
  MD5SUM = aa1616c81068d8d3a4c7a6feaf19d74c

(I tried at first to attach it to the bug, but Bugzilla limits
attachments to 4MB now, so that didn't work out).


This is VALGRIND_3_8_BRANCH, revisions 13022/2546, plus the following
moz-specific fixes:

valgrind.spec fix, from
  https://bugzilla.mozilla.org/show_bug.cgi?id=750856#c20

an extra OSX leak supp, from
  https://bugs.kde.org/show_bug.cgi?id=307557

leak checker error-exitcode fix, from
  https://bugs.kde.org/show_bug.cgi?id=307465#c2

which AIUI is the current set of fixes needed for V on tbpl.

Note that this tarball extract-dir, and the version number it prints,
is not valgrind-3.8.1 but rather valgrind-3.8.2.SVN.MOZ-13022-2546.  I
mention this in case it might have some effect on any scripts etc
involved that might assume or check for the string 'valgrind-3.8.1'.
(In reply to Julian Seward from comment #1)
> I placed a tarball at
> 
>   http://valgrind.org/downloads/valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2
>   MD5SUM = aa1616c81068d8d3a4c7a6feaf19d74c

catlee, is it possible for you to install this as per bug 750856 comment 19 soon?

It should not take too long, and it would help immensely in turning Valgrind trees on tbpl green.
catlee is off till next Thursday. If this is an urgent bug, I can look at it next week (Tue is the earliest day).
This would be a great improvement, and installing it should not take too long, the instructions are all available and presumably recently tried out with the AWS setup.
(In reply to Julian Seward from comment #1)
> valgrind.spec fix, from
>   https://bugzilla.mozilla.org/show_bug.cgi?id=750856#c20

Looks like it's not needed anymore, the spec already sets it.
 
> an extra OSX leak supp, from
>   https://bugs.kde.org/show_bug.cgi?id=307557

I don't see any patch here. Can you attach the patch here?

> leak checker error-exitcode fix, from
>   https://bugs.kde.org/show_bug.cgi?id=307465#c2

Assuming this one http://bugsfiles.kde.org/attachment.cgi?id=74324
Correct?
(In reply to Gary Kwong [:gkw, :nth10sd] from comment #2)
> (In reply to Julian Seward from comment #1)
> > I placed a tarball at
> > 
> >   http://valgrind.org/downloads/valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2
> >   MD5SUM = aa1616c81068d8d3a4c7a6feaf19d74c

Rail, all those patches have already been rolled up into this tarball provided by Julian.

We just need to replace the version of Valgrind 3.8.1 on our releng machines with this tarball.
Oh, sorry. 

I had to adjust the version in the spec file and replace dashes with underscores to meet RPM requirements. Otherwise it's untouched.

tar xjf valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2
cp valgrind-3.8.2.SVN.MOZ-13022-2546/valgrind.spec ./
# edit spec, fix Version

# 64 bit:
mock_mozilla -r mozilla-centos6-x86_64 --init
mock_mozilla -r mozilla-centos6-x86_64 --install gcc mpfr
mock_mozilla -r mozilla-centos6-x86_64 --shell --unpriv 'mkdir -p /builds/rpmbuild/{SOURCES,SPECS}'
mock_mozilla -r mozilla-centos6-x86_64 --copyin --unpriv valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2 /builds/rpmbuild/SOURCES
mock_mozilla -r mozilla-centos6-x86_64 --copyin --unpriv valgrind.spec /builds/rpmbuild/SPECS
mock_mozilla -r mozilla-centos6-x86_64 --shell --unpriv --cwd '/builds/rpmbuild/SPECS' 'rpmbuild -ba valgrind.spec'
cp /builds/mock_mozilla/mozilla-centos6-x86_64/root/builds/rpmbuild/RPMS/x86_64/valgrind-3.8.2.SVN.MOZ_13022_2546-1.x86_64.rpm ./

# 32 bit:
mock_mozilla -r mozilla-centos6-i386 --init
mock_mozilla -r mozilla-centos6-i386 --install gcc mpfr
mock_mozilla -r mozilla-centos6-i386 --shell --unpriv 'mkdir -p /builds/rpmbuild/{SOURCES,SPECS}'
mock_mozilla -r mozilla-centos6-i386 --copyin --unpriv valgrind-3.8.2.SVN.MOZ-13022-2546.tar.bz2 /builds/rpmbuild/SOURCES
mock_mozilla -r mozilla-centos6-i386 --copyin --unpriv valgrind.spec /builds/rpmbuild/SPECS
mock_mozilla -r mozilla-centos6-i386 --shell --unpriv --cwd '/builds/rpmbuild/SPECS' 'rpmbuild -ba valgrind.spec'
cp /builds/mock_mozilla/mozilla-centos6-i386/root/builds/rpmbuild/RPMS/i686/valgrind-3.8.2.SVN.MOZ_13022_2546-1.i686.rpm ./

I'll deploy the packages Tue/Wed depending on releases/load.
Assignee: nobody → rail
FTR, done on bld-centos6-hp-005
> I'll deploy the packages Tue/Wed depending on releases/load.

This is fantastic. Thanks for the help!
I deployed the packages and forced linux/linux64 valgrind builds. I'll check the results later.
Deployed using https://wiki.mozilla.org/ReleaseEngineering/PuppetAgain/HowTo/Build_RPMs#Landing

chmod 644 *.rpm
sudo chown puppetagainsync:puppetagainsync *.rpm
sudo mv -vi valgrind-3.8.2.SVN.MOZ_13022_2546-1.i686.rpm /data/repos/yum/releng/public/CentOS/6/i386/
sudo mv -vi valgrind-3.8.2.SVN.MOZ_13022_2546-1.x86_64.rpm /data/repos/yum/releng/public/CentOS/6/x86_64/
sudo mv -vi valgrind-3.8.2.SVN.MOZ_13022_2546-1.src.rpm /data/repos/yum/releng/public/CentOS/6/x86_64/
sudo -u puppetagainsync createrepo --update /data/repos/yum/releng/public/CentOS/6/i386/
sudo -u puppetagainsync createrepo --update /data/repos/yum/releng/public/CentOS/6/x86_64/
Seeing the following versions installed:
valgrind.i686 1:3.8.2.SVN.MOZ_13022_2546-1
valgrind.x86_64 1:3.8.2.SVN.MOZ_13022_2546-1

The builds should be visible at https://tbpl.mozilla.org/?noignore=1&jobname=valgrind shortly (~1h).
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
The first set of results is now out, and they're green.

https://tbpl.mozilla.org/?noignore=1&jobname=valgrind&rev=2fae8bd461da

-> VERIFIED
Status: RESOLVED → VERIFIED
Product: mozilla.org → Release Engineering
Component: Platform Support → Buildduty
Product: Release Engineering → Infrastructure & Operations
Product: Infrastructure & Operations → Infrastructure & Operations Graveyard
You need to log in before you can comment on or make changes to this bug.