* [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures @ 2024-04-18 11:34 Harish.Sadineni 2024-04-18 11:34 ` [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions Harish.Sadineni 2024-04-18 11:38 ` [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Sadineni, Harish 0 siblings, 2 replies; 4+ messages in thread From: Harish.Sadineni @ 2024-04-18 11:34 UTC (permalink / raw) To: openembedded-core Cc: Randy.MacLeod, Naveen.Gowda, Sundeep.Kokkonda, Shivaprasad.Moodalappa From: Harish Sadineni <Harish.Sadineni@windriver.com> while runnig oe-selftest for gcc, testcases that need to be run on qemu are not running due to below failures. - Executing on ssh: mkdir -p /tmp/runtest.3549641 (timeout = 300) spawn [open ...] Host key verification failed. ERROR: Couldn't create remote directory /tmp/runtest.3549641 on ssh - kex_exchange_identification: read: Connection reset by peer^M Connection reset by 192.168.7.2 port 22^M ERROR: Couldn't create remote directory /tmp/runtest.3549814 on ssh Host key verification failure is happening when ssh board config file name is defined as "ssh.exp" and there are multiple ssh.exp files generated during the build and a wrong ssh config was taken. To resolve this changed the board config file name to "linux-ssh.exp" which ensures correct ssh settings are used. To resolve kex exchange identification error increased the MaxStartups. Signed-off-by: Harish Sadineni <Harish.Sadineni@windriver.com> --- meta/lib/oeqa/selftest/cases/gcc.py | 2 +- meta/recipes-connectivity/openssh/openssh/sshd_config | 2 +- meta/recipes-devtools/gcc/gcc-testsuite.inc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/gcc.py b/meta/lib/oeqa/selftest/cases/gcc.py index 89360178fe..4cc0894d42 100644 --- a/meta/lib/oeqa/selftest/cases/gcc.py +++ b/meta/lib/oeqa/selftest/cases/gcc.py @@ -37,7 +37,7 @@ class GccSelfTestBase(OESelftestTestCase, OEPTestResultTestCase): features = [] features.append('MAKE_CHECK_TARGETS = "{0}"'.format(" ".join(targets))) if ssh is not None: - features.append('TOOLCHAIN_TEST_TARGET = "ssh"') + features.append('TOOLCHAIN_TEST_TARGET = "linux-ssh"') features.append('TOOLCHAIN_TEST_HOST = "{0}"'.format(ssh)) features.append('TOOLCHAIN_TEST_HOST_USER = "root"') features.append('TOOLCHAIN_TEST_HOST_PORT = "22"') diff --git a/meta/recipes-connectivity/openssh/openssh/sshd_config b/meta/recipes-connectivity/openssh/openssh/sshd_config index e9eaf93157..b9357ef6c5 100644 --- a/meta/recipes-connectivity/openssh/openssh/sshd_config +++ b/meta/recipes-connectivity/openssh/openssh/sshd_config @@ -100,7 +100,7 @@ ClientAliveInterval 15 ClientAliveCountMax 4 #UseDNS no #PidFile /var/run/sshd.pid -#MaxStartups 10:30:100 +MaxStartups 75:30:100 #PermitTunnel no #ChrootDirectory none #VersionAddendum none diff --git a/meta/recipes-devtools/gcc/gcc-testsuite.inc b/meta/recipes-devtools/gcc/gcc-testsuite.inc index f16d471478..0a950b6c9e 100644 --- a/meta/recipes-devtools/gcc/gcc-testsuite.inc +++ b/meta/recipes-devtools/gcc/gcc-testsuite.inc @@ -101,7 +101,7 @@ python check_prepare() { f.write(generate_qemu_linux_user_config(d)) # write out target ssh board config - with open(os.path.join(dejagnudir, "ssh.exp"), "w") as f: + with open(os.path.join(dejagnudir, "linux-ssh.exp"), "w") as f: f.write(generate_remote_ssh_linux_config(d)) # generate site.exp to provide boards -- 2.43.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions 2024-04-18 11:34 [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Harish.Sadineni @ 2024-04-18 11:34 ` Harish.Sadineni 2024-04-18 11:40 ` Sadineni, Harish 2024-04-18 11:38 ` [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Sadineni, Harish 1 sibling, 1 reply; 4+ messages in thread From: Harish.Sadineni @ 2024-04-18 11:34 UTC (permalink / raw) To: openembedded-core Cc: Randy.MacLeod, Naveen.Gowda, Sundeep.Kokkonda, Shivaprasad.Moodalappa From: Harish Sadineni <Harish.Sadineni@windriver.com> Reusing SSH Connection to speed up remote login process using multiplexing to reduce time taken while running oe-selftest for gcc. Signed-off-by: Harish Sadineni <Harish.Sadineni@windriver.com> --- meta/lib/oeqa/selftest/cases/gcc.py | 10 ++++++++++ meta/recipes-connectivity/openssh/openssh/sshd_config | 2 +- meta/recipes-devtools/gcc/gcc-testsuite.inc | 3 ++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/gcc.py b/meta/lib/oeqa/selftest/cases/gcc.py index 4cc0894d42..992a5b74be 100644 --- a/meta/lib/oeqa/selftest/cases/gcc.py +++ b/meta/lib/oeqa/selftest/cases/gcc.py @@ -5,6 +5,7 @@ # import os import time +import subprocess from oeqa.core.decorator import OETestTag from oeqa.core.case import OEPTestResultTestCase from oeqa.selftest.case import OESelftestTestCase @@ -83,6 +84,15 @@ class GccSelfTestBase(OESelftestTestCase, OEPTestResultTestCase): # validate that SSH is working status, _ = qemu.run("uname") self.assertEqual(status, 0) + qemu_ip = qemu.ip + ssh_command = [ + "ssh", "-o", "StrictHostKeyChecking=no", + "-o", "UserKnownHostsFile=/dev/null", + "-o", "ControlMaster=auto", + "-o", "ControlPath=~/.ssh/control-%r@%h:%p", + "-o", "Controlpersist=yes", "root@{}".format(qemu_ip), + "exit" ] + subprocess.run(ssh_command, check=True) return self.run_check(*args, ssh=qemu.ip, **kwargs) diff --git a/meta/recipes-connectivity/openssh/openssh/sshd_config b/meta/recipes-connectivity/openssh/openssh/sshd_config index b9357ef6c5..37ffe28142 100644 --- a/meta/recipes-connectivity/openssh/openssh/sshd_config +++ b/meta/recipes-connectivity/openssh/openssh/sshd_config @@ -34,7 +34,7 @@ Include /etc/ssh/sshd_config.d/*.conf #PermitRootLogin prohibit-password #StrictModes yes #MaxAuthTries 6 -#MaxSessions 10 +MaxSessions 1000 #PubkeyAuthentication yes diff --git a/meta/recipes-devtools/gcc/gcc-testsuite.inc b/meta/recipes-devtools/gcc/gcc-testsuite.inc index 0a950b6c9e..62e9691a99 100644 --- a/meta/recipes-devtools/gcc/gcc-testsuite.inc +++ b/meta/recipes-devtools/gcc/gcc-testsuite.inc @@ -87,7 +87,8 @@ python check_prepare() { content.append("set_board_info username {0}".format(d.getVar("TOOLCHAIN_TEST_HOST_USER"))) port = d.getVar("TOOLCHAIN_TEST_HOST_PORT") - content.append("set_board_info rsh_prog \"/usr/bin/ssh -p {0} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no\"".format(port)) + qemuip_address = d.getVar("TOOLCHAIN_TEST_HOST") + content.append("set_board_info rsh_prog \"/usr/bin/ssh -S ~/.ssh/control-root@{0}:{1} \"".format( qemuip_address, port)) content.append("set_board_info rcp_prog \"/usr/bin/scp -P {0} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no\"".format(port)) return "\n".join(content) -- 2.43.0 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions 2024-04-18 11:34 ` [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions Harish.Sadineni @ 2024-04-18 11:40 ` Sadineni, Harish 0 siblings, 0 replies; 4+ messages in thread From: Sadineni, Harish @ 2024-04-18 11:40 UTC (permalink / raw) To: openembedded-core [-- Attachment #1: Type: text/plain, Size: 216 bytes --] Time taken to run gcc testsuite w/o multiple ssh sessions -> 16-18 hrs Time taken to run gcc testsuite w/ multiple ssh sessions -> 11-12 hrs There is an improvement of ~30% in execution time. Thanks, Harish [-- Attachment #2: Type: text/html, Size: 1258 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures 2024-04-18 11:34 [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Harish.Sadineni 2024-04-18 11:34 ` [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions Harish.Sadineni @ 2024-04-18 11:38 ` Sadineni, Harish 1 sibling, 0 replies; 4+ messages in thread From: Sadineni, Harish @ 2024-04-18 11:38 UTC (permalink / raw) To: openembedded-core [-- Attachment #1: Type: text/plain, Size: 2425 bytes --] testresults before applying patch for x86_64 : | gcc | g++ | libatomic | libgomp | libitm | libstdc++ | Total (Sum of all modules) expected passes | 148313 | 218545 | 27 | 3369 | 24 | 9693 | 379971 unexpected failures | 15 | 20 | | | | | 35 expected failures | 1419 | 2052 | | 30 | | 6 | 3507 unresolved testcases | 25130 | 10816 | 27 | 1579 | 22 | 4869 | 42443 unsupported tests | 2686 | 10420 | | 410 | 2 | 643 | 14161 testresults after applying patch for x86_64: | gcc | g++ | libatomic | libgomp | libitm | libstdc++ | Total (Sum of all modules) expected passes | 177610 | 230158 | 54 | 5033 | 24 | 13695 | 426574 unexpected failures | 99 | 20 | | 1 | 19 | 7 | 146 expected failures | 1422 | 2063 | | 32 | 3 | 106 | 3626 unresolved testcases | 4 | | | | | 1125 | 1129 unsupported tests | 2147 | 10350 | | 429 | 2 | 805 | 13733 Unresolved cases are reduced to ~1000 (i.e., More than 41K tests are newly executed) More than 45000 tests cases are passed newly. Thanks, Harish [-- Attachment #2: Type: text/html, Size: 5311 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-04-18 11:40 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-04-18 11:34 [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Harish.Sadineni 2024-04-18 11:34 ` [PATCH 2/2] gcc: Oe-selftest failure analysis - allowing multiple ssh sessions Harish.Sadineni 2024-04-18 11:40 ` Sadineni, Harish 2024-04-18 11:38 ` [PATCH 1/2] gcc: fix for host key verfication & kex exchange identification failures Sadineni, Harish
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.