On 2017-01-05 14:44, Ralf Ramsauer wrote: > Hi Jan, > > On 01/05/2017 10:44 AM, Jan Kiszka wrote: >> On 2016-12-23 13:00, Ralf Ramsauer wrote: >>> On ARM32 `uname -m` might return 'armv7l', on ARM64, it might return >>> 'aarch64', which is not the correct ARCH in these cases. The correct >>> ARCH is arm for ARM32 bit and arm64 for ARM64. >>> >>> Signed-off-by: Ralf Ramsauer <[email protected]> >>> --- >>> scripts/include.mk | 6 ++++++ >>> 1 file changed, 6 insertions(+) >>> >>> diff --git a/scripts/include.mk b/scripts/include.mk >>> index 740e7b03..aca5a5b7 100644 >>> --- a/scripts/include.mk >>> +++ b/scripts/include.mk >>> @@ -52,3 +52,9 @@ ARCH ?= $(shell uname -m) >>> ifeq ($(ARCH),x86_64) >>> override ARCH = x86 >>> endif >>> +ifneq (,$(findstring arm,$(ARCH))) >>> +override ARCH = arm >>> +endif >> >> This matches on arm64 as well and causes unintuitive breakages there > does it? On `uname -m`, my TX1 reports "aarch64", which is far away from > containing "arm". >> because the wrong loader is installed - grrr. > Strange. I don't see what's wrong with it (latest next):
make ARCH=arm64 ... install DESTDIR=... i.e. cross-installation. In that case, ARCH is already correctly set and will now be mangled to "arm" by this patch. > > On my TX1: > > tx1 jailhouse # make install > [...] > install -m 644 hypervisor/jailhouse*.bin /lib/firmware > install -m 644 inmates/tools/arm64/*.bin /usr/local/libexec/jailhouse > install jailhouse /usr/local/sbin > install jailhouse-cell-linux jailhouse-cell-stats > jailhouse-config-create jailhouse-hardware-check > /usr/local/libexec/jailhouse > install -m 644 jailhouse-config-collect.tmpl root-cell-config.c.tmpl > /usr/local/share/jailhouse > install -m 644 jailhouse-completion.bash > /usr/share/bash-completion/completions/jailhouse > > On my TK1: > > tk1 jailhouse # make install > [...] > install -m 644 hypervisor/jailhouse*.bin /lib/firmware > install -m 644 inmates/tools/arm/*.bin /usr/local/libexec/jailhouse > install jailhouse /usr/local/sbin > install jailhouse-cell-linux jailhouse-cell-stats > jailhouse-config-create jailhouse-hardware-check > jailhouse-config-collect /usr/local/libexec/jailhouse > install -m 644 jailhouse-config-collect.tmpl root-cell-config.c.tmpl > /usr/local/share/jailhouse > install -m 644 jailhouse-completion.bash > /usr/share/bash-completion/completions/jailhouse Those are all native, thus unaffected. >> >> Do we only have to fix up "armv7l"? Then what about > I'm not sure. Then we fix up armv7l now and wait for other issues to appear. I suppose there is otherwise only armv7b, ie. big endian, and that is unsupported by Jailhouse so far anyway. >> >> ifeq ($(ARCH),armv7l) >> >> instead? >> >>> +ifeq ($(ARCH),aarch64) >>> +override ARCH = arm64 >>> +endif >>> >> >> BTW, if you could test current next on your setups (TK1, TX1), that >> would be appreciated. I'm basically doing >> >> - enable >> - create/load/start gic-demo >> - destroy gic-demo >> - load linux >> - ssh linux >> - disable > Yep, just tested it. Great, thanks! > I did not test 'cell linux' on arm64, as I'm > missing a inmate dtb for my TX1, but: > > tx1 jailhouse # md5sum inmates/tools/arm64/linux-loader.bin > /usr/local/libexec/jailhouse/linux-loader.bin > f97809ab538db18a7531aef6aca67af8 inmates/tools/arm64/linux-loader.bin > f97809ab538db18a7531aef6aca67af8 > /usr/local/libexec/jailhouse/linux-loader.bin > > So apparently the correct loader got installed on my TX1. > > Sorry if I messed sth. up and this caused trouble to you, but I'm not > able to reconstruct this issue here. Never mind, it's also /me who miss that detail. Good that we found it before the release. Jan -- Siemens AG, Corporate Technology, CT RDA ITP SES-DE Corporate Competence Center Embedded Linux -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
