mirror of
https://github.com/golang/go.git
synced 2025-05-18 05:44:35 +00:00
syscall: use internal/asan and internal/msan
Now with internal/asan and internal/msan available we can cleanup syscall's duplicated definitions. For #64611 Change-Id: If714d04ed2d32a4ed27305b3e3dc64ba8cdd1b61 GitHub-Last-Rev: e52fff1513bf74305d7abd142f71a60215bb93fc GitHub-Pull-Request: golang/go#65935 Reviewed-on: https://go-review.googlesource.com/c/go/+/566755 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: qiulaidongfeng <2645477756@qq.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
This commit is contained in:
parent
68d3a9e417
commit
0a6f05e30f
@ -1,22 +0,0 @@
|
|||||||
// Copyright 2021 The Go Authors. All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
//go:build asan
|
|
||||||
|
|
||||||
package syscall
|
|
||||||
|
|
||||||
import (
|
|
||||||
"runtime"
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
const asanenabled = true
|
|
||||||
|
|
||||||
func asanRead(addr unsafe.Pointer, len int) {
|
|
||||||
runtime.ASanRead(addr, len)
|
|
||||||
}
|
|
||||||
|
|
||||||
func asanWrite(addr unsafe.Pointer, len int) {
|
|
||||||
runtime.ASanWrite(addr, len)
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
// Copyright 2021 The Go Authors. All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
//go:build !asan
|
|
||||||
|
|
||||||
package syscall
|
|
||||||
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
const asanenabled = false
|
|
||||||
|
|
||||||
func asanRead(addr unsafe.Pointer, len int) {
|
|
||||||
}
|
|
||||||
|
|
||||||
func asanWrite(addr unsafe.Pointer, len int) {
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
// Copyright 2015 The Go Authors. All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
//go:build msan
|
|
||||||
|
|
||||||
package syscall
|
|
||||||
|
|
||||||
import (
|
|
||||||
"runtime"
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
const msanenabled = true
|
|
||||||
|
|
||||||
func msanRead(addr unsafe.Pointer, len int) {
|
|
||||||
runtime.MSanRead(addr, len)
|
|
||||||
}
|
|
||||||
|
|
||||||
func msanWrite(addr unsafe.Pointer, len int) {
|
|
||||||
runtime.MSanWrite(addr, len)
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
// Copyright 2015 The Go Authors. All rights reserved.
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
//go:build !msan
|
|
||||||
|
|
||||||
package syscall
|
|
||||||
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
const msanenabled = false
|
|
||||||
|
|
||||||
func msanRead(addr unsafe.Pointer, len int) {
|
|
||||||
}
|
|
||||||
|
|
||||||
func msanWrite(addr unsafe.Pointer, len int) {
|
|
||||||
}
|
|
@ -8,8 +8,10 @@ package syscall
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
errorspkg "errors"
|
errorspkg "errors"
|
||||||
|
"internal/asan"
|
||||||
"internal/bytealg"
|
"internal/bytealg"
|
||||||
"internal/itoa"
|
"internal/itoa"
|
||||||
|
"internal/msan"
|
||||||
"internal/oserror"
|
"internal/oserror"
|
||||||
"internal/race"
|
"internal/race"
|
||||||
"runtime"
|
"runtime"
|
||||||
@ -187,11 +189,11 @@ func Read(fd int, p []byte) (n int, err error) {
|
|||||||
race.Acquire(unsafe.Pointer(&ioSync))
|
race.Acquire(unsafe.Pointer(&ioSync))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if msanenabled && n > 0 {
|
if msan.Enabled && n > 0 {
|
||||||
msanWrite(unsafe.Pointer(&p[0]), n)
|
msan.Write(unsafe.Pointer(&p[0]), uintptr(n))
|
||||||
}
|
}
|
||||||
if asanenabled && n > 0 {
|
if asan.Enabled && n > 0 {
|
||||||
asanWrite(unsafe.Pointer(&p[0]), n)
|
asan.Write(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -211,11 +213,11 @@ func Write(fd int, p []byte) (n int, err error) {
|
|||||||
if race.Enabled && n > 0 {
|
if race.Enabled && n > 0 {
|
||||||
race.ReadRange(unsafe.Pointer(&p[0]), n)
|
race.ReadRange(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
if msanenabled && n > 0 {
|
if msan.Enabled && n > 0 {
|
||||||
msanRead(unsafe.Pointer(&p[0]), n)
|
msan.Read(unsafe.Pointer(&p[0]), uintptr(n))
|
||||||
}
|
}
|
||||||
if asanenabled && n > 0 {
|
if asan.Enabled && n > 0 {
|
||||||
asanRead(unsafe.Pointer(&p[0]), n)
|
asan.Read(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -230,11 +232,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
|
|||||||
race.Acquire(unsafe.Pointer(&ioSync))
|
race.Acquire(unsafe.Pointer(&ioSync))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if msanenabled && n > 0 {
|
if msan.Enabled && n > 0 {
|
||||||
msanWrite(unsafe.Pointer(&p[0]), n)
|
msan.Write(unsafe.Pointer(&p[0]), uintptr(n))
|
||||||
}
|
}
|
||||||
if asanenabled && n > 0 {
|
if asan.Enabled && n > 0 {
|
||||||
asanWrite(unsafe.Pointer(&p[0]), n)
|
asan.Write(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -247,11 +249,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
|||||||
if race.Enabled && n > 0 {
|
if race.Enabled && n > 0 {
|
||||||
race.ReadRange(unsafe.Pointer(&p[0]), n)
|
race.ReadRange(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
if msanenabled && n > 0 {
|
if msan.Enabled && n > 0 {
|
||||||
msanRead(unsafe.Pointer(&p[0]), n)
|
msan.Read(unsafe.Pointer(&p[0]), uintptr(n))
|
||||||
}
|
}
|
||||||
if asanenabled && n > 0 {
|
if asan.Enabled && n > 0 {
|
||||||
asanRead(unsafe.Pointer(&p[0]), n)
|
asan.Read(unsafe.Pointer(&p[0]), n)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,10 @@ package syscall
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
errorspkg "errors"
|
errorspkg "errors"
|
||||||
|
"internal/asan"
|
||||||
"internal/bytealg"
|
"internal/bytealg"
|
||||||
"internal/itoa"
|
"internal/itoa"
|
||||||
|
"internal/msan"
|
||||||
"internal/oserror"
|
"internal/oserror"
|
||||||
"internal/race"
|
"internal/race"
|
||||||
"runtime"
|
"runtime"
|
||||||
@ -446,11 +448,11 @@ func ReadFile(fd Handle, p []byte, done *uint32, overlapped *Overlapped) error {
|
|||||||
}
|
}
|
||||||
race.Acquire(unsafe.Pointer(&ioSync))
|
race.Acquire(unsafe.Pointer(&ioSync))
|
||||||
}
|
}
|
||||||
if msanenabled && *done > 0 {
|
if msan.Enabled && *done > 0 {
|
||||||
msanWrite(unsafe.Pointer(&p[0]), int(*done))
|
msan.Write(unsafe.Pointer(&p[0]), uintptr(*done))
|
||||||
}
|
}
|
||||||
if asanenabled && *done > 0 {
|
if asan.Enabled && *done > 0 {
|
||||||
asanWrite(unsafe.Pointer(&p[0]), int(*done))
|
asan.Write(unsafe.Pointer(&p[0]), int(*done))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -463,11 +465,11 @@ func WriteFile(fd Handle, p []byte, done *uint32, overlapped *Overlapped) error
|
|||||||
if race.Enabled && *done > 0 {
|
if race.Enabled && *done > 0 {
|
||||||
race.ReadRange(unsafe.Pointer(&p[0]), int(*done))
|
race.ReadRange(unsafe.Pointer(&p[0]), int(*done))
|
||||||
}
|
}
|
||||||
if msanenabled && *done > 0 {
|
if msan.Enabled && *done > 0 {
|
||||||
msanRead(unsafe.Pointer(&p[0]), int(*done))
|
msan.Read(unsafe.Pointer(&p[0]), uintptr(*done))
|
||||||
}
|
}
|
||||||
if asanenabled && *done > 0 {
|
if asan.Enabled && *done > 0 {
|
||||||
asanRead(unsafe.Pointer(&p[0]), int(*done))
|
asan.Read(unsafe.Pointer(&p[0]), int(*done))
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user