From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:42903) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gp9Wi-0006AZ-IZ for qemu-devel@nongnu.org; Thu, 31 Jan 2019 05:24:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gp9Wh-0008HD-Dt for qemu-devel@nongnu.org; Thu, 31 Jan 2019 05:24:56 -0500 Received: from mail-wm1-f65.google.com ([209.85.128.65]:50304) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gp9Wh-0008GF-8M for qemu-devel@nongnu.org; Thu, 31 Jan 2019 05:24:55 -0500 Received: by mail-wm1-f65.google.com with SMTP id n190so1896216wmd.0 for ; Thu, 31 Jan 2019 02:24:55 -0800 (PST) References: <20190117185628.21862-1-crosa@redhat.com> <20190117185628.21862-14-crosa@redhat.com> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= Message-ID: Date: Thu, 31 Jan 2019 11:24:51 +0100 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 13/18] Boot Linux Console Test: add a test for mips64el + malta List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Cleber Rosa , qemu-devel@nongnu.org Cc: =?UTF-8?Q?Alex_Benn=c3=a9e?= , Stefan Markovic , Aleksandar Markovic , Eduardo Habkost , Caio Carrara , qemu-s390x@nongnu.org, Aurelien Jarno , Cornelia Huck , Fam Zheng , Wainer dos Santos Moschetta , Aleksandar Rikalo , =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= On 1/31/19 2:26 AM, Cleber Rosa wrote: > On 1/22/19 5:19 AM, Philippe Mathieu-Daudé wrote: >> Hi Cleber, >> >> On 1/17/19 7:56 PM, Cleber Rosa wrote: >>> Similar to the x86_64 + pc test, it boots a Linux kernel on a Malta >>> board and verify the serial is working. >>> >>> If mips64el is a target being built, "make check-acceptance" will >>> automatically include this test by the use of the "arch:mips" tags. >>> >>> Alternatively, this test can be run using: >>> >>> $ avocado run -t arch:mips64el tests/acceptance >>> $ avocado run -t machine:malta tests/acceptance >>> >>> Signed-off-by: Philippe Mathieu-Daudé >>> Signed-off-by: Cleber Rosa >>> --- >>> .travis.yml | 2 +- >>> tests/acceptance/boot_linux_console.py | 39 ++++++++++++++++++++++++++ >>> 2 files changed, 40 insertions(+), 1 deletion(-) >>> >>> diff --git a/.travis.yml b/.travis.yml >>> index 49f9016e6a..28648f7a61 100644 >>> --- a/.travis.yml >>> +++ b/.travis.yml >>> @@ -187,7 +187,7 @@ matrix: >>> >>> # Acceptance (Functional) tests >>> - env: >>> - - CONFIG="--python=/usr/bin/python3 --target-list=x86_64-softmmu,mips-softmmu" >>> + - CONFIG="--python=/usr/bin/python3 --target-list=x86_64-softmmu,mips-softmmu,mips64el-softmmu" >>> - TEST_CMD="make check-acceptance" >>> addons: >>> apt: >>> diff --git a/tests/acceptance/boot_linux_console.py b/tests/acceptance/boot_linux_console.py >>> index 0678ec91d2..20b845fce1 100644 >>> --- a/tests/acceptance/boot_linux_console.py >>> +++ b/tests/acceptance/boot_linux_console.py >>> @@ -9,8 +9,11 @@ >>> # later. See the COPYING file in the top-level directory. >>> >>> import logging >>> +import os >>> >>> from avocado_qemu import Test >>> +from avocado.utils import process >>> +from avocado.utils import archive >>> >>> >>> class BootLinuxConsole(Test): >>> @@ -80,3 +83,39 @@ class BootLinuxConsole(Test): >>> self.vm.launch() >>> console_pattern = 'Kernel command line: %s' % kernel_command_line >>> self.wait_for_console_pattern(console_pattern) >>> + >>> + def test_mips64el_malta(self): >>> + """ >>> + This test requires the ar tool to extract "data.tar.gz" from >>> + the Debian package. >>> + >>> + The kernel can be rebuilt using this Debian kernel source [1] and >>> + following the instructions on [2]. >>> + >>> + [1] https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#s-common-official >>> + [2] http://snapshot.debian.org/package/linux-2.6/2.6.32-48/#linux-source-2.6.32_2.6.32-48 >>> + >>> + :avocado: tags=arch:mips64el >>> + :avocado: tags=machine:malta >>> + """ >>> + deb_url = ('http://snapshot.debian.org/archive/debian/20130217T032700Z/' >>> + 'pool/main/l/linux-2.6/' >>> + 'linux-image-2.6.32-5-5kc-malta_2.6.32-48_mipsel.deb') >>> + deb_hash = '1aaec92083bf22fda31e0d27fa8d9a388e5fc3d5' >>> + deb_path = self.fetch_asset(deb_url, asset_hash=deb_hash) >>> + >> >> Can you refactor this code ... >> >>> + cwd = os.getcwd() >>> + os.chdir(self.workdir) >>> + process.run("ar x %s data.tar.gz" % deb_path) >>> + archive.extract("data.tar.gz", self.workdir) >>> + os.chdir(cwd) >>> + kernel_path = self.workdir + '/boot/vmlinux-2.6.32-5-5kc-malta' >> >> ... as an helper function? >> > > Yes. In fact, because of the kernel change in the previous patch, I've > added it there. > >> Can be follow-up patch, so: >> Reviewed-by: Philippe Mathieu-Daudé >> > > In the longer term, I expect to add deb (and RPM, etc) support to the > avocado.utils.archive module: > > https://trello.com/c/bQBnvkjv/1437-avocadoutilsarchive-support-rpm-deb-etc Awesome, thanks!