This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH Fix incorrect double-checked locking related to _res_hconf.initialized. [BZ #20477]


On 08/17/2016 04:51 PM, Andreas Schwab wrote:
On Aug 17 2016, Torvald Riegel <triegel@redhat.com> wrote:

diff --git a/resolv/res_hconf.h b/resolv/res_hconf.h
index b97734d..a3d23f3 100644
--- a/resolv/res_hconf.h
+++ b/resolv/res_hconf.h
@@ -25,6 +25,15 @@

 struct hconf
 {
+  /* We keep the INITIALIZED member only for backwards compatibility.  New
+     code should just call _res_hconf_init unconditionally.  For this field
+     to be used safely, users must ensure that either (1) a call to
+     _res_hconf_init happens-before any load from INITIALIZED, or (2) an
                               ^
+     assignment of zero to INITIALIZED happens-before any load from it, and
                                                 ^

Those hyphens look wrong.

“happens-before” is third-person singular of the verb “happen-before”. It's a technical term widely used while discussing memory models. Here's an example:

  <http://docs.oracle.com/javase/specs/jls/se7/html/jls-17.html#jls-17.4.5>

Florian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]