Progress:
* VIRT-65 [QEMU upstream maintainership]
+ code review
+ put together another target-arm pullreq (including more SVE patches)
* VIRT-164 [improve Cortex-M emulation]
+ I have a half-working prototype of small-MPU-regions
+ sent patches for various preparatory and cleanup work for that
+ MPC support patchset has been reviewed and needs some minor fixes
NB: have shifted next week's non-working day from Weds to Mon due
to a meeting on Weds; sorry about the short notice.
thanks
-- PMM
TCWG-1319 ICF support in clang and lld
- Reviewed LLD patches
TCWG-1424 Investigate profile information for code-size
- Spent some time tracking down problem with using perf=profile and
run_under simultaneously. Posted patch upstream.
- Investigated how llvm makes use of profile information and found an
analysis pass that can be adapted to get the information I'm likely to
need.
Other
- Worked on side-project for tiny-code model. Got it passing the
test-suite modulo TLS and one test that was too large for the code
model.
- Have a good idea of what I'll need to do for TLS, will need to start
with assembler support.
- Landed https://reviews.llvm.org/D45959 one step closer to removing
MCSubargetInfo from assembler backend.
Hello,
I'm learning the Trusted application that can be run in the TEE.
I was wondering whether there are some ways to check the .ta file's
instructions, just like using objdump or readelf on ELF.
I'm also interested how does the .ta be protected? What's the difference
between the .ta and normal executable?
Would it be possible to give me some information about that?
Thanks in advance!
Brs,
YL
Hi there
I apologize for posting this again as I was not subscribed to the mailing list on posting my first message, so if the first message made to the list without me being a subscriber, I apologize.
I added some more info as to my issue below.
I need to cross-compile an application written in C for ARM v8 (aarch64) and found the toolchain on your website.
I am running Windows 10 using Cygwin 32-bit as I am already compiling for arm6, arm7 and Linux (x86 and x64) successfully.
I downloaded https://releases.linaro.org/components/toolchain/binaries/latest/aarch64-el… and deployed it into my Cygwin installation with no issues.
When I ran my script, I get the following error message: aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
I enabled verbose mode on the GCC and the result is below. My Cygwin's default GCC version is 4.8.3, but I am running 7.2.1 for this. I also tried 4.9.4 as well using a different Cygwin instance.
Can you please advise how I can get around this error? I am able to cross-compile using the 100% exact script with all other architectures with the only difference being the toolchain and architecture.
I also found references to C:\cygwin\bin in the logs (note the backslashes instead of forward slashes) below which I'd imagine would cause the issue I am experiencing as I have no way to alter the -iprefix in the COLLECT_GCC_OPTIONS as I am not setting this parameter - seems the GCC compiler is injecting this in.
I also realised that I needed to use the linux-gnu version of the toolchain and not the ELF version which I did, but got the same results.
Cygwin DLL version (just in case).
I called: cygcheck -p cygwin1.dll |grep "cygwin:"
And it returned:
cygwin-2.10.0-1 - cygwin: The UNIX emulation engine
cygwin-2.8.2-1 - cygwin: The UNIX emulation engine
cygwin-2.9.0-3 - cygwin: The UNIX emulation engine
7.2.1
Using built-in specs.
COLLECT_GCC=C:\cygwin\bin\aarch64-elf-gcc.exe
Target: aarch64-elf
Configured with: '/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/gcc.git~linaro-7.2-2017.11/configure' SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-shared --without-included-gettext --enable-nls --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --enable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=no --disable-multiarch --with-newlib --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/sysroots/aarch64-elf --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/aarch64-elf/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,lto --with-libiconv-prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/usr --build=x86_64-unknown-linux-gnu --host=i686-w64-mingw32 --target=aarch64-elf --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32
Thread model: single
gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)
COLLECT_GCC_OPTIONS='-std=c99' '-Wall' '-I' 'C:/Users/username/git/repo/appvm/vm/src/c/java/include' '-I' 'C:/Users/username/git/repo/appvm/vm/src/c/java/include/linux' '-D' '_POSIX_SOURCE' '-D' '_BSD_SOURCE' '-o' 'C:/Users/username/git/repo/appvm/target/vm/aarch64/app_vm' '-v' '-march=armv8-a' '-mlittle-endian' '-mabi=lp64'
cc1 -quiet -v -I C:/Users/username/git/repo/appvm/vm/src/c/java/include -I C:/Users/username/git/repo/appvm/vm/src/c/java/include/linux -iprefix c:\cygwin\bin\../lib/gcc/aarch64-elf/7.2.1/ -D _POSIX_SOURCE -D _BSD_SOURCE C:/Users/username/git/repo/appvm/vm/src/c/main.c -quiet -dumpbase main.c -march=armv8-a -mlittle-endian -mabi=lp64 -auxbase main -Wall -std=c99 -version -o C:\cygwin\tmp\ccXFqWeJ.s
aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
4.9.4
Using built-in specs.
COLLECT_GCC=C:\cygwin\bin\aarch64-elf-gcc.exe
Target: aarch64-elf
Configured with: /home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/snapshots/gcc-linaro-4.9-2017.01/configure SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-objc-gc --enable-shared --without-included-gettext --enable-nls --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --enable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=no --disable-multiarch --with-newlib --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/sysroots/aarch64-elf --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/aarch64-elf/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,lto --build=x86_64-unknown-linux-gnu --host=i686-w64-mingw32 --target=aarch64-elf --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32
Thread model: single
gcc version 4.9.4 (Linaro GCC 4.9-2017.01)
COLLECT_GCC_OPTIONS='-std=c99' '-Wall' '-I' 'c:/Users/username/git/repo/appvm/vm/src/c/java/include' '-I' 'c:/Users/username/git/repo/appvm/vm/src/c/java/include/linux' '-D' '_POSIX_SOURCE' '-D' '_BSD_SOURCE' '-o' 'c:/Users/username/git/repo/appvm/target/vm/aarch64/app_vm' '-v' '-mlittle-endian' '-mabi=lp64'
cc1 -quiet -v -I c:/Users/username/git/repo/appvm/vm/src/c/java/include -I c:/Users/username/git/repo/appvm/vm/src/c/java/include/linux -iprefix c:\cygwin\bin\../lib/gcc/aarch64-elf/4.9.4/ -D _POSIX_SOURCE -D _BSD_SOURCE c:/Users/username/git/repo/appvm/vm/src/c/main.c -quiet -dumpbase main.c -mlittle-endian -mabi=lp64 -auxbase main -Wall -std=c99 -version -o C:\cygwin\tmp\ccXoLYc6.s
aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
~Glen
Hi there
I need to cross-compile an application written in C for ARM v8 (aarch64) and found the toolchain on your website.
I am running Windows 10 using Cygwin 32-bit as I am already compiling for arm6, arm7 and Linux (x86 and x64) successfully.
I downloaded https://releases.linaro.org/components/toolchain/binaries/latest/aarch64-el… and deployed it into my Cygwin installation with no issues.
When I ran my script, I get the following error message: aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
I enabled verbose mode on the GCC and the result is below. My Cygwin's default GCC version is 4.8.3, but I am running 7.2.1 for this. I also tried 4.9.4 as well using a different Cygwin instance.
Can you please advise how I can get around this error? I am able to cross-compile using the 100% exact script with all other architectures with the only difference being the toolchain and architecture.
Cygwin DLL version (just in case).
I called: cygcheck -p cygwin1.dll |grep "cygwin:"
And it returned:
cygwin-2.10.0-1 - cygwin: The UNIX emulation engine
cygwin-2.8.2-1 - cygwin: The UNIX emulation engine
cygwin-2.9.0-3 - cygwin: The UNIX emulation engine
7.2.1
Using built-in specs.
COLLECT_GCC=C:\cygwin\bin\aarch64-elf-gcc.exe
Target: aarch64-elf
Configured with: '/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/snapshots/gcc.git~linaro-7.2-2017.11/configure' SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-shared --without-included-gettext --enable-nls --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --enable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=no --disable-multiarch --with-newlib --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/sysroots/aarch64-elf --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/aarch64-elf/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,lto --with-libiconv-prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/usr --build=x86_64-unknown-linux-gnu --host=i686-w64-mingw32 --target=aarch64-elf --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32
Thread model: single
gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)
COLLECT_GCC_OPTIONS='-std=c99' '-Wall' '-I' 'C:/Users/username/git/repo/appvm/vm/src/c/java/include' '-I' 'C:/Users/username/git/repo/appvm/vm/src/c/java/include/linux' '-D' '_POSIX_SOURCE' '-D' '_BSD_SOURCE' '-o' 'C:/Users/username/git/repo/appvm/target/vm/aarch64/app_vm' '-v' '-march=armv8-a' '-mlittle-endian' '-mabi=lp64'
cc1 -quiet -v -I C:/Users/username/git/repo/appvm/vm/src/c/java/include -I C:/Users/username/git/repo/appvm/vm/src/c/java/include/linux -iprefix c:\cygwin\bin\../lib/gcc/aarch64-elf/7.2.1/ -D _POSIX_SOURCE -D _BSD_SOURCE C:/Users/username/git/repo/appvm/vm/src/c/main.c -quiet -dumpbase main.c -march=armv8-a -mlittle-endian -mabi=lp64 -auxbase main -Wall -std=c99 -version -o C:\cygwin\tmp\ccXFqWeJ.s
aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
4.9.4
Using built-in specs.
COLLECT_GCC=C:\cygwin\bin\aarch64-elf-gcc.exe
Target: aarch64-elf
Configured with: /home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/snapshots/gcc-linaro-4.9-2017.01/configure SHELL=/bin/bash --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32 --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-objc-gc --enable-shared --without-included-gettext --enable-nls --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --enable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=no --disable-multiarch --with-newlib --with-build-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/sysroots/aarch64-elf --with-sysroot=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32/aarch64-elf/libc --enable-checking=release --disable-bootstrap --enable-languages=c,c++,lto --build=x86_64-unknown-linux-gnu --host=i686-w64-mingw32 --target=aarch64-elf --prefix=/home/tcwg-buildslave/workspace/tcwg-make-release/label/docker-trusty-amd64-tcwg-build/target/aarch64-elf/_build/builds/destdir/i686-w64-mingw32
Thread model: single
gcc version 4.9.4 (Linaro GCC 4.9-2017.01)
COLLECT_GCC_OPTIONS='-std=c99' '-Wall' '-I' 'c:/Users/username/git/repo/appvm/vm/src/c/java/include' '-I' 'c:/Users/username/git/repo/appvm/vm/src/c/java/include/linux' '-D' '_POSIX_SOURCE' '-D' '_BSD_SOURCE' '-o' 'c:/Users/username/git/repo/appvm/target/vm/aarch64/app_vm' '-v' '-mlittle-endian' '-mabi=lp64'
cc1 -quiet -v -I c:/Users/username/git/repo/appvm/vm/src/c/java/include -I c:/Users/username/git/repo/appvm/vm/src/c/java/include/linux -iprefix c:\cygwin\bin\../lib/gcc/aarch64-elf/4.9.4/ -D _POSIX_SOURCE -D _BSD_SOURCE c:/Users/username/git/repo/appvm/vm/src/c/main.c -quiet -dumpbase main.c -mlittle-endian -mabi=lp64 -auxbase main -Wall -std=c99 -version -o C:\cygwin\tmp\ccXoLYc6.s
aarch64-elf-gcc.exe: error: CreateProcess: No such file or directory
~Glen
SVE Support ([VIRT-198])
========================
[VIRT-198] https://projects.linaro.org/browse/VIRT-198
RISU Support for SVE ([VIRT-199])
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- started work on next [iteration of SVE series]
- added variable size reginfo for backwards compatibility
- various unrelated build clean-ups and tweaks
- left model generating the testcases over the weekend
- post patches to list :todo
[VIRT-199] https://projects.linaro.org/browse/VIRT-199
[iteration of SVE series]
https://github.com/stsquad/risu/tree/add-sve-support-v3
Upstream Work ([VIRT-109])
==========================
- started reviewing {PATCH v4 00/19} reverse debugging Message-Id:
<20180528071332.9424.27343.stgit@pasha-VirtualBox>
- ran into some issues, need clearer understanding of snapshots
- posted {PATCH v1 0/7} updates for Docker Message-Id:
<20180604145109.30498-1-alex.bennee(a)linaro.org>
- posted {PULL 0/6} Some docker updates Message-Id:
<20180605160541.10664-1-alex.bennee(a)linaro.org>
- posted {RFC PATCH 0/3} Better docker dependency checking Message-Id:
<20180608160432.8734-1-alex.bennee(a)linaro.org>
[VIRT-109] https://projects.linaro.org/browse/VIRT-109
[v4 of the tb_lock removal patches]
https://github.com/cota/qemu/tree/tb-lock-removal-redux-v4
Fixing up tests/tcg
~~~~~~~~~~~~~~~~~~~
- worked on v6 of tests/tcg
- --enable-debug threw up a crash in sh4-linux-user/testthread and
gusa handling
- fun and games with dependencies for building docker images from
makefiles
- posted {PATCH v6 00/49} fix building of tests/tcg Message-Id:
<20180608123307.24773-1-alex.bennee(a)linaro.org>
KVM CI Loop ([VIRT-2])
======================
- need to sync-up on the current state of this work :todo
[VIRT-2] https://projects.linaro.org/browse/VIRT-2
[our wiki] https://wiki.linaro.org/Core/Virtualization
Completed Reviews [2/2]
=======================
{PATCH v3 00/17} tcg: tb_lock removal redux v3
Message-Id: <1526945967-9687-1-git-send-email-cota(a)braap.org>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- CLOSING NOTE [2018-06-04 Mon 13:21]
v4 was posted, tested ok.
{PATCH v3 00/19} reverse debugging
Message-Id: <20180523064941.26016.74274.stgit@pasha-VirtualBox>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- CLOSING NOTE [2018-06-04 Mon 16:32]
v4 posted
Absences
========
- YVR18 Connect (17th-21st September 2018)
- KVM Forum 2018 (24th-26th October 2018)
Current Review Queue
====================
* {RFC PATCH 00/12} tests/tcg: Add TriCore tests
Message-Id: <20180501142222.19154-1-kbastian(a)mail.uni-paderborn.de>
* {PATCH v4 00/19} reverse debugging
Message-Id: <20180528071332.9424.27343.stgit@pasha-VirtualBox>
* {Qemu-devel} {RFC PATCH v2 0/7} QEMU binary instrumentation prototype
Message-Id: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60>
* {Qemu-devel} {PATCH v3b 00/18} target/arm: SVE instructions, part 2
Message-Id: <20180530180120.13355-1-richard.henderson(a)linaro.org>
* {Qemu-devel} {PATCH v3 0/5} Acceptance/functional tests
Message-Id: <20180529193730.9204-1-crosa(a)redhat.com>
* {PATCH v3 00/15} fp-test + hardfloat
Message-Id: <1522883475-27858-1-git-send-email-cota(a)braap.org>
--
Alex Bennée
[ACTIVITY]
- Landed D44928, we should pass the subtarget through to fixups and
relaxation now. The only remaining use of the subtarget in the
assembler backend is for writeNop(). Patches to fix that are upstream
but I'm not hopeful that anyone will want to review them due to the
cost/benefit.
- Wrote up some thoughts on Maxim's idea to use pgo to optimize hot
code for time, but cold code for size in an attempt to retain as much
as performance as possible while reducing code-size.
- Some investigation into the --pgo option of lnt. There seem to be
some pre-requisites and some interactions that have made it difficult
to get results:
-- Needs compiler-rt, duh! But it didn't tell me until after I'd
waited for everything to compile.
-- Failed when I enabled perf and pgo, looks to be a configuration
problem where profile-generate and profile-use are set simultaneously.
Probably a cmake problem.
- Some work on side-project to implement the tiny code model
-- Have something working on small examples, much more testing needed.
-- Need to decide what to do about TLS.
Peter
Progress:
* VIRT-65 [QEMU upstream maintainership]
+ reviewed the next chunk of rth's SVE patches
+ various other misc code review
+ updated windows cross-build environment to handle impending bump
in our minimum supported glib version
* VIRT-164 [improve Cortex-M emulation]
+ revised and sent out v2 of the iommu/MPC emulation patchset
+ started looking at implementation of small-MPU-regions
thanks
-- PMM