Re: kvm-unit-tests : Kconfigs and extra kernel args for full coverage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alexandru,

On Mon, 24 Feb 2020 at 19:17, Alexandru Elisei <alexandru.elisei@xxxxxxx> wrote:
>
> Hi,
>
> On 2/24/20 1:38 PM, Andrew Jones wrote:
> > On Mon, Feb 24, 2020 at 01:21:23PM +0000, Alexandru Elisei wrote:
> >> Hi Naresh,
> >>
> >> On 2/24/20 12:53 PM, Naresh Kamboju wrote:
> >>> [Sorry for the spam]
> >>>
> >>> Greeting from Linaro !
> >>> We are running kvm-unit-tests on our CI Continuous Integration and
> >>> testing on x86_64 and arm64 Juno-r2.
> >>> Linux stable branches and Linux mainline and Linux next.
> >>>
> >>> Few tests getting fail and skipped, we are interested in increasing the
> >>> test coverage by adding required kernel config fragments,
> >>> kernel command line arguments and user space tools.
> >>>
> >>> Your help is much appreciated.
> >>>
> >>> Here is the details of the LKFT kvm unit test logs,
> >>>
> >>> [..]
> >> I am going to comment on the arm64 tests. As far as I am aware, you don't need any
> >> kernel configs to run the tests.
> >>
> >> From looking at the java log [1], I can point out a few things:
> >>
> >> - The gicv3 tests are failing because Juno has a gicv2 and the kernel refuses to
> >> create a virtual gicv3. It's normal.
> > Yup
> >
> >> - I am not familiar with the PMU test, so I cannot help you with that.
> > Where is the output from running the PMU test? I didn't see it in the link
> > below.
>
> It's toward the end, it just says that 2 tests failed:
>
> |TESTNAME=pmu TIMEOUT=90s ACCEL= ./arm/run arm/pmu.flat -smp 1|
> |[31mFAIL[0m pmu (3 tests, 2 unexpected failures)|
> >
> >> - Without the logs, it's hard for me to say why the micro-bench test is failing.
> >> Can you post the logs for that particular run?

Would it be a good idea to print failed log on console when test fails ?

timeout -k 1s --foreground 90s /usr/bin/qemu-system-aarch64
-nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device
virtio-serial-device -device virtconsole,chardev=ctd -chardev
testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel
arm/pmu.flat -smp 1 # -initrd /tmp/tmp.ZJ05lRvgc4
INFO: PMU version: 3
INFO: pmu: PMU implementer/ID code/counters: 0x41(\"A\")/0x3/6
PASS: pmu: Control register
Read 0 then 0.
FAIL: pmu: Monotonically increasing cycle count
instrs : cycles0 cycles1 ...
4:    0
cycles not incrementing!
FAIL: pmu: Cycle/instruction ratio
SUMMARY: 3 tests, 2 unexpected failures


>>> They are located in
> >> /path/to/kvm-unit-tests/logs/micro-bench.log. My guess is that it has to do with
> >> the fact that you are using taskset to keep the tests on one CPU. Micro-bench will
> >> use 2 VCPUs to send 2^28 IPIs which will run on the same physical CPU, and sending
> >> and receiving them will be serialized which will incur a *lot* of overhead. I
> >> tried the same test without taskset, and it worked. With taskset -c 0, it timed
> >> out like in your log.
> > We've also had "failures" of the micro-bench test when run under avocado
> > reported. The problem was/is the assert_msg() on line 107 is firing. We
> > could probably increase the number of tries or change the assert to a
> > warning. Of course micro-bench isn't a "test" anyway so it can't "fail".
> > Well, not unless one goes through the trouble of preparing expected times
> > for each measurement for a given host and then compares new results to
> > those expectations. Then it could fail when the results are too large
> > (some threshold must be defined too).
>
> That happens to me too on occasions when running under kvmtool. When it does I
> just rerun the test and it passes almost always. But I think that's not the case
> here, since the test times out:

micro-bench [1] always timeout on arm64 juno-r2 running with taskset -c 0
with new test code it failed it used to be skipped.

>
> |TESTNAME=micro-bench TIMEOUT=90s ACCEL=kvm ./arm/run arm/micro-bench.flat -smp 2|
> |[31mFAIL[0m micro-bench (timeout; duration=90s)|
>
> I tried it and I got the same message, and the in the log:
>
> $ cat logs/micro-bench.log
> timeout -k 1s --foreground 90s /usr/bin/qemu-system-aarch64 -nodefaults -machine
> virt,gic-version=host,accel=kvm -cpu host -device virtio-serial-device -device
> virtconsole,chardev=ctd -chardev testdev,id=ctd -device pci-testdev -display none
> -serial stdio -kernel arm/micro-bench.flat -smp 2 # -initrd /tmp/tmp.XXOYQIrjIM
> Timer Frequency 40000000 Hz (Output in microseconds)
>
> name                                    total ns                         avg
> ns
> --------------------------------------------------------------------------------------------
> hvc                                  87727475.0
> 1338.0
> mmio_read_user                      348083225.0
> 5311.0
> mmio_read_vgic                      125456300.0
> 1914.0
> eoi                                    820875.0
> 12.0
> qemu-system-aarch64: terminating on signal 15 from pid 23273 (timeout)

timeout -k 1s --foreground 90s /usr/bin/qemu-system-aarch64
-nodefaults -machine virt,gic-version=host,accel=kvm -cpu host -device
virtio-serial-device -device virtconsole,chardev=ctd -chardev
testdev,id=ctd -device pci-testdev -display none -serial stdio -kernel
arm/micro-bench.flat -smp 2 # -initrd /tmp/tmp.urqlMsBpJd
Timer Frequency 50000000 Hz (Output in microseconds)
name                          total ns               avg ns
--------------------------------------------------------------------------------------------
hvc                              296915440.0                         4530.0
mmio_read_user      1322325100.0                        20177.0
mmio_read_vgic         462255460.0                         7053.0
eoi                                  6779880.0                          103.0
qemu-system-aarch64: terminating on signal 15 from pid 3097 (timeout)

[1]
https://qa-reports.linaro.org/lkft/linux-mainline-oe/tests/kvm-unit-tests/micro-bench

>
> Thanks,
> Alex



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux