QEMU Tooling ([VIRT-252])
=========================
QEMU plugin support ([VIRT-280])
- reviewed Emilio's {RFC 00/48} Plugin support Message-Id:
<20181025172057.20414-1-cota(a)braap.org>
- looks like a good basis for going forward if we can work out the
kinks
- port my example tools to his framework :todo
[VIRT-280] https://projects.linaro.org/browse/VIRT-280
Upstream Work ([VIRT-109])
==========================
- did a quick pass at [enabling system tests in check-tcg]
- started reviewing {Qemu-devel} {PATCH for-4.0 v2 00/37} tcg:
Assorted cleanups Message-Id:
<20181123144558.5048-1-richard.henderson(a)linaro.org>
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
[enabling system tests in check-tcg]
https://github.com/stsquad/qemu/tree/tests/enable-system-tests
Testing and CI
==============
[VIRT-2] https://projects.linaro.org/browse/VIRT-2
KVM CI Loop ([VIRT-2])
- The [LKFT team] are working with gregkh to ensure -stable is tested
for KVM regressions
- wrote up the State of testing for KVM Message-Id:
<874lc14194.fsf(a)linaro.org>
- look at example regression to see what would have caught the failure
:todo
- look at kselftest and understand it's place :todo
[VIRT-2] https://projects.linaro.org/browse/VIRT-2
[LKFT team] https://lkft.linaro.org/
Other Tasks
===========
- need to concluded actions from The QEMU initiative thread
Message-Id: <87wop4gezg.fsf(a)linaro.org> :todo
Completed Reviews [2/2]
=======================
{RFC 00/48} Plugin support
Message-Id: <20181025172057.20414-1-cota(a)braap.org>
- CLOSING NOTE [2018-11-28 Wed 14:13]
Hashed out a number of things. Emilio will look at a single-pass
option and it makes things easier or not. It was also suggested we
could move instruction fetch to helpers outside of the individual
front-ends to keep the plugin call points in the core translator and
avoid having to tweak each front-end for support. A number of
pre-requisites were discussed including some de-macrofication work
to make the code easier to follow and instrument.
{PATCH 0/4} xxhash patches for 4.0
Message-Id: <20181123230206.12629-1-cota(a)braap.org>
- CLOSING NOTE [2018-11-28 Wed 15:09]
Clean-up to xxhash to match original and handle expanded hashes
Absences
========
- Christmas Holidays
- Connect BKK19 (1-5th April 2019)
Current Review Queue
====================
* {Qemu-devel} {PATCH for-4.0 v2 00/37} tcg: Assorted cleanups
Message-Id: <20181123144558.5048-1-richard.henderson(a)linaro.org>
* {PATCH v6 00/13} hardfloat
Message-Id: <20181124235553.17371-1-cota(a)braap.org>
* {Qemu-arm} {PATCH v7 00/16} gdbstub: support for the multiprocess extension
Message-Id: <20181123091729.29921-1-luc.michel(a)greensocs.com>
* {Qemu-arm} {PATCH 00/13} Support disabling TCG on ARM
Message-Id: <20181113165247.4806-1-sameo(a)linux.intel.com>
* {PATCH 0/7} Acceptance Tests: basic architecture support
Message-Id: <20181004151429.7232-1-crosa(a)redhat.com>
* {PATCH v7 00/19} Fixing record/replay and adding reverse debugging
Message-Id: <20181010133333.24538.53169.stgit@pasha-VirtualBox>
--
Alex Bennée
o 4 days week.
o LLVM
* 7.0.1-rc2:
- Miscompare on AArch64 is related to host compiler, still digging.
* Machine Outliner on ARM prototype:
- IR Outliner experiments:
Commented upstream, and reducing problematic test case.
o Misc
* Various meetings and discussions.
Four day week (Happy Thanksgiving, all you Europeans)
[Upstream]
Posted patches making bswap during qemu_ld/st optional. The prompt was
reviewing the tcg/riscv/ patch set, but I've wanted to do this for ages.
This should avoid the need for reservation of scratch registers on some hosts
that can ill afford it -- in particular i386 and aa32.
In the process I ran into two other places that x86 used those scratch
registers: stores from non-q-registers and bsd-user.
I included patches for both of those (freebsd only; net/openbsd will work so
long as guest_base == 0 and will abort at runtime otherwise).
I still need to audit the other hosts before dropping the call-clobbering from
user-only within tcg.c.
r~
== Progress ==
* FDPIC
- Cortex-M uClibc-ng patch merged
- GCC: no feedback yet on v4 patches
* GCC upstream validation:
- reported a few regressions
- dealing with some random results, again
- trying qemu-3.1.0-rc1, maybe some memory consumption problems, tbc
* GCC:
- bug report on aarch64 about misaligned accesses. I do not have
access to LHG gerrit, Maxim will look at isolating the problem.
- rebased ubsan / bare-metal patches. Really need to look at how to
merge them into LLVM
* misc (conf-calls, meetings, emails, ....)
- reviewing infra script patches
- ran Spec2006 using gcc-8.2 sysroot, to avoid differences caused by
glibc versions. Fortran benchmarks could not run when compiled with
gcc-5/gcc-6 because libgfortran changed .so version compared to gcc-8.
== Next ==
FDPIC:
- GCC: handle feedback on v4 patches
- uclibc-ng: look at how to test fdpic mode with openadk
Benchmarks:
- collect results
Validation:
- check if qemu-3.1.0-rc1 is OK for my GCC validations
[LLVM-486] Error id user defines _GLOBAL_OFFSET_TABLE_ (upstream review)
[LLVM-484] Fix linker script dynamic relocations combination into a single
output section (upstream review)
[LLVM-483] cortex-a53 erratum fix interaction with TLS relaxation (upstream
review)
[LLVM-489] Measure (cross) linking performance of LLD for AArch64 and Arm.
Looking for large projects that I can build for Arm and AArch64
- Firefox seems to have some ARM Android cross build support but it does
not appear to be working too well.
- Chrome can cross build to ARM and AArch64 Android. Have been able to
build AArch64 so far.
Notably both projects don't support building natively on AArch64, there are
quite a few build dependencies for which only x86 support is available.
Raised Jira tickets for recent PRs fixed
2019 Planning
- Drafted objectives document for LLVM team
- Drafted some Jira suggestions for TCWG
QEMU Tooling ([VIRT-252])
=========================
[VIRT-252] https://projects.linaro.org/browse/VIRT-252
QEMU plugin support ([VIRT-280])
- continued reviewing Emilio's {RFC 00/48} Plugin support Message-Id:
<20181025172057.20414-1-cota(a)braap.org>
- port my example tools to his framework :todo
[VIRT-280] https://projects.linaro.org/browse/VIRT-280
Upstream Work ([VIRT-109])
==========================
- finished reviewing {RFC PATCH v2 00/23} KVM: arm64: Initial support
for SVE guests Message-Id:
<1538141967-15375-1-git-send-email-Dave.Martin(a)arm.com>
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
Other Tasks
===========
- started The QEMU initiative thread Message-Id:
<87wop4gezg.fsf(a)linaro.org> for JIRA discussion
Completed Reviews [3/3]
=======================
{RFC PATCH v2 00/23} KVM: arm64: Initial support for SVE guests
Message-Id: <1538141967-15375-1-git-send-email-Dave.Martin(a)arm.com>
- CLOSING NOTE [2018-11-22 Thu 15:36]
My only major concern is if the query API is too gold plated.
{RFC PATCH 0/2} docker: Add gentoo-mipsr5900el-cross image
Message-Id: <20181118203312.5376-1-f4bug(a)amsat.org>
{PATCH} docker: dockerfile for openSUSE Leap
Message-Id: <87k1lai2vo.fsf(a)linaro.org>
Absences
========
- Christmas Holidays
- Connect BKK19 (1-5th April 2019)
Current Review Queue
====================
* {RFC 00/48} Plugin support
Message-Id: <20181025172057.20414-1-cota(a)braap.org>
* {Qemu-devel} {PATCH for-4.0 v2 00/37} tcg: Assorted cleanups
Message-Id: <20181123144558.5048-1-richard.henderson(a)linaro.org>
* {Qemu-arm} {PATCH v5 00/16} gdbstub: support for the multiprocess extension
Message-Id: <20181110081147.4027-1-luc.michel(a)greensocs.com>
* {Qemu-arm} {PATCH 00/13} Support disabling TCG on ARM
Message-Id: <20181113165247.4806-1-sameo(a)linux.intel.com>
* {PATCH 0/7} Acceptance Tests: basic architecture support
Message-Id: <20181004151429.7232-1-crosa(a)redhat.com>
* {PATCH v7 00/19} Fixing record/replay and adding reverse debugging
Message-Id: <20181010133333.24538.53169.stgit@pasha-VirtualBox>
--
Alex Bennée
Progress:
* VIRT-65 [QEMU upstream maintainership]
- release work
- code review
- sent patch fixing Coverity issue in Xen PCI device passthrough
(this was our last outstanding issue with no patch on the list!)
* VIRT-268 [QEMU support for dual-core Cortex-M Musca board]
- some initial investigation of what changes are going to be needed
for heterogenous-cpu support in QEMU
- started on a test case using the existing xnlx-zcu102 board (which
has a heterogenous config that works only by accident)
thanks
-- PMM
== Progress ==
# Monday off
# [LLVM-479] Check current status of GlobalISel
- Looked into new patterns that can be selected by TableGen and
forked LLVM-481 and LLVM-482 out of that
- Ran a test-suite and a selfhost with GlobalISel and had a look at
the fallbacks
# [LLVM-481] [ARM GlobalISel] Test BFC
- Committed upstream
# [LLVM-482] [ARM GlobalISel] Enable CLZ
- Most of the work is done, ready to commit next week
== Plan ==
Wrap up LLVM-482 and LLVM-479
Fork more stories out of LLVM-479