re-essayer de flash le kernel sur la board (mais est-ce possible vu
qu'il semble plus gros que la flash?)
$ openocd -f /usr/share/openocd/scripts/board/stm32f429discovery.cfg
-f flash-kernel.cfg
[...]
Info : device id = 0x20016419
Info : flash size = 2048kbytes
Info : Dual Bank 2048 kiB STM32F42x/43x/469/479 found
Warn : no flash bank found for address 0
wrote 0 bytes from file
/home/lyon/src/kernel/linux/arch/arm/boot/xipImage in 0.007352s (0.000
KiB/s)
** Programming Finished **
demander de l'aide aux gens de ST?
re-essayer avec un openocd plus recent
== Progress ==
* FDPIC
- (GNU-411) GDB: debugging problems with FDPIC support. Trying to
setup a stm32 board to avoid problems with unsupported configurations
mix between kernel and qemu.
* GCC upstream validation:
- reported a few regressions
* GCC:
- (GNU-99) ubsan / bare-metal. No progress.
* misc (conf-calls, meetings, emails, ....)
- reviewing infra script patches
- debugging new benchmarking round-robin jobs
== Next ==
Holidays, back on March 4th
== Next-next ==
FDPIC:
- GCC: handle feedback on v4 patches
- GDB: update patches
- uclibc-ng: look at how to test fdpic mode with openadk
- complete board setup
Infra:
- benchmarking jobs
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ patch review: RTH's JSConv/FHM patchset
+ sent another arm pull request
* VIRT-268 [QEMU support for dual-core Cortex-M Musca board]
+ Implemented and wired up the SSE-200 Message Handling Units
+ Implemented the mechanism by which a guest can power up CPU 1
+ Sent out patches for these; this can run the Zephyr MHU/dualcore testcase
+ Started looking at implementing floating point support for M profile
thanks
-- PMM
== Progress ==
* [Thumb GlobalISel] Support control flow [LLVM-530]
- Committed upstream
* [Thumb GlobalISel] Support accessing the stack [LLVM-527]
- Committed upstream
* [Thumb GlobalISel] Support floating point [LLVM-531]
- Committed upstream
* LLVM 8.0.0 Release for ARM & AArch64 [LLVM-526]
- Investigated the release blocker from rc1, turned out to be an
issue with the filesystem used in the container on the APMs
- Changed the release job to run on the D05 instead, where we use a
different container [LLVM-539]
- Testing still in progress
== Plan ==
* [Thumb GlobalISel] Support global variables [LLVM-540]
* Out of office between 4 - 8 March
== Progress ==
* PR88834:
* Have a patch for ivopt and backend that generates the required
addressing mode and code. Still need cleanup and some improvements.
* PR88836
Made the required changes to the backend.
CSE is still not happening. Looked at CSE in detail and made few
changes but still need more work. The issues are:
- Parallel rtx with one setting a register and other using it will
be immediately invalidated as the invalidation happens after
processing both.
- If CSE is such that one instruction is with one constant operand
and other with constant in a register, it will not be detected
- VEC_DUPLICATE is not handled.
- Not sure any other pass like GCSE is a better option
== Plan ==
* Complete above PRs
* Look at GDB BZ #21221 - gdb hangs while stepping an empty loop
[VIRT-68 # QEMU should implement tagged pointer support ]
Closed. We merged these patches on Feb 5.
[VIRT-242 # ARMv8.3-JSCVT ]
Sent v4.
[VIRT-274 # ARMv8.2-FHM, Floating-point multiplication variant ]
Sent v2.
[VIRT-344 # ARMv8.5-MemTag, Memory Tagging Extension ]
Sent v3 vs 00eac6.
[VIRT-327 # Richard's upstream QEMU work ]
Reviewed s390 floating point extension feature.
Fixed AT_PLATFORM for arm-linux-user and aarch64_be-linux-user.
Implemented missing float_round_to_odd functionality.
r~
QEMU Tooling ([VIRT-252])
=========================
[VIRT-280] https://projects.linaro.org/browse/VIRT-280
QEMU plugin support ([VIRT-280])
- posted {PATCH v3 0/3} softmmu demacro Message-Id:
<20190215143115.28777-1-alex.bennee(a)linaro.org>
- awaiting v3 of plugin patches :todo
Upstream Work ([VIRT-109])
==========================
- posted {PULL 00/18} testing updates: travis/cirrus/vm-test/binfmt
Message-Id: <20190211130507.8710-1-alex.bennee(a)linaro.org>
- posted {PATCH v2 0/6} HWCAP_CPUID registers for aarch64 Message-Id:
<20190205190224.2198-1-alex.bennee(a)linaro.org>
- fixes pulled into target-arm.next
- test case held back due to compiler version needed, need to respin
- posted {PATCH v2} hw/block: report when pflash backing file isn't
aligned Message-Id: <20190215122808.22301-1-alex.bennee(a)linaro.org>
- prompted further discussion on best solution as -pflash fails in
ways -bios doesn't
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
Other
=====
- Spent time building cross-tools for Debian/ARM64
- sent {PATCH} binutils: enable s390x/ppc64el on arm64 hosts
Message-Id: <20190212140851.22478-1-alex.bennee(a)linaro.org>
- Discussion on [Debian #921458] (buster apt source qemu)
- upstream consensus seems to be it is acceptable
- apt-get build-dep --arch-only qemu
[Debian #921458]
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921458
Completed Reviews [1/1]
=======================
{RFC} arm: Allow system registers for KVM guests to be changed by QEMU code
Message-Id: <20181206151401.13455-1-peter.maydell(a)linaro.org>
- CLOSING NOTE [2019-02-13 Wed 16:30]
Looks fine, although we still need to keep squashing single-step
while debug is on
Absences
========
- 15-18th Feb (long w/e)
- Connect BKK19 (1-5th April 2019)
- holiday after Connect
Current Review Queue
====================
* {PATCH 0/4} target/arm: Reduce overhead of cpu_get_tb_cpu_state
Message-Id: <20190214040652.4811-1-richard.henderson(a)linaro.org>
* {RFC v2 00/38} Plugin support
Message-Id: <20181209193749.12277-1-cota(a)braap.org>
* {Qemu-devel} {PATCH v6 00/49} linux-user: Split do_syscall
Message-Id: <20190118213122.22865-1-richard.henderson(a)linaro.org>
* {PATCH 0/5} target/mips: Add MSA ASE tests
Message-Id: <1550001205-7883-1-git-send-email-aleksandar.markovic(a)rt-rk.com>
* {Qemu-arm} {PATCH 00/25} Kconfig dependencies for ARM machines
Message-Id: <1549694366-1284-1-git-send-email-thuth(a)redhat.com>
* {RFC QEMU v2 0/2} arm/virt: Account for guest pause time
Message-Id: <1543352837-21529-1-git-send-email-bijan.mottahedeh(a)oracle.com>
--
Alex Bennée
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ usual code review/maintainer work
+ Coverity Scan is back up; triaged the issues that it found
+ updated OSX "handle Mojave" patchset to actually wire
up events correctly; sent v2
* VIRT-268 [QEMU support for dual-core Cortex-M Musca board]
+ Finished, tested and sent out the initial Musca board model
patches for review
+ Fixed a handful of random bugs identified in the course
of doing this and testing it with various guests
+ Investigated why tip-of-trunk ARM-TFM stopped working on
the mps2-an521 model; turned out to be a QEMU bug which I have
sent out a patch for
thanks
-- PMM
== Progress ==
* [Thumb GlobalISel] Support G_SELECT [LLVM-529]
- Committed upstream
* [Thumb GlobalISel] Support control flow [LLVM-530]
- Committed support for branches
- Support for PHI in progress
* LLVM 8.0.0 Release for ARM & AArch64 [LLVM-526]
- rc2 uploaded, no changes from rc1 on our side
* Use new version of GCC on buildbots [LLVM-515]
- Restarted the buildbots, they are running GCC 7 now
* Buildbot babysitting [LLVM-158]
- Reproduced a couple of failures, ran a pre-commit for one of them
== Plan ==
* Continue LLVM-526 and LLVM-530
== This Week ==
* SVE ACLE (4/10)
- Committed svlsl patch to branch
* SVE (3/10)
- Studying GCC's vectorizer
- Started looking at PR88839
* Validation (2/10)
- GNU-156: Working on tcwg_gnu CI job.
* Misc (1/10)
- Meetings
- Filed PR89332 in GCC bugzilla.
== Next Week ==
- Continue ongoing tasks
[VIRT-242 # ARMv8.3-JSCVT ]
Posted v1 & v2.
[VIRT-339 # ARMv8.5-BTI, Branch Target Identification ]
Posted v3.
[VIRT-327 # Richard's upstream QEMU work ]
Posted v3 of arm tcg vector improvements. Now uses ssadd & usadd tcg opcodes
from AdvSIMD and not just SVE. This would have made it easier to find a bug in
my previous tcg backend patches.
Found the last two bugs in a conversion of target/hppa to decodetree, and
posted the patch set. Sent pull request for some other queued hppa patches.
Fix a minor RISU bug wrt SVE.
[LoAAS]
Travel to/from Cambridge for 2 days of Linux on ARM Summit.
r~
== Progress ==
* FDPIC
- (GNU-411) GDB: debugging problems with FDPIC support.
* GCC upstream validation:
- reported a few regressions, helping test patches
- dealing with some random results, still
* GCC:
- (GNU-99) rebased ubsan / bare-metal patches. No progress.
* misc (conf-calls, meetings, emails, ....)
- reviewing/submitted infra script patches
- debugging new benchmarking round-robin jobs
== Next ==
FDPIC:
- GCC: handle feedback on v4 patches
- GDB: update patches
- uclibc-ng: look at how to test fdpic mode with openadk
Infra:
- benchmarking jobs
QEMU Tooling ([VIRT-252])
=========================
QEMU plugin support ([VIRT-280])
- re-based [ldst demacro to v3]
- recollect stats to see if slowdown still there :todo
- awaiting v3 of plugin patches
[VIRT-280] https://projects.linaro.org/browse/VIRT-280
[ldst demacro to v3]
https://github.com/stsquad/qemu/tree/ldst/demacrofy-v3
Upstream Work ([VIRT-109])
==========================
- need to finish the re-work of [system test and misc arch] tests
:todo
- will be useful for test cases for plugins
- also more test cases queued up for system tests
- debugged an occasional failure in pauth-1 test case
- expected given PAuth architecture, test needs tightening up
- posted {PATCH v1 0/4} HWCAP_CPUID registers for aarch64 Message-Id:
<20190128173940.25813-1-alex.bennee(a)linaro.org>
- posted {PATCH v2 0/6} HWCAP_CPUID registers for aarch64 Message-Id:
<20190205190224.2198-1-alex.bennee(a)linaro.org>
- posted {PATCH v2 00/16} current testing/next queue (with build
fixes) Message-Id: <20190207183744.5054-1-alex.bennee(a)linaro.org>
- this fixes regression of check-tcg but also
- discovered the Debian Buster's QEMU arm64 packaging is broken
- spent time trying to able to join #debian's IRC channels (aws
hosts banned!)
- tried to revive the cross-tools packaging I'd started with Wookey
last Connect
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
[the linux-user multiarch but it is not ready yet]
https://github.com/stsquad/qemu/tree/testing/next-with-linux-user
[system test and misc arch]
https://github.com/stsquad/qemu/tree/testing/enable-system-tcg-tests-v2
Other
=====
- Connect talk has been accepted, Friday 8.30 slot
Completed Reviews [1/1]
=======================
{Qemu-arm} {PATCH v6 00/73} per-CPU locks
Message-Id: <20190130004811.27372-1-cota(a)braap.org>
- CLOSING NOTE [2019-02-08 Fri 17:19]
Looks good, improves MTTCG scalability to 10-12 core now ;-)
Absences
========
- 15-18th Feb (long w/e)
- Connect BKK19 (1-5th April 2019)
- holiday after Connect
Current Review Queue
====================
* {RFC} arm: Allow system registers for KVM guests to be changed by QEMU code
Message-Id: <20181206151401.13455-1-peter.maydell(a)linaro.org>
* {RFC v2 00/38} Plugin support
Message-Id: <20181209193749.12277-1-cota(a)braap.org>
* {RFC QEMU v2 0/2} arm/virt: Account for guest pause time
Message-Id: <1543352837-21529-1-git-send-email-bijan.mottahedeh(a)oracle.com>
* {PATCH v12 00/25} Fixing record/replay and adding reverse debugging
Message-Id: <154935478086.7509.4349987292919289245.stgit@pasha-VirtualBox>
* {PATCH v2 00/18} OpenBSD: Enable qtesting
Message-Id: <20190129175403.18017-1-philmd(a)redhat.com>
* {PATCH v11 00/25} Fixing record/replay and adding reverse debugging
Message-Id: <20190131131520.23264.75724.stgit@pasha-VirtualBox>
--
Alex Bennée
Fosdem:
- Presented on LLD performance at LLVM devroom
https://fosdem.org/2019/schedule/track/llvm/
- Other interesting presentations from the devroom include:
-- Compiling the Linux kernel with LLVM tools
-- Lessons in TableGen
LLVM-523 LLD should synthesise .cantunwind .ARM.exidx sections for
sections without them
- Implementation and regression tests done. Will do a bit more testing
and post upstream on Monday.
LLVM-521 Taking the address of an ifunc in LLD
- Spent some time reviewing upstream patch that should fix the
remaining LLD ifunc address equivalence problems for all Targets.
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ reviewed RTH's patchsets for BTI and MemTag support
* VIRT-268 [QEMU support for dual-core Cortex-M Musca board]
+ Implemented a first pass at a Musca board model, which
has the PPC and MPC infrastructure, plus RAM, and ROM for
the flash; need to add at least the UARTs and do some testing
* misc
+ sorting out travel arrangements, visa, etc for Connect
+ kicked off a discussion on whether there are aspects of
QEMU's role as the userspace component of a KVM VM that
Linaro should be putting more effort/attention into
thanks
-- PMM
== Progress ==
* Out of office on Monday
* [Thumb GlobalISel] Support G_GEP [LLVM-532]
- Committed upstream
* [Thumb GlobalISel] Support G_ICMP [LLVM-528]
- Committed upstream
* [Thumb GlobalISel] Support G_SELECT [LLVM-529]
- Almost ready to commit
* LLVM 8.0.0 Release for ARM & AArch64 [LLVM-526]
- rc2 in progress
* Minor changes to Jenkins jobs [LLVM-533]
- TCWG Regression Detection job: launch LLVM 7.0.0 release on xenial
containers (as opposed to 6.0.0 on trusty)
- Release job: forced parallelism to 3 on the TK1s, to reduce some
of the swapping; also posted a patch upstream to allow us to use
ninja, so we can limit only the number of link jobs (like we do on the
buildbots)
== Plan ==
* Continue LLVM-526 and LLVM-529
* Use new version of GCC on buildbots [LLVM-515]
- Restart the buildbots so they begin using GCC 7
Hi,
I found that the bare-metal toolchains for aarch64 from Linaro could not seem
to link objects to generate executable files successfully.
====================
Toolchain:
https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch…
====================
Testcase:
> cat test.c
#include <stdio.h>
int main(int argc, char* argv[])
{
printf("Hello World!\n");
return 0;
}
> aarch64-elf-gcc -o test test.c
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/crt0.o: In function `_start':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/libgloss/aarch64/crt0.S:148: undefined reference to `initialise_monitor_handles'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-exit.o): In function `exit':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/stdlib/exit.c:70: undefined reference to `_exit'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-sbrkr.o): In function `_sbrk_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/sbrkr.c:58: undefined reference to `_sbrk'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-writer.o): In function `_write_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/writer.c:58: undefined reference to `_write'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-closer.o): In function `_close_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/closer.c:53: undefined reference to `_close'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-lseekr.o): In function `_lseek_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/lseekr.c:58: undefined reference to `_lseek'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-readr.o): In function `_read_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/readr.c:58: undefined reference to `_read'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-fstatr.o): In function `_fstat_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/fstatr.c:62: undefined reference to `_fstat'
.../gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/../aarch64-elf/libc/usr/lib/libc.a(lib_a-isattyr.o): In function `_isatty_r':
/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/newlib.git~linaro-local~linaro-newlib-2_5_0/newlib/libc/reent/isattyr.c:58: undefined reference to `_isatty'
collect2: error: ld returned 1 exit status
In addition, there was the same bug in 7.4.1-2019.02 version, but not in arm-eabi
or armeb-eabi.
Is there anyone fixing this?
Thanks,
Junling
== Progress ==
* Short week
- Annual Leave 2 days
- Public Holiday 1 day (Australia day)
*SVE ACLE
- Revised remaining ACLE patches
- svbic revised and reviewed
* Auto Vectorizer
- Looking at auto vectorisation SVE
== Plan ==
* SVE ACLE
* Look at PR88834
[VIRT-294 # ARMv8.3-PAuth, Pointer Authentication ]
Fixed HCR/SCR enablement of API/APK.
Posted v2 of the prctl.
[VIRT-339 # ARMv8.5-BTI, Branch Target Identification ]
Posted v2.
[VIRT-327 # Richard's upstream QEMU work ]
Implemented variable-length decoding in scripts/decodetree.py.
Lots of fiddling about with the RX ISA to understand what was
actually needed within decodetree.
Pull request for vector extensions and dynamic tlb sizing.
Finished MPS review.
r~
Upstream Work ([VIRT-109])
==========================
- need to finish the re-work of [system test and misc arch] tests
:todo
- will be useful for test cases for plugins
- also more test cases queued up for system tests
- posted userspace CPUID access patches Message-Id:
<20190128173940.25813-1-alex.bennee(a)linaro.org>
- spent some time debugging PAuth kernel boot regression
- rth posted a fix for the regression Message-Id:
<20190129143511.12311-1-richard.henderson(a)linaro.org>
Other Tasks
===========
- rebuilt Zen after the /home SSD failed
- fortunately the backup drive had all the work in progress source
code
- moved to Debian Buster while I'm at it
- need to regenerate my images and foundation/FVP setup
- and realise quite how many tweaks I had baked into the old system
Completed Reviews [2/2]
=======================
{Qemu-devel} {PATCH 00/11} Enable build and install of our rST docs
Message-Id: <20190201145035.22739-1-peter.maydell(a)linaro.org>
{RFC PATCH 0/3} lm32: convert to new common tcg infrastructure
Message-Id: <20190131215611.29341-1-michael(a)walle.cc>
Absences
========
- Connect BKK19 (1-5th April 2019)
- holiday after Connect
Current Review Queue
====================
* {PATCH v2 00/18} OpenBSD: Enable qtesting
Message-Id: <20190129175403.18017-1-philmd(a)redhat.com>
* {PATCH v11 00/25} Fixing record/replay and adding reverse debugging
Message-Id: <20190131131520.23264.75724.stgit@pasha-VirtualBox>
* {RFC v2 00/38} Plugin support
Message-Id: <20181209193749.12277-1-cota(a)braap.org>
* {RFC} arm: Allow system registers for KVM guests to be changed by QEMU code
Message-Id: <20181206151401.13455-1-peter.maydell(a)linaro.org>
* {Qemu-devel} {PATCH v3 0/4} tcg: support heterogenous CPU clusters
Message-Id: <20190121152218.9592-1-peter.maydell(a)linaro.org>
* {Qemu-devel} {PATCH RFC 00/11} Add Renesas RX archtecture
Message-Id: <20190121131602.55003-1-ysato(a)users.sourceforge.jp>
--
Alex Bennée