pm_start_group and pm_tstart_group Subroutine

Purpose

Starts Performance Monitor counting for the counting group to which a target thread belongs.

Library

Performance Monitor APIs Library (libpmapi.a)

Syntax

#include <pmapi.h>

int pm_start_group ( pid,  tid)
pid_t pid;
tid_t tid;

int pm_tstart_group ( pid,  tid, *time)
pid_t pid;
tid_t tid;
timebasestruct_t *time

Description

This subroutine supports only the 1:1 threading model. It has been superseded by the pm_start_pgroup subroutine, which supports both the 1:1 and the M:N threading models. A call to this subroutine is equivalent to a call to the pm_start_pgroup subroutine with a ptid parameter equal to 0.

The pm_start_group subroutine starts the Performance Monitor counting for a target kernel thread and the counting group to which it belongs. This counting is effective immediately for the target thread. For all the other thread members of the counting group, the counting will start after their next redispatch, but only if their current counting state is already set to On. The counting state of a thread in a group is obtained by ANDing the thread counting state with the group state. If their counting state is currently set to Off, no counting starts until they call either the pm_start_mythread subroutine or the pm_start_mygroup themselves, or until a debugger process calls the pm_start_thread subroutine or the pm_start_group subroutine on their behalf.

The pm_tstart_group subroutine starts the Performance Monitor counting for a target kernel thread and the counting group to which it belongs, and returns a timestamp indicating when the counting was started.

Parameters

Item Description
pid Process ID of target thread. Target process must be a debuggee of the caller process.
tid Thread ID of target thread.
*time Pointer to a structure containing the timebase value when the counting was started. This can be converted to time using the time_base_to_time subroutine.

Return Values

Item Description
0 Operation completed successfully.
Positive error code Refer to the pm_error Subroutine to decode the error code.

Error Codes

Refer to the pm_error Subroutine.

Files

Item Description
/usr/include/pmapi.h Defines standard macros, data types, and subroutines.