Print this page
    
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/uts/common/sys/rt.h
          +++ new/usr/src/uts/common/sys/rt.h
   1    1  /*
   2    2   * CDDL HEADER START
   3    3   *
   4    4   * The contents of this file are subject to the terms of the
   5    5   * Common Development and Distribution License, Version 1.0 only
   6    6   * (the "License").  You may not use this file except in compliance
   7    7   * with the License.
   8    8   *
   9    9   * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10   10   * or http://www.opensolaris.org/os/licensing.
  11   11   * See the License for the specific language governing permissions
  12   12   * and limitations under the License.
  13   13   *
  14   14   * When distributing Covered Code, include this CDDL HEADER in each
  15   15   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16   16   * If applicable, add the following below this CDDL HEADER, with the
  17   17   * fields enclosed by brackets "[]" replaced with your own identifying
  18   18   * information: Portions Copyright [yyyy] [name of copyright owner]
  19   19   *
  20   20   * CDDL HEADER END
  21   21   */
  22   22  /*
  23   23   * Copyright 2004 Sun Microsystems, Inc.  All rights reserved.
  24   24   * Use is subject to license terms.
  25   25   * Copyright 2015 Joyent, Inc.
  26   26   */
  27   27  
  28   28  /*      Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
  29   29  /*        All Rights Reserved   */
  30   30  
  31   31  
  32   32  #ifndef _SYS_RT_H
  33   33  #define _SYS_RT_H
  34   34  
  35   35  #include <sys/types.h>
  36   36  #include <sys/thread.h>
  37   37  
  38   38  #ifdef  __cplusplus
  39   39  extern "C" {
  40   40  #endif
  41   41  
  42   42  /*
  43   43   * Real-time dispatcher parameter table entry
  44   44   */
  45   45  typedef struct  rtdpent {
  46   46          pri_t   rt_globpri;     /* global (class independent) priority */
  47   47          int     rt_quantum;     /* default quantum associated with this level */
  48   48  } rtdpent_t;
  49   49  
  50   50  /*
  51   51   * Real-time class specific proc structure
  52   52   */
  53   53  typedef struct rtproc {
  54   54          int             rt_pquantum;    /* time quantum given to this proc */
  55   55          int             rt_timeleft;    /* time remaining in procs quantum */
  56   56          pri_t           rt_pri;         /* priority within rt class */
  57   57          ushort_t        rt_flags;       /* flags defined below */
  58   58          int             rt_tqsignal;    /* time quantum signal */
  59   59          kthread_id_t    rt_tp;          /* pointer to thread */
  60   60          struct rtproc   *rt_next;       /* link to next rtproc on list */
  61   61          struct rtproc   *rt_prev;       /* link to previous rtproc on list */
  62   62  } rtproc_t;
  63   63  
  64   64  
  65   65  /* Flags */
  66   66  #define RTBACKQ 0x0002          /* proc goes to back of disp q when preempted */
  67   67  
  68   68  
  69   69  #ifdef _KERNEL
  70   70  /*
  71   71   * Kernel version of real-time class specific parameter structure
  72   72   */
  73   73  typedef struct  rtkparms {
  74   74          pri_t   rt_pri;
  75   75          int     rt_tqntm;
  76   76          int     rt_tqsig;       /* real-time time quantum signal */
  77   77          uint_t  rt_cflags;      /* real-time control flags */
  78   78  } rtkparms_t;
  79   79  
  80   80  #define RTGPPRIO0       100     /* Global priority for RT priority 0 */
  81   81  
  82   82  /*
  83   83   * control flags (kparms->rt_cflags).
  84   84   */
  85   85  #define RT_DOPRI        0x01    /* change priority */
  86   86  #define RT_DOTQ         0x02    /* change RT time quantum */
  87   87  #define RT_DOSIG        0x04    /* change RT time quantum signal */
  88   88  
  89   89  #endif  /* _KERNEL */
  90   90  
  91   91  #ifdef  __cplusplus
  92   92  }
  93   93  #endif
  94   94  
  95   95  #endif  /* _SYS_RT_H */
  
    | 
      ↓ open down ↓ | 
    95 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX