|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2. Types, Operators, and Expressions 8. Type and Constant Definitions 34. Statically Defined Tracing for User Applications |
ArgumentsThe argument types for the sched probes are listed in Table 26-2; the arguments are described in Table 26-1. Table 26-2 sched Probe Arguments
As Table 26-2 indicates, many sched probes have arguments consisting of a pointer to an lwpsinfo_t and a pointer to a psinfo_t, indicating a thread and the process containing the thread, respectively. These structures are described in detail in lwpsinfo_t and psinfo_t, respectively. cpuinfo_tThe cpuinfo_t structure defines a CPU. As Table 26-2 indicates, arguments to both the enqueue and dequeue probes include a pointer to a cpuinfo_t. Additionally, the cpuinfo_t corresponding to the current CPU is pointed to by the curcpu variable. The definition of the cpuinfo_t structure is as follows: typedef struct cpuinfo { processorid_t cpu_id; /* CPU identifier */ psetid_t cpu_pset; /* processor set identifier */ chipid_t cpu_chip; /* chip identifier */ lgrp_id_t cpu_lgrp; /* locality group identifer */ processor_info_t cpu_info; /* CPU information */ } cpuinfo_t; The cpu_id member is the processor identifier, as returned by psrinfo(1M) and p_online(2). The cpu_pset member is the processor set that contains the CPU, if any. See psrset(1M) for more details on processor sets. The cpu_chip member is the identifier of the physical chip. Physical chips may contain several CPUs. See psrinfo(1M) for more information. The cpu_lgrp member is the identifier of the latency group associated with the CPU. See liblgrp(3LIB) for details on latency groups. The cpu_info member is the processor_info_t structure associated with the CPU, as returned by processor_info(2). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|