diff options
Diffstat (limited to 'sys/sys/rtprio.h')
-rw-r--r-- | sys/sys/rtprio.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/sys/sys/rtprio.h b/sys/sys/rtprio.h index dd9521e..5b6830d 100644 --- a/sys/sys/rtprio.h +++ b/sys/sys/rtprio.h @@ -28,7 +28,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $Id: rtprio.h,v 1.4 1997/02/22 09:45:48 peter Exp $ */ #ifndef _SYS_RTPRIO_H_ @@ -39,10 +39,29 @@ */ /* priority types */ + #define RTP_PRIO_REALTIME 0 #define RTP_PRIO_NORMAL 1 #define RTP_PRIO_IDLE 2 +/* RTP_PRIO_FIFO is Posix 4 SCHED_FIFO. + * Careful: These are based on the kernel config POSIX4 and not + * the compile time test _POSIX_PRIORITY_SCHEDULING since they + * set the behavior of the system. + */ + +#ifdef POSIX4 +#define RTP_PRIO_FIFO_BIT 4 +#define RTP_PRIO_FIFO (RTP_PRIO_REALTIME | RTP_PRIO_FIFO_BIT) +#define RTP_PRIO_BASE(P) ((P) & ~RTP_PRIO_FIFO_BIT) +#define RTP_PRIO_IS_REALTIME(P) (RTP_PRIO_BASE(P) == RTP_PRIO_REALTIME) +#define RTP_PRIO_NEED_RR(P) ((P) != RTP_PRIO_FIFO) +#else +#define RTP_PRIO_BASE(P) (P) +#define RTP_PRIO_IS_REALTIME(P) (P == RTP_PRIO_REALTIME) +#define RTP_PRIO_NEED_RR(P) (1) +#endif + /* priority range */ #define RTP_PRIO_MIN 0 /* Highest priority */ #define RTP_PRIO_MAX 31 /* Lowest priority */ |