While millions of users have upgraded to Apple's newest OS X 10.7 Lion without issue, it seems that those who purchased the 2010 MacBook Pro models featuring NVIDIA graphics processors are not included in this crowd. Since Lion's release in mid-July, users have been pouring in to Apple's support forum to complain about system freezes, kernel panics and crashes that now appear to be the result of a bug in the NVIDIA GT330M drivers that shipped with the new operating system. These crashes leave the user with a black screen on their MacBook Pro, and require that the user reboot the machine to get things working again. However, even with a reboot it is only a matter of time before the system locks up again.
It appears that every 15” and 17” 2010 MacBook Pro user that has an NVIDIA GPU in their machine and chooses to upgrade to OS X 10.7 Lion can be affected. Aside from the black screen, symptoms of the bug include the inability to wake the MacBook Pro from sleep mode, and repeated kernel panic warnings. No one is quite sure exactly what triggers the bug, but it seems that either the MacBook Pro automatically switching from the integrated Intel graphics to the NVIDIA graphics chip, or the plugging in and unplugging of external monitors can cause things to break down. Some users have even reported system freezes while playing games, which would imply that this bug simply affects those that make any use of the discrete NVIDIA GT330M in their MacBook Pro at all.
The most unfortunate fact in all of this is that Apple seemingly missed this bug throughout its beta testing of OS X 10.7 Lion. Developers and others that participated in the Lion beta reported this bug to Apple on numerous occasions, and yet it somehow managed to slip through the cracks and end up in the final build that was released to consumers. Apple hasn't publicly commented on the issue, but there's little doubt that engineers are hard at work to create a fix for this bug, which affects thousands of MacBook Pro owners.
One tip that support technicians at Apple have been recommending to users is to delete a handful of files that may be causing issues and are yet not critical to the proper functioning of a MacBook Pro with Lion installed. The files that need to be removed are located inside of the user's /Library folder, which is hidden by default in OS X 10.7 Lion to prevent inexperienced users from deleting critical files. There are a couple of easy ways to enable viewing and editing of the contents of the /Library folder; a user can either run the Terminal program and input the following text without the quotes: “chflags nohidden /Users/[enter username here]/Library/” (replacing the enter username text with the users OS X username) or they can hold down the Option key while viewing the “Go” menu in the finder.
Once inside of the /Library folder, a user needs to head to /Library/Preferences/ByHost/, which can be accomplished by double-clicking on the Preferences folder, and then on the ByHost folder. Inside of this folder should be files that contain the word “windowserver”; any files with this word in the file name should be deleted. Upon reboot, the MacBook Pro should function properly without any kernel panic or crashing issues due to the NVIDIA driver bug. (note: Apple also mentioned that those that connect external monitors to their MacBook Pro may need to repeat this fix every time a monitor is hooked up)
While this is a significant and unfortunate bug that Apple should have caught prior to shipping OS X 10.7 Lion, it's not the end of the world for MacBook Pro users. Apple will almost certainly have a patch or an updated NVIDIA driver out in the near future which will fix this bug and allow MacBook Pro users to avoid any further system freezes or kernel issues. Until then, using the solution described above should provide some relief from these issues without sacrificing performance in any way.