berkus / phantomuserland

Automatically exported from code.google.com/p/phantomuserland
0 stars 0 forks source link

sema release from intr panics #73

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Panic: t_queues.c:32, t_dequeue_highest_prio: assertion 'it != 
GET_CURRENT_THREAD()' failed
-   164426: _panic
-   1657bc: _t_dequeue_highest_prio
-   16393e: _hal_sem_release
-   135267: _ne_interrupt
-   15c2fa: _call_irq_handler
-   15c84b: _hal_PIC_interrupt_dispatcher
-   161f43: call_handler
-   1626a1: _phantom_kernel_trap
-   582142: ?
-   10efb0: _phantom_scheduler_request_soft_irq
-   1644d1: _phantom_scheduler_yield_locked
-   164e77: _thread_block
-   16359e: _hal_sem_acquire
-   136426: _ne_read
-   116619: _if_rx_thread
-   165a49: _phantom_thread_c_starter

It seems that interrupt happened between placing thread to sem queue in 
hal_sem_acquire and switching off the thread, so sem_release attempted to 
re-activate currently active thread.

Original issue reported on code.google.com by dmitry.zavalishin@gmail.com on 28 Sep 2010 at 8:59

GoogleCodeExporter commented 9 years ago

Original comment by dmitry.zavalishin@gmail.com on 3 Mar 2011 at 9:35

GoogleCodeExporter commented 9 years ago
Already fixed.

Original comment by dmitry.zavalishin@gmail.com on 9 Aug 2011 at 1:23