* Dump details about a event. */
| 1520 | * Dump details about a event. |
| 1521 | */ |
| 1522 | void |
| 1523 | db_dump_intr_event(struct intr_event *ie, int handlers) |
| 1524 | { |
| 1525 | struct intr_handler *ih; |
| 1526 | struct intr_thread *it; |
| 1527 | int comma; |
| 1528 | |
| 1529 | db_printf("%s ", ie->ie_fullname); |
| 1530 | it = ie->ie_thread; |
| 1531 | if (it != NULL) |
| 1532 | db_printf("(pid %d)", it->it_thread->td_proc->p_pid); |
| 1533 | else |
| 1534 | db_printf("(no thread)"); |
| 1535 | if ((ie->ie_flags & (IE_SOFT | IE_ADDING_THREAD)) != 0 || |
| 1536 | (it != NULL && it->it_need)) { |
| 1537 | db_printf(" {"); |
| 1538 | comma = 0; |
| 1539 | if (ie->ie_flags & IE_SOFT) { |
| 1540 | db_printf("SOFT"); |
| 1541 | comma = 1; |
| 1542 | } |
| 1543 | if (ie->ie_flags & IE_ADDING_THREAD) { |
| 1544 | if (comma) |
| 1545 | db_printf(", "); |
| 1546 | db_printf("ADDING_THREAD"); |
| 1547 | comma = 1; |
| 1548 | } |
| 1549 | if (it != NULL && it->it_need) { |
| 1550 | if (comma) |
| 1551 | db_printf(", "); |
| 1552 | db_printf("NEED"); |
| 1553 | } |
| 1554 | db_printf("}"); |
| 1555 | } |
| 1556 | db_printf("\n"); |
| 1557 | |
| 1558 | if (handlers) |
| 1559 | CK_SLIST_FOREACH(ih, &ie->ie_handlers, ih_next) |
| 1560 | db_dump_intrhand(ih); |
| 1561 | } |
| 1562 | |
| 1563 | /* |
| 1564 | * Dump data about interrupt handlers |
no test coverage detected