tests: Optimize process memory reading using join
Appending to a bytes() object is rather inefficient. As such, avoid doing so by first creating a list and then joining all buffers together at the end only. Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
This commit is contained in:
parent
a1d7a9e3b7
commit
dc766bb57e
1 changed files with 3 additions and 3 deletions
|
@ -2625,7 +2625,7 @@ def find_wpas_process(dev):
|
|||
raise Exception("Could not find wpa_supplicant process")
|
||||
|
||||
def read_process_memory(pid, key=None):
|
||||
buf = bytes()
|
||||
buf = []
|
||||
logger.info("Reading process memory (pid=%d)" % pid)
|
||||
with open('/proc/%d/maps' % pid, 'r') as maps, \
|
||||
open('/proc/%d/mem' % pid, 'rb') as mem:
|
||||
|
@ -2651,11 +2651,11 @@ def read_process_memory(pid, key=None):
|
|||
except OSError as e:
|
||||
logger.info("Could not read mem: start=%d end=%d: %s" % (start, end, str(e)))
|
||||
continue
|
||||
buf += data
|
||||
buf.append(data)
|
||||
if key and key in data:
|
||||
logger.info("Key found in " + l)
|
||||
logger.info("Total process memory read: %d bytes" % len(buf))
|
||||
return buf
|
||||
return b''.join(buf)
|
||||
|
||||
def verify_not_present(buf, key, fname, keyname):
|
||||
pos = buf.find(key)
|
||||
|
|
Loading…
Reference in a new issue