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
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to