[cgl_discussion] [RFC/PATCH] RT-NPTL-2.0

Hu, Boris boris.hu at intel.com
Wed Dec 3 16:43:36 PST 2003


Dear All,

I am pleased to announce rtnptl-2.0 is out. 

Rtnpl-2.0 is based on the latest NPTL(Native POSIX Thread Library) (http://people.redhat.com/drepper/nptl-design.pdf) and the following Realtime features have been added: 
   - Robust Mutex
   - Priority Inheritance
   - Priority Protection
   - Robust Condvar
* The macro USE_FUSYN_ROBUST_MUTEX is used to enable or disable the RT feathers. 

Currently it works on both x86 and ia64.
 
It is required FUSYN(Fast User SYNChronization) kernel:
http://developer.osdl.org/dev/robustmutexes/fusyn/.

The installation manual can be found at: 
http://developer.osdl.org/dev/robustmutexes/rtnptl/.

You'll need the glibc cvs sources.  Use them as of
2003-11-22 02:27.

All the rtnptl patches can be found at http://developer.osdl.org/dev/robustmutexes/rtnptl/.

nptl/ChangeLog.rtnptl                                           |  426 +++++++
nptl/INSTALL-rtnptl-upon-fusyn                                  |   80 +
nptl/Makefile                                                   |   12
nptl/README.rtnptl                                              |   97 +
nptl/TODO.rtnptl                                                |    8
nptl/Versions                                                   |    8
nptl/init.c                                                     |    2
nptl/pthread_create.c                                           |    5
nptl/pthread_mutex_getconsistency_np.c                          |   18
nptl/pthread_mutex_getprioceiling.c                             |   22
nptl/pthread_mutex_init.c                                       |    4
nptl/pthread_mutex_lock.c                                       |   64 -
nptl/pthread_mutex_lock_waiting_for_mutex_whose_owner_died_np.c |   26
nptl/pthread_mutex_setconsistency_np.c                          |   25
nptl/pthread_mutex_setprioceiling.c                             |   26
nptl/pthread_mutex_timedlock.c                                  |   89 -
nptl/pthread_mutex_trylock.c                                    |   87 -
nptl/pthread_mutex_unlock.c                                     |   63 -
nptl/pthread_mutexattr_getprioceiling.c                         |   25
nptl/pthread_mutexattr_getprotocol.c                            |   36
nptl/pthread_mutexattr_getrobust_np.c                           |   37
nptl/pthread_mutexattr_setprioceiling.c                         |   29
nptl/pthread_mutexattr_setprotocol.c                            |   41
nptl/pthread_mutexattr_setrobust_np.c                           |   42
nptl/sysdeps/pthread/configure                                  |   36
nptl/sysdeps/pthread/pthread.h                                  |   75 +
nptl/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h              |    9
nptl/sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h           |    1
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S |  152 --
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S    |  112 -
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S |  587 ----------
nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S      |  467 -------
nptl/sysdeps/unix/sysv/linux/i386/i586/pthread_cond_broadcast.S |   20
nptl/sysdeps/unix/sysv/linux/i386/i586/pthread_cond_signal.S    |   20
nptl/sysdeps/unix/sysv/linux/i386/i586/pthread_cond_timedwait.S |   20
nptl/sysdeps/unix/sysv/linux/i386/i586/pthread_cond_wait.S      |   20
nptl/sysdeps/unix/sysv/linux/i386/i686/pthread_cond_broadcast.S |   20
nptl/sysdeps/unix/sysv/linux/i386/i686/pthread_cond_signal.S    |   20
nptl/sysdeps/unix/sysv/linux/i386/i686/pthread_cond_timedwait.S |   21
nptl/sysdeps/unix/sysv/linux/i386/i686/pthread_cond_wait.S      |   20
nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h                |  148 ++
nptl/sysdeps/unix/sysv/linux/i386/lowlevelrtlock.c              |  186 +++
nptl/sysdeps/unix/sysv/linux/i386/pthread_cond_broadcast.c      |   87 +
nptl/sysdeps/unix/sysv/linux/i386/pthread_cond_signal.c         |   69 +
nptl/sysdeps/unix/sysv/linux/i386/pthread_cond_timedwait.c      |  204 +++
nptl/sysdeps/unix/sysv/linux/i386/pthread_cond_wait.c           |  167 ++
nptl/sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h           |    3
nptl/sysdeps/unix/sysv/linux/ia64/lowlevellock.h                |  215 +++
nptl/sysdeps/unix/sysv/linux/ia64/lowlevelrtlock.c              |   72 +
nptl/sysdeps/unix/sysv/linux/ia64/pthread_cond_broadcast.c      |    2
nptl/sysdeps/unix/sysv/linux/ia64/pthread_cond_signal.c         |    2
nptl/sysdeps/unix/sysv/linux/ia64/pthread_cond_timedwait.c      |    2
nptl/sysdeps/unix/sysv/linux/ia64/pthread_cond_wait.c           |    2
nptl/sysdeps/unix/sysv/linux/internaltypes.h                    |   11
nptl/sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c          |    7
nptl/sysdeps/unix/sysv/linux/sh/libc-lowlevelmutex.S            |   19
sysdeps/generic/bits/confname.h                                 |    4
sysdeps/generic/dl-iteratephdr-static.c                         |   31
sysdeps/posix/sysconf.c                                         |    7
sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c            |   61 +
60 files changed, 2553 insertions(+), 1618 deletions(-)

Good Luck!
 
Boris Hu
(Hu Jiangtao)
Software Engineer at ICSL
86-021-5257-4545#1277
************************************
There are my thoughts, not my employer's.
************************************




More information about the cgl_discussion mailing list