On 1/31/19 1:14 PM, Wainer dos Santos Moschetta wrote:
>
> On 01/17/2019 04: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.
>
> s/arch:mips/arch:mips64el
>
Good catch!
>>
>> 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é <f4...@amsat.org>
>> Signed-off-by: Cleber Rosa <cr...@redhat.com>
>> ---
>> .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
>>
>
> There references 1 and 2 are inverted.
>
And yet another one good catch! Your proofreading is awesome!
- Cleber.
> - Wainer
>
>> +
>> + :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)
>> +
>> + 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'
>> +
>> + self.vm.set_machine('malta')
>> + self.vm.set_console()
>> + kernel_command_line = 'console=ttyS0 printk.time=0'
>> + self.vm.add_args('-kernel', kernel_path,
>> + '-append', kernel_command_line)
>> + self.vm.launch()
>> + console_pattern = 'Kernel command line: %s' %
>> kernel_command_line
>> + self.wait_for_console_pattern(console_pattern)
>
--
Cleber Rosa
[ Sr Software Engineer - Virtualization Team - Red Hat ]
[ Avocado Test Framework - avocado-framework.github.io ]
[ 7ABB 96EB 8B46 B94D 5E0F E9BB 657E 8D33 A5F2 09F3 ]