RFR: 6811960: Improper register reuse in biased_locking_enter has been fixed.
Max Ockner
max.ockner at oracle.com
Wed May 13 15:41:52 UTC 2015
Hello,
Please review this change:
Bug: https://bugs.openjdk.java.net/browse/JDK-6811960
webrev: http://cr.openjdk.java.net/~mockner/6811960/
Summary: There was a piece of code which accidentally reused a register
that it shouldn't have reused within the biased_locking_enter function.
I haven't been able to reproduce the bug, and I've heard that nobody has
seen this bug since it was reported 5+ years ago.
I think the reason why this bug can't be reproduced is because all it
does is incorrectly revoke a bias.
Either way, this register is no longer reused. All registers are
correctly supplied now, and this fact is checked with an assert
statement in biased_locking_enter.
There was also some code which was only called in the case where this
special register was reused(The original author probably intended this
to be possible without breaking anything) Now that there is no register
reuse, these code sections have been removed.
Tested with a lot of things:
"/net/file01.se.oracle.com/home/appeal/bin/rbt remote-build-and-test
--jprt-queue west --test hotspot/test/:hotspot_all,vm.quick.testlist -bf
fastdebug -bp linux-x64-64,win-x64-64,linux-i586-32,win-i586-32 -tp
linux-x64-64,win-x64-64,linux-i586-32,win-i586-32 --email
max.ockner at oracle.com"
These were the results:
http://sla03.se.oracle.com:3000/rbt/rbt-max.ockner-biased-20150512-1900-1361
Thanks,
Max
More information about the hotspot-runtime-dev
mailing list