20

My MacBook Pro 15" Late 2011 (MacBookPro8,2) with AMD Radeon 6770M exhibited display corruption and associated system crashes/resets over a period of two weeks before it entirely failed to boot. The boot would progress through the grey screen with the Apple logo and spinner, but just when it seems it should have switched to the login screen the Apple logo and spinner would disappear and hang on a blank grey screen.

Initially I suspected hard-drive corruption and went about trying to remedy that. Unsuccessfully, I tried the following, with each continuing to hang as described above:

  • Safe boot
  • Boot into recovery (including Internet Recovery)
  • Boot from install media on USB drive
  • Boot from OS X installation on USB drive
  • Clear NVRAM
  • Reset SMC

I also ran the Apple Hardware Test many times without it finding any issues.

Verbose safe boot (Cmd+Shift+V) output everything that I'd expect to see but would then hang as described above.

After coming across more posts online of GPU related problems I revisited this as the cause:

Attempting to boot Ubuntu from a USB flash drive, I could only get as far as Grub. When trying to boot Ubuntu Desktop or run the graphicstest in Grub the system would hang.

At this point, running Apple Hardware Test hung right before the end of the standard test, possibly [guessing] when doing a video test.

Based on the advice in the Apple Discussions posts above I did the following:

  • Boot into Single-User mode
  • Execute the following commands:
    /sbin/fsck -fy /
    /sbin/mount -uw /
    mkdir /Disabled_System_Library_Extensions
    cd /Disabled_System_Library_Extensions
    mv /System/Library/Extensions/ATI* .
    mv /System/Library/Extensions/AMD* .
    touch /System/Library/Extensions
    exit

This time the machine booted all the way through. However, graphics are extremely slow, even just transitions when minimizing windows. I will be taking my MBP to Apple to demand a replacement as the large number of reports of others facing similar issues makes it look like a recurrence of a similar GPU-related failure that resulted in them doing a recall.

6
  • Are you looking to document how you worked to troubleshoot an issue that's now solved? It's not clear what the end goal here is with the edits being tacked on instead of just editing this to state what is wanted and what you've tried in a more orderly manner.
    – bmike
    Commented Feb 10, 2014 at 14:42
  • @bmike - I agree that this was a mess. Now that I understand the issue I have re-edited.
    – geevs
    Commented Feb 10, 2014 at 16:14
  • I love the edit. It's hard to trust the wiki at first, but you're a fast learner or have experience apparently :-) Also - feel free to answer your own question if you want. I like to make the answer mostly about how I arrived at my solution and make the question in that case very slim with just the setup. However, that's a matter of taste and not a requirement. Either way, welcome to the site and good luck with the hardware service.
    – bmike
    Commented Feb 10, 2014 at 16:15
  • Recent article describing these issues: macrumors.com/2014/01/17/2011-macbook-pro-gpu-glitches Recall for similar issues in 2012: support.apple.com/kb/TS2377
    – geevs
    Commented Feb 10, 2014 at 16:15
  • I also found the following useful while root causing this: apple.stackexchange.com/questions/97315/…, apple.stackexchange.com/questions/96269/…, apple.stackexchange.com/questions/33510/…
    – geevs
    Commented Feb 10, 2014 at 16:19

5 Answers 5

12

Solved: Booted to Single-User mode and disabled Radeon GPU.

Details of investigation:

Initially I suspected hard-drive corruption and went about trying to remedy that. Unsuccessfully, I tried the following, with each continuing to hang as described above:

  • Safe boot
  • Boot into recovery (including Internet Recovery)
  • Boot from install media on USB drive
  • Boot from OS X installation on USB drive
  • Clear NVRAM
  • Reset SMC

I also ran the Apple Hardware Test many times without it finding any issues.

Verbose safe boot (Cmd+Shift+V) output everything that I'd expect to see but would then hang as described above.

After coming across more posts online of GPU related problems I revisited this as the cause:

Attempting to boot Ubuntu from a USB flash drive, I could only get as far as Grub. When trying to boot Ubuntu Desktop or run the graphicstest in Grub the system would hang.

At this point, running Apple Hardware Test hung right before the end of the standard test, possibly [guessing] when doing a video test.

Based on the advice in the Apple Discussions posts above I did the following:

  • Boot into Single-User mode
  • Execute the following commands:
    /sbin/fsck -fy /
    /sbin/mount -uw /
    mkdir /Disabled_System_Library_Extensions
    cd /Disabled_System_Library_Extensions
    mv /System/Library/Extensions/ATI* .
    mv /System/Library/Extensions/AMD* .
    touch /System/Library/Extensions
    exit

This time the machine booted all the way through. However, graphics are extremely slow, even just transitions when minimizing windows. I will be taking my MBP to Apple to demand a replacement as the large number of reports of others facing similar issues makes it look like a recurrence of a similar GPU-related failure that resulted in them doing a recall.

