Changeset 593 for trunk/kernel/kern/process.c
- Timestamp:
- Nov 10, 2018, 2:16:38 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/kern/process.c
r583 r593 123 123 uint32_t cycle = (uint32_t)hal_get_cycles(); 124 124 if( DEBUG_PROCESS_REFERENCE_INIT ) 125 printk("\n[ DBG] %s :thread %x in process %x enter to initalialize process %x / cycle %d\n",125 printk("\n[%s] thread %x in process %x enter to initalialize process %x / cycle %d\n", 126 126 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid , pid , cycle ); 127 127 #endif … … 142 142 cycle = (uint32_t)hal_get_cycles(); 143 143 if( DEBUG_PROCESS_REFERENCE_INIT ) 144 printk("\n[ DBG] %s :thread %x in process %x / vmm empty for process %x / cycle %d\n",144 printk("\n[%s] thread %x in process %x / vmm empty for process %x / cycle %d\n", 145 145 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid , pid, cycle ); 146 146 #endif … … 162 162 cycle = (uint32_t)hal_get_cycles(); 163 163 if( DEBUG_PROCESS_REFERENCE_INIT ) 164 printk("\n[ DBG] %s :thread %x in process %x / process %x attached to TXT%d / cycle %d\n",164 printk("\n[%s] thread %x in process %x / process %x attached to TXT%d / cycle %d\n", 165 165 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid, txt_id, cycle ); 166 166 #endif … … 183 183 cycle = (uint32_t)hal_get_cycles(); 184 184 if( DEBUG_PROCESS_REFERENCE_INIT ) 185 printk("\n[ DBG] %s :thread %x in process %x / stdin open for process %x / cycle %d\n",185 printk("\n[%s] thread %x in process %x / stdin open for process %x / cycle %d\n", 186 186 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid, cycle ); 187 187 #endif … … 201 201 cycle = (uint32_t)hal_get_cycles(); 202 202 if( DEBUG_PROCESS_REFERENCE_INIT ) 203 printk("\n[ DBG] %s :thread %x in process %x / stdout open for process %x / cycle %d\n",203 printk("\n[%s] thread %x in process %x / stdout open for process %x / cycle %d\n", 204 204 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid, cycle ); 205 205 #endif … … 219 219 cycle = (uint32_t)hal_get_cycles(); 220 220 if( DEBUG_PROCESS_REFERENCE_INIT ) 221 printk("\n[ DBG] %s :thread %x in process %x / stderr open for process %x / cycle %d\n",221 printk("\n[%s] thread %x in process %x / stderr open for process %x / cycle %d\n", 222 222 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid, cycle ); 223 223 #endif … … 260 260 cycle = (uint32_t)hal_get_cycles(); 261 261 if( DEBUG_PROCESS_REFERENCE_INIT ) 262 printk("\n[ DBG] %s :thread %x in process %x / set fd_array for process %x / cycle %d\n",262 printk("\n[%s] thread %x in process %x / set fd_array for process %x / cycle %d\n", 263 263 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid , cycle ); 264 264 #endif … … 301 301 cycle = (uint32_t)hal_get_cycles(); 302 302 if( DEBUG_PROCESS_REFERENCE_INIT ) 303 printk("\n[ DBG] %s :thread %x in process %x exit for process %x / cycle %d\n",303 printk("\n[%s] thread %x in process %x exit for process %x / cycle %d\n", 304 304 __FUNCTION__, CURRENT_THREAD->trdid, parent_pid, pid, cycle ); 305 305 #endif … … 328 328 uint32_t cycle = (uint32_t)hal_get_cycles(); 329 329 if( DEBUG_PROCESS_COPY_INIT ) 330 printk("\n[ DBG] %s :thread %x in process %x enter for process %x / cycle %d\n",330 printk("\n[%s] thread %x in process %x enter for process %x / cycle %d\n", 331 331 __FUNCTION__, this->trdid, this->process->pid, local_process->pid, cycle ); 332 332 #endif … … 383 383 cycle = (uint32_t)hal_get_cycles(); 384 384 if( DEBUG_PROCESS_COPY_INIT ) 385 printk("\n[ DBG] %s :thread %x in process %x exit for process %x / cycle %d\n",385 printk("\n[%s] thread %x in process %x exit for process %x / cycle %d\n", 386 386 __FUNCTION__, this->trdid, this->process->pid, local_process->pid, cycle ); 387 387 #endif … … 402 402 pid_t pid = process->pid; 403 403 404 assert( (process->th_nr == 0) , 405 "process %x in cluster %x has still activethreads", pid , local_cxy );404 // check no more threads 405 assert( (process->th_nr == 0) , "process %x in cluster %x contains threads", pid , local_cxy ); 406 406 407 407 #if DEBUG_PROCESS_DESTROY 408 408 uint32_t cycle = (uint32_t)hal_get_cycles(); 409 409 if( DEBUG_PROCESS_DESTROY ) 410 printk("\n[ DBG] %s :thread %x in process %x enter for process %x in cluster %x / cycle %d\n",410 printk("\n[%s] thread %x in process %x enter for process %x in cluster %x / cycle %d\n", 411 411 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, pid, local_cxy, cycle ); 412 412 #endif … … 457 457 cycle = (uint32_t)hal_get_cycles(); 458 458 if( DEBUG_PROCESS_DESTROY ) 459 printk("\n[ DBG] %s :thread %x in process %x exit / process %x in cluster %x / cycle %d\n",459 printk("\n[%s] thread %x in process %x exit / process %x in cluster %x / cycle %d\n", 460 460 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, pid, local_cxy, cycle ); 461 461 #endif … … 506 506 uint32_t cycle = (uint32_t)hal_get_cycles(); 507 507 if( DEBUG_PROCESS_SIGACTION < cycle ) 508 printk("\n[ DBG] %s :thread[%x,%x] enter to %s process %x / cycle %d\n",508 printk("\n[%s] thread[%x,%x] enter to %s process %x / cycle %d\n", 509 509 __FUNCTION__ , client->process->pid, client->trdid, 510 510 process_action_str( type ) , pid , cycle ); … … 518 518 lpid = LPID_FROM_PID( pid ); 519 519 520 // get root of list of copies , lock, and number of copiesfrom owner cluster520 // get root of list of copies and lock from owner cluster 521 521 root_xp = XPTR( owner_cxy , &cluster->pmgr.copies_root[lpid] ); 522 522 lock_xp = XPTR( owner_cxy , &cluster->pmgr.copies_lock[lpid] ); … … 527 527 (type == UNBLOCK_ALL_THREADS )), "illegal action type" ); 528 528 529 // Th eclient thread send parallel RPCs to all remote clusters containing529 // This client thread send parallel RPCs to all remote clusters containing 530 530 // target process copies, wait all responses, and then handles directly 531 531 // the threads in local cluster, when required. … … 561 561 process_ptr = GET_PTR( process_xp ); 562 562 563 if( process_cxy == local_cxy ) // process is local 563 // printk("\n@@@ in %s : process_cxy %x / process_ptr %x / pid %x\n", 564 // __FUNCTION__, process_cxy, process_ptr, hal_remote_l32( XPTR( process_cxy , &process_ptr->pid ) ) ); 565 566 if( process_cxy == local_cxy ) // process copy is local 564 567 { 565 568 local = process_ptr; 566 569 } 567 else // process is remote570 else // process copy is remote 568 571 { 569 572 // update number of remote process copies … … 575 578 #if DEBUG_PROCESS_SIGACTION 576 579 if( DEBUG_PROCESS_SIGACTION < cycle ) 577 printk("\n[ DBG] %s :thread[%x,%x] send RPC to cluster %x for process %x\n",580 printk("\n[%s] thread[%x,%x] send RPC to cluster %x for process %x\n", 578 581 __FUNCTION__, client->process->pid, client->trdid, process_cxy, pid ); 579 582 #endif … … 607 610 #if DEBUG_PROCESS_SIGACTION 608 611 if( DEBUG_PROCESS_SIGACTION < cycle ) 609 printk("\n[ DBG] %s :thread[%x,%x] handles local process %x in cluster %x\n",612 printk("\n[%s] thread[%x,%x] handles local process %x in cluster %x\n", 610 613 __FUNCTION__, client->process->pid, client->trdid, pid , local_cxy ); 611 614 #endif … … 618 621 cycle = (uint32_t)hal_get_cycles(); 619 622 if( DEBUG_PROCESS_SIGACTION < cycle ) 620 printk("\n[ DBG] %s :thread[%x,%x] exit after %s process %x / cycle %d\n",623 printk("\n[%s] thread[%x,%x] exit after %s process %x / cycle %d\n", 621 624 __FUNCTION__, client->process->pid, client->trdid, 622 625 process_action_str( type ), pid, cycle ); … … 633 636 cxy_t owner_cxy; // target process owner cluster 634 637 uint32_t count; // requests counter 635 volatile uint32_t ack_count; // scheduler acknowledgecounter638 volatile uint32_t ack_count; // acknowledges counter 636 639 637 640 // get calling thread pointer … … 642 645 uint32_t cycle = (uint32_t)hal_get_cycles(); 643 646 if( DEBUG_PROCESS_SIGACTION < cycle ) 644 printk("\n[ DBG] %s :thread[%x,%x] enter for process %x in cluster %x / cycle %d\n",647 printk("\n[%s] thread[%x,%x] enter for process %x in cluster %x / cycle %d\n", 645 648 __FUNCTION__, this->process->pid, this->trdid, pid, local_cxy , cycle ); 646 649 #endif … … 657 660 // loop on target process local threads 658 661 // we use both "ltid" and "count" because it can exist "holes" in th_tbl 662 // - if the calling thread and the target thread are not running on the same 663 // core, we ask the target scheduler to acknowlege the blocking 664 // to be sure that the target thread is not running. 665 // - if the calling thread and the target thread are running on the same core, 666 // we don't need confirmation from scheduler. 667 659 668 for( ltid = 0 , count = 0 , ack_count = 0 ; count < process->th_nr ; ltid++ ) 660 669 { … … 668 677 thread_block( XPTR( local_cxy , target ) , THREAD_BLOCKED_GLOBAL ); 669 678 670 // - if the calling thread and the target thread are running on the same core,671 // we don't need confirmation from scheduler,672 // - if the calling thread and the target thread are not running on the same673 // core, we ask the target scheduler to acknowlege the blocking674 // to be sure that the target thread is not running.675 676 679 if( this->core->lid != target->core->lid ) 677 680 { … … 691 694 rwlock_rd_release( &process->th_lock ); 692 695 693 // busy waiting acknowledges 694 // TODO this could be improved... 696 // wait other threads acknowledges TODO this could be improved... 695 697 while( 1 ) 696 698 { … … 705 707 cycle = (uint32_t)hal_get_cycles(); 706 708 if( DEBUG_PROCESS_SIGACTION < cycle ) 707 printk("\n[ DBG] %s :thread[%x,%x] exit for process %x in cluster %x / cycle %d\n",708 __FUNCTION__, this , this->process->pid, pid, local_cxy , cycle );709 printk("\n[%s] thread[%x,%x] exit for process %x in cluster %x / cycle %d\n", 710 __FUNCTION__, this->process->pid, this->trdid, pid, local_cxy , cycle ); 709 711 #endif 710 712 … … 729 731 730 732 #if DEBUG_PROCESS_SIGACTION 731 pid_t pid = process->pid;732 733 uint32_t cycle = (uint32_t)hal_get_cycles(); 733 734 if( DEBUG_PROCESS_SIGACTION < cycle ) 734 printk("\n[ DBG] %s :thread[%x,%x] enter in cluster %x for process %x / cycle %d\n",735 printk("\n[%s] thread[%x,%x] enter in cluster %x for process %x / cycle %d\n", 735 736 __FUNCTION__, this->process->pid, this->trdid, local_cxy, process->pid, cycle ); 736 737 #endif 737 738 738 739 // check target process is an user process 739 assert( ( LPID_FROM_PID( process->pid ) != 0 ), 740 "target process must be an user process" ); 740 assert( (LPID_FROM_PID( process->pid ) != 0), "process %x not an user process", process->pid ); 741 741 742 742 // get lock protecting process th_tbl[] … … 770 770 cycle = (uint32_t)hal_get_cycles(); 771 771 if( DEBUG_PROCESS_SIGACTION < cycle ) 772 printk("\n[ DBG] %s :thread[%x,%x] exit for process %x in cluster %x / cycle %d\n",773 __FUNCTION__, this->process->pid, this->trdid, p id, local_cxy , cycle );772 printk("\n[%s] thread[%x,%x] exit for process %x in cluster %x / cycle %d\n", 773 __FUNCTION__, this->process->pid, this->trdid, process->pid, local_cxy , cycle ); 774 774 #endif 775 775 … … 791 791 uint32_t cycle = (uint32_t)hal_get_cycles(); 792 792 if( DEBUG_PROCESS_SIGACTION < cycle ) 793 printk("\n[ DBG] %s :thread[%x,%x] enter for process %x in cluster %x / cycle %d\n",793 printk("\n[%s] thread[%x,%x] enter for process %x in cluster %x / cycle %d\n", 794 794 __FUNCTION__, this->process->pid, this->trdid, pid, local_cxy , cycle ); 795 795 #endif … … 823 823 cycle = (uint32_t)hal_get_cycles(); 824 824 if( DEBUG_PROCESS_SIGACTION < cycle ) 825 printk("\n[ DBG] %s :thread[%x,%x] exit for process %x in cluster %x / cycle %d\n",825 printk("\n[%s] thread[%x,%x] exit for process %x in cluster %x / cycle %d\n", 826 826 __FUNCTION__, this->process->pid, this->trdid, pid, local_cxy, cycle ); 827 827 #endif … … 842 842 uint32_t cycle = (uint32_t)hal_get_cycles(); 843 843 if( DEBUG_PROCESS_GET_LOCAL_COPY < cycle ) 844 printk("\n[ DBG] %s :thread[%x,%x] enter for process %x in cluster %x / cycle %d\n",844 printk("\n[%s] thread[%x,%x] enter for process %x in cluster %x / cycle %d\n", 845 845 __FUNCTION__, this->process->pid, this->trdid, pid, local_cxy, cycle ); 846 846 #endif … … 889 889 cycle = (uint32_t)hal_get_cycles(); 890 890 if( DEBUG_PROCESS_GET_LOCAL_COPY < cycle ) 891 printk("\n[ DBG] %s :thread[%x,%x] exit in cluster %x / process %x / cycle %d\n",891 printk("\n[%s] thread[%x,%x] exit in cluster %x / process %x / cycle %d\n", 892 892 __FUNCTION__, this->process->pid, this->trdid, local_cxy, process_ptr, cycle ); 893 893 #endif … … 1205 1205 pid_t pid = this->process->pid; 1206 1206 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1207 printk("\n[ DBG] %s :thread[%x,%x] enter / cluster %x / cycle %d\n",1207 printk("\n[%s] thread[%x,%x] enter / cluster %x / cycle %d\n", 1208 1208 __FUNCTION__, pid, trdid, local_cxy, cycle ); 1209 1209 #endif … … 1231 1231 cycle = (uint32_t)hal_get_cycles(); 1232 1232 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1233 printk("\n[ DBG] %s :thread[%x,%x] allocated process %x / cycle %d\n",1233 printk("\n[%s] thread[%x,%x] allocated process %x / cycle %d\n", 1234 1234 __FUNCTION__, pid, trdid, new_pid, cycle ); 1235 1235 #endif … … 1243 1243 cycle = (uint32_t)hal_get_cycles(); 1244 1244 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1245 printk("\n[ DBG] %s :thread[%x,%x] initialized child_process %x / cycle %d\n",1245 printk("\n[%s] thread[%x,%x] initialized child_process %x / cycle %d\n", 1246 1246 __FUNCTION__, pid, trdid, new_pid, cycle ); 1247 1247 #endif … … 1263 1263 cycle = (uint32_t)hal_get_cycles(); 1264 1264 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1265 printk("\n[ DBG] %s :thread[%x,%x] copied VMM from parent to child / cycle %d\n",1265 printk("\n[%s] thread[%x,%x] copied VMM from parent to child / cycle %d\n", 1266 1266 __FUNCTION__, pid, trdid, cycle ); 1267 1267 #endif … … 1276 1276 cycle = (uint32_t)hal_get_cycles(); 1277 1277 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1278 printk("\n[ DBG] %s :thread[%x,%x] / child takes TXT ownership / cycle %d\n",1278 printk("\n[%s] thread[%x,%x] / child takes TXT ownership / cycle %d\n", 1279 1279 __FUNCTION__ , pid, trdid, cycle ); 1280 1280 #endif … … 1305 1305 cycle = (uint32_t)hal_get_cycles(); 1306 1306 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1307 printk("\n[ DBG] %s :thread[%x,%x] created main thread %x / cycle %d\n",1307 printk("\n[%s] thread[%x,%x] created main thread %x / cycle %d\n", 1308 1308 __FUNCTION__, pid, trdid, thread, cycle ); 1309 1309 #endif … … 1327 1327 cycle = (uint32_t)hal_get_cycles(); 1328 1328 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1329 printk("\n[ DBG] %s :thread[%x,%x] set COW in parent and child / cycle %d\n",1329 printk("\n[%s] thread[%x,%x] set COW in parent and child / cycle %d\n", 1330 1330 __FUNCTION__, pid, trdid, cycle ); 1331 1331 #endif … … 1349 1349 cycle = (uint32_t)hal_get_cycles(); 1350 1350 if( DEBUG_PROCESS_MAKE_FORK < cycle ) 1351 printk("\n[ DBG] %s :thread[%x,%x] exit / created process %x / cycle %d\n",1351 printk("\n[%s] thread[%x,%x] exit / created process %x / cycle %d\n", 1352 1352 __FUNCTION__, pid, trdid, new_pid, cycle ); 1353 1353 #endif … … 1383 1383 uint32_t cycle = (uint32_t)hal_get_cycles(); 1384 1384 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1385 printk("\n[ DBG] %s :thread[%x,%x] enters for %s / cycle %d\n",1385 printk("\n[%s] thread[%x,%x] enters for %s / cycle %d\n", 1386 1386 __FUNCTION__, pid, thread->trdid, path, cycle ); 1387 1387 #endif … … 1405 1405 cycle = (uint32_t)hal_get_cycles(); 1406 1406 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1407 printk("\n[ DBG] %s :thread[%x,%x] opened file <%s> / cycle %d\n",1407 printk("\n[%s] thread[%x,%x] opened file <%s> / cycle %d\n", 1408 1408 __FUNCTION__, pid, thread->trdid, path, cycle ); 1409 1409 #endif … … 1415 1415 cycle = (uint32_t)hal_get_cycles(); 1416 1416 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1417 printk("\n[ DBG] %s :thread[%x,%x] deleted all threads / cycle %d\n",1417 printk("\n[%s] thread[%x,%x] deleted all threads / cycle %d\n", 1418 1418 __FUNCTION__, pid, thread->trdid, cycle ); 1419 1419 #endif … … 1425 1425 cycle = (uint32_t)hal_get_cycles(); 1426 1426 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1427 printk("\n[ DBG] %s :thread[%x,%x] reset VMM / cycle %d\n",1427 printk("\n[%s] thread[%x,%x] reset VMM / cycle %d\n", 1428 1428 __FUNCTION__, pid, thread->trdid, cycle ); 1429 1429 #endif … … 1442 1442 cycle = (uint32_t)hal_get_cycles(); 1443 1443 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1444 printk("\n[ DBG] %s :thread[%x,%x] / kentry/args/envs vsegs registered / cycle %d\n",1444 printk("\n[%s] thread[%x,%x] / kentry/args/envs vsegs registered / cycle %d\n", 1445 1445 __FUNCTION__, pid, thread->trdid, cycle ); 1446 1446 #endif … … 1460 1460 cycle = (uint32_t)hal_get_cycles(); 1461 1461 if( DEBUG_PROCESS_MAKE_EXEC < cycle ) 1462 printk("\n[ DBG] %s :thread[%x,%x] / code/data vsegs registered / cycle %d\n",1462 printk("\n[%s] thread[%x,%x] / code/data vsegs registered / cycle %d\n", 1463 1463 __FUNCTION__, pid, thread->trdid, cycle ); 1464 1464 #endif … … 1492 1492 uint32_t cycle = (uint32_t)hal_get_cycles(); 1493 1493 if( DEBUG_PROCESS_ZERO_CREATE < cycle ) 1494 printk("\n[ DBG] %s :enter / cluster %x / cycle %d\n",1494 printk("\n[%s] enter / cluster %x / cycle %d\n", 1495 1495 __FUNCTION__, local_cxy, cycle ); 1496 1496 #endif … … 1539 1539 cycle = (uint32_t)hal_get_cycles(); 1540 1540 if( DEBUG_PROCESS_ZERO_CREATE < cycle ) 1541 printk("\n[ DBG] %s :exit / cluster %x / cycle %d\n",1541 printk("\n[%s] exit / cluster %x / cycle %d\n", 1542 1542 __FUNCTION__, local_cxy, cycle ); 1543 1543 #endif … … 1560 1560 uint32_t cycle = (uint32_t)hal_get_cycles(); 1561 1561 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1562 printk("\n[ DBG] %s :thread %x in process %x enter / cycle %d\n",1562 printk("\n[%s] thread %x in process %x enter / cycle %d\n", 1563 1563 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, cycle ); 1564 1564 #endif … … 1589 1589 #if(DEBUG_PROCESS_INIT_CREATE & 1) 1590 1590 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1591 printk("\n[ DBG] %s :thread %x in process %x initialized process descriptor\n",1591 printk("\n[%s] thread %x in process %x initialized process descriptor\n", 1592 1592 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid ); 1593 1593 #endif … … 1608 1608 #if(DEBUG_PROCESS_INIT_CREATE & 1) 1609 1609 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1610 printk("\n[ DBG] %s :thread %x in process %x open .elf file decriptor\n",1610 printk("\n[%s] thread %x in process %x open .elf file decriptor\n", 1611 1611 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid ); 1612 1612 #endif … … 1621 1621 #if(DEBUG_PROCESS_INIT_CREATE & 1) 1622 1622 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1623 printk("\n[ DBG] %s :thread %x in process %x registered code/data vsegs in VMM\n",1623 printk("\n[%s] thread %x in process %x registered code/data vsegs in VMM\n", 1624 1624 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid ); 1625 1625 #endif … … 1641 1641 #if(DEBUG_PROCESS_INIT_CREATE & 1) 1642 1642 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1643 printk("\n[ DBG] %s :thread %x in process %x registered init process in parent\n",1643 printk("\n[%s] thread %x in process %x registered init process in parent\n", 1644 1644 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid ); 1645 1645 #endif … … 1668 1668 #if(DEBUG_PROCESS_INIT_CREATE & 1) 1669 1669 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1670 printk("\n[ DBG] %s :thread %x in process %x created main thread\n",1670 printk("\n[%s] thread %x in process %x created main thread\n", 1671 1671 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid ); 1672 1672 #endif … … 1680 1680 cycle = (uint32_t)hal_get_cycles(); 1681 1681 if( DEBUG_PROCESS_INIT_CREATE < cycle ) 1682 printk("\n[ DBG] %s :thread %x in process %x exit / cycle %d\n",1682 printk("\n[%s] thread %x in process %x exit / cycle %d\n", 1683 1683 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, cycle ); 1684 1684 #endif … … 1867 1867 uint32_t cycle = (uint32_t)hal_get_cycles(); 1868 1868 if( DEBUG_PROCESS_TXT < cycle ) 1869 printk("\n[ DBG] %s :thread %x in process %x attached process %x to TXT %d / cycle %d\n",1869 printk("\n[%s] thread %x in process %x attached process %x to TXT %d / cycle %d\n", 1870 1870 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, 1871 1871 process->pid, txt_id , cycle ); … … 1922 1922 uint32_t txt_id = hal_remote_l32( XPTR( chdev_cxy , &chdev_ptr->channel ) ); 1923 1923 if( DEBUG_PROCESS_TXT < cycle ) 1924 printk("\n[ DBG] %s :thread %x in process %x detached process %x from TXT %d / cycle %d\n",1924 printk("\n[%s] thread %x in process %x detached process %x from TXT %d / cycle %d\n", 1925 1925 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, 1926 1926 process_pid, txt_id, cycle ); … … 1964 1964 uint32_t txt_id = hal_remote_l32( XPTR( txt_cxy , &txt_ptr->channel ) ); 1965 1965 if( DEBUG_PROCESS_TXT < cycle ) 1966 printk("\n[ DBG] %s :thread %x in process %x give TXT %d to process %x / cycle %d\n",1966 printk("\n[%s] thread %x in process %x give TXT %d to process %x / cycle %d\n", 1967 1967 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, txt_id, process_pid, cycle ); 1968 1968 #endif … … 2045 2045 uint32_t ksh_pid = hal_remote_l32( XPTR( current_cxy , ¤t_ptr->pid ) ); 2046 2046 if( DEBUG_PROCESS_TXT < cycle ) 2047 printk("\n[ DBG] %s :thread %x in process %x release TXT %d to KSH %x / cycle %d\n",2047 printk("\n[%s] thread %x in process %x release TXT %d to KSH %x / cycle %d\n", 2048 2048 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, txt_id, ksh_pid, cycle ); 2049 2049 process_txt_display( txt_id ); … … 2082 2082 uint32_t new_pid = hal_remote_l32( XPTR( current_cxy , ¤t_ptr->pid ) ); 2083 2083 if( DEBUG_PROCESS_TXT < cycle ) 2084 printk("\n[ DBG] %s :thread %x in process %x release TXT %d to process %x / cycle %d\n",2084 printk("\n[%s] thread %x in process %x release TXT %d to process %x / cycle %d\n", 2085 2085 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, txt_id, new_pid, cycle ); 2086 2086 process_txt_display( txt_id ); … … 2099 2099 cycle = (uint32_t)hal_get_cycles(); 2100 2100 if( DEBUG_PROCESS_TXT < cycle ) 2101 printk("\n[ DBG] %s :thread %x in process %x release TXT %d to nobody / cycle %d\n",2101 printk("\n[%s] thread %x in process %x release TXT %d to nobody / cycle %d\n", 2102 2102 __FUNCTION__, CURRENT_THREAD->trdid, CURRENT_THREAD->process->pid, txt_id, cycle ); 2103 2103 process_txt_display( txt_id ); … … 2112 2112 cycle = (uint32_t)hal_get_cycles(); 2113 2113 if( DEBUG_PROCESS_TXT < cycle ) 2114 printk("\n[ DBG] %s :thread %x in process %d does nothing (not TXT owner) / cycle %d\n",2114 printk("\n[%s] thread %x in process %d does nothing (not TXT owner) / cycle %d\n", 2115 2115 __FUNCTION__, CURRENT_THREAD->trdid, process_pid, cycle ); 2116 2116 process_txt_display( txt_id );
Note: See TracChangeset
for help on using the changeset viewer.