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