User-Level Native Thread Primitives (GThread) Library White Paper (G06.26+)
User-Level Native Thread Primitives (GThread Library) 03/31/2005
Hewlett-Packard Company--540065-001 Page 12 of 46
GT_BAD_CB: The designated CB.GTh_Marker is wrong: the structure is corrupted or
GTHREAD_INITIATE_ was not called.
GT_BAD_CB_NEXT: MainCB.ThreadNext.GTh_Marker is wrong.
GT_BAD_CB_PREV: MainCB.ThreadPrev.GTh_Marker is wrong.
GT_BAD_..._ALIGN: A parameter to GTHREAD_INITIATE_ is misaligned:
_START_ @Start is not a multiple of 2 (TNS)
or 4 or 8 (native TNS/R swapped or static)
or 8 or 16 (native TNS/E swapped or static)
_LENGTH_ Length is not a multiple of 2 (TNS) or 8 (TNS/R native) or 16 (TNS/E native)
_ARGSTART_ @ArgStart is not a multiple of 2 (TNS) or 4 (TNS/R and TNS/E native)
_ARGLEN_ ArgLen is not a multiple of 2 (TNS) or 4 (TNS/R and TNS/E native)
GT_BAD_ARGLEN: 0 <= ArgLen <= 256 is false in GTHREAD_INITIATE_.
(For TNS/E, the upper bound is 32.)
GT_BAD_LENGTH: 0 <= Length < limit is false in GTHREAD_INITIATE_
where limit is:
64 KB – @Start for TNS,
64 KB for TNS/R native swapped,
32 MB for TNS/E native swapped,
32 MB for native static.
(These are limits, not necessarily realistic upper bounds.)
GT_BAD_SWAPTIONS: Swaptions parameters to GTHREAD-INTIATE_ specified both swapped
and static options or, (TNS/E only) it specified a nonzero RegPerCent value outside the
range of 10 to 80.
These literals are for the Swaptions parameter to GTHREAD_INITIATE_:
GTS_SWAPPED = 1: This is a swapped thread.
GTS_STATIC_FILL = 2: This is a static thread filled with a fixed pattern.
GTS_DISCONTIGUOUS = 4: The swap area is not contiguous.
GTS_STATIC = 8: This a static thread. (GTS_STATIC was previously defined as 0.
The 0 value is therefore reserved for backwards compatibility.)
GTS_STATIC_RegPerCent(n) = (((n) & 0x7) << 8 )
This define specifies a percentage of Length to be used for the reg
stack on TNS/E. See Section 3.6.2 for a discussion of this option.