Home | History | Annotate | Download | only in librumpuser
History log of /src/lib/librumpuser/rumpfiber.c
RevisionDateAuthorComments
 1.13  27-Dec-2017  ozaki-r Distinguish spin mutex and adaptive mutex on rump kernels for LOCKDEBUG

Formerly rump kernels treated the two types of mutexes as both adaptive for
LOCKDEBUG for some reasons.

Now we can detect violations of mutex restrictions on rump kernels such as
taking an adaptive mutex with holding a spin mutex as well as normal kernels.
 1.12  15-Feb-2015  justin branches: 1.12.8;
Minor fixes to types and includes
 1.11  13-Feb-2015  justin Whitespace fixes, no functional change
 1.10  13-Feb-2015  justin Fix some return value checks
 1.9  29-Dec-2014  justin Just abort on currently unsupported functions.
 1.8  08-Nov-2014  justin Remove superfluous getcontext()
 1.7  08-Nov-2014  justin Move makecontext into function with getcontext for consistency
 1.6  08-Nov-2014  justin Fix some error handling cases.
 1.5  05-Nov-2014  pooka assert that clock_gettime() does not fail
 1.4  24-Aug-2014  pooka RCS Id police (because we can. or have you heard of git id police?)
 1.3  25-Jul-2014  justin branches: 1.3.2; 1.3.6;
Clean up error handling in rumpuser_init()
 1.2  22-Jul-2014  justin Clean up random implementation for librumpuser

Use /dev/urandom for platforms without arc4random, not srandom(),
deduplicate code, do not read excessive random bytes

Reviewed by pooka@
 1.1  11-Jul-2014  justin Add a fiber based implementation of librumpuser in addition to the
default pthreads based version.

Discussed with pooka@
 1.3.6.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.6.1  25-Jul-2014  tls file rumpfiber.c was added on branch tls-maxphys on 2014-08-20 00:02:21 +0000
 1.3.2.2  10-Aug-2014  tls Rebase.
 1.3.2.1  25-Jul-2014  tls file rumpfiber.c was added on branch tls-earlyentropy on 2014-08-10 06:52:25 +0000
 1.12.8.1  13-Jan-2018  snj Pull up following revision(s) (requested by ozaki-r in ticket #495):
lib/librumpuser/rumpfiber.c: revision 1.13
lib/librumpuser/rumpuser_pth.c: revision 1.46
lib/librumpuser/rumpuser_pth_dummy.c: revision 1.18
sys/kern/kern_condvar.c: revision 1.40
sys/kern/kern_lock.c: revision 1.161
sys/kern/kern_mutex.c: revision 1.68
sys/kern/kern_rwlock.c: revision 1.48
sys/rump/include/rump/rumpuser.h: revision 1.115
sys/rump/librump/rumpkern/locks.c: revision 1.76-1.79
Apply C99-style struct initialization to lockops_t
--
Tweak LOCKDEBUG macros (NFC)
--
Distinguish spin mutex and adaptive mutex on rump kernels for LOCKDEBUG
Formerly rump kernels treated the two types of mutexes as both adaptive for
LOCKDEBUG for some reasons.
Now we can detect violations of mutex restrictions on rump kernels such as
taking an adaptive mutex with holding a spin mutex as well as normal kernels.
--
rump: check if the mutex is surely owned by the caller in mutex_exit
Unlocking a not-owned mutex wasn't detected well (it could detect if the mutex
is not held by anyone but that's not enough). Let's check it (the check is the
same as normal kernel's mutex).
If LOCKDEBUG is enabled, give the check over LOCKDEBUG because it can provide
better debugging information.

RSS XML Feed