From: Laurent Vivier <lvivier@redhat.com>
To: Andrew Jones <drjones@redhat.com>,
kvm@vger.kernel.org, kvm-ppc@vger.kernel.org
Cc: thuth@redhat.com, dgibson@redhat.com,
david@gibson.dropbear.id.au, agraf@suse.de, pbonzini@redhat.com
Subject: Re: [kvm-unit-tests PATCH v2 00/14] ppc64: initial drop
Date: Thu, 11 Feb 2016 14:36:57 +0100 [thread overview]
Message-ID: <56BC8E79.7050409@redhat.com> (raw)
In-Reply-To: <1454957594-30601-1-git-send-email-drjones@redhat.com>
Hi,
On 08/02/2016 19:53, Andrew Jones wrote:
> It's been a loooong time since I posted v1 of this series, but thanks
> to Thomas' poking, and even volunteering to help move v2 along, I've
> finally picked it back up.
>
> v2:
> Besides rebasing on latest master, v2 addresses all of David's comments
> - assembler cleanup
> - jump into the RTAS blob we get from DT, instead of reproducing it
> - don't store the RTAS root node, always hunt it down
>
> v2 didn't address debug-exit, and we still need a solution for that.
> Plugging chr-testdev into an spapr vty is probably what we should
> investigate first (as was suggested by Alex Graf under the v1 review).
> For this v2 I just kept the hack from v1, but simplified it and
> explicitly call it out as the hack that it is.
>
> Additional known issues:
> Latest F22 cross-compiler (gcc5 based) doesn't generate working
> code with this series. I didn't try to debug. The 4.9 based compiler
> I initially used on v1 works, so I reverted to that one.
>
> Testing:
> I only tested with qemu-system-ppc64 (latest) on x86_64 so far. I'll
> try to get a machine to test with real hardware (and KVM) unless
> someone (hi Thomas :-) beats me to it.
I've tested the series from the branch initial-drop-v2:
- On RHEL 7.2 ppc64 (ppc64le is not supported ?), POWER8 + kvm_hv.
I have (sometime) an error:
./powerpc/run: line 60: exit: too many arguments
PASS selftest-setup
Which is in fact:
/usr/libexec/qemu-kvm -machine pseries,accel=kvm -bios
powerpc/boot_rom.bin -display none -serial stdio -kernel
powerpc/selftest.elf -smp 2 -m 256 -append setup smp=2 mem=256
PASS: selftest: setup: smp: nr_cpus = 2
PASS: selftest: setup: mem: size = 256 MB
SUMMARY: 2 tests, 0 unexpected failures
EXIT: STATUS=1
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=127
RTAS power-off returned 0
lib/powerpc/rtas.c:119: assert failed
EXIT: STATUS=12
Return value from qemu: 1 127 127 127 127 127 127 127 127 127 127 127 12
./powerpc/run: line 60: exit: too many arguments
- On fedora 23 on PowerMac G5 (ppc64) kvm_pr, it doesn't work at all:
lib/powerpc/setup.c:60: assert failed
59 assert(freemem_start >= mem_start && freemem_start < mem_end);
The values I have are:
freemem_start 434000 mem_start 8000000 mem_end 10000000
>
> Standard cover-letter summary:
> This series brings basic setup; starts a test's C entry point, main(),
> and printf, exit, and malloc work. Three more series should follow this
> one which must bring; vector support, mmu support, and smp support, at
> which point I believe the framework could just evolve with the creation
> of unit tests.
>
> Patches also available here
> https://github.com/rhdrjones/kvm-unit-tests/commits/ppc64/initial-drop-v2
>
>
> Andrew Jones (14):
> lib: asm-generic: add missing casts
> lib: share arm-selftest utility functions
> config: no need to mix arch makefiles
> powerpc/ppc64: start skeleton framework
> powerpc/pp64: ppc-ify makefiles and linker script
> powerpc/ppc64: add boot rom source
> powerpc/ppc64: add bootloader to bounce into memory
> powerpc/ppc64: add HV putchar
> powerpc/ppc64: adapt arm's setup
> powerpc/ppc64: relocate linker VMAs
> powerpc/ppc64: add run script and unittests.cfg
> mkstandalone: add support for powerpc
> powerpc/ppc64: add RTAS support
> powerpc/ppc64: HACK: make a fake debug-exit
>
> Makefile | 2 +-
> README | 3 +-
> arm/Makefile | 1 +
> config/config-arm.mak => arm/Makefile.arm | 2 +-
> config/config-arm64.mak => arm/Makefile.arm64 | 2 +-
> .../config-arm-common.mak => arm/Makefile.common | 3 +-
> arm/selftest.c | 45 +++-----
> configure | 6 ++
> lib/asm-generic/io.h | 12 +--
> lib/libcflat.h | 11 +-
> lib/powerpc/.gitignore | 1 +
> lib/powerpc/asm/rtas.h | 26 +++++
> lib/powerpc/asm/setup.h | 27 +++++
> lib/powerpc/io.c | 37 +++++++
> lib/powerpc/mmu.c | 0
> lib/powerpc/rtas.c | 120 +++++++++++++++++++++
> lib/powerpc/setup.c | 91 ++++++++++++++++
> lib/powerpc/smp.c | 0
> lib/ppc64/.gitignore | 1 +
> lib/ppc64/asm-offsets.c | 12 +++
> lib/ppc64/asm/asm-offsets.h | 1 +
> lib/ppc64/asm/io.h | 5 +
> lib/ppc64/asm/page.h | 1 +
> lib/ppc64/asm/rtas.h | 1 +
> lib/ppc64/asm/setup.h | 1 +
> lib/ppc64/asm/spinlock.h | 11 ++
> lib/ppc64/processor.c | 0
> lib/ppc64/spinlock.c | 11 ++
> lib/report.c | 16 +++
> lib/util.c | 18 ++++
> lib/util.h | 23 ++++
> powerpc/Makefile | 1 +
> powerpc/Makefile.common | 65 +++++++++++
> powerpc/Makefile.ppc64 | 21 ++++
> powerpc/boot_rom.bin | Bin 0 -> 280 bytes
> powerpc/cstart64.S | 86 +++++++++++++++
> powerpc/flat.lds | 44 ++++++++
> powerpc/reloc64.c | 55 ++++++++++
> powerpc/rom/.gitignore | 1 +
> powerpc/rom/Makefile | 36 +++++++
> powerpc/rom/header.img | 1 +
> powerpc/rom/rom.ffs | 4 +
> powerpc/rom/stage1.S | 5 +
> powerpc/run | 60 +++++++++++
> powerpc/selftest.c | 65 +++++++++++
> powerpc/unittests.cfg | 30 ++++++
> {config => scripts}/asm-offsets.mak | 0
> scripts/mkstandalone.sh | 5 +
> x86/Makefile | 1 +
> .../config-x86-common.mak => x86/Makefile.common | 0
> config/config-i386.mak => x86/Makefile.i386 | 2 +-
> config/config-x86_64.mak => x86/Makefile.x86_64 | 2 +-
> 52 files changed, 924 insertions(+), 50 deletions(-)
> create mode 100644 arm/Makefile
> rename config/config-arm.mak => arm/Makefile.arm (90%)
> rename config/config-arm64.mak => arm/Makefile.arm64 (89%)
> rename config/config-arm-common.mak => arm/Makefile.common (96%)
> create mode 100644 lib/powerpc/.gitignore
> create mode 100644 lib/powerpc/asm/rtas.h
> create mode 100644 lib/powerpc/asm/setup.h
> create mode 100644 lib/powerpc/io.c
> create mode 100644 lib/powerpc/mmu.c
> create mode 100644 lib/powerpc/rtas.c
> create mode 100644 lib/powerpc/setup.c
> create mode 100644 lib/powerpc/smp.c
> create mode 100644 lib/ppc64/.gitignore
> create mode 100644 lib/ppc64/asm-offsets.c
> create mode 100644 lib/ppc64/asm/asm-offsets.h
> create mode 100644 lib/ppc64/asm/io.h
> create mode 100644 lib/ppc64/asm/page.h
> create mode 100644 lib/ppc64/asm/rtas.h
> create mode 100644 lib/ppc64/asm/setup.h
> create mode 100644 lib/ppc64/asm/spinlock.h
> create mode 100644 lib/ppc64/processor.c
> create mode 100644 lib/ppc64/spinlock.c
> create mode 100644 lib/util.c
> create mode 100644 lib/util.h
> create mode 100644 powerpc/Makefile
> create mode 100644 powerpc/Makefile.common
> create mode 100644 powerpc/Makefile.ppc64
> create mode 100644 powerpc/boot_rom.bin
> create mode 100644 powerpc/cstart64.S
> create mode 100644 powerpc/flat.lds
> create mode 100644 powerpc/reloc64.c
> create mode 100644 powerpc/rom/.gitignore
> create mode 100644 powerpc/rom/Makefile
> create mode 100644 powerpc/rom/header.img
> create mode 100644 powerpc/rom/rom.ffs
> create mode 100644 powerpc/rom/stage1.S
> create mode 100755 powerpc/run
> create mode 100644 powerpc/selftest.c
> create mode 100644 powerpc/unittests.cfg
> rename {config => scripts}/asm-offsets.mak (100%)
> create mode 100644 x86/Makefile
> rename config/config-x86-common.mak => x86/Makefile.common (100%)
> rename config/config-i386.mak => x86/Makefile.i386 (91%)
> rename config/config-x86_64.mak => x86/Makefile.x86_64 (93%)
>
next prev parent reply other threads:[~2016-02-11 13:37 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-08 18:53 [kvm-unit-tests PATCH v2 00/14] ppc64: initial drop Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 01/14] lib: asm-generic: add missing casts Andrew Jones
2016-02-12 12:05 ` Thomas Huth
2016-02-12 13:58 ` Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 02/14] lib: share arm-selftest utility functions Andrew Jones
2016-02-12 12:40 ` Thomas Huth
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 03/14] config: no need to mix arch makefiles Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 04/14] powerpc/ppc64: start skeleton framework Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 05/14] powerpc/pp64: ppc-ify makefiles and linker script Andrew Jones
2016-02-09 17:54 ` [kvm-unit-tests PATCH] align toc to 256 bytes Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 06/14] powerpc/ppc64: add boot rom source Andrew Jones
2016-02-12 6:27 ` Thomas Huth
2016-02-12 10:07 ` Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 07/14] powerpc/ppc64: add bootloader to bounce into memory Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 08/14] powerpc/ppc64: add HV putchar Andrew Jones
2016-02-12 17:08 ` Thomas Huth
2016-02-12 17:45 ` Thomas Huth
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 09/14] powerpc/ppc64: adapt arm's setup Andrew Jones
2016-02-12 11:50 ` Thomas Huth
2016-02-12 13:59 ` Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 10/14] powerpc/ppc64: relocate linker VMAs Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 11/14] powerpc/ppc64: add run script and unittests.cfg Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 12/14] mkstandalone: add support for powerpc Andrew Jones
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 13/14] powerpc/ppc64: add RTAS support Andrew Jones
2016-02-12 17:51 ` Thomas Huth
2016-02-08 18:53 ` [kvm-unit-tests PATCH v2 14/14] powerpc/ppc64: HACK: make a fake debug-exit Andrew Jones
2016-02-12 18:07 ` Thomas Huth
2016-02-12 22:50 ` Paolo Bonzini
2016-02-09 17:49 ` [kvm-unit-tests PATCH v2 00/14] ppc64: initial drop Andrew Jones
2016-02-10 14:27 ` Paolo Bonzini
2016-02-11 11:56 ` Andrew Jones
2016-02-11 12:36 ` Paolo Bonzini
2016-02-11 13:36 ` Laurent Vivier [this message]
2016-02-11 15:29 ` Andrew Jones
2016-02-11 16:44 ` Laurent Vivier
2016-02-11 17:22 ` Andrew Jones
2016-02-11 17:47 ` Laurent Vivier
2016-02-12 10:06 ` Andrew Jones
2016-02-12 10:31 ` Laurent Vivier
2016-02-12 10:57 ` Andrew Jones
2016-02-12 13:44 ` Andrew Jones
2016-02-14 22:43 ` David Gibson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56BC8E79.7050409@redhat.com \
--to=lvivier@redhat.com \
--cc=agraf@suse.de \
--cc=david@gibson.dropbear.id.au \
--cc=dgibson@redhat.com \
--cc=drjones@redhat.com \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).