runtime: properly synchronize GC and finalizer goroutine This is needed for preemptive scheduler, because the goroutine can be preempted at surprising points.
runtime: properly synchronize GC and finalizer goroutine
This is needed for preemptive scheduler, because the goroutine
can be preempted at surprising points.

R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/9376043

h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang,h8liu/golang