RFR: JDK-8202384: Introduce altserver jvm variant with speculative execution disabled
david.holmes at oracle.com
Fri Jun 8 00:30:20 UTC 2018
On 8/06/2018 6:11 AM, Erik Joelsson wrote:
> On 2018-06-07 11:56, jesper.wilhelmsson at oracle.com wrote:
>>> On 6 Jun 2018, at 06:17, David Holmes <david.holmes at oracle.com
>>> <mailto:david.holmes at oracle.com>> wrote:
>>> Hi Erik, Jesper,
>>> So "benevolent dictatorship"? ;-)
>>> My main concern is that the updated toolchains that support this have
>>> all been produced in a mad rush and quite frankly I expect them to be
>>> buggy. I don't think it is hard to enable the builder of OpenJDK to
>>> have full choice and control here.
>> My assumption has been, and still is, that we're not the only ones
>> that will use gcc 7.3.0 with these flags. If there were bugs in the
>> new code they would most likely have been found already. The
>> experience from our own work in this area is that the bugs are
>> unlikely to be crashes due to the new code, but rather weird corner
>> cases where the new code is not inserted where it was needed, leaving
>> speculative execution unblocked in that single case.
>> That said, I have no strong opinions on what is possible to configure
>> in the build, as long as the Oracle OpenJDK builds comes with two JVM
>> libraries and one copy of all other libraries. But that is of course a
>> slightly different issue as long as it is possible to do.
> I just don't think the extra work is warranted or should be prioritized
> at this point. I also cannot think of a combination of options required
> for what you are suggesting that wouldn't be confusing to the user. If
> someone truly feels like these flags are forced on them and can't live
> with them, we or preferably that person can fix it then. I don't think
> that's dictatorship. OpenJDK is still open source and anyone can contribute.
I don't see why --enable-hardened-jdk and --enable-hardened-hotspot to
add to the right flags would be either complicated or confusing.
More information about the hotspot-dev