All Posts by Date or last 15, 30, 90 or 180 days.
also by Lloyd: diglloyd.com photography and WindInMyFace.com
Thank you for purchasing through links and ads on this site.
OWC / MacSales.com...
diglloyd Deal Finder...
Buy other stuff at Amazon.com...
Upgrade the memory of your 2019 iMac up to 128GB
128GB Memory in iMac 5K

Up to 128GB for 2019 iMac 5K!
Up to 64GB for 2015/2017 iMac 5K

Save nearly 50% over Apple pricing

OS X File System Hang Bug

UPDATE June 2014: As far as I can determine, this bug has been fixed in OS X 10.9.3. While my bug report at Apple has not been updated to reflect the fix, I have yet to see the issue resurface in 10.9.3.

Update December 2014: Apple still has not fixed the bug.

However, Apple developer support tells me that the bug is NOT fixed in 10.9.x (but to be fixed in 10.10 Yosemite), so the workaround of disabling file system journaling is still a wise precaution when testing drives.

I spent all weekend tracking down a hang bug in the OS X Mavericks file system (the bug is new to Mavericks, the most bug-ridden OS X version ever released).

It is a severe bug: a reboot does not cure it, the file system always verifies as good, but any attempt to access the file causes a complete OS X lockup, and the only fix is to erase the volume. A nasty little bugger.

This particular bug involves the file system, but only Mac OS Extended (does not affect ExFAT). I reported it a few months ago, and it is 100% reproducible by myself on several different machines with different hardware and by independent 3rd parties, yet the response in Apple Bug Reporter has been a “cannot reproduce” so lacking in details as to make one skeptical that it was actually even tested at all.

For programming nerds, it involves FSAllocateFork(), or in POSIX API terms, fcntl(fd, F_PREALLOCATE, &params). It requires use of software RAID-0 (Disk Utility or SoftRAID, doesn't matter) or concatenated RAID, occurs with SSDs or hard drives, with Thunderbolt or eSATA, and on a laptop or desktop. It requires a large file, but the size varies and the bug can be triggered below certain threshold in other ways too.

So my weekend was spent in a fruitless effort to find a workaround—none.

But I did determine that the bug occurs not just in Carbon APIs but also in low-level POSIX APIs (rather scary to see it at that level), so it runs deep and it’s just one more core rot introduced by Mavericks.

I have now submitted source code along with a binary program showing the problem, which is again confirmed by multiple 3rd parties. I wonder if “cannot reproduce” will be the response yet again from Apple. It’s incredibly frustrating to see the long latency in response time as well as the apparent inattention to detail. I have the distinct impression of little interest or inclination to investigate.

Update April 1st

(It’s April 1st but this is no joke).

A thank you to the OWC staff for reproducing and confirming.

Also, Tim Standing of SoftRAID.com was able to help by reproducing the bug and getting a stack dump to submit to Apple.

UPDATE: staffing at Apple is apparently minimal. A request for the core dump upload instructions going unanswered, and my bug updates have not been addressed for three days.

The key factor appears to be journaled HFS+ file system. It will be nice if Apple fixes it (bug #15821723 updated), but at least there is a workaround that does not require a complete volume erase.

Disabling journaling not only prevents the issue from occurring (at least I can no longer reproduce it with journaling off), but it allows a volume with a problem test file to be removed (put into trash, empty trash).

Disabling HFS journaling

In Terminal, use the commands in red. It is easily reversible. Journaling is strongly advised for most all uses, so disable it temporarily only.

    # Disable HFS journaling on volume 'Scratch'
diglloyd:DIGLLOYD lloyd$ diskutil disableJournal Scratch
Journaling has been disabled for volume Scratch on disk14
... remove the file, e.g., put into trash and empty trash ...
# Enable HFS journaling on volume 'Scratch'
diglloyd:DIGLLOYD lloyd$ diskutil enableJournal Scratch
Journaling has been enabled for volume Scratch on disk14

Apple’s (non) Response

Update May 8: a response from Apple. No details on when the bug will be fixed.

We’ve managed to reproduce the problem and we understand what is going wrong. Apologies for the delay in responding.

After 10 days, no response from Apple
B&H Deal ZoneDeals by Brand/Category/Savings
Deals expire in 148 min unless noted. Certain deals may last longer.
$35 SAVE $115 = 76.0% Lowepro DroneGuard CS 400 in Video: Drones
$2797 SAVE $600 = 17.0% $246 FREE ITEMS Nikon Z 7 Mirrorless in Cameras: Mirrorless
$2798 SAVE $400 = 12.0% Sony a7R III Mirrorless in Cameras: Mirrorless
$3498 SAVE $1000 = 22.0% Sony a9 Mirrorless in Cameras: Mirrorless
$898 SAVE $100 = 10.0% $161 FREE ITEMS Sony DSC-RX100 VA in Cameras: Point and Shoot
$1879 SAVE $1071 = 36.0% ZEISS 15mm f/2.8 Distagon T* ZE in Lenses: DSLR

diglloyd.com | Terms of Use | PRIVACY POLICY
Contact | About Lloyd Chambers | Consulting | Photo Tours
Mailing Lists | RSS Feeds | Twitter
Copyright © 2019 diglloyd Inc, all rights reserved.
Display info: __RETINA_INFO_STATUS__