Dec 12, '06 07:30:00AM • Contributed by: Durandal
I've found a workaround that seems to have eliminated this problem for me completely. First, if you don't already, you should have separate network locations for your home and work. In my case, I use my laptop on an ethernet connection at work. So my Work location has every network port except Built-in Ethernet disabled. At home, I use my laptop on my wireless network, so my Home location has every network port except AirPort disabled.
I've created a third location, called NULL, which has all network ports disabled. Before leaving the office every day, I switch my location to NULL (using the Location option in the Apple menu), unplug my ethernet cable, and put the machine to sleep. When I get home, I open my MacBook Pro's lid, and it snaps awake instantly. Then I switch my location to Home and connect to my wireless network. Before I started doing this, I'd see the spinning beachballs for two minutes fairly consistently. Now, I haven't had any problems. I'm guessing it's because, when you switch locations and a network port gets disabled, the operating system can inform the underlying network subsystem that this port is no longer available due to user intervention -- so all the resources that were coming through that port are gone as well. So there's no need for the network subsystem to wait for a time-out period to see if those resources will reappear, since it knows they won't.
To create the NULL location, go to the Location -> Network Preferences entry in the Apple menu. Then, from the Location menu, select New Location. Name it NULL or whatever you'd like. Once it's been created, switch to it in the Location menu. Then go to the Show menu and select Network Port Configurations. Then just uncheck everything.
Once you're done, hit Apply Now. You should be set.
