On Fri, Jul 29, 2022 at 10:55:45AM +0000, Juraj Linkeš wrote: <snip> > + self.session = pxssh.pxssh(encoding="utf-8") > + self.session.login( > + self.node, > + self.username, > + self.password, > + original_prompt="[$#>]", > + password_regex=r"(?i)(?:password:)|(?:passphrase for > key)|(?i)(password for .+:)", > + ) > + self.logger.info(f"Connection to {self.node} succeeded") > + self.send_expect("stty -echo", "#") > + self.send_expect("stty columns 1000", "#") First of all, thanks for those changes! Having DTS inside DPDK makes test synchronization a lot easier. I'm happy to say (unsurprisingly) that it works with my RISC-V HiFive Unmatched board like a charm.
Though there is a small issue with the lines above. They assume "#" as the prompt sign, even though original_prompt was set to "[$#>]". This touches on two problems: 1. # is usually a root prompt - is DTS assumed to be run with root privileges? DPDK may (in theory) run without them with some permission adjustment (hugetlb, VFIO container, etc.). If we assume DTS needs root access, this has to be both documented and validated before running the whole suite. Otherwise it'll be hard to debug. 2. Different shells use different prompts on different distros. Hence perhaps there should be a regex here (same as with original_prompt) and there could be a conf.yaml option to modify it on a per-host basis? -- Best Regards, Stanislaw Kardach