summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/ts.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/sys/ts.h')
-rw-r--r--usr/src/uts/common/sys/ts.h52
1 files changed, 27 insertions, 25 deletions
diff --git a/usr/src/uts/common/sys/ts.h b/usr/src/uts/common/sys/ts.h
index 982c594977..971bbaded9 100644
--- a/usr/src/uts/common/sys/ts.h
+++ b/usr/src/uts/common/sys/ts.h
@@ -2,9 +2,8 @@
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
@@ -21,7 +20,7 @@
*/
/*
- * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -36,6 +35,7 @@
#include <sys/types.h>
#include <sys/thread.h>
+#include <sys/cpucaps.h>
#ifdef __cplusplus
extern "C" {
@@ -57,36 +57,38 @@ typedef struct tsdpent {
/* ts_maxwait */
} tsdpent_t;
-
+#ifdef _KERNEL
/*
* time-sharing class specific thread structure
*/
typedef struct tsproc {
- int ts_timeleft; /* time remaining in procs quantum */
- uint_t ts_dispwait; /* wall clock seconds since start */
- /* of quantum (not reset upon preemption */
+ int ts_timeleft; /* time remaining in procs quantum */
+ uint_t ts_dispwait; /* wall clock seconds since start */
+ /* of quantum (not reset upon preempt) */
pri_t ts_cpupri; /* system controlled component of ts_umdpri */
- pri_t ts_uprilim; /* user priority limit */
- pri_t ts_upri; /* user priority */
- pri_t ts_umdpri; /* user mode priority within ts class */
- pri_t ts_scpri; /* remembered priority, for schedctl */
- char ts_nice; /* nice value for compatibility */
- char ts_boost; /* interactive priority offset */
- uchar_t ts_flags; /* flags defined below */
- kthread_t *ts_tp; /* pointer to thread */
- struct tsproc *ts_next; /* link to next tsproc on list */
- struct tsproc *ts_prev; /* link to previous tsproc on list */
+ pri_t ts_uprilim; /* user priority limit */
+ pri_t ts_upri; /* user priority */
+ pri_t ts_umdpri; /* user mode priority within ts class */
+ pri_t ts_scpri; /* remembered priority, for schedctl */
+ char ts_nice; /* nice value for compatibility */
+ char ts_boost; /* interactive priority offset */
+ uchar_t ts_flags; /* flags defined below */
+ kthread_t *ts_tp; /* pointer to thread */
+ struct tsproc *ts_next; /* link to next tsproc on list */
+ struct tsproc *ts_prev; /* link to previous tsproc on list */
+ caps_sc_t ts_caps; /* CPU caps specific data */
} tsproc_t;
-
/* flags */
-#define TSKPRI 0x01 /* thread at kernel mode priority */
-#define TSBACKQ 0x02 /* thread goes to back of disp q when preempted */
-#define TSIA 0x04 /* thread is interactive */
-#define TSIASET 0x08 /* interactive thread is "on" */
-#define TSIANICED 0x10 /* interactive thread has been niced */
+#define TSKPRI 0x01 /* thread at kernel mode priority */
+#define TSBACKQ 0x02 /* thread goes to back of dispq if preempted */
+#define TSIA 0x04 /* thread is interactive */
+#define TSIASET 0x08 /* interactive thread is "on" */
+#define TSIANICED 0x10 /* interactive thread has been niced */
#define TSRESTORE 0x20 /* thread was not preempted, due to schedctl */
- /* restore priority from ts_scpri */
+ /* restore priority from ts_scpri */
+
+#endif /* _KERNEL */
#ifdef __cplusplus
}