[haiku-bugs] [Haiku] #9447: [Network stack] PANIC: _mutex_lock(): double lock

  • From: "diver" <trac@xxxxxxxxxxxx>
  • Date: Fri, 08 Feb 2013 10:15:50 -0000

#9447: [Network stack] PANIC: _mutex_lock(): double lock
--------------------------------------+------------------------------
 Reporter:  diver                     |        Owner:  axeld
     Type:  bug                       |       Status:  new
 Priority:  normal                    |    Milestone:  R1
Component:  Network & Internet/Stack  |      Version:  R1/Development
 Keywords:                            |   Blocked By:
 Blocking:                            |  Has a Patch:  0
 Platform:  All                       |
--------------------------------------+------------------------------
 This is hrev45257.

 Haiku KDL's if I unplug my usb ethernet adapter.

 {{{
 usb hub 17: port 0: device removed
 usb hub 17: port 0 disabled
 usb error uhci -1: td (0x03bc3e40) error: status: 0x214507ff; token:
 0x00e98269;
 usb_davicom:45.02.691:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.02.691:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.02.693:Read::Error of receiving 1522 bytes from removed
 device.


 PANIC: _mutex_lock(): double lock of 0xccf8c4ec by thread 3500
 Welcome to Kernel Debugging Land...
 Thread 3500 "/dev/net/usb_davicom/0 reader" running on CPU 1
 stack trace for thread 3500 "/dev/net/usb_davicom/0 reader"
     kernel stack: 0xcd27b000 to 0xcd27f000
 frame               caller     <image>:function + offset
  0 cd27ec78 (+  32) 8013067e   <kernel_x86> arch_debug_stack_trace + 0x12
  1 cd27ec98 (+  16) 80091aef   <kernel_x86> stack_trace_trampoline(NULL) +
 0x0b
  2 cd27eca8 (+  12) 80123312   <kernel_x86>
 arch_debug_call_with_fault_handler + 0x1b
  3 cd27ecb4 (+  48) 80093592   <kernel_x86> debug_call_with_fault_handler
 + 0x5e
 ", int32: 1) + 0x21b  64) 80091d0f   <kernel_x86>
 kernel_debugger_loop(0x8016ec17 "PANIC: ", 0x8016c000 "_mutex_lock():
 double lock of %p by thread %ld", 0xcd27ed90 "
 ", int32: 1) + 0x53+  48) 80092073   <kernel_x86>
 kernel_debugger_internal(0x8016ec17 "PANIC: ", 0x8016c000 "_mutex_lock():
 double lock of %p by thread %ld", 0xcd27ed90 "
  6 cd27ed54 (+  48) 8009391e   <kernel_x86> panic + 0x36
  7 cd27ed84 (+ 112) 80087f40   <kernel_x86> _mutex_lock + 0xe0
  8 cd27edf4 (+ 336) ccf75758   </boot/system/add-ons/kernel/network/stack>
 get_device_interface(0x8087938c "/dev/net/usb_davicom/0", false) + 0x38
  9 cd27ef44 (+  48) ccf76608   </boot/system/add-ons/kernel/network/stack>
 device_removed(net_device*: 0x80879388) + 0x54
 10 cd27ef74 (+  64) ccf74a42   </boot/system/add-ons/kernel/network/stack>
 device_reader_thread(0xcfd00000) + 0xe6
 11 cd27efb4 (+  48) 8007992c   <kernel_x86>
 common_thread_entry(0xcd27eff0) + 0x80
 kdebug> es

 usb_davicom:45.09.346:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.09.347:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.09.347:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.10.346:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.10.348:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.10.348:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.11.346:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.11.349:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.11.349:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.12.346:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.12.350:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.12.350:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.13.346:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.13.350:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.13.350:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.14.347:Write::Error of writing 98 bytes to removed device.
 usb_davicom:45.14.350:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.14.350:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.15.351:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.15.351:_GetLinkState::Error reading NSR
 register! 8000a013
 usb_davicom:45.16.351:_ReadRegister::Size mismatch reading register !
 asked 1 got 0usb_davicom:45.16.351:_GetLinkState::Error reading NSR
 }}}

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/9447>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: