Random Shutdown in Big Sur (ThunderboltNHI) driver problem

Hey guys,
I have the problem that my 2013 MacBook crashes frequently since upgrading to Big Sur. This means that all of a sudden the screen freezes, the fans turn up and all of a sudden the MacBook is off. In Catalina, through research I found out that it's because of the Thunderbolt driver (AppleThunderboltNHI.Kext etc.), which I had always renamed in Catalina using recovery mode (... .kext.BAK). This solved the problem. But now since Big Sur I can't rename the Kext files anymore because I'm only in read-only mode. So I wanted to ask here if there is a possibility to rename the files again? Otherwise the MacBook still runs really well!

  • I had the same problem in my MBP Late 2013. I can't get pass the step mount -uw/Volumes/Macintosh HD with or without quotes. Does anybody with the Macintosh HD hard disk name have solved this? Also, somebody suggested a HDMI Dummy Plug; any luck with this simple solution? Thanks

Add a Comment

Replies

Thank you for your help, with the python script my laptop isn’t rebooting and I successfully disable FileVault. But I don’t understand now in the solution when you write «  mount -uw /Volumes/[MacOS <your custom stuff here>] » what is /MacOs <your custom stuff here> ?

I just wrote mount -uw /Volumes/Macintosh\ HD ...
Should I wrote mount -uw /Volumes/Macintosh \HD/System/Library/Extension ?
I don’t understand...
You have to mount '-uw' your system partition where you are in rescue mode.

Sometimes your system partition is called MacOs, or Macintosh HD, or MaOS blabla, depending on your installation options and when you have installed your Mac.

In your case, it's juste fine (Macintosh HD) is a well known default name for the system partition.
So I followed the below procedure and now my mid 2014 MacBook Pro is stuck in a “restarted because of a problem” loop. The Apple logo and loading bar appear fill a quarter of the way and then it restarts. I can’t even boot into safe mode.

I’ve tried resetting nvram and smc. I also can’t reinstall macOS because I don’t have enough space. Am I screwed? HELP!!!
  • Check «  csrutil authenticated-root status » in rescue mode. Sometimes it falls back to « enabled » but it MUST be disabled (seal broken by the fix)

    three days ago I went to an Apple store for a battery replacement for my MacBook Pro 15’ mid 2014 : the automatic diags reset this setting to « enabled » 🙌 (and Apple does not provide any battery replacement for this device although they publish the price for this replacement on their support web site 🙌🙌)

    in French : j’ai particulièrement soigné leur survey avec une jolie note de satisfaction. Le gars m’a pris de haut quand je lui ai expliqué le pb hardware de ces mac, il s’est retrouvé face au redémarrage en infinite loop. Je l’ai regardé avec compassion et je me suis barré je remplacerai la batterie avec celle que vend ifixit 😁😁

Add a Comment
@sf98723

Hi. Thanks a ton for this help. Installed Big Sur thinking that deleting the problematic AppleThunderboltNHI.kext would be no prob but of course having issues.

BTW can you explain your steps in a bit more detail? I'm going to be essentially copying and pasting your recommendations so hopefully everything you shared will work.

I have no clue what mount -uw will do if I wrote this wrong.

Also what should I be putting in when you state <your custom stuff>?

What should we be beware of, so we don't do something really disastrous accidentally 

Thank you!


To @McQueen69 (and all),

