diff options
Diffstat (limited to 'src/runtime/atomic_pointer.go')
| -rw-r--r-- | src/runtime/atomic_pointer.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/runtime/atomic_pointer.go b/src/runtime/atomic_pointer.go index 26dfbfc2cc..b61bf0b8b2 100644 --- a/src/runtime/atomic_pointer.go +++ b/src/runtime/atomic_pointer.go @@ -21,9 +21,9 @@ import ( //go:nosplit func atomicwb(ptr *unsafe.Pointer, new unsafe.Pointer) { slot := (*uintptr)(unsafe.Pointer(ptr)) - if !getg().m.p.ptr().wbBuf.putFast(*slot, uintptr(new)) { - wbBufFlush() - } + buf := getg().m.p.ptr().wbBuf.get2() + buf[0] = *slot + buf[1] = uintptr(new) } // atomicstorep performs *ptr = new atomically and invokes a write barrier. |
