Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e264f22b authored by Colin Cross's avatar Colin Cross Committed by Gerrit Code Review
Browse files

Merge changes Ia77090da,I95a57f76

* changes:
  Fix data races in finder_test.go
  Optimize sanitizerRuntimeDepsMutator
parents 45cdb712 2f5a484e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -65,7 +65,7 @@ func init() {
		ctx.TopDown("tsan_deps", sanitizerDepsMutator(tsan))
		ctx.BottomUp("tsan", sanitizerMutator(tsan)).Parallel()

		ctx.TopDown("sanitize_runtime_deps", sanitizerRuntimeDepsMutator)
		ctx.TopDown("sanitize_runtime_deps", sanitizerRuntimeDepsMutator).Parallel()
		ctx.BottomUp("sanitize_runtime", sanitizerRuntimeMutator).Parallel()

		ctx.BottomUp("coverage", coverageMutator).Parallel()
+11 −2
Original line number Diff line number Diff line
@@ -705,8 +705,8 @@ func sanitizerRuntimeDepsMutator(mctx android.TopDownMutatorContext) {
			if !isSanitizableDependencyTag(mctx.OtherModuleDependencyTag(child)) {
				return false
			}
			if d, ok := child.(*Module); ok && d.static() && d.sanitize != nil {

			if d, ok := child.(*Module); ok && d.static() && d.sanitize != nil {
				if enableMinimalRuntime(d.sanitize) {
					// If a static dependency is built with the minimal runtime,
					// make sure we include the ubsan minimal runtime.
@@ -717,8 +717,17 @@ func sanitizerRuntimeDepsMutator(mctx android.TopDownMutatorContext) {
					// make sure we include the ubsan runtime.
					c.sanitize.Properties.UbsanRuntimeDep = true
				}

				if c.sanitize.Properties.MinimalRuntimeDep &&
					c.sanitize.Properties.UbsanRuntimeDep {
					// both flags that this mutator might set are true, so don't bother recursing
					return false
				}

				return true
			} else {
				return false
			}
		})
	}
}
+5 −5
Original line number Diff line number Diff line
@@ -891,8 +891,8 @@ func TestFileAdded(t *testing.T) {
			IncludeFiles: []string{"findme.txt"},
		},
	)
	foundPaths := finder.FindNamedAt("/tmp", "findme.txt")
	filesystem.Clock.Tick()
	foundPaths := finder.FindNamedAt("/tmp", "findme.txt")
	finder.Shutdown()
	// check the response of the first finder
	assertSameResponse(t, foundPaths, []string{"/tmp/a/findme.txt"})
@@ -1522,8 +1522,8 @@ func TestUpdatingDbIffChanged(t *testing.T) {
			IncludeFiles: []string{"hi.txt"},
		},
	)
	foundPaths := finder.FindAll()
	filesystem.Clock.Tick()
	foundPaths := finder.FindAll()
	finder.Shutdown()
	// check results
	assertSameResponse(t, foundPaths, []string{"/tmp/a/hi.txt"})
@@ -1583,8 +1583,8 @@ func TestDirectoryNotPermitted(t *testing.T) {
			IncludeFiles: []string{"hi.txt"},
		},
	)
	foundPaths := finder.FindAll()
	filesystem.Clock.Tick()
	foundPaths := finder.FindAll()
	finder.Shutdown()
	allPaths := []string{"/tmp/hi.txt", "/tmp/a/hi.txt", "/tmp/a/a/hi.txt", "/tmp/b/hi.txt"}
	// check results
@@ -1629,8 +1629,8 @@ func TestFileNotPermitted(t *testing.T) {
			IncludeFiles: []string{"hi.txt"},
		},
	)
	foundPaths := finder.FindAll()
	filesystem.Clock.Tick()
	foundPaths := finder.FindAll()
	finder.Shutdown()
	// check results
	assertSameResponse(t, foundPaths, []string{"/tmp/hi.txt"})
@@ -1650,8 +1650,8 @@ func TestCacheEntryPathUnexpectedError(t *testing.T) {
			IncludeFiles: []string{"hi.txt"},
		},
	)
	foundPaths := finder.FindAll()
	filesystem.Clock.Tick()
	foundPaths := finder.FindAll()
	finder.Shutdown()
	// check results
	assertSameResponse(t, foundPaths, []string{"/tmp/a/hi.txt"})