4
  • @bmike - Thanks for the guidance. I've reformatted into a separate Q & A as you suggested. This time I'm doing it from the StackExchange I created some time ago but didn't have handy yesterday.
    – smr
    Commented Feb 11, 2014 at 1:15
  • This worked for my MacBook Pro 15" 2011 Early, i7 2Ghz, AMD Radeon 6490M. But after this I've tried to do clean install (from Mountain Lion to Yosemite) with installer and now it hangs up on grey screen every time I boot. And I can only boot with Single-User mode into the Installer but not into current installed OS X. So I would recommend for everybody else not to try installing another OS X with an "upgrade" from this point.
    – IgnasK
    Commented Nov 13, 2014 at 13:42
  • @smr. Thanks for the write-up. Any follow-up? Did you take the machine to Apple? Did you get this resolved? I should say thanks too. This worked, but like you, my machine is extra slow now. Commented Jan 11, 2016 at 2:33
  • ONE MORE THING to do. You need to disable csrutil. It is possible to boot into Recovery with Single User Mode. To do this: Hold the Option (⌥) key during initial boot to get to the Startup Manager. While holding Command (⌘)-S, select the Recovery boot volume.apple.stackexchange.com/questions/261684/… - Then follow the instructions above. There is a typo in the first line of the above instructions. Omit the final slash in the fsck line. Commented May 1, 2017 at 23:45
2

The solutions given so far are only good enough advice to get the machine booting far enough to make a backup and move on. Following the advice here will only give you a booting Mac with colour where you can login but without proper acceleration of the GUI. That makes the MacBook almost unusable. Here is an alternative that disables the faulty AMD chip but gives you properly accelerated Intel graphics and much better thermal management than simply removing all AMD/Ati-related kernel extensions.

Background and explanations

The Apple Repair Extension program is not available anymore. The only real way to fix this problem is to replace the AMD chip alone. Not the logic board. Not "re-balling", not "reflowing", not "baking". Apple replaced a failed chip with a failing chip. Time and time again. Only replacing the graphics chip is still a costly hardware procedure for such a vintage laptop.

The only known way – that is: with software alone – to get a 2011 MacBook Pro (8,2) with 'only' a failed AMD graphics chip to almost reliably turn on again and be quite useable with an accelerated GUI is this guide or a variation of it. Most previous tips just removed all AMD-kexts and this results in a horrible user experience.

It is necessary to know your exact OS version. The following guide will be simpler for Yosemite but assumes El Capitan or newer. El Capitan, Sierra and High Sierra need SIP (System Integrity Protection) disabled. On previous systems (10.6–10.10) these steps are unnecessary.

This guide assumes that all kexts are still in their default location /System/Library/Extensions. Having all AMD-kexts there except one is beneficial for 'proper' operation.

To get some display acceleration back it will be necessary to force the machine to not boot in discrete graphics (dGPU) but directly into integrated graphics (iGPU). This will give you back your laptop – but you will lose some features: e.g. the ability to drive an external display. Thunderbolt data connections should work.

The initial procedure:

– To start from a clean slate: reset SMC and PRAM/NVRAM:

shutdown, unplug everything except power, now hold

<leftShift>+<Ctrl>+<Opt>+<Power>

release at the same time;

– Now power on again and hold

<Cmd>+<Opt>+<p>+<r> 

at the same time until you hear the startup chime two times.

– Boot into Recovery by holding

<Cmd>+<r>+<s> 

– Disable SIP:

csrutil disable

– disable dGPU on boot

nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00

– enable verbose boot mode:

nvram boot-args="-v"

– reboot into single user-mode by holding

<Cmd>+<s> 

on boot

– mount root partition writeable

/sbin/mount -uw /                        

– make a kext-backup directory

mkdir -p /System/Library/Extensions-off  

– only move ONE offending kext out of the way:

mv /System/Library/Extensions/AMDRadeonX3000.kext /System/Library/Extensions-off/     

– let the system update its kextcache:

touch /System/Library/Extensions/   

– wait for the kextcache process to finish

reboot normally: you will have an accelerated iGPU display, but the system doesn't know how to power-management the failed AMD-chip. For that you have to either manaully load the kext after boot by:

sudo kextload /System/Library/Extensions-off/AMDRadeonX3000.kext

Automate this with the following LoginHook:

sudo mkdir -p /Library/LoginHook

sudo nano /Library/LoginHook/LoadX3000.sh

with the following content:

#!/bin/bash
kextload  /System/Library/Extensions-off/AMDRadeonX3000.kext
exit 0

then make it executable and active:

sudo chmod a+x /Library/LoginHook/LoadX3000.sh

sudo defaults write com.apple.loginwindow LoginHook /Library/LoginHook/LoadX3000.sh 

Preventive measures for future use

There are two further caveats to know: This is reversible when the SMC/PRAM/NVRAM is reset. If that happens the GPU-power-pref nvram can/has to be set again to force the use of the iGPU from boot-time.

Since this can happen quite easily (and is often erroneously recommended way too many times than it is actually useful), you should probably prepare for such a scenario and create a simple script to greatly speed up the process and also make entering the necessary variable much less error prone:

 sudo nano /force-iGPU-boot.sh

– Enter the following content to this file:

#/bin/sh
sudo nvram boot-args="-v"
sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
exit 0

– Now make that executable:

sudo chmod a+x /force-iGPU-boot.sh

In the future, when the SMC/PRAM/NVRAM gets reset to default values it is now possible to boot into SingleUser with:

<Cmd>+<s>

– And after mounting your boot-volume read-write to execute just:

sh /force-iGPU-boot.sh

This setup has now one kext in a place Apple's installers do not expect. That is why in this guide SIP has not been reenabled. If an update that contains changes to the AMD drivers is about to take place it is advisable to move back the AMDRadeonX3000.kext to its default location before the update process. Otherwise the updater writes at least another kext of a different version to its default location or at worst you end up with an undefined state of partially non-matching drivers.

After any system update the folder /System/Library/Extensions has to be checked for the offending kext. Its presence there will lead to e.g. a boot hang on Yosemite and Sierra, an overheating boot-loop in High Sierra.

Further: this laptop is overheating, no matter what you do. The cooling system is inadequate and the huge number of failing AMD chips are just proof of that.

To prolong the life of this now hacked machine it is advisable to abstain from really heavy lifting over prolonged stretches of time. Strictly follow the usual recommendations for laptops: use on hard surfaces, keep the fans and fins inside it clean. Using any fancontrol software with relatively aggressive settings should also help: like smcFanControl, MacsFanControl, or TGPro (both commercial).

Disclaimer: This answer is a duplicate from here repeated for this question since for this question there are so many so suboptimal answers given.

1
0

Why not install a clean copy of OS X onto a spare USB drive (or even SD card) and verify that the hardware works with a new Apple-supported OS install?

From there you can suss out if you actually have a hardware problem or just a drive in need of backing up and cleaning out all the modifications that have accumulated over time.

You could go deep down the rabbit hole of debugging your kernel with gdb over ethernet or even ddb over a serial port, but it's almost always faster to just start fresh. Machines with severe hardware issues will usually fail to install a simple OS on an external drive and can save you hours of trying to figure out what went wrong when it's far faster to just build a new "OS" and test if it's stable.

1
  • @geevs It's been a while since I actually ran kernel in debug, but it looks much improved. Also, if you have the results of my "test" in hand when you seek service, it's hard for someone to argue when a Mac can't install a fresh OS without panicking that there's a hardware issue. Keep an eye on apple.com/support/exchange_repair and retain your receipt and proof of payment if you are charged for your repair as I have known Apple to reimburse if they later decide to extend coverage for issues similar to what you suspect is up.
    – bmike
    Commented Feb 10, 2014 at 16:17
0

September 2014 - Apple's Still Unacknowledged Elephant?

Has your MacBook Pro turned into a brick? Gray screens? Black screen? Refuses to boot? Then the guys on this page have given THE answer. I tried a thousand things until I stumbled upon this for use after cmd+S when pressing power button:

/sbin/fsck -fy /
/sbin/mount -uw /
mkdir /Disabled_System_Library_Extensions
cd /Disabled_System_Library_Extensions
mv /System/Library/Extensions/ATI* .
mv /System/Library/Extensions/AMD* .
touch /System/Library/Extensions
exit

Backstory In August this year just three years after buying my MacBook Pro things started to go strange. At first the simple fixes like fsck -fy and starting in safe mode seemed to do the trick but it was only very short-lived.

Then three days ago, nothing I did would make it reboot. I had a brick on my hands. Finally, serendipitously I stumbled upon this page. Being a Terminal Virgin I was extremely nervous about following the instructions but Joy upon Joy it's worked! My computer is back!

As I need it to do video editing work I am rather anxious about how it will cope with the demands of Final Cut Pro X. I shall have to stir up the courage to open it and try. (Checking gmail in Safari is a real pain already. Safari keeps refreshing screen as i move my cursor. Just tried Firefox - that is fine!)

The more important point however is that this is a rather disheartening experience with a product that was very expensive to buy. I am very sad that Apple has not contacted us or made it clear that they will exchange the clearly problematic graphics card.

Somehow this solution needs to be much more prominently available to those suffering the same problems.

Anyway thanks to everyone on this page and elsewhere who found this solution to disable the graphics card which does allow the computer to boot (as of this writing anyway).

My computer is an April 2011 MacBook Pro 8 GB memory. 750 GB HD 2.2 Ghz Intel Core i7

2
0

I have a 2011 iMac, not a Macbook Pro. Apple has a replacement program for the 6970M video card in these machines for similar issues described here.

http://support.apple.com/en-us/HT203787

The commands listed by @smr in single user mode work just as well on the iMac to effectively disable the 6970M and force the machine to use the integrated GPU on the logic board.

I brought my 3 year old machine into the Apple store yesterday after being unable to boot the machine in recovery mode, internet recovery mode, safe mode, or normal mode. I could not run the AHT. After running the commands described by @smr I was able to boot right into safe mode and normal mode without trouble.

I mentioned the program and after their own hardware test for the GPU failed, they ordered the free replacement.

What I would see when having trouble is the apple logo with progress bar underneath it. The progress bar would load anywhere between 25% and 50% before the logo and progress bar disappeared, indefinitely leaving a plain grey screen up.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .