Closed Bug 1023262 Opened 10 years ago Closed 10 years ago

Intermittent parallel/Array-scanPar-sum.js | jit-test/lib/parallelarray-helpers.js:93:6 Error: Assertion failed: got 2145, expected 4225 (code 3, args "")

Categories

(Core :: JavaScript Engine: JIT, defect)

x86_64
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla33
Tracking Status
firefox31 --- unaffected
firefox32 --- unaffected
firefox33 --- fixed
firefox-esr24 --- unaffected

People

(Reporter: emorley, Assigned: lth)

References

Details

(Keywords: intermittent-failure)

Rev4 MacOSX Snow Leopard 10.6 mozilla-inbound debug test jittest on 2014-06-10 03:11:55 PDT for push 0ea031a43390

slave: t-snow-r4-0080

https://tbpl.mozilla.org/php/getParsedLog.php?id=41432131&tree=Mozilla-Inbound

{
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "")
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "--ion-eager --ion-parallel-compile=off")
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "--ion-eager --ion-parallel-compile=off --ion-check-range-analysis --no-sse3")
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "--baseline-eager")
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "--baseline-eager --no-fpu")
03:55:37     INFO -  TEST-PASS | tests/jit-test/jit-test/tests/parallel/Array-scanPar-one.js | Success (code 0, args "--no-baseline --no-ion")
03:55:37     INFO -  FAIL - parallel/Array-scanPar-sum.js
03:55:37  WARNING -  TEST-UNEXPECTED-FAIL | tests/jit-test/jit-test/tests/parallel/Array-scanPar-sum.js | /builds/slave/talos-slave/test/build/tests/jit-test/jit-test/lib/parallelarray-helpers.js:93:6 Error: Assertion failed: got 2145, expected 4225 (code 3, args "")
03:55:37     INFO -  INFO exit-status     : 3
03:55:37     INFO -  INFO timed-out       : False
03:55:37     INFO -  INFO stdout          > Attempting compile # 0
03:55:37     INFO -  INFO stdout          > compile undefined
03:55:37     INFO -  INFO stdout          > Attempting parallel run # 0
03:55:37     INFO -  INFO stdout          > par undefined
03:55:37     INFO -  INFO stdout          > Error: ForkJoin: mode=parallel status=warmup bailouts=1
03:55:37     INFO -  INFO stdout          > Attempting compile # 1
03:55:37     INFO -  INFO stdout          > compile undefined
03:55:37     INFO -  INFO stdout          > ...in index 64 of 1023
03:55:37     INFO -  INFO stderr         2> /builds/slave/talos-slave/test/build/tests/jit-test/jit-test/lib/parallelarray-helpers.js:93:6 Error: Assertion failed: got 2145, expected 4225
}
I think this has been there for a while, I noted it when running m-c with the slow tests last week (after introducing the --slow flag) but failed to get to the bottom of it.
The failure I saw previously was with Array-scanPar-sorted.js, but the error was essentially the same: at some array index, the values diverged.

Might as well try to track it down.
Assignee: nobody → lhansen
Observe that the test case swaps the result of the computation and the expected result.  The correct (expected) array value is 2145, at element #64, which corresponds to the output from the first bug report.  The incorrect (computed) value, 4225, is not a value that should appear anywhere in the array, the nearest values are 4186 and 4278.

FWIW, 4225 == 0x1081.

So far I'm unable to repro on my Linux64 system (Quad AMD, Ubuntu 13).

There's a worrisome comment in testArrayScanPar in jit-test/lib/parallelarray-helpers.js:

  // Unfortunately, it sometimes happens that running 'par' twice in a
  // row causes bailouts and other unfortunate things!

No explanation is provided beyond that.
The other error I'm seeing, running with --slow on parallel/Array-scanPar-sorted.js, occurs at element offset 512.  The power-of-two offsets along with the mysterious comment suggest that perhaps there's something wonky with the scanPar implementation.  (Inconclusive, obviously.)
There's a probable bug in Array.prototype.scanPar.  Its internal "phase2" function both reads from and writes to "buffer", and will be vulnerable to bailout-and-restart.
Depends on: 1023755
Summary: Intermittent parallel/Array-scanPar-sum.js | /builds/slave/talos-slave/test/build/tests/jit-test/jit-test/lib/parallelarray-helpers.js:93:6 Error: Assertion failed: got 2145, expected 4225 (code 3, args "") → Intermittent parallel/Array-scanPar-sum.js | jit-test/lib/parallelarray-helpers.js:93:6 Error: Assertion failed: got 2145, expected 4225 (code 3, args "")
I believe this stopped failing as soon as bug 1023755 landed, so I will consider it fixed until further notice.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla33
You need to log in before you can comment on or make changes to this bug.