[haiku-bugs] [Haiku] #7003: KDL triggered by emptying trash on FAT

  • From: "mmadia" <trac@xxxxxxxxxxxx>
  • Date: Sun, 19 Dec 2010 04:15:53 -0000

#7003: KDL triggered by emptying trash on FAT
--------------------------------+-----------------------------
   Reporter:  mmadia            |       Owner:  nobody
       Type:  bug               |      Status:  new
   Priority:  normal            |   Milestone:  R1
  Component:  File Systems/FAT  |     Version:  R1/Development
   Keywords:                    |  Blocked By:
Has a Patch:  0                 |    Platform:  All
   Blocking:                    |
--------------------------------+-----------------------------
 r39661 - gcc2 hybrid.

 Trying to delete a directory within Trash will trigger the following KDL.
 Reproducible.

 {{{
 usb error control pipe 20: timeout waiting for queued request to complete
 usb error hub 19: error updating port status
 PANIC: ASSERT FAILED (/Build-O-Matic/output/haiku/src/add-
 ons/kernel/file_systems/fat/fat.c:401): cluster != 0
 Welcome to Kernel Debugging Land...
 Thread 233 "TrackerTaskLoop" running on CPU 1
 stack trace for thread 233 "TrackerTaskLoop"
     kernel stack: 0x81885000 to 0x81889000
       user stack: 0x70186000 to 0x701c6000
 frame               caller     <image>:function + offset
  0 81888618 (+  32) 8010682e   <kernel_x86>:arch_debug_stack_trace +
 0x0012
  1 81888638 (+  16) 80076bdf   <kernel_x86> stack_trace_trampoline(NULL) +
 0x000b
  2 81888648 (+  12) 8010c376
 <kernel_x86>:arch_debug_call_with_fault_handler + 0x001b
  3 81888654 (+  48) 800786ab   <kernel_x86>:debug_call_with_fault_handler
 + 0x005b
  4 81888684 (+  64) 80076e03   <kernel_x86>
 kernel_debugger_loop(0x801481f7 "PANIC: ", 0x81fb0e26 "ASSERT FAILED
 (%s:%d): %s", 0x81888730 "", int32: 1) + 0x021f
  5 818886c4 (+  48) 80077164   <kernel_x86>
 kernel_debugger_internal(0x801481f7 "PANIC: ", 0x81fb0e26 "ASSERT FAILED
 (%s:%d): %s", 0x81888730 "", int32: 1) + 0x0048
  6 818886f4 (+  48) 80078a1c   <kernel_x86>:panic + 0x0024
  7 81888724 (+  48) 81fa30bd   </boot/system/add-
 ons/kernel/file_systems/fat>:get_nth_fat_entry + 0x006d
  8 81888754 (+ 624) 81f9dc27   </boot/system/add-
 ons/kernel/file_systems/fat>:dosfs_read_vnode + 0x0597
  9 818889c4 (+  96) 800baf4e   <kernel_x86> get_vnode(int32: 7, int64:
 4616196142111131120, vnode*: 0x81888a70, true, int32: 1) + 0x0356
 10 81888a24 (+  80) 800bf6bf   <kernel_x86>:get_vnode + 0x003f
 11 81888a74 (+ 608) 81f9c69e   </boot/system/add-
 ons/kernel/file_systems/fat>:findfile + 0x02ba
 12 81888cd4 (+  64) 81f9c318   </boot/system/add-
 ons/kernel/file_systems/fat>:findfile_case + 0x0034
 13 81888d14 (+  64) 81f9de6d   </boot/system/add-
 ons/kernel/file_systems/fat>:dosfs_walk + 0x0091
 14 81888d54 (+  64) 800bcb01   <kernel_x86> lookup_dir_entry(vnode*:
 0x88743dd8, 0x8861c328 "01 6'1'.mp3", vnode*: 0x81888de0) + 0x0071
 15 81888d94 (+  80) 800bcd3f   <kernel_x86> vnode_path_to_vnode(vnode*:
 0x88743dd8, 0x8861c328 "01 6'1'.mp3", false, int32: 0, io_context*:
 0x8807be00, vnode*: 0x81888e90, NULL) + 0x017b
 16 81888de4 (+  48) 800bd031   <kernel_x86> vnode_path_to_vnode(vnode*:
 0x88743dd8, 0x8861c328 "01 6'1'.mp3", false, int32: 0, false, vnode*:
 0x81888e90, NULL) + 0x0049
 17 81888e14 (+  64) 800bd986   <kernel_x86> fd_and_path_to_vnode(int32:
 17, 0x8861c328 "01 6'1'.mp3", false, vnode*: 0x81888e90, NULL, false) +
 0x00aa
 18 81888e54 (+  64) 800c3dfd   <kernel_x86> common_path_read_stat(int32:
 17, 0x8861c328 "01 6'1'.mp3", false, stat*: 0x81888eec, false) + 0x0031
 19 81888e94 (+ 176) 800c938f   <kernel_x86>:_user_read_stat + 0x00eb
 20 81888f44 (+ 100) 8010d562   <kernel_x86>:handle_syscall + 0x00af
 user iframe at 0x81888fa8 (end = 0x81889000)
  eax 0x8f           ebx 0x497f64        ecx 0x701c5b40   edx 0xffff0114
  esi 0x701c5cf4     edi 0x701c5eb0      ebp 0x701c5b7c   esp 0x81888fdc
  eip 0xffff0114  eflags 0x207      user esp 0x701c5b40
  vector: 0x63, error code: 0x0
 21 81888fa8 (+   0) ffff0114   <commpage>:commpage_syscall + 0x0004
 22 701c5b7c (+ 272) 0057a187   <libtracker.so>
 BPrivate<0x0>::FSRecursiveCalcSize(BPrivate::BInfoWindow*: 0x701c5eb0,
 BPrivate::CopyLoopControl*: 0x701c5cf4, BDirectory*: 0x701c5e64,
 0x701c5cec, 0x701c5cf0) + 0x0097
 23 701c5c8c (+ 368) 0057a4e6   <libtracker.so>
 BPrivate<0x701c5eb0>::CalcItemsAndSize(BPrivate::CopyLoopControl*:
 0x18176780) + 0x0196
 24 701c5dfc (+ 192) 0057c53e   <libtracker.so>:empty_trash__8BPrivatePv
 (nearest) + 0x0a3a
 25 701c5ebc (+  48) 00572ee2   <libtracker.so>
 BPrivate<0x18176780>::FSDeleteRefList() + 0x004e
 26 701c5eec (+  48) 005f3a82
 
<libtracker.so>:__cl__Q28BPrivatet24ThreeParamFunctionObject3ZPt11BObjectList1Z9entry_refZbZb
 + 0x0032
 27 701c5f1c (+  48) 0060de5b   <libtracker.so>
 BPrivate::ThreadSequence<0x18176410>::Run() + 0x004f
 28 701c5f4c (+  48) 0060de93   <libtracker.so>
 BPrivate::ThreadSequence<0x181801a0>::Run(0x0) + 0x0023
 29 701c5f7c (+  48) 0060da98   <libtracker.so>
 BPrivate::SimpleThread<0x181801a0>::RunBinder(NULL) + 0x0028
 30 701c5fac (+  48) 006bf542   <libroot.so>:_get_next_team_info (nearest)
 + 0x0072
 31 701c5fdc (+   0) 701c5fec   4009:TrackerTaskLoop_233_stack@0x70186000 +
 0x3ffec
 kdebug>
 }}}

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

Other related posts: