Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

APFS, fsck_apfs and 'physical extent corruption' - what's up with my MacBook Pro?

So, this morning I ran First Aid on my SSD and found that my local snapshots had a bunch of extent ref mismatches. I made sure my Time Machine back-ups were up to date, then removed the snapshots using tmutil. I then let Time Machine create a couple more local snapshots and ran First Aid again, and found the same problem in First Aid.


To try and fix the issue I ran Internet Recovery and ran First Aid from there, and while the issues were found, fsck_apfs is reporting "warning: found physical extent corruption but repairs are disabled". It then reports "The volume /dev/rdisk2s1 appears to be OK," which sounds like a contradiction.


Can anyone shed any light on what's up with the 'physical extent corruption'? Thanks!!


For reference, last week I installed the combo update for 10.14.4.


Full output from First Aid (well, fsck_apfs, really):


Running First Aid on “MBP4 HD” (disk2s1)


Repairing file system.

Volume was successfully unmounted.

Performing fsck_apfs -y -x /dev/rdisk2s1

Checking the container superblock.

Checking the EFI jumpstart record.

Checking the space manager.

Checking the space manager free queue trees.

Checking the object map.

Checking volume.

Checking the APFS volume superblock.

The volume MBP4 HD was formatted by newfs_apfs (748.21.6) and last modified by apfs_kext (945.250.134).

Checking the object map.

Checking the snapshot metadata tree.

Checking the snapshot metadata.

Checking snapshot 1 of 2.

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0xa9697f7 + 362927)

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0xaa1f949 + 65528)

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0xaa4fa4d + 27648)

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0xaa9e8ea + 524224)

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0xabf039b + 1056)

Checking snapshot 2 of 2.

error: Cross Check : FSroot tree references extent (0xaa2f941 + 8191) which is not present in the ExtentRef tree

error: Cross Check : FSroot tree references extent (0xaa31940 + 1388) which is not present in the ExtentRef tree

error: Cross Check : FSroot tree references extent (0xaa5664d + 4608) which is not present in the ExtentRef tree

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa2f941 + 8191)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa31940 + 1388)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa5664d + 4608)

Checking the extent ref tree.

Checking the fsroot tree.

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa2f941 + 8191)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa31940 + 1388)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0xaa5664d + 4608)

Verifying allocated space.

Performing deferred repairs.

warning: found physical extent corruption but repairs are disabled

The volume /dev/rdisk2s1 appears to be OK.

File system check exit code is 0.

Restoring the original state found as mounted.


Operation successful.


MacBook Pro 15", macOS 10.14

Posted on Apr 1, 2019 4:29 AM

Reply
Question marked as Best reply

Posted on May 19, 2019 9:07 PM

Hi All


I believe the problem is due to corrupt local timemachine snapshots (when timemachine can't backup to the storage device - example when its not present, it creates a snapshot). I had the same problem and manual remove all snapshots using the following command.


Launch the Terminal (from Applications > Utilities), and then copy and paste this command and press Return:


tmutil listlocalsnapshots /


The Terminal will show a list of local snapshots with names like com.apple.TimeMachine.2018-03-01-002010. To remove a snapshot:


  1. Copy and paste this command: sudo tmutil deletelocalsnapshots
  2. Type a space and then paste in the date portion of the snapshot.
  3. Press Return, and finally press Return.


Altogether, using the example snapshot above, that looks like:


sudo tmutil deletelocalsnapshots 2018-03-01-002010


If it deletes properly, you’ll see Delete local snapshot '2018-03-01-002010' in the Terminal as the response.

Run FirstAid again, this should produce a better report with no snapshot errors.


Catchyou


Similar questions

16 replies
Question marked as Best reply

May 19, 2019 9:07 PM in response to G.C.Thompson

Hi All


I believe the problem is due to corrupt local timemachine snapshots (when timemachine can't backup to the storage device - example when its not present, it creates a snapshot). I had the same problem and manual remove all snapshots using the following command.


Launch the Terminal (from Applications > Utilities), and then copy and paste this command and press Return:


tmutil listlocalsnapshots /


The Terminal will show a list of local snapshots with names like com.apple.TimeMachine.2018-03-01-002010. To remove a snapshot:


  1. Copy and paste this command: sudo tmutil deletelocalsnapshots
  2. Type a space and then paste in the date portion of the snapshot.
  3. Press Return, and finally press Return.


Altogether, using the example snapshot above, that looks like:


sudo tmutil deletelocalsnapshots 2018-03-01-002010


If it deletes properly, you’ll see Delete local snapshot '2018-03-01-002010' in the Terminal as the response.

Run FirstAid again, this should produce a better report with no snapshot errors.


Catchyou


Jun 21, 2019 11:44 PM in response to Platina Member

Hi Platina Member,


In the end, my solution was as follows:


"I eventually erased and recreated the volume, restoring from a Time Machine backup. No errors have been reported since, so whatever the problem was, the OS has worked around it, and local snapshots are created without any reference count problems."


Just what the 'root cause' was, I'll never know, but the erase/recreate/restore worked, and at the end of the day that's what mattered.


Good luck!

Apr 13, 2019 5:42 AM in response to G.C.Thompson

I had a similar problem a few days ago. Three month old Mac Mini 2014 (1TB hard drive) with 10.14.4 upgrade a week earlier. All was well. But I powered it on in the morning and it would panic and restart. I was able to boot in Safe Mode but even then it would panic after a while. More disk error output than yours but same stuff, particularly the contradictory "...repairs disabled..." output at the end. I could not repair the disk errors in Recovery mode.


I spoke with Apple support several times and we first tried an OS reinstall, which did not help. Ultimately, at their suggestion, I had to erase the main drive and reinstall the OS. (In this case a recent backup is your savior.) I summarized the events with Apple support but they had no worthwhile insight.


Computer has been running fine for the last few days. I run First Aid twice a day with no errors reported. But I sit here, presumably like you, wondering what happened. Was it a disk error that will reoccur? Was it caused by some app failure, Apple or third-party? Needless to say, I do my Time Machine and CCC backups more frequently now and hope that the problem is behind me.


Apr 13, 2019 8:50 AM in response to GeezerFella

Well I spoke too soon I guess. I just ran First Aid and got this output:


Running First Aid on “Macintosh HD” (disk1s1)


NOTE: First Aid will temporarily lock the startup volume.


Verifying file system.

Volume could not be unmounted.

Using live mode.

Performing fsck_apfs -n -l -x /dev/rdisk1s1

Checking the container superblock.

Checking the EFI jumpstart record.

Checking the space manager.

Checking the space manager free queue trees.

Checking the object map.

Checking volume.

Checking the APFS volume superblock.

The volume Macintosh HD was formatted by diskmanagementd (945.250.134) and last modified by apfs_kext (945.250.134).

Checking the object map.

Checking the snapshot metadata tree.

Checking the snapshot metadata.

Checking snapshot 1 of 1.

error: Cross Check : ExtentRef physical extent (0x2cba70 + 2) has kind APFS_KIND_UPDATE but was not referenced previously

error: Cross Check : ExtentRef physical extent (0x2cba73 + 3) has kind APFS_KIND_UPDATE but was not referenced previously

error: Cross Check : FSroot tree references extent (0x2cba70 + 1) which is not present in the ExtentRef tree

error: Cross Check : FSroot tree references extent (0x2cba71 + 1) which is not present in the ExtentRef tree

error: Cross Check : FSroot tree references extent (0x2cba73 + 3) which is not present in the ExtentRef tree

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba70 + 1)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba71 + 1)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba73 + 3)

Checking the extent ref tree.

Checking the fsroot tree.

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba70 + 1)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba71 + 1)

error: Cross Check : Mismatch between extentref entry reference count (0) and calculated fsroot entry reference count (1) for extent (0x2cba73 + 3)

Verifying allocated space.

Performing deferred repairs.

warning: found physical extent corruption but repairs are disabled

The volume /dev/rdisk1s1 appears to be OK.

File system check exit code is 0.

Restoring the original state found as mounted.


Operation successful.


I restarted the computer in normal mode, ran First Aid again and got no errors:


Running First Aid on “Macintosh HD” (disk1s1)


NOTE: First Aid will temporarily lock the startup volume.


Verifying file system.

Volume could not be unmounted.

Using live mode.

Performing fsck_apfs -n -l -x /dev/rdisk1s1

