• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ben-manes / caffeine / #2609 / 1
100%
master: 100%

Build:
DEFAULT BRANCH: master
Ran 03 Jul 2021 10:57PM UTC
Files 73
Run time 4s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

03 Jul 2021 09:51PM UTC coverage: 92.561% (+0.07%) from 92.487%
#2609.1

push

github-actions

ben-manes
Stronger memory-order when setting a weak/soft value

The plain write to the value piggybacked on the volatile fence when the
lock is released for guaranteed visibility. However, we should not
assume that visibility is delayed until this fence, as the underlying
system may inject a fence earlier (e.g. safepont, context switch). As
the compiler may change program order for plain reads and writes, those
cases must ensure that there are no dependencies for partial visibility.
While true for strong values, the change in 37c51d5 shows a dependency
order is needed for weak/soft values. For stricter correctness,
clearing the Reference must occur after the entry's value has been
visibly changed. Therefore, the release/acquire ordering is used to
ensure we abide by the Java Memory Model, rather than on x86's total
store order (TSO).

For more details, see
http://gee.cs.oswego.edu/dl/html/j9mm.html

6209 of 6708 relevant lines covered (92.56%)

0.93 hits per line

Source Files on job #2609.1
  • Tree
  • List 0
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 2609
  • d826021d on github
  • Prev Job for on master (##2608.1)
  • Next Job for on master (##2610.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc