From 1f0a21a16bcefed7474bb1b441b0e1248d8e5269 Mon Sep 17 00:00:00 2001 From: Lukas Lendvorsky Date: Tue, 4 Nov 2025 17:21:09 +0100 Subject: [PATCH] Silence kernel everytime, regardless of login prompt Login prompt is optional, you can have autologin on, and if that is the case dmesg logs would never be disabled. Signed-off-by: Lukas Lendvorsky --- labgrid/driver/shelldriver.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/labgrid/driver/shelldriver.py b/labgrid/driver/shelldriver.py index 7d476f536..9dbe079fc 100644 --- a/labgrid/driver/shelldriver.py +++ b/labgrid/driver/shelldriver.py @@ -124,7 +124,6 @@ def _await_login(self): # Because pexpect keeps any read data in it's buffer when a timeout # occours, we can't lose any data this way. last_before = b'' - did_login = False did_silence_kernel = False while True: @@ -134,7 +133,7 @@ def _await_login(self): ) if index == 0: - if did_login and not did_silence_kernel: + if not did_silence_kernel: # Silence the kernel and wait for another prompt self.console.sendline("dmesg -n 1") did_silence_kernel = True @@ -147,7 +146,6 @@ def _await_login(self): elif index == 1: # we need to login self.console.sendline(self.username) - did_login = True elif index == 2: if self.password is not None: @@ -176,10 +174,9 @@ def _await_login(self): if timeout.expired: raise TIMEOUT(f"Timeout of {self.login_timeout} seconds exceeded during waiting for login") # pylint: disable=line-too-long - if did_login: - if self.post_login_settle_time > 0: - self.console.settle(self.post_login_settle_time, timeout=timeout.remaining) - self._check_prompt() + if self.post_login_settle_time > 0: + self.console.settle(self.post_login_settle_time, timeout=timeout.remaining) + self._check_prompt() @step() def get_status(self):