Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/ipc/ipc.c

    r5378f99 re186eb5  
    295295                atomic_inc(&phone->active_calls);
    296296                call->data.phone = phone;
    297                 call->data.task = TASK;
    298297        }
    299298       
     
    407406                        call->caller_phone = call->data.phone;
    408407                call->data.phone = newphone;
    409                 call->data.task = TASK;
    410408        }
    411409       
     
    690688        irq_spinlock_exchange(&tasks_lock, &task->lock);
    691689       
    692         printf("[phone id] [calls] [state\n");
     690        /* Print opened phones & details */
     691        printf("PHONE:\n");
    693692       
    694693        size_t i;
    695694        for (i = 0; i < IPC_MAX_PHONES; i++) {
    696695                if (SYNCH_FAILED(mutex_trylock(&task->phones[i].lock))) {
    697                         printf("%-10zu (mutex busy)\n", i);
     696                        printf("%zu: mutex busy\n", i);
    698697                        continue;
    699698                }
    700699               
    701700                if (task->phones[i].state != IPC_PHONE_FREE) {
    702                         printf("%-10zu %7" PRIun " ", i,
    703                             atomic_get(&task->phones[i].active_calls));
     701                        printf("%zu: ", i);
    704702                       
    705703                        switch (task->phones[i].state) {
    706704                        case IPC_PHONE_CONNECTING:
    707                                 printf("connecting");
     705                                printf("connecting ");
    708706                                break;
    709707                        case IPC_PHONE_CONNECTED:
    710                                 printf("connected to %" PRIu64 " (%s)",
    711                                     task->phones[i].callee->task->taskid,
    712                                     task->phones[i].callee->task->name);
     708                                printf("connected to: %p (%" PRIu64 ") ",
     709                                    task->phones[i].callee,
     710                                    task->phones[i].callee->task->taskid);
    713711                                break;
    714712                        case IPC_PHONE_SLAMMED:
    715                                 printf("slammed by %p",
     713                                printf("slammed by: %p ",
    716714                                    task->phones[i].callee);
    717715                                break;
    718716                        case IPC_PHONE_HUNGUP:
    719                                 printf("hung up by %p",
     717                                printf("hung up - was: %p ",
    720718                                    task->phones[i].callee);
    721719                                break;
     
    724722                        }
    725723                       
    726                         printf("\n");
     724                        printf("active: %" PRIun "\n",
     725                            atomic_get(&task->phones[i].active_calls));
    727726                }
    728727               
     
    732731        irq_spinlock_lock(&task->answerbox.lock, false);
    733732       
    734 #ifdef __32_BITS__
    735         printf("[call id ] [method] [arg1] [arg2] [arg3] [arg4] [arg5]"
    736             " [flags] [sender\n");
    737 #endif
    738        
    739 #ifdef __64_BITS__
    740         printf("[call id         ] [method] [arg1] [arg2] [arg3] [arg4]"
    741             " [arg5] [flags] [sender\n");
    742 #endif
    743        
    744733        link_t *cur;
    745734       
    746         printf(" --- incomming calls ---\n");
     735        /* Print answerbox - calls */
     736        printf("ABOX - CALLS:\n");
    747737        for (cur = task->answerbox.calls.next; cur != &task->answerbox.calls;
    748738            cur = cur->next) {
    749739                call_t *call = list_get_instance(cur, call_t, link);
    750                
    751 #ifdef __32_BITS__
    752                 printf("%10p ", call);
    753 #endif
    754                
    755 #ifdef __64_BITS__
    756                 printf("%18p ", call);
    757 #endif
    758                
    759                 printf("%-8" PRIun " %-6" PRIun " %-6" PRIun " %-6" PRIun
    760                     " %-6" PRIun " %-6" PRIun " %-7x %" PRIu64 " (%s)\n",
     740                printf("Callid: %p Srctask:%" PRIu64 " M:%" PRIun
     741                    " A1:%" PRIun " A2:%" PRIun " A3:%" PRIun
     742                    " A4:%" PRIun " A5:%" PRIun " Flags:%x\n", call,
     743                    call->sender->taskid,
    761744                    IPC_GET_IMETHOD(call->data), IPC_GET_ARG1(call->data),
    762745                    IPC_GET_ARG2(call->data), IPC_GET_ARG3(call->data),
    763746                    IPC_GET_ARG4(call->data), IPC_GET_ARG5(call->data),
    764                     call->flags, call->sender->taskid, call->sender->name);
    765         }
    766        
    767         printf(" --- dispatched calls ---\n");
     747                    call->flags);
     748        }
     749       
     750        /* Print answerbox - dispatched calls */
     751        printf("ABOX - DISPATCHED CALLS:\n");
    768752        for (cur = task->answerbox.dispatched_calls.next;
    769753            cur != &task->answerbox.dispatched_calls;
    770754            cur = cur->next) {
    771755                call_t *call = list_get_instance(cur, call_t, link);
    772                
    773 #ifdef __32_BITS__
    774                 printf("%10p ", call);
    775 #endif
    776                
    777 #ifdef __64_BITS__
    778                 printf("%18p ", call);
    779 #endif
    780                
    781                 printf("%-8" PRIun " %-6" PRIun " %-6" PRIun " %-6" PRIun
    782                     " %-6" PRIun " %-6" PRIun " %-7x %" PRIu64 " (%s)\n",
     756                printf("Callid: %p Srctask:%" PRIu64 " M:%" PRIun
     757                    " A1:%" PRIun " A2:%" PRIun " A3:%" PRIun
     758                    " A4:%" PRIun " A5:%" PRIun " Flags:%x\n", call,
     759                    call->sender->taskid,
    783760                    IPC_GET_IMETHOD(call->data), IPC_GET_ARG1(call->data),
    784761                    IPC_GET_ARG2(call->data), IPC_GET_ARG3(call->data),
    785762                    IPC_GET_ARG4(call->data), IPC_GET_ARG5(call->data),
    786                     call->flags, call->sender->taskid, call->sender->name);
    787         }
    788        
    789         printf(" --- outgoing answers ---\n");
     763                    call->flags);
     764        }
     765       
     766        /* Print answerbox - answers */
     767        printf("ABOX - ANSWERS:\n");
    790768        for (cur = task->answerbox.answers.next;
    791769            cur != &task->answerbox.answers;
    792770            cur = cur->next) {
    793771                call_t *call = list_get_instance(cur, call_t, link);
    794                
    795 #ifdef __32_BITS__
    796                 printf("%10p ", call);
    797 #endif
    798                
    799 #ifdef __64_BITS__
    800                 printf("%18p ", call);
    801 #endif
    802                
    803                 printf("%-8" PRIun " %-6" PRIun " %-6" PRIun " %-6" PRIun
    804                     " %-6" PRIun " %-6" PRIun " %-7x %" PRIu64 " (%s)\n",
    805                     IPC_GET_IMETHOD(call->data), IPC_GET_ARG1(call->data),
     772                printf("Callid:%p M:%" PRIun " A1:%" PRIun " A2:%" PRIun
     773                    " A3:%" PRIun " A4:%" PRIun " A5:%" PRIun " Flags:%x\n",
     774                    call, IPC_GET_IMETHOD(call->data), IPC_GET_ARG1(call->data),
    806775                    IPC_GET_ARG2(call->data), IPC_GET_ARG3(call->data),
    807776                    IPC_GET_ARG4(call->data), IPC_GET_ARG5(call->data),
    808                     call->flags, call->sender->taskid, call->sender->name);
     777                    call->flags);
    809778        }
    810779       
Note: See TracChangeset for help on using the changeset viewer.