Skip to content

apps/system: Update to print waitsem info in ps#7177

Open
seokhun-eom24 wants to merge 2 commits intoSamsung:masterfrom
seokhun-eom24:260304-ps-waitsem
Open

apps/system: Update to print waitsem info in ps#7177
seokhun-eom24 wants to merge 2 commits intoSamsung:masterfrom
seokhun-eom24:260304-ps-waitsem

Conversation

@seokhun-eom24
Copy link
Contributor

@seokhun-eom24 seokhun-eom24 commented Mar 4, 2026

Add PROC_STAT_WAITSEM to get waitsem information from procfs.
Update to print waitsem information in ps command.

[Example]

TASH>>ps

  PID | PRIO | FLAG |  TYPE   | NP |  STATUS  | WAITSEM    | CPU | IRQCOUNT | NAME
------|------|------|---------|----|----------|------------|-----|----------|-----
    0 |    0 | FIFO | KTHREAD | N  | RUNNING  |          0 |   0 |        0 | CPU0 IDLE
    1 |    0 | FIFO | KTHREAD | N  | RUNNING  |          0 |   1 |        0 | CPU1 IDLE
    2 |  201 | RR   | KTHREAD |    | WAITSIG  |          0 |   1 |        2 | hpwork
    3 |   50 | RR   | KTHREAD |    | WAITSIG  |          0 |   1 |        2 | lpwork
    5 |  200 | RR   | KTHREAD |    | MQNEMPTY |          0 |   1 |        1 | km4_log_task
    6 |  204 | RR   | KTHREAD |    | WAITSEM  | 0x60191c58 |   1 |        1 | LCD Frame flusing
    7 |  107 | RR   | KTHREAD |    | WAITSEM  | 0x601babe0 |   1 |        1 | inic_msg_q_task
    8 |  104 | RR   | KTHREAD |    | WAITSEM  | 0x601bcb60 |   1 |        1 | inic_host_rx_tasklet
    9 |  103 | RR   | KTHREAD |    | WAITSEM  | 0x601beb20 |   1 |        1 | inic_ipc_api_host_task
   11 |  100 | RR   | KTHREAD |    | WAITSIG  |          0 |   0 |        2 | NDP_health_check
   12 |  105 | RR   | KTHREAD |    | WAITSEM  | 0x60119030 |   1 |        2 | LWIP_TCP/IP
   13 |  100 | RR   | KTHREAD |    | WAITSEM  | 0x60118498 |   0 |        1 | netmgr_event_handler
   14 |  200 | RR   | KTHREAD |    | MQNEMPTY |          0 |   1 |        1 | log_dump
   15 |  203 | RR   | KTHREAD |    | MQNEMPTY |          0 |   0 |        1 | binary_manager
   18 |  180 | RR   | TASK    |    | WAITSIG  |          0 |   0 |        2 | app1
   19 |  100 | RR   | TASK    |    | WAITSIG  |          0 |   0 |        1 | uwork
   20 |  125 | RR   | TASK    |    | WAITSEM  |          0 |   0 |        1 | tash
   21 |  100 | RR   | PTHREAD |    | WAITSEM  | 0x63f831b0 |   0 |        1 | PlayerWorker
   22 |  100 | RR   | PTHREAD |    | WAITSEM  | 0x63f832c4 |   0 |        1 | RecorderWorker
   23 |  100 | RR   | PTHREAD |    | WAITSEM  | 0x63f8323c |   0 |        1 | PlayerObserverWorker
   24 |  100 | RR   | PTHREAD |    | WAITSEM  | 0x63f83344 |   0 |        1 | RecorderObserverWorker
   25 |  199 | RR   | PTHREAD |    | WAITSEM  | 0x63f83138 |   0 |        1 | FocusManagerWorker
   26 |  100 | RR   | TASK    |    | WAITSEM  | 0x63a9009c |   0 |        1 | wifi msg handler
   27 |  100 | RR   | TASK    |    | WAITSEM  | 0x63a917bc |   0 |        1 | ble msg handler

Copy link
Member

