aboutsummaryrefslogtreecommitdiff
path: root/lib/uuid.c
AgeCommit message (Collapse)Author
2013-08-20Use "error-checking" mutexes in place of other kinds wherever possible.Ben Pfaff
We've seen a number of deadlocks in the tree since thread safety was introduced. So far, all of these are self-deadlocks, that is, a single thread acquiring a lock and then attempting to re-acquire the same lock recursively. When this has happened, the process simply hung, and it was somewhat difficult to find the cause. POSIX "error-checking" mutexes check for this specific problem (and others). This commit switches from other types of mutexes to error-checking mutexes everywhere that we can, that is, everywhere that we're not using recursive mutexes. This ought to help find problems more quickly in the future. There might be performance advantages to other kinds of mutexes in some cases. However, the existing mutex type choices were just guesses, so I'd rather go for easy detection of errors until we know that other mutex types actually perform better in specific cases. Also, I did a quick microbenchmark of glibc mutex types on my host and found that the error checking mutexes weren't any slower than the other types, at least when the mutex is uncontended. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
2013-07-30clang: Add annotations for thread safety check.Ethan Jackson
This commit adds annotations for thread safety check. And the check can be conducted by using -Wthread-safety flag in clang. Co-authored-by: Alex Wang <alexw@nicira.com> Signed-off-by: Alex Wang <alexw@nicira.com> Signed-off-by: Ethan Jackson <ethan@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2013-07-23uuid: Make uuid_generate() thread-safe.Ben Pfaff
Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Andy Zhou <azhou@nicira.com>
2012-05-02Global replace of Nicira Networks.Raju Subramanian
Replaced all instances of Nicira Networks(, Inc) to Nicira, Inc. Feature #10593 Signed-off-by: Raju Subramanian <rsubramanian@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
2011-04-04Log anything that could prevent a daemon from starting.Ben Pfaff
If a daemon doesn't start, we need to know why. Being able to consistently consult the log to find out is helpful.
2010-11-15util: Add function hexits_value() for parsing multiple hex digits.Ben Pfaff
Suggested-by: Justin Pettit <jpettit@nicira.com>
2010-08-13uuid: Fix warnings carelessly introduced a few commits ago.Ben Pfaff
Commit e251c8 "uuid: Break code to read /dev/urandom into a new module" carelessly introduced a few warnings, which this commit fixes up.
2010-08-12uuid: Break code to read /dev/urandom into a new module.Ben Pfaff
This code is useful for seeding other random number generators, so we might as well make it a separate source file.
2010-02-15uuid: New function uuid_from_string_prefix().Ben Pfaff
For use in an upcoming commit.
2010-01-11ovsdb: Save some space in the log for newly inserted records.Ben Pfaff
When a new record is inserted into a database, ovsdb logs the values of all of the fields in the record. However, often new records have many columns that contain default values. There is no need to log those values, so this commit causes them to be omitted. As a side effect, this also makes "ovsdb-tool show-log --more --more" output easier to read, because record insertions print less noise. (Adding --more --more to this command makes it print changes to database records. The --more option will be introduced in an upcoming commit.)
2009-11-04Implement RFC 4122-compliant UUIDs.Ben Pfaff
This UUID library will be used by the upcoming configuration database.