1 # SPDX-License-Identifier: GPL-2.0 2 # 3 # Copyright 2019 Google LLC. 4 5 import gdb 6 import zlib 7 8 from linux import utils 9 10 11 class LxConfigDump(gdb.Command): 12 """Output kernel config to the filename sp 13 argument. Equivalent to 'zcat /proc/con 14 a running target""" 15 16 def __init__(self): 17 super(LxConfigDump, self).__init__("lx 18 gdb 19 20 def invoke(self, arg, from_tty): 21 if len(arg) == 0: 22 filename = "config.txt" 23 else: 24 filename = arg 25 26 try: 27 py_config_ptr = gdb.parse_and_eval 28 py_config_ptr_end = gdb.parse_and_ 29 py_config_size = py_config_ptr_end 30 except gdb.error as e: 31 raise gdb.GdbError("Can't find con 32 33 inf = gdb.inferiors()[0] 34 zconfig_buf = utils.read_memoryview(in 35 py 36 37 config_buf = zlib.decompress(zconfig_b 38 with open(filename, 'wb') as f: 39 f.write(config_buf) 40 41 gdb.write("Dumped config to " + filena 42 43 44 LxConfigDump()
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.