This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rGf31e390453d2: [lldb][AArch64] Don't check for VmFlags
in smaps files (authored by DavidSpickett).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D100493/new/
https://reviews.llvm.org/D100493
Files:
lldb/packages/Python/lldbsuite/test/lldbtest.py
lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
Index:
lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
===================================================================
---
lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
+++
lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
@@ -23,8 +23,12 @@
def test_mte_regions(self):
if not self.isAArch64MTE():
self.skipTest('Target must support MTE.')
- if not self.hasLinuxVmFlags():
- self.skipTest('/proc/{pid}/smaps VmFlags must be present')
+
+ # This test assumes that we have /proc/<PID>/smaps files
+ # that include "VmFlags:" lines.
+ # AArch64 kernel config defaults to enabling smaps with
+ # PROC_PAGE_MONITOR and "VmFlags" was added in kernel 3.8,
+ # before MTE was supported at all.
self.build()
self.runCmd("file " + self.getBuildArtifact("a.out"),
CURRENT_EXECUTABLE_SET)
Index: lldb/packages/Python/lldbsuite/test/lldbtest.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -1300,30 +1300,6 @@
def isAArch64PAuth(self):
return "paca" in self.getCPUInfo()
- def hasLinuxVmFlags(self):
- """ Check that the target machine has "VmFlags" lines in
- its /proc/{pid}/smaps files."""
-
- triple = self.dbg.GetSelectedPlatform().GetTriple()
- if not re.match(".*-.*-linux", triple):
- return False
-
- self.runCmd('platform process list')
- pid = None
- for line in self.res.GetOutput().splitlines():
- if 'lldb-server' in line:
- pid = line.split(' ')[0]
- break
-
- if pid is None:
- return False
-
- smaps_path = self.getBuildArtifact('smaps')
- self.runCmd('platform get-file "/proc/{}/smaps" {}'.format(pid,
smaps_path))
-
- with open(smaps_path, 'r') as f:
- return "VmFlags" in f.read()
-
def getArchitecture(self):
"""Returns the architecture in effect the test suite is running
with."""
module = builder_module()
Index: lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
===================================================================
--- lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
+++ lldb/test/API/linux/aarch64/mte_memory_region/TestAArch64LinuxMTEMemoryRegion.py
@@ -23,8 +23,12 @@
def test_mte_regions(self):
if not self.isAArch64MTE():
self.skipTest('Target must support MTE.')
- if not self.hasLinuxVmFlags():
- self.skipTest('/proc/{pid}/smaps VmFlags must be present')
+
+ # This test assumes that we have /proc/<PID>/smaps files
+ # that include "VmFlags:" lines.
+ # AArch64 kernel config defaults to enabling smaps with
+ # PROC_PAGE_MONITOR and "VmFlags" was added in kernel 3.8,
+ # before MTE was supported at all.
self.build()
self.runCmd("file " + self.getBuildArtifact("a.out"), CURRENT_EXECUTABLE_SET)
Index: lldb/packages/Python/lldbsuite/test/lldbtest.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -1300,30 +1300,6 @@
def isAArch64PAuth(self):
return "paca" in self.getCPUInfo()
- def hasLinuxVmFlags(self):
- """ Check that the target machine has "VmFlags" lines in
- its /proc/{pid}/smaps files."""
-
- triple = self.dbg.GetSelectedPlatform().GetTriple()
- if not re.match(".*-.*-linux", triple):
- return False
-
- self.runCmd('platform process list')
- pid = None
- for line in self.res.GetOutput().splitlines():
- if 'lldb-server' in line:
- pid = line.split(' ')[0]
- break
-
- if pid is None:
- return False
-
- smaps_path = self.getBuildArtifact('smaps')
- self.runCmd('platform get-file "/proc/{}/smaps" {}'.format(pid, smaps_path))
-
- with open(smaps_path, 'r') as f:
- return "VmFlags" in f.read()
-
def getArchitecture(self):
"""Returns the architecture in effect the test suite is running with."""
module = builder_module()
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits