Valgrind jobs are failing in js/src/shell/

RESOLVED FIXED

Status

()

Core
JavaScript Engine
--
blocker
RESOLVED FIXED
6 years ago
6 years ago

People

(Reporter: Jesse Ruderman, Assigned: ted)

Tracking

Trunk
x86
Linux
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

6 years ago
https://tbpl.mozilla.org/php/getParsedLog.php?id=6947304&tree=Firefox&full=1#error0

`.L3239' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3239' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3240' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3240' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3241' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3241' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3242' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3242' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3243' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3243' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3244' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
`.L3244' referenced in section `.gnu.linkonce.r._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o): defined in discarded section `.gnu.linkonce.t._ZN2js12StringObject6createEP9JSContextP8JSString' of ../libjs_static.a(jsstr.o)
collect2: ld returned 1 exit status
make[4]: Leaving directory `/builds/slave/m-cen-lnx-valgrind/objdir/js/src/shell'
make[4]: *** [js] Error 1
make[3]: *** [libs] Error 2
make[3]: Leaving directory `/builds/slave/m-cen-lnx-valgrind/objdir/js/src'
make[2]: *** [libs_tier_js] Error 2
make[2]: Leaving directory `/builds/slave/m-cen-lnx-valgrind/objdir'
make[1]: *** [tier_js] Error 2
make[1]: Leaving directory `/builds/slave/m-cen-lnx-valgrind/objdir'
make: *** [default] Error 2
program finished with exit code 2
(Reporter)

Updated

6 years ago
Blocks: 696305
Jesse, I'm not sure what RelEng can do here, it looks like a compilation issue that a developer needs to take a look at.
(Reporter)

Updated

6 years ago
Assignee: nobody → general
Component: Release Engineering → JavaScript Engine
Product: mozilla.org → Core
QA Contact: release → general
Version: other → Trunk
(Reporter)

Updated

6 years ago
Severity: normal → blocker
Blocks: 706695

Comment 2

6 years ago
This seems like a pretty kosher use of inlining.  Perhaps Julian or Nick know something on the valgrind end?
The full log is not available and comment 0 doesn't have enough context to know what's going on.

How are these valgrind-enabled builds built differently from normal builds?
They're using this script to build:
http://hg.mozilla.org/build/tools/file/default/scripts/valgrind/valgrind.sh
https://tbpl.mozilla.org/php/getParsedLog.php?id=7703424&tree=Firefox&full=1 for Linux32, https://tbpl.mozilla.org/php/getParsedLog.php?id=7703438&tree=Firefox for Linux64, https://tbpl.mozilla.org/?noignore=1&jobname=Valgrind for finding logs.
(In reply to Chris AtLee [:catlee] from comment #4)
> They're using this script to build:
> http://hg.mozilla.org/build/tools/file/default/scripts/valgrind/valgrind.sh

The only vaguely unusual things I can see in there are --disable-elfhack (but that seems like it would avoid problems rather than cause them) and --freorder-blocks (but I don't see how that would cause problems).

Unrelatedly, you can use --smc-check=all-non-file instead of --smc-check=all and it'll run faster.
(In reply to Nicholas Nethercote [:njn] from comment #6)
> Unrelatedly, you can use --smc-check=all-non-file instead of --smc-check=all
> and it'll run faster.

This requires at least Valgrind 3.7.0.
(Assignee)

Comment 8

6 years ago
Er, that valgrind script appears to be using GCC 4.3.3, whereas the rest of our builds use GCC 4.5.2. We should probably fix that.
(Assignee)

Updated

6 years ago
Depends on: 735295
(Assignee)

Updated

6 years ago
See Also: → bug 735309

Updated

6 years ago
Blocks: 696297
(Assignee)

Comment 9

6 years ago
Still broken, I think the valgrind.sh script got broken along the way, it doesn't seem to be conveying its mozconfig options to configure. I have patches to (hopefully) fix that in bug 735309.
Depends on: 735309
See Also: bug 735309
(Assignee)

Comment 10

6 years ago
Switching to GCC 4.5 made these builds work again:
https://tbpl.mozilla.org/php/getParsedLog.php?id=10369320&tree=Firefox

They're still showing up as red on TBPL, but that's because Valgrind is apparently exiting with a non-zero status (and these jobs are run in a slightly unusual way).
Assignee: general → ted.mielczarek
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.