From ce7aae5095c9f0c5ed2e4daddeac25a415cc370c Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Wed, 17 Aug 2022 16:18:07 +0700 Subject: [PATCH] runtime: convert aix netpollWakeSig to atomic type Updates #53821 Change-Id: Ic073871ed2638ca22e6cb057dd8297f27582e78f Reviewed-on: https://go-review.googlesource.com/c/go/+/423877 Reviewed-by: Michael Pratt Run-TryBot: Cuong Manh Le Auto-Submit: Cuong Manh Le TryBot-Result: Gopher Robot Reviewed-by: Keith Randall --- src/runtime/netpoll_aix.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/runtime/netpoll_aix.go b/src/runtime/netpoll_aix.go index 5247e56373..5184aad421 100644 --- a/src/runtime/netpoll_aix.go +++ b/src/runtime/netpoll_aix.go @@ -45,7 +45,7 @@ var ( wrwake int32 pendingUpdates int32 - netpollWakeSig uint32 // used to avoid duplicate calls of netpollBreak + netpollWakeSig atomic.Uint32 // used to avoid duplicate calls of netpollBreak ) func netpollinit() { @@ -136,7 +136,7 @@ func netpollarm(pd *pollDesc, mode int) { // netpollBreak interrupts a poll. func netpollBreak() { // Failing to cas indicates there is an in-flight wakeup, so we're done here. - if !atomic.Cas(&netpollWakeSig, 0, 1) { + if !netpollWakeSig.CompareAndSwap(0, 1) { return } @@ -196,7 +196,7 @@ retry: var b [1]byte for read(rdwake, unsafe.Pointer(&b[0]), 1) == 1 { } - atomic.Store(&netpollWakeSig, 0) + netpollWakeSig.Store(0) } // Still look at the other fds even if the mode may have // changed, as netpollBreak might have been called. -- 2.50.0