Skip to content

Commit aaca684

Browse files
authored
Merge branch 'main' into semver
2 parents a992688 + 0324791 commit aaca684

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

tests/framework/microvm.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -333,13 +333,23 @@ def kill(self):
333333
# https://github.com/firecracker-microvm/firecracker/pull/4442/commits/d63eb7a65ffaaae0409d15ed55d99ecbd29bc572
334334

335335
# filter ps results for the jailer's unique id
336-
_, stdout, stderr = utils.check_output(
337-
f"ps ax -o cmd -ww | grep {self.jailer.jailer_id}"
336+
_, stdout, stderr = utils.run_cmd(
337+
f"ps ax -o pid,cmd -ww | grep {self.jailer.jailer_id}"
338338
)
339+
340+
assert not stderr, f"error querying processes using `ps`: {stderr}"
341+
342+
offenders = []
343+
for proc in stdout.splitlines():
344+
_, cmd = proc.lower().split(maxsplit=1)
345+
if "firecracker" in proc and not cmd.startswith("screen"):
346+
offenders.append(proc)
347+
339348
# make sure firecracker was killed
340-
assert (
341-
stderr == "" and "firecracker" not in stdout
342-
), f"Firecracker reported its pid {self.firecracker_pid}, which was killed, but there still exist processes using the supposedly dead Firecracker's jailer_id: {stdout}"
349+
assert not offenders, (
350+
f"Firecracker reported its pid {self.firecracker_pid}, which was killed, but there still exist processes using the supposedly dead Firecracker's jailer_id: \n"
351+
+ "\n".join(offenders)
352+
)
343353

344354
if self.uffd_handler and self.uffd_handler.is_running():
345355
self.uffd_handler.kill()

tests/pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,4 +55,5 @@ disable = [
5555
"duplicate-code",
5656
"too-many-positional-arguments",
5757
"too-few-public-methods",
58+
"too-many-branches",
5859
]

0 commit comments

Comments
 (0)