o GNU
* Submitted Linaro version string and macros patch for ARM GCC 8 vendor branch
o LLVM
* Built LLVM 7.0.0 RC1 ARM and AArch64 binaries
* Investigate infra issues with release builds
* libcxxabi exception address alignment test failure:
- Added some comments to help the review
* Machine Outliner on ARM prototype:
- Implemented saving LR in a register support
o Misc
* Various meetings and discussions.
[VIRT-198 # QEMU: SVE Emulation Support ]
Fixed a dozen-ish bugs pointed out by Laurent in direct email.
Reorganized the patch set, squashing !fixup; posted everything.
r~
[TCWG-1424] Investigation into profile guided information for code size
- Wrote script to process all the data from all the runs and correlate
it with code size.
- Now have some visualisations of some of the data that I can use to
make sense of the output.
- Next step is to prepare a presentation for the Connect hacking room
on the output.
- Jira sweep for TCWG LLVM epics in preparation for upcoming connect.
- Presentation for Linaro connect on Clang Tooling accepted, a
bittersweet moment as I've got to write it now.
SVE Support ([VIRT-198])
========================
- continued looking into Nils's SVE enabled Test_simd from Grid
failure
- __attribute__((noinline)) makes it go away, so subtle code
difference
- looking through side-by-side traces to find where it went wrong
- posted {RFC PATCH 0/4} add hand-rolled fallback when capstone
fails Message-Id: <20180808123934.17450-1-alex.bennee(a)linaro.org>
- finally fixed after Laurent's review comments - see [rth's latest
branch]
[VIRT-198] https://projects.linaro.org/browse/VIRT-198
[rth's latest branch]
https://github.com/stsquad/qemu/tree/testing/tgt-arm-sve-c
SVE Reviews
- reviewed {PATCH 00/11} target/arm: sve linux-user patches
Message-Id: <20180809034033.10579-1-richard.henderson(a)linaro.org>
- started reviewing {PATCH 00/20} target/arm: sve system mode patches
Message-Id: <20180809042206.15726-1-richard.henderson(a)linaro.org>
Upstream Work ([VIRT-109])
==========================
- posted {RFC PATCH 0/3} Tweaks to linux-user -dfilter Message-Id:
<20180809175553.18479-1-alex.bennee(a)linaro.org>
- posted {RFC PATCH 0/3} tweaks for QEMU's C standard Message-Id:
<0180810171102.16451-1-alex.bennee(a)linaro.org>
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
Other Tasks
===========
- Submitted "My Other Machine is Virtual" abstract for YVR18
- this talk has been accepted
- Drafted the [Instrumentation EPIC]
- started added stories for various use-cases
[Instrumentation EPIC] https://projects.linaro.org/browse/TCWG-1457
Completed Reviews [1/1]
=======================
{PATCH 00/11} target/arm: sve linux-user patches
Message-Id: <20180809034033.10579-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-08-09 Thu 12:44]
Looks good, tested on a bunch of stuff
Absences
========
- Holiday (16th-28th August 2018)
- YVR18 Connect (17th-21st September 2018)
- KVM Forum 2018 (24th-26th October 2018)
Current Review Queue
====================
* {PATCH 00/20} target/arm: sve system mode patches
Message-Id: <20180809042206.15726-1-richard.henderson(a)linaro.org>
* {PATCH 0/5} tests/vm: Improvements when KVM is not available
Message-Id: <20180717024827.27897-1-f4bug(a)amsat.org>
* {RFC PATCH 00/12} tests/tcg: Add TriCore tests
Message-Id: <20180501142222.19154-1-kbastian(a)mail.uni-paderborn.de>
* {PATCH v4 00/14} fp-test + hardfloat
Message-Id: <1528768140-17894-1-git-send-email-cota(a)braap.org>
* {Qemu-devel} {RFC PATCH v2 0/7} QEMU binary instrumentation prototype
Message-Id: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60>
* {Qemu-devel} {RFC v2 0/2} Add BPF suuport to Qemu
Message-Id: <20180625110706.23332-1-sameeh(a)daynix.com>
--
Alex Bennée
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ found and fixed a last minute couple of bugs with VM migration
for Arm guests, one in the GICv3 and one for M-profile CPUs
+ triaging and applying fixes for last few rc4 bugs
+ sent a patch to make our checkpatch script catch multiline comment
style issues
+ LP:1777672: investigating reported bug in raspi framebuffer emulation
* VIRT-164 [improve Cortex-M emulation]
+ finished, tested, and sent patchset that implements the Master Security
Controller and adds the PL081 DMA and MSCs to the MPS2 AN505 board
+ wrote patches that add the PL022 SPI controllers to the AN505
(fixing some PL022 bugs in the process)
* finished sorting out last bits of travel for Connect and KVM Forum
* various JIRA ticket scrub/fettling
thanks
-- PMM
=== Work done during this week ===
* TCWG-1379 / GCC PR85434 / CVE-2018-12886: rework needed
+ fix issues seen on x86_64 and start a bigger round of testing
* TCWG-1337 / LLVM PR34170: last patch committed to trunk
+ address review comments and commit it once approved, then request
backport to LLVM 7 branch
* Submit and commit patch to clarify what tm.texi needs copying when
tm.texi.in is updated in source tree
* Misc:
+ Linaro syncs
+ 2 days and a half of Linaro JIRA gardening
=== Plan for week 33 ===
* Enable regression testing of Linaro release process
* DSGHACK-25 (Support arithmetic on FileCheck regex variable): address comments
+ continue to rework patch
* GCC PR85434 / CVE-2018-12886: rework needed
+ confirm all regressions are fixed
+ finish testing and submit for review
* Try to reproduce perf issue mentioned in week #30s weekly report on
latest perf
=== Work done during this week ===
* TCWG-1379 / GCC PR85434 / CVE-2018-12886: rework needed
+ commit and revert due to regression on x86 and in glibc for aarch64
-> seems there is at least 2 issues, *sigh*
* TCWG-1337 / LLVM PR34170:
+ track down and fix issue that patch 2/3 uncovered, then reapply 2/3
+ investigate regression from patch 1/3, fixed by patch 3/3
fortunately and believe this is the right fix
* Continue work on TCWG-1428 (Support arithmetic on FileCheck regex variable):
+ start rework patch to follow new syntax and accept numeric
expressions with several variables
* Linaro PR3943:
+ investigate issue, propose several workarounds to customer and
raise need for GCC release with combined multilib
* Misc:
+ Linaro syncs
+ bits of Linaro JIRA gardening
+ new ask question button and typo fix on developer.arm.com's GNU RM page
+ prepare Linaro Connect
=== Plan for week 32 ===
* Summarize state of GNU EPIC in JIRA
* Enable regression testing of Linaro release process
* DSGHACK-25 (Support arithmetic on FileCheck regex variable): address comments
+ continue to rework patch
* GCC PR85434 / CVE-2018-12886: rework needed
+ investigate regressions
* Try to reproduce perf issue mentioned in last weekly report on latest perf
*very short week (1 day) *
== Progress ==
* FDPIC
- uClibc-ng: posted v2 patches
* GCC upstream validation:
- looking at some random noise in testing
- reported a couple of regressions
* Infrastructure:
- misc cleanups
* misc (conf-calls, meetings, emails, ....)
== Next ==
Holidays: back on Aug 29th
o LLVM
* Machine Outliner on ARM prototype:
- Working on saving LR in a register support
- Working on stack fixups mechanism
* libcxxabi exception address alignment test failure:
- Fix submitted upstream
o Misc
* Various meetings and discussions.
== Progress ==
* FDPIC
- uClibc-ng: investigated regression in non-FDPIC code, preparing v2 patches
* GCC upstream validation:
- looking at some random noise in testing
- reported a couple of regressions
* Infrastructure:
- misc cleanups
* misc (conf-calls, meetings, emails, ....)
== Next ==
1-day week, the holidays. Back on Aug 29th
[VIRT-198 # QEMU: SVE Emulation Support ]
Fixed 4 bugs pointed out by Laurent on list.
Dump sve state with -d fpu.
[VIRT-249 # SVE System Mode ]
Clear sve state on vector length change on EL change.
[Upstream]
Finished v5 review of nanomips.
Fixed 4 sparc clone bugs.
Fixed a ppc fp load/store bug I introduced in June.
[Glibc]
Adjusted _dl_runtime_resolve and friends for the new ARM vector ABI;
posted for comment. ARM folk pointed out that I'd have to save even
more state than that, and really the compiler needs fixing to avoid
the PLT completely. The right people are talking about the problem.
r~
SVE Support ([VIRT-198])
========================
- traced the svetest failure from Naoki @ Naist to SVE ABI issue with
dynamic linker
- rth has posted [a fix for glibc] and a bug raised for armclang
w.r.t. noplt
- looking into Nils's SVE enabled Test_simd from Grid failure
- __attribute__((noinline)) makes it go away, so subtle code
difference
- looking through side-by-side traces to find where it went wrong
[VIRT-198] https://projects.linaro.org/browse/VIRT-198
[a fix for glibc]
https://sourceware.org/ml/libc-alpha/2018-08/msg00017.html
SVE Reviews
- reviewed {Qemu-devel} {PATCH 0/4} target/arm sve fixes Message-Id:
<20180801123111.3595-1-richard.henderson(a)linaro.org>
QEMU ARMv8.3 Support ([VIRT-241])
=================================
- had a [quick run at VHE] which crystallised some of the issues with
register aliasing
- obviously need to sit and think about a design for this
[VIRT-241] https://projects.linaro.org/browse/VIRT-241
[ARMv8.1 Mandatory Features]
https://projects.linaro.org/browse/TCWG-1434
[ARMv8.1 optional features] https://projects.linaro.org/browse/TCWG-1435
[quick run at VHE] https://github.com/stsquad/qemu/tree/add-vhe-rfc
Upstream Work ([VIRT-109])
==========================
- posted {PATCH v1 for 3.0 0/2} fix for bug 1783362 Message-Id:
<20180726132947.28538-1-alex.bennee(a)linaro.org>
- started reviewing {PATCH v5 00/24} Fixing record/replay and adding
reverse debugging Message-Id:
<20180725121311.12867.21729.stgit@pasha-VirtualBox>
- number of build issues need to be resolved
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
Completed Reviews [3/3]
=======================
{PATCH 0/3} linux-user/sparc: Fixes for clone
Message-Id: <20180730201553.32423-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-08-01 Wed 14:35]
Still some issues with the tests
{PATCH v5 00/24} Fixing record/replay and adding reverse debugging
Message-Id: <20180725121311.12867.21729.stgit@pasha-VirtualBox>
- CLOSING NOTE [2018-08-01 Wed 14:36]
Bunch of build failures... gave up.
{Qemu-devel} {PATCH 0/4} target/arm sve fixes
Message-Id: <20180801123111.3595-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-08-02 Thu 10:28]
Looks good, but hasn't solved all remaining problems.
Absences
========
- YVR18 Connect (17th-21st September 2018)
- KVM Forum 2018 (24th-26th October 2018)
Current Review Queue
====================
* {PATCH 0/5} tests/vm: Improvements when KVM is not available
Message-Id: <20180717024827.27897-1-f4bug(a)amsat.org>
* {RFC PATCH 00/12} tests/tcg: Add TriCore tests
Message-Id: <20180501142222.19154-1-kbastian(a)mail.uni-paderborn.de>
* {PATCH v4 00/14} fp-test + hardfloat
Message-Id: <1528768140-17894-1-git-send-email-cota(a)braap.org>
* {Qemu-devel} {RFC PATCH v2 0/7} QEMU binary instrumentation prototype
Message-Id: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60>
* {Qemu-devel} {RFC v2 0/2} Add BPF suuport to Qemu
Message-Id: <20180625110706.23332-1-sameeh(a)daynix.com>
* {PATCH 0/4} tests/vm: various trivial fixes
Message-Id: <20180628153535.1411-1-f4bug(a)amsat.org>
--
Alex Bennée
[TCWG-1450] Support for Tag_ABI_VFP_args in LLD
Needed by FreeBSD in order to switch to LLD for Arm.
[TCWG-1451] Support for v5 and v6 Arm in LLD
Tidied up and submitted patches for v5/v6 (branch encoding and
compatible thunks), in upstream review.
[TCWG]
- Started doing some Jira gardening in preparation for status report
- Went back to libfuzzer hang on AArch64 buildbot. Looks like failure
to converge on -O2 and above, from the logs and code-generation I
suspect that it isn't handling the CINC instruction well (not
increasing coverage when the condition passes).
Progres:s
* VIRT-65 [QEMU upstream maintainership]
+ some time spent getting testing on BSD VMs working again (the box I
use for this was replaced with new hardware, which seemed like a good
time to shift to the support for this we have in upstream QEMU)
+ pre-Connect scrub of Linaro JIRA tasks to check they're up to date
+ sent some more "convert devices away from old_mmio API" patches
+ usual release work
* VIRT-164 [improve Cortex-M emulation]
+ finished, tested and sent patchset implementing MPS2 FPGAIO counters
and the CMSDK dual-timer device
+ implemented model of CMSDK watchdog timer
+ implemented minimal version of IoTKit system control element registers
+ started on modelling the Master Security Controller (which gates
transactions from bus master peripherals like DMA controllers)
thanks
-- PMM
=== Work done during this 4day week ===
* Continued looking into MCF branch prediction overload due to too
many consecutive branches:
+ managed to get reproducible results
-> was missing --buildid-dir option when invoking perf
-> above flag seems ignored if a binary with same path exists
where the initial binary was built
+ rerun again sampling only one event to confirm I get # of samples
* sampling freq = run time
-> conclusion: LLVM as good as GCC for SPEC2006 MCF, profile
different because LLVM inlines one of the hot functions
* GCC PR85434 / CVE-2018-12886: upstream review
+ finish testing and submit for external review
* LLVM PR34170:
+ address comments and commit once approved
-> most build bot failed to run the test the commit added, got
reverted before I could
+ investigate test failure -> does not fail when LLVM compiled with
GCC or in Debug mode
* Continue work on DSGHACK-25 (Support arithmetic on FileCheck regex variable):
+ hammer out syntax based on upstream feedback about what would be
desirable as FileCheck expressions
* Misc:
+ Linaro LLVM buildbot babysitting
+ upstream code review
* One day off on Friday
=== Plan for week 31 ===
* TCWG-1428 (Support arithmetic on FileCheck regex variable): address comments
+ rework patch once syntax is agreed
* Track down what causes testcase added for patch 2/3 for LLVM PR34170
* Try to reproduce perf issue mentioned above on latest perf
o Back from vacation Thu 24th
o LLVM Machine Outliner on ARM
* Caught up with upstream developments
* Rebased prototype on upstream
* Committed patch to assert when liveness tracking is not accurate
o Misc
* Various meetings and discussions.
[VIRT-198 # QEMU: SVE Emulation Support ]
Added sve-max-vq cpu property to adjust the sve vector length
from the qemu command-line, a-la "-cpu max,sve-max-vq=N".
[VIRT-249 # SVE System Mode ]
Reorganized all of the load/store helpers to handle bi-endian,
and pass in TCGMemOpIdx for use by softmmu.
[Upstream]
Round 3 of nanomips review.
Other review of -rc3 and 3.1 patches.
r~
4 day week.
[TCWG-1424] Investigate profile feedback on codesize
Have now got all the data I need, started the process of tidying up
scripts to analyse whether it is worth posting upstream and what the
best default parameters are.
[Misc]
Track down problem on AArch64 build-bot to a likely code-gen problem
in Clang 3.8 for AArch64 only. Wrote a patch to use clang 6.0 on all
the Linaro buildbots rather than just the libcxx builder. Will
hopefully get deployed next week.
[LLD] Work on adding support for EF_ARM_ABI_FLOAT_HARD and EF_ARM_ABI_FLOAT_SOFT
Needed to unblock freebsd from moving onto trunk
Mostly done, just need to finish adding tests. Might be a good jumping
off point to implement full build attributes support.
SVE Support ([VIRT-198])
========================
- posted {PATCH} tcg/aarch64: limit mul_vec size Message-Id:
<20180719154248.29669-1-alex.bennee(a)linaro.org> : done
- finished preparing [talk for HPC workshop on 26th]
- delivered it Thursday evening, recording will go online in due
course
- blog post is now [live on linaro.org]
[VIRT-198] https://projects.linaro.org/browse/VIRT-198
[talk for HPC workshop on 26th]
https://docs.google.com/presentation/d/1Jz9ePpJ_YGd3vPXMj090VwRwPfBSYWHlSiz…
[live on linaro.org] https://www.linaro.org/blog/sve-in-qemu-linux-user/
Write and submit Connect abstract
- submitted abstract: My other machine is virtual for YVR18
SVE Reviews
- finished reviewing {RFC PATCH 00/16} KVM: arm64: Initial support for
SVE guests Message-Id:
<1529593060-542-1-git-send-email-Dave.Martin(a)arm.com>
QEMU ARMv8.3 Support ([VIRT-241])
=================================
- had a [quick run at VHE] which crystallised some of the issues with
register aliasing
- obviously need to sit and think about a design for this
[VIRT-241] https://projects.linaro.org/browse/VIRT-241
[ARMv8.1 Mandatory Features]
https://projects.linaro.org/browse/TCWG-1434
[ARMv8.1 optional features] https://projects.linaro.org/browse/TCWG-1435
[quick run at VHE] https://github.com/stsquad/qemu/tree/add-vhe-rfc
Upstream Work ([VIRT-109])
==========================
- posted {PATCH v1 for 3.0 0/2} fix for bug 1783362 Message-Id:
<20180726132947.28538-1-alex.bennee(a)linaro.org>
- started reviewing {PATCH v5 00/24} Fixing record/replay and adding
reverse debugging Message-Id:
<20180725121311.12867.21729.stgit@pasha-VirtualBox>
- number of build issues need to be resolved
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
[v2 of docker fixes]
https://github.com/stsquad/qemu/tree/testing/docker-fixes-for-3.0-v2
[debootstrap master]
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903657
Testing and CI
==============
- finish converting the CI RISU jobs to submit via qa-reports :todo
- got a Packet.net machine for QEMU/Docker testing
- posted {PATCH RFC 00/10} docker on non-x86 hosts Message-Id:
<20180718100505.7546-1-alex.bennee(a)linaro.org>
QEMU CI Loop ([VIRT-187])
- investigating porting existing RISU tests via qa-reports
- add additional test patterns :todo
[VIRT-187] https://projects.linaro.org/browse/VIRT-187
KVM CI Loop ([VIRT-2])
- need to sync-up on the current state of this work :todo
- started looking at Xiang's latest auto setup scripts
[VIRT-2] https://projects.linaro.org/browse/VIRT-2
[our wiki] https://wiki.linaro.org/Core/Virtualization
MTTCG tests ([VIRT-52])
- need to dust these off and get up-streamed if I'm going to add new
tests :todo
[VIRT-52] https://projects.linaro.org/browse/VIRT-52
Other Tasks
===========
- Submitted "My Other Machine is Virtual" abstract for YVR18
- Create an Instrumentation EPIC :todo
[arm64 story a bit more desktopy]
https://github.com/stsquad/gentoo/tree/arm-keywords-so-far
[Kata Containers] https://katacontainers.io/
[CrosVM] https://chromium.googlesource.com/chromiumos/platform/crosvm/
Completed Reviews [2/2]
=======================
{RFC PATCH 00/16} KVM: arm64: Initial support for SVE guests
Message-Id: <1529593060-542-1-git-send-email-Dave.Martin(a)arm.com>
- CLOSING NOTE [2018-07-26 Thu 11:18]
Did about 2/3rds of series, drew did the top few - re-spin on it's
way.
{PATCH v4 00/19} reverse debugging
Message-Id: <20180528071332.9424.27343.stgit@pasha-VirtualBox>
- CLOSING NOTE [2018-07-26 Thu 15:06]
v5 posted
Absences
========
- YVR18 Connect (17th-21st September 2018)
- KVM Forum 2018 (24th-26th October 2018)
Current Review Queue
====================
* {PATCH v5 00/24} Fixing record/replay and adding reverse debugging
Message-Id: <20180725121311.12867.21729.stgit@pasha-VirtualBox>
* {PATCH 0/5} tests/vm: Improvements when KVM is not available
Message-Id: <20180717024827.27897-1-f4bug(a)amsat.org>
* {RFC PATCH 00/12} tests/tcg: Add TriCore tests
Message-Id: <20180501142222.19154-1-kbastian(a)mail.uni-paderborn.de>
* {PATCH v4 00/14} fp-test + hardfloat
Message-Id: <1528768140-17894-1-git-send-email-cota(a)braap.org>
* {Qemu-devel} {RFC PATCH v2 0/7} QEMU binary instrumentation prototype
Message-Id: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60>
* {Qemu-devel} {RFC v2 0/2} Add BPF suuport to Qemu
Message-Id: <20180625110706.23332-1-sameeh(a)daynix.com>
--
Alex Bennée
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ investigated required work for implementing HCR_EL2.TGE (the "trap
general exceptions" bit); identified what we've already implemented,
wrote patches for the other parts, and sent them out for review
+ sent patch to fix GICv3 emulation bug where we checked the wrong
HCR_EL2 bit when deciding whether to route IRQs to EL2
+ usual release-cycle related work
* VIRT-164 [improve Cortex-M emulation]
+ sent patch to fix a bug where we could escalate to the wrong HardFault
when AIRCR.BFHFNMINS is set
+ fixed bug where we had miswired the IoTKit timer1 IRQ line
+ fixed bug preventing VM state save/load for the NVIC with Security
extensions enabled
+ fixed "use of uninitialized memory" bug in the TZ-MPC model
+ had another look at the requirements for v8M stack-limit checking
+ implemented missing support for MPS2 FPGAIO up/down counter registers
+ started on a model of the CMSDK "dual-timer" module (as part of
looking at what remaining devices in the MPS2 are easy/worth
modelling so we can close out VIRT-182)
thanks
-- PMM
Following on from last weeks discussion here is an alternative abstract
which instead of looking to the future with where QEMU can go would
concentrate on what you can do with QEMU now. What do you think?
_____________________________
MY OTHER MACHINE IS VIRTUAL
Alex Bennée
_____________________________
YVR18
When working with new architectures there is often a scramble for
getting access to hardware. However hardware comes with it's own
problems - especially when it's new. It's hard to upgrade, hard to poke
around inside and hard to experiment with.
This is an area where QEMU can help. Thanks to it cross-architecture
emulation and ability to run full-system emulation it provides a
platform for experimentation without the potential consequences of
turning your new board into a inanimate brick.
This talk will start with an overview of QEMU and how various
configurations can be setup. We'll then examine various features
available that allow us to examine the run time behaviour of code inside
QEMU as well as discuss some of its limitations. Finally we'll look at
some experiments that would be hard to do with real hardware and what
they can tell us about the code we are running.
--
Alex Bennée
[Upstream]
Spent several days working with Alex and his docker testing bits.
Reproduced the reported ppc32 test failure. Wrote a patch to
implement the swapcontext syscall, which has now been merged.
Round 3 review of nanoMIPS submission.
Fixed a tricky issue wrt call-clobbered vector registers.
[VIRT-198 # QEMU: SVE Emulation Support ]
Some back and forth with Nils Meyer wrt SVE vs Grid.
TODO: Let the SVE vector length be selectable from the command-line.
r~
=== Work done during this 4.5day week ===
* TCWG-1062 (MCF branch prediction overload due to too many
consecutive branches):
+ rework reproduction steps around an existing script that does all
the steps of downloading and installing the benchmark and run it under
perf
+ gather what was observed that triggered the ticket I'm working on
-> narrowed down to 2/3 functions to be on the lookout
+ benchmark GCC and LLVM and compare the profile for these functions
-> bingo, I can see a branch issue
+ try to get assembly files to add nop and test performance again
-> code in assembly file is different from output of perf report,
need to rerun benchmark again to make sure I didn't fail there (sigh)
* TCWG-1379 / GCC PR85434 / CVE-2018-12886: upstream review
+ reply to upstream review comments
+ start to test tightening predicate for new instruction pattern
-> weird build error when trying to bootstrap unrelated to my
changes (missing header issues in stage 1 libgcc build)
* TCWG-1337 / LLVM PR34170:
+ respond to upstream review comments
* Continue work on TCWG-1428 (Support arithmetic on FileCheck regex variable):
+ hammer out syntax based on upstream feedback about what would be
desirable as FileCheck expressions
* Misc:
+ Linaro LLVM buildbot babysitting
+ Arm internal presentation
* Half a day off on Friday
=== Plan for week 30 ===
* TCWG-1428 (Support arithmetic on FileCheck regex variable): address comments
+ rework patch once syntax is agreed
* TCWG-1062 (MCF branch prediction overload due to too many
consecutive branches):
+ find out why assembly file from -save-temps is different from perf
report output
+ check performance when adding padding
+ start to investigate a solution
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ code review
- another pass of the GICv2 virt support
- IMX6UL SoC support
- more patches for v6M support in core and NVIC
- PMU emulation improvements
+ rolled another 3.0 release candidate
* VIRT-164 [improve Cortex-M emulation]
+ implemented and sent a patchset for doing tailchaining of pending
exceptions during exception return
thanks
-- PMM
SVE Support ([VIRT-198])
========================
- converted [post on SVE development] to jekyl blog format
- a little fighting with the tooling but [draft on staging]
- trying to get compilers set-up to debug failing Grid Test_simd
testcase
- now have full 1yr armclang license for me and rth
- Test_simd passes with fresh build and current master
- not sure old binary fails - but Nils happy with current state
- fixed vector multiply bug on aarch64 backend
- posted {PATCH} tcg/aarch64: limit mul_vec size Message-Id:
<20180719154248.29669-1-alex.bennee(a)linaro.org>
- drafting [talk for HPC workshop on 26th]
- currently 11 minutes talking, need to expand
[VIRT-198] https://projects.linaro.org/browse/VIRT-198
[post on SVE development]
https://docs.google.com/document/d/15v1asqk-6de2RtA7ZWdIQ29PkY92gl3nlwG7_Se…
[draft on staging]
https://staging.linaro.org/blog/sve-in-qemu-linux-user/
[talk for HPC workshop on 26th]
https://docs.google.com/presentation/d/1Jz9ePpJ_YGd3vPXMj090VwRwPfBSYWHlSiz…
Write and submit Connect abstract
- "How-to use QEMU to test my software on no-silicon hardware"? :todo
- amalgamate HPC talk and blog post
SVE Reviews
- finish reviewing {RFC PATCH 00/16} KVM: arm64: Initial support for
SVE guests Message-Id:
<1529593060-542-1-git-send-email-Dave.Martin(a)arm.com> :todo
- stalled this week due to other activities
QEMU ARMv8.3 Support ([VIRT-241])
=================================
- had a [quick run at VHE] which crystallised some of the issues with
register aliasing
- obviously need to sit and think about a design for this
[VIRT-241] https://projects.linaro.org/browse/VIRT-241
[ARMv8.1 Mandatory Features]
https://projects.linaro.org/browse/TCWG-1434
[ARMv8.1 optional features] https://projects.linaro.org/browse/TCWG-1435
[quick run at VHE] https://github.com/stsquad/qemu/tree/add-vhe-rfc
Upstream Work ([VIRT-109])
==========================
- posted {PATCH v3 for 3.0 00/18} docker fixes (and one tcg test
tweak) Message-Id: <20180717195553.9111-1-alex.bennee(a)linaro.org>
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
[v2 of docker fixes]
https://github.com/stsquad/qemu/tree/testing/docker-fixes-for-3.0-v2
[debootstrap master]
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903657
Testing and CI
==============
- started looking at converting the CI RISU jobs to submit via
qa-reports
- got a Packet.net machine for QEMU/Docker testing
- posted {PATCH RFC 00/10} docker on non-x86 hosts Message-Id:
<20180718100505.7546-1-alex.bennee(a)linaro.org>
QEMU CI Loop ([VIRT-187])
- investigating porting existing RISU tests via qa-reports
- add additional test patterns :todo
[VIRT-187] https://projects.linaro.org/browse/VIRT-187
KVM CI Loop ([VIRT-2])
- need to sync-up on the current state of this work :todo
- started looking at Xiang's latest auto setup scripts
[VIRT-2] https://projects.linaro.org/browse/VIRT-2
[our wiki] https://wiki.linaro.org/Core/Virtualization
MTTCG tests ([VIRT-52])
- need to dust these off and get up-streamed if I'm going to add new
tests :todo
[VIRT-52] https://projects.linaro.org/browse/VIRT-52
Other Tasks
===========
- Create an Instrumentation EPIC :todo
[arm64 story a bit more desktopy]
https://github.com/stsquad/gentoo/tree/arm-keywords-so-far
[Kata Containers] https://katacontainers.io/
[CrosVM] https://chromium.googlesource.com/chromiumos/platform/crosvm/
Completed Reviews [6/6]
=======================
{PATCH v2 00/13} iommu: support txattrs, support TCG execution, implement TZ MPC
Message-Id: <20180604152941.20374-10-peter.maydell(a)linaro.org>
- CLOSING NOTE [2018-06-14 Thu 19:27]
Looks good.
{PATCH 0/8} Docker improvements
Message-Id: <20180628164643.9668-1-f4bug(a)amsat.org>
- CLOSING NOTE [2018-06-29 Fri 21:38]
Grabbed some patches, commented on others
{Qemu-arm} {PATCH v6 00/35} target/arm SVE patches
Message-Id: <20180627043328.11531-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-06-29 Fri 21:39]
Looks good
{Qemu-devel} {PATCH v5 00/35} target/arm SVE patches
Message-Id: <20180621015359.12018-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-06-29 Fri 21:39]
Looking good, stopped to move to v6
{PATCH 0/4} KVM: arm64: FPSIMD/SVE fixes for 4.17
Message-Id: <1528976039-25826-1-git-send-email-Dave.Martin(a)arm.com>
- CLOSING NOTE [2018-06-29 Fri 21:40]
Seems sane to me.
{Qemu-arm} {PATCH v3-a 00/27} target/arm: Scalable Vector Extension
Message-Id: <20180516223007.10256-1-richard.henderson(a)linaro.org>
- CLOSING NOTE [2018-07-13 Fri 20:02]
Already merged
Absences
========
- Friday 20th July
- YVR18 Connect (17th-21st September 2018)
- KVM Forum 2018 (24th-26th October 2018)
Current Review Queue
====================
* {RFC PATCH 00/16} KVM: arm64: Initial support for SVE guests
Message-Id: <1529593060-542-1-git-send-email-Dave.Martin(a)arm.com>
* {PATCH 0/5} tests/vm: Improvements when KVM is not available
Message-Id: <20180717024827.27897-1-f4bug(a)amsat.org>
* {PATCH v4 00/19} reverse debugging
Message-Id: <20180528071332.9424.27343.stgit@pasha-VirtualBox>
* {RFC PATCH 00/12} tests/tcg: Add TriCore tests
Message-Id: <20180501142222.19154-1-kbastian(a)mail.uni-paderborn.de>
* {PATCH v4 00/14} fp-test + hardfloat
Message-Id: <1528768140-17894-1-git-send-email-cota(a)braap.org>
* {Qemu-devel} {RFC PATCH v2 0/7} QEMU binary instrumentation prototype
Message-Id: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60>
--
Alex Bennée