aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/processing/jobs/callback_job.c
Commit message (Collapse)AuthorAgeFilesLines
* Moving charon to libcharon.Tobias Brunner2010-03-191-271/+0
|
* Avoid a race condition that could lead to a segmentation fault.Tobias Brunner2010-02-251-3/+7
| | | | | | | | | | | | Let's assume the callback function of a callback job returns JOB_REQUEUE_FAIR in one call and JOB_REQUEUE_NONE in the next. Before this fix, the thread executing the callback job would requeue the job before unregistering itself. If there was a context switch right after the job got requeued, and if the thread that requeued the job never got resumed until a second thread executed the job and, due to the return value of JOB_REQUEUE_NONE, destroyed it, then when the first thread eventually got resumed and tried to lock the mutex to unregister itself the pointer wouldn't be valid anymore, thus resulting in a segmentation fault.
* Callback job refactored and fixed.Tobias Brunner2009-12-231-45/+103
|
* Separated the public interfaces of the threading primitives.Tobias Brunner2009-12-231-1/+1
|
* Moved mutex.c to a separate folder in order to cleanly wrap other threading ↵Tobias Brunner2009-12-231-1/+1
| | | | primitives (and utils/mutex.h is now threading.h).
* Do not execute the callback job if it has been cancelled since registrationMartin Willi2009-12-031-2/+8
|
* removed trailing spaces ([[:space:]]+$)Martin Willi2009-09-041-15/+15
|
* OpenSolaris defines MUTEX_DEFAULT therefore we rename the members of the ↵Tobias Brunner2009-08-141-1/+1
| | | | enums mutex/condvar/rwlock_type_t.
* removing svn keyword $Id$ from all filesTobias Brunner2009-04-301-2/+0
|
* replaced most pthread_mutex/cond_t by wrapped mutex/condvar_t variantMartin Willi2008-11-051-12/+14
|
* got rid of deprecated create_iterator_locked()Martin Willi2008-11-051-0/+2
|
* thread locking for sender and processor optimizedTobias Brunner2008-04-031-7/+0
|
* merged the modularization branch (credentials) back to trunkMartin Willi2008-03-131-7/+2
|
* fixed callback_job cancellation for threads waiting in the busMartin Willi2007-11-191-1/+2
|
* refactored bus and interface to resolve threading issues (WIP)Martin Willi2007-11-151-0/+1
|
* fixed daemon kill before threads are spawnedMartin Willi2007-11-141-7/+5
|
* made linked lists invoke() method consistent to clone_*() and destroy_*() ↵Martin Willi2007-08-091-1/+1
| | | | methods
* documentation fixes and updatesMartin Willi2007-06-111-1/+1
|
* introduced callback_job:Martin Willi2007-06-111-0/+213
simple asynchronous method invocation use daemons thread pool for all threads proper cancellation and cleanups cancellation mechanism to dynamically unload multithreaded code unified event_queue and scheduler => scheduler unified job_queue and thread_pool => processor removed job_type_t, not really needed fixes here, there and everywhere