Checking the container superblock.

Checking the EFI jumpstart record.

Checking the space manager.

Checking the space manager free queue trees.

Checking the object map.

Checking volume.

Checking the APFS volume superblock.

File system check exit code is 0.

Restoring the original state found as mounted.


Operation successful.


So I am also hoping someone can help diagnose this problem.


Apr 13, 2019 9:07 AM in response to G.C.Thompson

G.C.Thompson wrote:

To try and fix the issue I ran Internet Recovery and ran First Aid from there, and while the issues were found, fsck_apfs is reporting "warning: found physical extent corruption but repairs are disabled". It then reports "The volume /dev/rdisk2s1 appears to be OK," which sounds like a contradiction.


Performing deferred repairs.
warning: found physical extent corruption but repairs are disabled
The volume /dev/rdisk2s1 appears to be OK.
File system check exit code is 0.
Restoring the original state found as mounted.

Operation successful.



Have you run Disk Utility from your Macintosh HD— and let it run


Is there still an issue?

Apr 13, 2019 11:35 AM in response to leroydouglas

Well now, isn't that a helpful response. The format of the disk drive in this case is clearly relevant and a potential alternate format would be a possible workaround. Regardless, may I suggest a more appropriate response if you disagree:


"No, the only main drive format used in Mojave is APFS. If you want to discuss the various disk formats used in Mojave I recommend you start a new thread."


You certainly know the answer to the question. Ridiculous.

Apr 14, 2019 1:38 AM in response to leroydouglas

Hi; yes, I ran Disk Utility to First Aid the volume in Recovery Mode, within macOS, and even ran `fsck_apfs` manually from a shell session while in Recovery Mode. The results were the same every time. Without any local snapshots the same three Cross Check errors were reported for the same extents. New snapshots picked up cross check extent problems too.


I eventually erased and recreated the volume, restoring from a Time Machine backup. No errors have been reported since, so whatever the problem was, the OS has worked around it.


(|I had three external disks rotating Time Machine backups. Let's not talk about the fact that they all had the same corrupt file that meant the restore failed. My eternal gratitude to Harry Fear for this blog post which saved my sanity.)

May 20, 2019 12:49 AM in response to Nick_Dore

Hi Nick,


Thanks for posting :)


Yes, I was thinking along those same lines; the first thing I tried was to remove all the local snapshots, using the tmutil in the manner you described. Then, there were no reference count mismatches to report :)


Once any new local snapshots were created, though, the reference count mismatches reappeared, for the same extents.


I eventually erased and recreated the volume, restoring from a Time Machine backup. No errors have been reported since, so whatever the problem was, the OS has worked around it, and local snapshots are created without any reference count problems.

May 31, 2019 2:07 PM in response to Nick_Dore

Hi Nick,


When I ran the command tmutil listlocalsnapshots / I received NO list of local snapshots. I then entered Time Machine and there were ZERO backups to restore from. Not sure how, I've NOT manually disabled the snapshot time machine on this system. Do I need to run the listed command in Safe or Recovery mode?


Thanks,


John

May 31, 2019 5:00 PM in response to YugiOh

Hi John


I believe local timemachine snapshots only happen on apfs file system and only if disk space permits. please check what file system you formatted you hard disk with and space free. I also have a system format with apple_hfs extended journal and the command tmutil listlocalsnapshots / list nothing.


Thats why this threads is about "Q:APFS, fsck_apfs and 'physical extent corruption'" when you run disk firstaid. do you have a corrupt harddisk, reporting this error?.


Catchyou

Nick



Jun 21, 2019 7:28 AM in response to Nick_Dore

Hi! I have same problem with MacBook Pro 13, 2017. (Mojave) Whenever I run FirstAid I get a lot of errors like:

error: Cross Check : Mismatch between extentref entry reference count (1) and calculated fsroot entry reference count (0) for extent (0x2e620f + 2)

and

warning: found physical extent corruption but repairs are disabled


I deleted all local snapshots but still get same errors. This part "0x2e620f + 2 " of error message is always different. Like in next error message number will be 0x2e621f + 2 and etc.


Please help



APFS, fsck_apfs and 'physical extent corruption' - what's up with my MacBook Pro?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.