1/*
2 * Copyright (c) 1995-1998 John Birrell <jb@cimlogic.com.au>.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
--- 17 unchanged lines hidden (view full) ---
26 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 * Private thread definitions for the uthread kernel.
33 *
34 * $FreeBSD: head/lib/libkse/thread/thr_private.h 141822 2005-02-13 18:38:06Z deischen $
35 */
36
37#ifndef _THR_PRIVATE_H
38#define _THR_PRIVATE_H
39
40/*
41 * Include files.
42 */
--- 418 unchanged lines hidden (view full) ---
461 * Thread creation state attributes.
462 */
463#define THR_CREATE_RUNNING 0
464#define THR_CREATE_SUSPENDED 1
465
466/*
467 * Miscellaneous definitions.
468 */
469#define THR_STACK32_DEFAULT (1 * 1024 * 1024)
470#define THR_STACK64_DEFAULT (2 * 1024 * 1024)
471
472/*
473 * Maximum size of initial thread's stack. This perhaps deserves to be larger
474 * than the stacks of other threads, since many applications are likely to run
475 * almost entirely on this stack.
476 */
477#define THR_STACK32_INITIAL (2 * 1024 * 1024)
478#define THR_STACK64_INITIAL (4 * 1024 * 1024)
479
480/*
481 * Define the different priority ranges. All applications have thread
482 * priorities constrained within 0-31. The threads library raises the
483 * priority when delivering signals in order to ensure that signal
484 * delivery happens (from the POSIX spec) "as soon as possible".
485 * In the future, the threads library will also be able to map specific
486 * threads into real-time (cooperating) processes or kernel threads.
--- 544 unchanged lines hidden (view full) ---
1031SCLASS TAILQ_HEAD(atfork_head, pthread_atfork) _thr_atfork_list;
1032SCLASS pthread_mutex_t _thr_atfork_mutex;
1033
1034/* Default thread attributes: */
1035SCLASS struct pthread_attr _pthread_attr_default
1036 SCLASS_PRESET({
1037 SCHED_RR, 0, TIMESLICE_USEC, THR_DEFAULT_PRIORITY,
1038 THR_CREATE_RUNNING, PTHREAD_CREATE_JOINABLE, NULL,
1039 NULL, NULL, /* stacksize */0, /* guardsize */0
1040 });
1041
1042/* Default mutex attributes: */
1043SCLASS struct pthread_mutex_attr _pthread_mutexattr_default
1044 SCLASS_PRESET({PTHREAD_MUTEX_DEFAULT, PTHREAD_PRIO_NONE, 0, 0 });
1045
1046/* Default condition variable attributes: */
1047SCLASS struct pthread_cond_attr _pthread_condattr_default
--- 22 unchanged lines hidden (view full) ---
1070SCLASS int _gc_check SCLASS_PRESET(0);
1071SCLASS int _gc_count SCLASS_PRESET(0);
1072
1073SCLASS struct lock _mutex_static_lock;
1074SCLASS struct lock _rwlock_static_lock;
1075SCLASS struct lock _keytable_lock;
1076SCLASS struct lock _thread_list_lock;
1077SCLASS int _thr_guard_default;
1078SCLASS int _thr_stack_default;
1079SCLASS int _thr_stack_initial;
1080SCLASS int _thr_page_size;
1081SCLASS pthread_t _thr_sig_daemon;
1082SCLASS int _thr_debug_flags SCLASS_PRESET(0);
1083
1084/* Undefine the storage class and preset specifiers: */
1085#undef SCLASS
1086#undef SCLASS_PRESET
1087
--- 194 unchanged lines hidden ---
2 * Copyright (c) 1995-1998 John Birrell <jb@cimlogic.com.au>.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
--- 17 unchanged lines hidden (view full) ---
26 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 * SUCH DAMAGE.
31 *
32 * Private thread definitions for the uthread kernel.
33 *
34 * $FreeBSD: head/lib/libkse/thread/thr_private.h 141822 2005-02-13 18:38:06Z deischen $
35 */
36
37#ifndef _THR_PRIVATE_H
38#define _THR_PRIVATE_H
39
40/*
41 * Include files.
42 */
--- 418 unchanged lines hidden (view full) ---
461 * Thread creation state attributes.
462 */
463#define THR_CREATE_RUNNING 0
464#define THR_CREATE_SUSPENDED 1
465
466/*
467 * Miscellaneous definitions.
468 */
469#define THR_STACK32_DEFAULT (1 * 1024 * 1024)
470#define THR_STACK64_DEFAULT (2 * 1024 * 1024)
471
472/*
473 * Maximum size of initial thread's stack. This perhaps deserves to be larger
474 * than the stacks of other threads, since many applications are likely to run
475 * almost entirely on this stack.
476 */
477#define THR_STACK32_INITIAL (2 * 1024 * 1024)
478#define THR_STACK64_INITIAL (4 * 1024 * 1024)
479
480/*
481 * Define the different priority ranges. All applications have thread
482 * priorities constrained within 0-31. The threads library raises the
483 * priority when delivering signals in order to ensure that signal
484 * delivery happens (from the POSIX spec) "as soon as possible".
485 * In the future, the threads library will also be able to map specific
486 * threads into real-time (cooperating) processes or kernel threads.
--- 544 unchanged lines hidden (view full) ---
1031SCLASS TAILQ_HEAD(atfork_head, pthread_atfork) _thr_atfork_list;
1032SCLASS pthread_mutex_t _thr_atfork_mutex;
1033
1034/* Default thread attributes: */
1035SCLASS struct pthread_attr _pthread_attr_default
1036 SCLASS_PRESET({
1037 SCHED_RR, 0, TIMESLICE_USEC, THR_DEFAULT_PRIORITY,
1038 THR_CREATE_RUNNING, PTHREAD_CREATE_JOINABLE, NULL,
1039 NULL, NULL, /* stacksize */0, /* guardsize */0
1040 });
1041
1042/* Default mutex attributes: */
1043SCLASS struct pthread_mutex_attr _pthread_mutexattr_default
1044 SCLASS_PRESET({PTHREAD_MUTEX_DEFAULT, PTHREAD_PRIO_NONE, 0, 0 });
1045
1046/* Default condition variable attributes: */
1047SCLASS struct pthread_cond_attr _pthread_condattr_default
--- 22 unchanged lines hidden (view full) ---
1070SCLASS int _gc_check SCLASS_PRESET(0);
1071SCLASS int _gc_count SCLASS_PRESET(0);
1072
1073SCLASS struct lock _mutex_static_lock;
1074SCLASS struct lock _rwlock_static_lock;
1075SCLASS struct lock _keytable_lock;
1076SCLASS struct lock _thread_list_lock;
1077SCLASS int _thr_guard_default;
1078SCLASS int _thr_stack_default;
1079SCLASS int _thr_stack_initial;
1080SCLASS int _thr_page_size;
1081SCLASS pthread_t _thr_sig_daemon;
1082SCLASS int _thr_debug_flags SCLASS_PRESET(0);
1083
1084/* Undefine the storage class and preset specifiers: */
1085#undef SCLASS
1086#undef SCLASS_PRESET
1087
--- 194 unchanged lines hidden ---