trb 子命令

trb 子命令显示计时器请求块 (TRB) 信息。

格式

trb [ * | cpu x] [选项]

参数

描述
* 显示所有处理器上 TRB 的计时器请求块 (TRB) 信息。 将显示某些选项的摘要信息。 要查看详细信息,请选择特定处理器和选项。
中国 文本 cpu 后跟处理器号。 它显示指定处理器的 TRB 信息。
注: 这些字符 中国 必须包含在输入中。 值 X 是该处理器的十六进制数。
option 指定用于指示要显示的数据的选项号。 可以通过输入不带自变量的 trb 子命令来查看可用选项号。

如果输入此子命令时未指定参数,那么将显示一个菜单,该菜单允许您选择要显示的数据。

其他

timer

示例

以下是如何使用 trb 子命令的示例:

   KDB(4)> trb  //timer request block subcommand usage
   Usage: trb [CPU selector] [1-9]
    CPU selector is '*' for all CPUs, 'cpu n' for CPU n, default is current CPU

   Timer Request Block Information Menu
     1. TRB Maintenance Structure - Routine Addresses
     2. System TRB
     3. Thread Specified TRB
     4. Current Thread TRB's
     5. Address Specified TRB
     6. Active TRB Chain
     7. Free TRB Chain
     8. Clock Interrupt Handler Information
     9. Current System Time - System Timer Constants
   Please enter an option number:  //<CR/LF>
   KDB(4)> trb * 6  //print all active timer request blocks

   CPU #0 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689080 0000 0005 FFFFFFFE 00003BBA 23C3B080 05689080 sys_timer+000000
   05689600 0000 0003 FFFFFFFE 00003BBA 27DAC680 00000000 pffastsched+000000
   05689580 0000 0003 FFFFFFFE 00003BBA 2911BD80 00000000 pfslowsched+000000
   0B05A600 0000 0005 00001751 00003BBA 2ADBC480 0B05A618 rtsleep_end+000000
   05689500 0000 0003 FFFFFFFE 00003BBB 23186B00 00000000 if_slowsched+000000
   0B05A480 0000 0003 FFFFFFFE 00003BBF 2D5B4980 00000000 01B633F0

   CPU #1 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689100 0001 0005 FFFFFFFE 00003BBA 23C38E80 05689100 sys_timer+000000

   CPU #2 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689180 0002 0005 FFFFFFFE 00003BBA 23C37380 05689180 sys_timer+000000
   0B05A500 0002 0005 00001525 00003BE6 0CFF9500 0B05A518 rtsleep_end+000000

   CPU #3 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689200 0003 0005 FFFFFFFE 00003BBA 23C39F80 05689200 sys_timer+000000
   (4)> more (^C to quit) ?  //continue
   05689880 0003 0005 00000003 00003BBB 01B73180 00000000 sched_timer_post+000000
   0B05A580 0003 0005 00000001 00003BBB 0BCA7300 0000000E interval_end+000000

   CPU #4 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689280 0004 0005 FFFFFFFE 00003BBA 23C3A980 05689280 sys_timer+000000

   CPU #5 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689300 0005 0005 FFFFFFFE 00003BBA 23C39800 05689300 sys_timer+000000
   05689780 0005 0005 FFFFFFFF 00003BBF 1B052C00 05C62C40 01ADD6FC

   CPU #6 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689380 0006 0005 FFFFFFFE 00003BBA 23C3C200 05689380 sys_timer+000000

   CPU #7 Active List
             CPU  PRI       ID    SECS     NSECS     DATA FUNC
   05689400 0007 0005 FFFFFFFE 00003BBA 23C38180 05689400 sys_timer+000000
   05689680 0007 0003 FFFFFFFE 00003BBA 2DDD3480 00000000 threadtimer+000000
   KDB(4)> trb cpu 1 6  //print active list of processor 1
   CPU #1 TRB #1 on Active List
    Timer address......................05689100
    trb->to_next.......................00000000
    trb->knext.........................00000000
    trb->kprev.........................00000000
    Owner id (-1 for dev drv)..........FFFFFFFE
    Owning processor...................00000001
    Timer flags........................00000013   PENDING ACTIVE INCINTERVAL
    trb->timerid.......................00000000
    trb->eventlist.....................FFFFFFFF
    trb->timeout.it_interval.tv_sec....00000000
    trb->timeout.it_interval.tv_nsec...00000000
    Next scheduled timeout (secs)......00003BBA
    Next scheduled timeout (nanosecs)..23C38E80
    Completion handler.................000B3BA4  sys_timer+000000
    Completion handler data............05689100
    Int. priority .....................00000005
    Timeout function...................00000000  00000000
    KDB(4)>