| Branch: | Tag: | Revision:

gdp / ep / ep_thr.c @ master

History | View | Annotate | Download (24.2 KB)

# Date Author Comment
c87dd166 01/23/2019 07:56 AM Eric Allman

Update license date on all files. No functional changes.

5e58af7b 01/06/2019 06:55 PM Eric Allman

Add some mutex debugging checks (notably for trashed data structures).

4a8ff91d 08/09/2018 01:54 PM Eric Allman

Print outstanding requests when giving a state dump using T or SIGUSR1.

a1e67be4 06/22/2018 02:06 PM Eric Allman

Clean up a helgrind complaint in the locking primitives.

8834a9d7 05/25/2018 01:22 PM Eric Allman

Demote mutex problem reports from assertion failure to debug, since it
doesn't seem to be 100% reliable.

e17a232e 05/25/2018 01:22 PM Eric Allman

Improved EP_THR_MUTEX debugging.

bfecf573 01/23/2018 05:20 PM Eric Allman

Rather non-intuitive changes to suppress "return value not used"
warning; just (void)ing the call no longer works.

fc0cbc23 01/23/2018 04:09 PM Eric Allman

Changes necessary to compile under C++ because it doesn't understand
that (void *) is compatible with other pointer types. This adds a lot
of explicit casts that are not needed in C.

95e9c871 09/18/2017 10:42 AM Eric Allman

Make ep_thr_gettid produce something useful to developers (with a
semantic change) and include EP_THR_PRItid for printing.

11029b9c 08/29/2017 01:59 PM Eric Allman

Snapshot on reliability work.

b8f93c05 08/09/2017 01:33 PM Eric Allman

Basic things seems to work, including passing helgrind race condition
tests. Still more testing needed.

66f6c374 08/02/2017 09:11 AM Eric Allman

Make Helgrind annotations work properly for (most?) race conditions.

67fa395f 03/24/2017 02:18 AM Eric Allman

Back out change that defined GNU_SOURCE by default. That pulls in a
non-Posix version of strerror_r. However, without _GNU
SOURCE you can't
get ffsl(3), so that has to be declared by hand. Bah humbug.

728482c6 03/24/2017 02:18 AM Eric Allman

Be a bit less aggressive about using assertions.

89035e50 03/24/2017 01:19 AM Eric Allman

Repairs for some compilation issues.

416d60f4 03/23/2017 09:49 PM Eric Allman

Be sure to set lock order bitmask after successful trylock; also, only
set the bitmask if the lock succeeds.

84fbdde9 03/23/2017 09:25 PM Eric Allman

Add debugging to check for mutex ordering. It isn't perfect, and it
does require manually deciding on lock ordering.

4a863be9 03/19/2017 05:21 PM Eric Allman

Do extended mutex checking on ep_thr_mutex_trylock.

c975e6e5 03/14/2017 03:33 PM Eric Allman

Improve extended mutex debugging and default it on for now. It should
get turned off before release.

b9c4d7c8 03/07/2017 01:25 PM Eric Allman

Avoid subroutine calls if not doing extended locking checks.

ffd16cbe 03/06/2017 01:08 PM Eric Allman

More mutex debugging (Linux only)

3e98a709 03/03/2017 04:59 PM Eric Allman

More lock debugging improvements. Some of these changes may be too
expensive when running without debugging, so they should be on a compile

2dec1b62 03/03/2017 01:45 PM Eric Allman

Significant changes to mutex debugging.

47d57c57 03/02/2017 03:26 PM Eric Allman

Move GDP_ASSERT_MUTEX_IS[UN]LOCKED into EP library; this implementation
is much less portable and relies on peeking into the secret mutex data,
but has the advantage that it seems to work. Also improves some of the
lock debugging output to add more information.

237d9045 02/16/2017 12:00 PM Eric Allman

Show a stack backtrace on lock conflicts.

897accec 02/06/2017 10:41 AM Eric Allman

Update licenses to 2017.

7bc0e2cf 12/11/2016 08:51 AM Eric Allman

Snapshot: get basic reading working again with new lock changes.

06416042 12/10/2016 01:11 PM Eric Allman

Add ep_thr_mutex_tryunlock function. Identical to ep_thr_mutex_unlock
except EAGAIN (mutex was not locked) doesn't print an error.

ddb083b7 11/22/2016 10:28 AM Eric Allman

Another thread error message improvement.

fbb88f4c 11/20/2016 04:20 PM Eric Allman

Improved diagnostics in ep_thr primitives.

522991b2 06/23/2016 10:32 AM Eric Allman

Improvements to thread pool (for debugging)

e088535e 06/21/2016 08:23 PM Eric Allman

Ignore EDEADLK errors in ep_thr_mutex_trylock.

b22be946 06/21/2016 03:35 PM Eric Allman

Substantially improve ep_thr debugging. RECOMPILE REQUIRED! The ABI
has changed.

a346c64c 06/10/2016 07:06 PM Eric Allman

Tweak assertion code to allow for dumping process state on assertion

e539f4d3 05/12/2016 12:28 PM Eric Allman

Fix a reference counting bug. Improve reference counting and locking

19efef53 04/15/2016 01:26 PM Eric Allman

Fix a problem that was causing occassional unlocks of unlocked mutexes
(only when a subscription timed out).

6bd5476b 12/01/2015 01:22 PM Eric Allman

Update license. No code changes.

055d3009 11/21/2015 01:20 PM Eric Allman

Include copyright in all files. There are scripts to do bulk
replacement of the copyright if desired.

4dcf6f56 10/27/2015 10:42 AM Eric Allman

Do better tracing on condition variables.

546805c8 02/20/2015 01:56 PM Eric Allman

Add ep_thr_yield.

d16b1437 02/15/2015 02:08 PM Eric Allman

Fix name of debug flag to be consistent with other modules.

a6f08b8d 02/15/2015 01:29 PM Eric Allman

Since timeouts are not an error on locks, only display these on a high
debugging flag level.

14e720aa 02/04/2015 05:12 PM Eric Allman

Improved debugging in threading primitives.

ce3c250b 01/22/2015 08:28 AM Eric Allman

Change ep_thr_cond_wait to take an absolute time as the timeout instead
of a delta.

686e4579 11/25/2014 01:30 PM Eric Allman

Change ep_thr_cond_wait and gdp_event_next to take timeout parameters

74e5f511 10/20/2014 09:30 AM Eric Allman

Improved debugging, notably for mutexes.

5bc1cdfb 08/28/2014 03:39 PM Eric Allman

Use strerror_r everywhere (this is a threaded application).

9509f13b 08/23/2014 01:27 PM Eric Allman

Another snapshot. Much closer to having subscriptions working.

51775f02 08/18/2014 08:28 AM Eric Allman

Basics appear to be working; still have some problems in gdpd_phys.

837e94b0 08/16/2014 12:16 PM Eric Allman

Snapshot. Still have a deadlock, but it's on a condition variable this time.

0314a7a7 08/14/2014 10:15 AM Eric Allman

Snapshot. Starting to work, but not there yet.

9f5d76d6 08/05/2014 12:08 PM Eric Allman

Slight interface changes; added comments.

49c87bd9 08/04/2014 12:45 PM Eric Allman

First cut at multithreading the EP library.