diff options
author | Jeff Vander Stoep <jeffv@google.com> | 2016-06-03 13:36:04 -0700 |
---|---|---|
committer | Jeff Vander Stoep <jeffv@google.com> | 2016-06-03 13:41:43 -0700 |
commit | f9b94f16fce1700721756f423feab18231eedb38 (patch) | |
tree | 11770a40c520dbfea5dca397fa361d7fd6e82205 | |
parent | bb306d3a00bd4db9608fe7c2e26b7a4f6eb2504c (diff) | |
download | cts-f9b94f16fce1700721756f423feab18231eedb38.tar.gz |
Require CONFIG_SECURITY_PERF_EVENTS_RESTRICT
Bug: 29054680
Change-Id: I9b10e668ff164db16975b6473476da38f509faaf
-rw-r--r-- | hostsidetests/security/src/android/cts/security/PerfEventParanoidTest.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/hostsidetests/security/src/android/cts/security/PerfEventParanoidTest.java b/hostsidetests/security/src/android/cts/security/PerfEventParanoidTest.java new file mode 100644 index 00000000000..b581dbeb46a --- /dev/null +++ b/hostsidetests/security/src/android/cts/security/PerfEventParanoidTest.java @@ -0,0 +1,47 @@ +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package android.security.cts; + +import com.android.tradefed.device.ITestDevice; +import com.android.tradefed.device.DeviceNotAvailableException; +import com.android.tradefed.testtype.DeviceTestCase; + +public class PerfEventParanoidTest extends DeviceTestCase { + + /** + * a reference to the device under test. + */ + private ITestDevice mDevice; + + private static final String PERF_EVENT_PARANOID_PATH = "/proc/sys/kernel/perf_event_paranoid"; + + @Override + protected void setUp() throws Exception { + super.setUp(); + mDevice = getDevice(); + } + + public void testPerfEventRestricted() throws DeviceNotAvailableException { + String cmd = "cat " + PERF_EVENT_PARANOID_PATH; + String output = mDevice.executeShellCommand(cmd); + assertTrue("\n/proc/sys/kernel/perf_event_paranoid=3 is required.\n" + + "Please add CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y\n" + + "to your device kernel's defconfig and apply the\n" + + "appropriate patches for your kernel located here:\n" + + "https://android-review.googlesource.com/#/q/topic:CONFIG_SECURITY_PERF_EVENTS_RESTRICT", + output.equals("3\n")); + } +} |