The DCMD_PROC_TIDSTATUS command

The DCMD_PROC_TIDSTATUS command returns a structure of type procfs_status, which is equivalent to debug_thread_t:

typedef struct _debug_thread_info {
  pid_t       pid;
  pthread_t   tid;
  _Uint32t    flags;
  _Uint16t    why;
  _Uint16t    what;
  _Uint64t    ip;
  _Uint64t    sp;
  _Uint64t    stkbase;
  _Uint64t    tls;
  _Uint32t    stksize;
  _Uint32t    tid_flags;
  _Uint8t     priority;
  _Uint8t     real_priority;
  _Uint8t     policy;
  _Uint8t     state;
  _Int16t     syscall;
  _Uint16t    last_cpu;
  _Uint32t    timeout;
  _Int32t     last_chid;
  sigset_t    sig_blocked;
  sigset_t    sig_pending;
  siginfo_t   info;

  // blocking information deleted (see next section)

  _Uint64t    start_time;
  _Uint64t    sutime;
} debug_thread_t;

More information than you can shake a stick at (224 bytes)! Here are the fields and their meanings:

pid and tid
The process ID and the thread ID.
flags
Flags indicating characteristics of the thread (see <sys/debug.h> and look for the constants beginning with _DEBUG_FLAG_).
why and what
The why indicates why the thread was stopped (see <sys/debug.h> and look for the constants beginning with _DEBUG_WHY_) and the what provides additional information for the why parameter. For _DEBUG_WHY_TERMINATED, the what variable contains the exit code value, for _DEBUG_WHY_SIGNALLED and _DEBUG_WHY_JOBCONTROL, what contains the signal number, and for _DEBUG_WHY_FAULTED, what contains the fault number (see <sys/fault.h> for the values).
ip
The current instruction pointer where this thread is executing.
sp
The current stack pointer for the thread.
stkbase and stksize
The base of the thread's stack, and the stack size.
tls
The Thread Local Storage (TLS) data area. See <sys/storage.h>.
tid_flags
See <sys/neutrino.h> constants beginning with _NTO_TF.
priority and real_priority
The priority indicates thread priority used for scheduling purposes (may be boosted), and the real_priority indicates the actual thread priority (not boosted).
policy
The scheduling policy (e.g. FIFO, Round Robin).
state
The current state of the thread (see <sys/states.h>, e.g. STATE_MUTEX if blocked waiting on a mutex).
syscall
Indicates the last system call that the thread made (see <sys/kercalls.h>).
last_cpu
The last CPU number that the thread ran on (for SMP systems).
timeout
Contains the flags parameter from the last TimerTimeout() call.
last_chid
The last channel ID that this thread MsgReceive()'d on. Used for priority boosting if a client does a MsgSend() and there are no threads in STATE_RECEIVE on the channel.
sig_blocked, sig_pending, and info
These fields all relate to signals — recall that signals have a process aspect as well as a thread aspect. The sig_blocked indicates which signals this thread has blocked. Similarly, sig_pending indicates which signals are pending on this thread. The info member carries the information for a sigwaitinfo() function.
start_time
The time, in nanoseconds since January 1, 1970, that the thread was started. Useful for detecting thread ID reuse.
sutime
Thread's system and user running times (in nanoseconds).