diff options
author | jhb <jhb@FreeBSD.org> | 2010-03-10 13:23:25 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2010-03-10 13:23:25 +0000 |
commit | e0724fd324c89b8c46185fe402fd332141ea5bf5 (patch) | |
tree | dae7801acd654dfe736481930016ad68270d7757 /lib/libc/db | |
parent | 42dc39ae95f85b0f1bedbdfa406342f9ac3e4fcc (diff) | |
download | FreeBSD-src-e0724fd324c89b8c46185fe402fd332141ea5bf5.zip FreeBSD-src-e0724fd324c89b8c46185fe402fd332141ea5bf5.tar.gz |
Use thr_once() with once_t controls to initialize various thread_key_t
objects used to provide per-thread storage in the RPC code. Almost all
of these used double-checking with a dedicated mutex (tsd_lock) to do this
before. However, that is not always safe with more relaxed memory orders.
There were also other bugs, such as one in __rpc_createrr() that caused a
new key to be allocated each time __rpc_createrr() was invoked.
PR: threads/144558
Reported by: Sam Robb samrobb of averesystems com (key leak)
MFC after: 1 week
Diffstat (limited to 'lib/libc/db')
0 files changed, 0 insertions, 0 deletions