You should always :
  • Consider It's tested for a mid 2014 MacBook pro (the ones that are well known to be affected by this pb). I can't know what other Macs do with the thunderbolt interface (dependencies, ..)

  • As a good manner, back up your Mac or your very important files before (especially if your storage is soldered)

  • unplug all unnecessary devices

  • Always have a USB install key prepared (you can do this before installing Big Sur, with the "sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume" procedure

Now :

@McQueen
69 :
  • model of your Mac (13, .. ) ?

  • It's very weird, since this procedure does not affect at all the rescue area. Are you sure you have done your mount and snapshot as I said to the "system partition" /Volumes/xx ?

  • unplug all thunderbolt devices

  • plug an external wiped storage device, a USB installation key, then boot + "C" at startup, reinstall MacOS on the external device and mount your system partition to back up the users files.

  • Then reinstall from scratch (Catalina) on the internal storage. It should work, I don't think you can actually brick a Mac.. At last resort, the Genius Bar should help.


@mergenc : the « custom stuff » is the name of the Volume int /Volume that holds your OS. I can’t be more precise it depends of your history (for me it’s /Volume/MacOs because I’ve reinstalled from scratch for Catalina. Before it was called /Volume/Macintosh HD if you installed old OSes)

Again, backup before, usb media near you, external device is a plus..

Sorry for the reply delays : I’m in France 😎

@sf98723

Bonjour! Thank you for the clarification.

Unfortunately I'm now stuck on restart loop. I'm getting error "Your computer restarted because of a problem. Press a key or wait a few seconds to continue starting up."

Not sure what I did wrong. Was I supposed to do step 8 after one more reboot? I did steps 8 & 9 immediately after step 7.

Luckily, I can enter recovery mode, but cannot enter normal mode. Shall I reinstall Big Sur again and repeat your steps one more time? Any recommendations?

I'm also on MBP mid 2014. I upgraded from Catalina. Had been removing ThunderboltNHI kext since the issue popped up the last couple of months.

Yours,
  • from Mongolia!

UPDATE: I disabled csrutil and then - Voila! restarted just fine! And the problem child driver is gone! Wow.

UPDATE 2: It seems now my MBP goes into restart loop if I enable <<csrutil authenticated-root>>. Any recommendations? MBP seems to be working fine otherwise (no security but at least working 😂)


  • I had the same problem in my MBP Late 2013. I can't get pass the step mount -uw/Volumes/Macintosh HD with or without quotes. Does anybody with the Macintosh HD hard disk name have solved this? Also, somebody suggested a HDMI Dummy Plug; any luck with this simple solution? Thanks 

Add a Comment
@mergenc : you’re right : I told to only « csrutil enable » at the end of the procedure, not to « csrutil authenticated-root enable »

You can’t do that in Big Sur if you modify the Os (because new files you have generated like the extension caches are not signed by apple!). I’ve not explicitly warned about that in the procedure, I will update it this evening

It’s described here in the details : https://developer.apple.com/news/?id=3xpv8r2m

... you are only disabling the NEW security functions but you keep those functions that were part of Catalina

I don’t know if Apple will let us continue to workaround this bug or hardware issue in the future updates or to let us with older versions of macOS until we decide to buy a new Mac ☹️

Finally I don’t know if the future Big Sur updates will run as expected 😬. We will know soon as usual ...

Have a good day in Mongolia 🇲🇳
Ok Guys So Here’s the FIX with BIG SUR
I did few modifications with whatever was available on internet to solve this problem
Step 6 & 7 are few modifications which I did. 
Here it goes

Reboot in recovery mode (CMD+R)
Utilities -> Terminal
csrutil disable
csrutil authenticated-root disable
mount - uw /Volumes/Macos (Enter WHATEVER YOUR MACOS DRIVE NAME IS, my macOS drive name is Macos)
cd /Volumes/Macos (Enter WHATEVER YOUR MACOS DRIVE NAME IS, my macOS drive name is Macos)/System/Library/Extensions
rm -rf AppleThunderboltNHI.kext
rm -rf /System/Library/Caches/*
Kmutil install -u --force --volume-root /Volumes/Macos (Enter WHATEVER YOUR MACOS DRIVE NAME IS, my macOS drive name is Macos)/System/Library/Extensions
bless -folder /Volumes/Macos(Enter WHATEVER YOUR MACOS DRIVE NAME IS, my macOS drive name is Macos)/System/Library/CoreServices —bootefi --create-snapshot
FORGET THE PROBLEM :-D 
You’ll need to perform these steps every time you update Big sur with their security updates n all. 
No need to enable SIP 
Have a good life :-) 
  • I am successful until mount and when I run rm -rf .... I am getting error saying its a read only file and cant be removed

Add a Comment
Same issue with MBP Early 2015.
@sf98723
Thanks a lot for your instruction.
I have tried your steps, but after the last step (csrutil enable) , I also had the restart loop problem as  McQueen_69 and mergenc.

@mergenc
Thanks for your input, I tried to run 'csrutil disable' in rescue mode again, the restart loop problem fixed.

Seems MBP 2015 has a little different with MBP 2014 😂

  • Back to this forum after a few monthes, sorry. Check in rescue mode the authenticated-root setting is disabled. Otherwise : infinite loop with kernel crash

Add a Comment
Well guys, for those who have problems booting/freezing up after upgrades to Big Sur or Catalina from previous MacOSes, I would not upgrade directly by just having a Time Machine backup. If you have enough free space on your drive (Catalina requires about 25gb and Big Sur wants 46gb to preform an install), I would create a new partition (Extended Journaled not APFS) via Disk Utility. Install the new OS onto that partition and test it out by booting from that partition. I have High Sierra, Mojave, Big Sur on separate partitions. You can always resize them to include more space if you have. At least this way you have a bootable machine. On High Sierra and Mojave, just renaming the AppleThunderboldNHI.kext did fine. But on Big Sur, I followed the instructions, it still freezes. Still trying to figure out why. Haven't tried disabling the Firevault. Can someone help me with this. Thanks.

Another thing if your drive's name has a space in it, need to put it in double quotes like Big Sir should be /Volumes/"Big Sur"/ ... .

If you don't have enough free space on you SSD, use an external USB drive, create a new partition on it and install the new OS onto that partition and test it out. Run all the commands on it to see if it is stable. It will be slower since it is on an external drive. Just be careful when creating and deleting partitions, once deleted it is NOT RECOVERABLE!.

Good Luck.
Post not yet marked as solved Up vote reply of SH1 Down vote reply of SH1
Just now, I had the Dev Tools open in Chrome and went to full screen and it froze my computer. When I leave my screens NOT full screen, I don't seem to have the freezing issue. Is this also the case with any of you?

Code Block
MacBook Pro (Retina, 15-inch, Late 2013)
2.6 GHz Quad-Core Intel Core i7
16 GB 1600 MHz DDR3
Intel Iris Pro 1536 MB

@sf98723

I tried your solution but when I attempted to restart mac I got the startup error (black screen with a circle and line through it) I know this is a problem with startup disk.
I went back into recovery mode and ran disk utility but that didn’t help. But, after looking through the details of disk utility results I noticed that it checked the snapshot and said “warning: snapshot fsroot/file key rolling tree corruptions are not repaired; they’ll go away once snapshot is deleted”
so I’m guessing I have to delete the snapshot. Could you please advice on how this could be done or on any other way I can fix this issue. Thank you.

UPDATE: after looking through the thread I disabled csrutil & csrutil authenticated root and the MacBook started up perfectly. Seems like the drive is gone. Will update later if I’m still experiencing random shutdowns or if MacBook works fine. But also if anyone can provide info on how to access and delete the snapshots (without installing os or updating) that would be nice. Thank you.
Ok. Found this working solution with Big Sur.
  1. Reboot in rescue mode (reboot while "Cmd + R")

  2. csrutil disable

  3. csrutil authenticated-root disable

  4. mount -uw /Volumes/[MacOS <your custom stuff here>]

  5. delete (or rename, or move elsewhere) the AppleThunderboltNHI.kext directory (I've moved all thunderbolt kext directories since I have no needs about this interface, but I think it works only by disabling AppleThunderboltNHI)

  6. REBUILD the extensions cache ! (new has-to-do in Big Sur...)

Code Block
kmutil install -u --force --volume-root /Volumes/[MacOS <your custom stuff here>]


7. DON'T FORGET to create another system snapshot to take these modifications under account at next reboot

Code Block
bless --folder /Volumes/[MacOS <your custom stuff here>]/System/Library/CoreServices --bootefi --create-snapshot


8. reboot (in rescue mode). This step may be unnecessary, not tested straight to 9.
9. csrutil enable
10. Reboot
  1. Enjoy. Cheers..

Here following step in other answer does not work for me, instead above step 6 works.

Code Block
Kmutil install -u --force --volume-root /Volumes/Macos (Enter WHATEVER YOUR MACOS DRIVE NAME IS, my macOS drive name is Macos)/System/Library/Extensions

  • Thank waqas_tr.

    This works and solved my problem causing big troubles for months. I'm running Big Sur 11.7.10, which I think is the last version of Big Sur.

    At first, I was not sure if the problem is hardware or software related. Tried all the ways including disabling GPU but none of them work. Then I found this post.

    I left "authenticated-root" disabled, which I think I can't turn on FileVault. Is there anyone running FileValut after these changes?

Add a Comment
Were you able to solve the issue?