Ignore:
Timestamp:
Jan 29, 2018, 5:57:57 PM (7 years ago)
Author:
alain
Message:

bloup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/hal/tsar_mips32/core/hal_exception.c

    r416 r425  
    284284        default:                             // this is a kernel error => panic   
    285285        {
    286             printk("\n[PANIC] in %s for thread %x : kernel exception = %x / vaddr = %x\n",
    287             __FUNCTION__ , this->trdid , excp_code , bad_vaddr );
     286            assert( false , __FUNCTION__ , "thread %x / excp_code = %x / vaddr = %x\n",
     287            this->trdid , excp_code , bad_vaddr );
    288288
    289289            return EXCP_KERNEL_PANIC;
     
    297297//////////////////////////////////////////////////////////////////////////////////////////
    298298// @ this     : pointer on faulty thread descriptor.
    299 // @ uzone : pointer on register array.
     299// @ uzone    : pointer on register array.
    300300// @ error    : EXCP_USER_ERROR or EXCP_KERNEL_PANIC
    301301//////////////////////////////////////////////////////////////////////////////////////////
     
    372372    // get pointer on faulty thread uzone
    373373    this  = CURRENT_THREAD;
    374     uzone = (uint32_t *)CURRENT_THREAD->uzone;
     374    uzone = (uint32_t *)CURRENT_THREAD->uzone_current;
    375375
    376376    // get 4 bits XCODE from CP0_CR register
     
    424424        hal_exception_dump( this , uzone , error );
    425425
    426         // FIXME : replace this loop by sys_kill()
    427         while( 1 ) asm volatile ("nop");
    428         // sys_kill( this->process->pid , SIGKILL );
     426        sys_kill( this->process->pid , SIGKILL );
    429427        }
    430428    else if( error == EXCP_KERNEL_PANIC )   // kernel error => kernel panic
    431429    {
    432430        hal_exception_dump( this , uzone , error );
    433         panic( "for thread %x in process %x on core [%x,%d]",
     431
     432        assert( false , __FUNCTION__ , "thread %x in process %x on core [%x,%d]",
    434433        this->trdid , this->process->pid , local_cxy , this->core->lid );
    435434    }
Note: See TracChangeset for help on using the changeset viewer.