This patch to libgo fixes a flag when allocating memory from cgo. I misunderstood the meanings of the flags. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline.
Ian
diff -r 2544e5a0261f libgo/runtime/malloc.goc --- a/libgo/runtime/malloc.goc Thu Nov 14 10:14:48 2013 -0800 +++ b/libgo/runtime/malloc.goc Thu Nov 14 12:03:00 2013 -0800 @@ -75,7 +75,7 @@ runtime_exitsyscall(); m = runtime_m(); incallback = true; - flag |= FlagNoGC; + flag |= FlagNoInvokeGC; } if(runtime_gcwaiting() && g != m->g0 && m->locks == 0 && !(flag & FlagNoInvokeGC)) {