Ticket #3190 (closed bug: fixed)

Opened 5 weeks ago

Last modified 5 days ago

[BFS] checkfs crash

Reported by: Adek336 Owned by: axeld
Priority: critical Milestone: R1
Component: File Systems/BFS Version: R1 development
Cc: olive@… Blocked By:
Platform: All Blocking:

Description

On my desktop computer (not the one I mentioned in #3150)

~> checkfs /haiku-dane -c

crashes

r28736
/haiku-dane is 10gb.

Attachments

img_1062.jpg (262.6 KB) - added by Adek336 5 weeks ago.

Change History

Changed 5 weeks ago by Adek336

Changed 5 weeks ago by Adek336

reproducible

Changed 5 weeks ago by axeld

  • priority changed from normal to critical
  • component changed from - General to File Systems/BFS

Then you should trespass line 1389 in BlockAllocator.cpp, ie. the checking process is trying to delete a file - can you confirm? If that's not the case, we need a generic mechanism that defers trimming when the check is run.

Just don't format that partition for now ;-)

Changed 5 weeks ago by Adek336

If you mean

   1389 					inode->Node().flags
   1390 						|= HOST_ENDIAN_TO_BFS_INT32(INODE_DONT_FREE_SPACE);

this, then no, it isn't hit.

Changed 5 weeks ago by karmak

  • cc olive@… added

Attaching my KDL. Seems the same bug. r28752 on real hardware (IBM R52). My /boot is a 20Gb partition on the main hard disk. I've been using it for 2 weeks without any problem, except a few KDL. To update my system, I always update a 200Mb image on an USB key, then boot from USB key, and diff -r the key and the disk beos/ dirs, then copy the file which differ.

Yesterday the diff/cp process went fine but at reboot, the bootloader said 'Current Boot volume: (None)'. I rebooted on the USB key, rediffed -r and it reported that kernel_x86 was different, although I had copied the newer one. I copied it once more from the key, rebooted, and all went fine.

Today, the same problem appeared, despite the fact that after diff/cp operations, I runned "sync;sync;sync", unmounted the hard drive partition, then remounted it. You bet it, mounting and rediffing showed differences on some files I had copied before unmounting...

I decided to checkfs my hard drive volume, and it leds me to the attached KDL.

Note that I'm not very familiar with KDL and kernel internals. I read the tutorial on haiku-os.org, but didn't understand everything. If you need me to investigate, I suggest you guide me with commands to type...

Changed 5 weeks ago by karmak

Sorry, Trac refuses to post my attachment, complaning "failed to create unique name" 3 times and one time crashing completely because of "too many open files". I strongly believe this problem comes from the hosting machine.

You can find my attachment at http://deep-ocean.net/files/haiku/checkfs_KDL_karmak.jpg

Changed 5 weeks ago by anevilyak

It's a known problem that happens to Trac every now and then, nielx has been working on trying to find what causes it.

Changed 6 days ago by axeld

  • status changed from new to closed
  • resolution set to fixed

Should be fixed in r28845, please confirm.

Changed 5 days ago by karmak

Fixed for me. I have been able to check my main FS on the Thinkpad without problem from an up-to-date Haiku (r28845) on an USB Key. BTW, no errors were reported by checkfs.

Thanks and have a happy new year !

Changed 5 days ago by Adek336

Didn't crash, thanks !

Note: See TracTickets for help on using tickets.