RFR: 8180197: Failing assert: id must be initialized
Rickard Bäckman
rickard.backman at oracle.com
Wed Jun 7 06:29:40 UTC 2017
Thank you!
On 06/02, Vladimir Kozlov wrote:
> Good.
>
> Thanks,
> Vladimir
>
> On 6/2/17 3:14 AM, Kim Barrett wrote:
> >>On Jun 2, 2017, at 5:45 AM, Rickard Bäckman <rickard.backman at oracle.com> wrote:
> >>
> >>Hi,
> >>
> >>there is a locking / race in ciObjectFactory. The variables
> >>_shared_ident_limit and _shared_ci_metadata are supposed to be protected
> >>by the volatile _initialized. However since we do double checked locking
> >>on at least some platforms we can have a race where _initialized is true
> >>but _shared_ident_limit has not yet been updated.
> >>
> >>Since this code is only run when the compiler threads are starting,
> >>replacing the double checked locking with just check under lock would
> >>solve the problem. The code runs once per thread and can't be considered
> >>performance critical.
> >>
> >>webrev: http://cr.openjdk.java.net/~rbackman/8180197/
> >>bug: https://bugs.openjdk.java.net/browse/JDK-8180197
> >>
> >>/R
> >
> >Looks good.
> >
/R
More information about the hotspot-compiler-dev
mailing list