@pcs1265 pcs1265 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about separate commits to os/ modification and apps/ modification?
It will be convinient to bring this change to internal code base.

Include waitsem information into proc_entry_stat.

Signed-off-by: seokhun-eom <seokhun.eom@samsung.com>
Add PROC_STAT_WAITSEM to get waitsem information from procfs.
Update to print waitsem information in ps command.

[Example]
```
TASH>>ps

  PID | PRIO | FLAG | TYPE | NP | STATUS | WAITSEM | CPU | IRQCOUNT | NAME
------|------|------|---------|----|----------|------------|-----|----------|-----
    0 | 0 | FIFO | KTHREAD | N | RUNNING | 0 | 0 | 0 | CPU0 IDLE
    1 | 0 | FIFO | KTHREAD | N | RUNNING | 0 | 1 | 0 | CPU1 IDLE
    2 | 201 | RR | KTHREAD | | WAITSIG | 0 | 1 | 2 | hpwork
    3 | 50 | RR | KTHREAD | | WAITSIG | 0 | 1 | 2 | lpwork
    5 | 200 | RR | KTHREAD | | MQNEMPTY | 0 | 1 | 1 | km4_log_task
    6 | 204 | RR | KTHREAD | | WAITSEM | 0x60191c58 | 1 | 1 | LCD Frame flusing
    7 | 107 | RR | KTHREAD | | WAITSEM | 0x601babe0 | 1 | 1 | inic_msg_q_task
    8 | 104 | RR | KTHREAD | | WAITSEM | 0x601bcb60 | 1 | 1 | inic_host_rx_tasklet
    9 | 103 | RR | KTHREAD | | WAITSEM | 0x601beb20 | 1 | 1 | inic_ipc_api_host_task
   11 | 100 | RR | KTHREAD | | WAITSIG | 0 | 0 | 2 | NDP_health_check
   12 | 105 | RR | KTHREAD | | WAITSEM | 0x60119030 | 1 | 2 | LWIP_TCP/IP
   13 | 100 | RR | KTHREAD | | WAITSEM | 0x60118498 | 0 | 1 | netmgr_event_handler
   14 | 200 | RR | KTHREAD | | MQNEMPTY | 0 | 1 | 1 | log_dump
   15 | 203 | RR | KTHREAD | | MQNEMPTY | 0 | 0 | 1 | binary_manager
   18 | 180 | RR | TASK | | WAITSIG | 0 | 0 | 2 | app1
   19 | 100 | RR | TASK | | WAITSIG | 0 | 0 | 1 | uwork
   20 | 125 | RR | TASK | | WAITSEM | 0 | 0 | 1 | tash
   21 | 100 | RR | PTHREAD | | WAITSEM | 0x63f831b0 | 0 | 1 | PlayerWorker
   22 | 100 | RR | PTHREAD | | WAITSEM | 0x63f832c4 | 0 | 1 | RecorderWorker
   23 | 100 | RR | PTHREAD | | WAITSEM | 0x63f8323c | 0 | 1 | PlayerObserverWorker
   24 | 100 | RR | PTHREAD | | WAITSEM | 0x63f83344 | 0 | 1 | RecorderObserverWorker
   25 | 199 | RR | PTHREAD | | WAITSEM | 0x63f83138 | 0 | 1 | FocusManagerWorker
   26 | 100 | RR | TASK | | WAITSEM | 0x63a9009c | 0 | 1 | wifi msg handler
   27 | 100 | RR | TASK | | WAITSEM | 0x63a917bc | 0 | 1 | ble msg handler
```

Signed-off-by: seokhun-eom <seokhun.eom@samsung.com>
@seokhun-eom24
Copy link
Contributor Author

seokhun-eom24 commented Mar 10, 2026

How about separate commits to os/ modification and apps/ modification? It will be convinient to bring this change to internal code base.

Thank you for the suggestion, I've split the commit.

@sunghan-chang
Copy link
Contributor

@seokhun-eom24 You added a new row for waitsem. But there are other waits like mq and signal.
Let's add them all there.

  1. we can change the title from waitsem to wait info?
  2. show mq information for mqempty or full, signal masking for sigwait

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants