I don’t know what exactly causes this problem but after hours of combat with my Mac, I’ve finally figured out how to go around this so let me first let you know what the problem was, I’ve read reports of other people having this problem as well, the problem only happens on Uni-body Macs running OS X 10.5.7 and redsn0w 0.8, the exact problem is that after you’ve put your iPhone into DFU mode, you have to wait forever for a reboot, the way to fixing this is simple, when Redsn0w is waiting for reboot, simply disconnect then reconnect your iPhone, don’t reconnect to different USB, reconnect to the same one because redsn0w will be looking for it there.
it didn’t happen before, it only happened when I updated to the version that worked for 3GS as well,if you haven’t updated redsn0w to this version, don’t expect this problem.