Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
On 06/08/2017 10:44 AM, Emilio G. Cota wrote: On Thu, Jun 08, 2017 at 09:44:11 -0700, Richard Henderson wrote: On 06/07/2017 04:30 PM, Emilio G. Cota wrote: On Wed, Jun 07, 2017 at 08:55:29 -0700, Richard Henderson wrote: Then I've a few follow-up patches to take advantage of the new TB placement for arm platforms. I've had a look at the asm output for ppc64 and s390x, and don't see anything obvious that can be improved. Nice! Just tested patches 3-7 with an arm guest image on x86 and aarch64 hosts: Tested-by: Emilio G. CotaSo... you've tested patch 3 then? Patches 4-7 are for an arm host. Ha! Yes, sorry for the confusion -- I blindly went by the patch titles' "target/arm" prefix; shouldn't they be "tcg/arm"? Oops, yes indeed. I'll fix that too for v5. r~
Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
On Thu, Jun 08, 2017 at 09:44:11 -0700, Richard Henderson wrote: > On 06/07/2017 04:30 PM, Emilio G. Cota wrote: > >On Wed, Jun 07, 2017 at 08:55:29 -0700, Richard Henderson wrote: > >>Then I've a few follow-up patches to take advantage of the new TB > >>placement for arm platforms. I've had a look at the asm output for > >>ppc64 and s390x, and don't see anything obvious that can be improved. > > > >Nice! Just tested patches 3-7 with an arm guest image on > >x86 and aarch64 hosts: > > > > Tested-by: Emilio G. Cota> > So... you've tested patch 3 then? > Patches 4-7 are for an arm host. Ha! Yes, sorry for the confusion -- I blindly went by the patch titles' "target/arm" prefix; shouldn't they be "tcg/arm"? E.
Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
On 06/07/2017 04:30 PM, Emilio G. Cota wrote: On Wed, Jun 07, 2017 at 08:55:29 -0700, Richard Henderson wrote: Then I've a few follow-up patches to take advantage of the new TB placement for arm platforms. I've had a look at the asm output for ppc64 and s390x, and don't see anything obvious that can be improved. Nice! Just tested patches 3-7 with an arm guest image on x86 and aarch64 hosts: Tested-by: Emilio G. CotaSo... you've tested patch 3 then? Patches 4-7 are for an arm host. r~
Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20170607155536.1193-1-...@twiddle.net Subject: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 Switched to a new branch 'test' a5f5544 target/arm: Use ldr (literal) for goto_tb 15a92d8 target/arm: Try pc-relative addresses for movi c270c42 target/arm: Remove limit on code buffer size 92df92d target/arm: Use indirect branch for goto_tb ca5d3fd tcg/aarch64: Use ADR in tcg_out_movi c62a640 tcg: allocate TB structs before the corresponding translated code b3e2a1f util: add cacheinfo === OUTPUT BEGIN === Checking PATCH 1/7: util: add cacheinfo... ERROR: do not initialise globals to 0 or NULL #149: FILE: util/cacheinfo.c:11: +int qemu_icache_linesize = 0; ERROR: do not initialise globals to 0 or NULL #150: FILE: util/cacheinfo.c:12: +int qemu_dcache_linesize = 0; ERROR: space prohibited after that '&&' (ctx:ExW) #187: FILE: util/cacheinfo.c:49: +&& buf[i].Cache.Level == 1) { ^ WARNING: architecture specific defines should be avoided #209: FILE: util/cacheinfo.c:71: +# if defined(__APPLE__) total: 3 errors, 1 warnings, 207 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 2/7: tcg: allocate TB structs before the corresponding translated code... Checking PATCH 3/7: tcg/aarch64: Use ADR in tcg_out_movi... Checking PATCH 4/7: target/arm: Use indirect branch for goto_tb... Checking PATCH 5/7: target/arm: Remove limit on code buffer size... Checking PATCH 6/7: target/arm: Try pc-relative addresses for movi... ERROR: code indent should never use tabs #54: FILE: tcg/arm/tcg-target.inc.c:446: +^I}$ ERROR: code indent should never use tabs #64: FILE: tcg/arm/tcg-target.inc.c:453: +^I}$ total: 2 errors, 0 warnings, 54 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 7/7: target/arm: Use ldr (literal) for goto_tb... === OUTPUT END === Test command exited with code: 1 --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-de...@freelists.org
Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
On Wed, Jun 07, 2017 at 08:55:29 -0700, Richard Henderson wrote: > Then I've a few follow-up patches to take advantage of the new TB > placement for arm platforms. I've had a look at the asm output for > ppc64 and s390x, and don't see anything obvious that can be improved. Nice! Just tested patches 3-7 with an arm guest image on x86 and aarch64 hosts: Tested-by: Emilio G. CotaThanks, E.
Re: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
Hi, This series failed automatic build test. Please find the testing commands and their output below. If you have docker installed, you can probably reproduce it locally. Subject: [Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate Type: series Message-id: 20170607155536.1193-1-...@twiddle.net === TEST SCRIPT BEGIN === #!/bin/bash set -e git submodule update --init dtc # Let docker tests dump environment info export SHOW_ENV=1 export J=8 time make docker-test-quick@centos6 time make docker-test-mingw@fedora time make docker-test-build@min-glib === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 Switched to a new branch 'test' a5f5544 target/arm: Use ldr (literal) for goto_tb 15a92d8 target/arm: Try pc-relative addresses for movi c270c42 target/arm: Remove limit on code buffer size 92df92d target/arm: Use indirect branch for goto_tb ca5d3fd tcg/aarch64: Use ADR in tcg_out_movi c62a640 tcg: allocate TB structs before the corresponding translated code b3e2a1f util: add cacheinfo === OUTPUT BEGIN === Submodule 'dtc' (git://git.qemu-project.org/dtc.git) registered for path 'dtc' Cloning into '/var/tmp/patchew-tester-tmp-dlt2qyme/src/dtc'... Submodule path 'dtc': checked out '558cd81bdd432769b59bff01240c44f82cfb1a9d' BUILD centos6 make[1]: Entering directory '/var/tmp/patchew-tester-tmp-dlt2qyme/src' ARCHIVE qemu.tgz ARCHIVE dtc.tgz COPYRUNNER RUN test-quick in qemu:centos6 Packages installed: SDL-devel-1.2.14-7.el6_7.1.x86_64 ccache-3.1.6-2.el6.x86_64 epel-release-6-8.noarch gcc-4.4.7-17.el6.x86_64 git-1.7.1-4.el6_7.1.x86_64 glib2-devel-2.28.8-5.el6.x86_64 libfdt-devel-1.4.0-1.el6.x86_64 make-3.81-23.el6.x86_64 package g++ is not installed pixman-devel-0.32.8-1.el6.x86_64 tar-1.23-15.el6_8.x86_64 zlib-devel-1.2.3-29.el6.x86_64 Environment variables: PACKAGES=libfdt-devel ccache tar git make gcc g++ zlib-devel glib2-devel SDL-devel pixman-devel epel-release HOSTNAME=08601069c9dd TERM=xterm MAKEFLAGS= -j8 HISTSIZE=1000 J=8 USER=root CCACHE_DIR=/var/tmp/ccache EXTRA_CONFIGURE_OPTS= V= SHOW_ENV=1 MAIL=/var/spool/mail/root PATH=/usr/lib/ccache:/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PWD=/ LANG=en_US.UTF-8 TARGET_LIST= HISTCONTROL=ignoredups SHLVL=1 HOME=/root TEST_DIR=/tmp/qemu-test LOGNAME=root LESSOPEN=||/usr/bin/lesspipe.sh %s FEATURES= dtc DEBUG= G_BROKEN_FILENAMES=1 CCACHE_HASHDIR= _=/usr/bin/env Configure options: --enable-werror --target-list=x86_64-softmmu,aarch64-softmmu --prefix=/var/tmp/qemu-build/install No C++ compiler available; disabling C++ specific optional code Install prefix/var/tmp/qemu-build/install BIOS directory/var/tmp/qemu-build/install/share/qemu binary directory /var/tmp/qemu-build/install/bin library directory /var/tmp/qemu-build/install/lib module directory /var/tmp/qemu-build/install/lib/qemu libexec directory /var/tmp/qemu-build/install/libexec include directory /var/tmp/qemu-build/install/include config directory /var/tmp/qemu-build/install/etc local state directory /var/tmp/qemu-build/install/var Manual directory /var/tmp/qemu-build/install/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /tmp/qemu-test/src C compilercc Host C compiler cc C++ compiler Objective-C compiler cc ARFLAGS rv CFLAGS-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g QEMU_CFLAGS -I/usr/include/pixman-1 -I$(SRC_PATH)/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -fPIE -DPIE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -Wendif-labels -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all LDFLAGS -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -pie -m64 -g make make install install pythonpython -B smbd /usr/sbin/smbd module supportno host CPU x86_64 host big endian no target list x86_64-softmmu aarch64-softmmu tcg debug enabled no gprof enabled no sparse enabledno strip binariesyes profiler no static build no pixmansystem SDL support yes (1.2.14) GTK support no GTK GL supportno VTE support no TLS priority NORMAL GNUTLS supportno GNUTLS rndno libgcrypt no libgcrypt kdf no nettleno nettle kdfno libtasn1 no curses supportno virgl support no curl support no mingw32 support no Audio drivers oss Block whitelist (rw) Block whitelist (ro) VirtFS supportno VNC support yes VNC SASL support no VNC JPEG support no VNC PNG support no xen support no brlapi support
[Qemu-devel] [PATCH v4 0/7] tcg: allocate TB structs preceding translate
This is a follow-up to Emilio's patch set. My primary changes to Emilio's patches are to the first patch, in merging the existing implementations from tcg/ppc/tcg-target.inc.c into util/cacheinfo.c. Then I've a few follow-up patches to take advantage of the new TB placement for arm platforms. I've had a look at the asm output for ppc64 and s390x, and don't see anything obvious that can be improved. r~ Emilio G. Cota (2): util: add cacheinfo tcg: allocate TB structs before the corresponding translated code Richard Henderson (5): tcg/aarch64: Use ADR in tcg_out_movi target/arm: Use indirect branch for goto_tb target/arm: Remove limit on code buffer size target/arm: Try pc-relative addresses for movi target/arm: Use ldr (literal) for goto_tb include/exec/exec-all.h | 5 +- include/exec/tb-context.h| 3 +- include/qemu/osdep.h | 3 + tcg/aarch64/tcg-target.inc.c | 7 +- tcg/arm/tcg-target.inc.c | 82 +++- tcg/ppc/tcg-target.inc.c | 71 +- tcg/tcg.c| 20 + tcg/tcg.h| 2 +- translate-all.c | 41 +- util/Makefile.objs | 1 + util/cacheinfo.c | 174 +++ 11 files changed, 282 insertions(+), 127 deletions(-) create mode 100644 util/cacheinfo.c -- 2.9.4