Revert "rust: Add SCS sanitizer option."

This reverts commit 447f5b1ea9.

Reason for revert: b/293445283

Change-Id: Iadc6c7ed196be2a65329f86423730ba7f851002c
This commit is contained in:
Ivan Lozano
2023-07-27 14:52:20 +00:00
committed by Gerrit Code Review
parent 447f5b1ea9
commit f9780422b3
3 changed files with 13 additions and 36 deletions

View File

@@ -32,7 +32,6 @@ type SanitizeProperties struct {
Sanitize struct {
Address *bool `android:"arch_variant"`
Hwaddress *bool `android:"arch_variant"`
Scs *bool `android:"arch_variant"`
// Memory-tagging, only available on arm64
// if diag.memtag unset or false, enables async memory tagging
@@ -76,9 +75,6 @@ var fuzzerFlags = []string{
var asanFlags = []string{
"-Z sanitizer=address",
}
var scsFlags = []string{
"-Z sanitizer=shadow-call-stack",
}
// See cc/sanitize.go's hwasanGlobalOptions for global hwasan options.
var hwasanFlags = []string{
@@ -212,14 +208,9 @@ func (sanitize *sanitize) begin(ctx BaseModuleContext) {
s.Memtag_heap = nil
}
// SCS is only implemented on AArch64/riscv64.
if (ctx.Arch().ArchType != android.Arm64 && ctx.Arch().ArchType != android.Riscv64) || !ctx.toolchain().Bionic() {
s.Scs = nil
}
// TODO:(b/178369775)
// For now sanitizing is only supported on devices
if ctx.Os() == android.Android && (Bool(s.Hwaddress) || Bool(s.Address) || Bool(s.Memtag_heap) || Bool(s.Fuzzer) || Bool(s.Scs)) {
if ctx.Os() == android.Android && (Bool(s.Hwaddress) || Bool(s.Address) || Bool(s.Memtag_heap) || Bool(s.Fuzzer)) {
sanitize.Properties.SanitizerEnabled = true
}
}
@@ -238,10 +229,7 @@ func (sanitize *sanitize) flags(ctx ModuleContext, flags Flags, deps PathDeps) (
flags.RustFlags = append(flags.RustFlags, hwasanFlags...)
} else if Bool(sanitize.Properties.Sanitize.Address) {
flags.RustFlags = append(flags.RustFlags, asanFlags...)
} else if Bool(sanitize.Properties.Sanitize.Scs) {
flags.RustFlags = append(flags.RustFlags, scsFlags...)
}
return flags, deps
}
@@ -323,9 +311,6 @@ func (sanitize *sanitize) SetSanitizer(t cc.SanitizerType, b bool) {
case cc.Memtag_heap:
sanitize.Properties.Sanitize.Memtag_heap = boolPtr(b)
sanitizerSet = true
case cc.Scs:
sanitize.Properties.Sanitize.Scs = boolPtr(b)
sanitizerSet = true
default:
panic(fmt.Errorf("setting unsupported sanitizerType %d", t))
}
@@ -387,8 +372,6 @@ func (sanitize *sanitize) getSanitizerBoolPtr(t cc.SanitizerType) *bool {
return sanitize.Properties.Sanitize.Hwaddress
case cc.Memtag_heap:
return sanitize.Properties.Sanitize.Memtag_heap
case cc.Scs:
return sanitize.Properties.Sanitize.Scs
default:
return nil
}
@@ -401,10 +384,6 @@ func (sanitize *sanitize) AndroidMk(ctx AndroidMkContext, entries *android.Andro
if sanitize.isSanitizerEnabled(cc.Hwasan) {
entries.SubName += ".hwasan"
}
if sanitize.isSanitizerEnabled(cc.Scs) {
entries.SubName += ".scs"
}
}
}
@@ -425,8 +404,6 @@ func (mod *Module) SanitizerSupported(t cc.SanitizerType) bool {
return true
case cc.Memtag_heap:
return true
case cc.Scs:
return true
default:
return false
}