[Barrelfish-users] New Barrelfish Release
simon.gerber at inf.ethz.ch
Wed Jun 29 10:39:43 CEST 2016
We are pleased to announce a new release of the Barrelfish OS. Along with
various bug fixes, this release includes a completely overhauled and cleaned
up ARMv7 CPU driver and support for running ARMv7 Barrelfish on ARM's Fixed
Virtual Platform simulator.
As always, you can get the latest version by cloning or pulling from our
git repository .
David Cock (48):
You can't print until the kprintf spinlock is initialised.
Rationalised the ARM Platform code.
ARMv7 FVP needed its own menu.lst
Switched A15 timer to IRQ 29 to match GEM5.
Rewrote do_resume() for ARMv7.
Correctly handle wfi interrupts in the kernel.
Corrected Mackerel field definitions for A9 local timer.
A9: Clear the local timer event at the source.
Debug output for IRQs in kernel mode.
ARMv7: Disable interrupts before calling arch_init()
ARMv7: Map kernel RAM window cacheable.
Reenabled pandaboard modules in menu.lst
Added A9 FVP simulation targets
Removed last reference to sp804 in ARMv7
Merge branch 'armv7'
Make M5_PATH command-line configurable.
Updated GEM5 machine definition in harness.
Merge branch 'master' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish
Removed armv5 target from compiler-rt
Added a harness machine definition for FVPs.
Added license details for FVP
Removed _gem5 and _fvp build types.
Moved ARMv7 platform quirks to kernel arguments
Don't supply --console-port to non-patched GEM5.
ARMv7: Set ContextID
DS-5 OS awareness for BF
Removed redundant offset definitions.
Updated debug script for 0-base kernel ELF
Added a separate script for debugging kernel init.
ARMv7: CPUID check on boot.
ARMv7: Exception vectors in a simple jump table.
ARMv7: Removed the duplicate 'sys_stack'
ARMv7: Simplified jump table
OMAP44xx: Clock frequency discovery.
ARMv7: Removed inconsistent copy of kernel_timeslice
SKB: libpcre has a bug, and overflows the supplied result buffer.
SKB: Updated libpcre to 8.39.
ARMv7: Switched to ARMv7+ TLS registers.
ARM: Removed traces of ARMv7-M and ARMv5 code.
ARM: Removed sp804 driver, as the kernel no longer uses it.
ARMv7: Switched GOT to r9 to match ARM PCS
ARMv7: Renamed _gem5 -> a15ve, _fvp -> a9ve
ARMv7: Added QEmu boot target
harness: Removed qemu_scc
ARMv7: qemu harness definition
libpcre: Masked uninitialised variable warning.
Gerd Zellweger (4):
[Bug] Fix assertion to check struct kcb instead of dcb.
[Improvement] Added Kernel control block identification.
[Improvement] Added KernelControlBlock for Capability identification.
Reto Achermann (2):
[cpuboot] display correct error value if caching fails
[chips] remove chips domain and interface
Simon Gerber (32):
kernel: x86_64: fix paging_dump_tables()
libspawndomain: simplify multiboot mapping as we only have a single cap per module now
harness: Run tests on racked pandaboards
platforms: armv7: use menu.lst.<platform> in build directory when building molly images
harness: armv7: build custom molly images based on modules for given test
T250: filter list of binaries to put into multiboot image with `uniq`.
T251: harness: deduplicate code that is applicable for all rack machines at ETH
harness: update copyright notices and remove unused imports
T252: harness: add machine to test on locally-attached pandaboard
harness: remove get_bootline()
harness: remove armv7-m from pandaboard buildarchs
kaluga: remove wildcard selection of files to compile; x86 builds again
kernel: dump_dispatcher: print dispatcher name
kernel: x86_64: use get_address() instead of manually extracting base address from cap
kernel: x86_64: set dcb_current->disabled correctly when entering kernel via syscall
kernel: dump_dispatcher: don't print dispatcher name in first line
T254: kaluga: move arch-specific startup code into arch files
T255: kernel cap invocation and monitor RPC to discover architecture and platform.
platforms/Hakefile: copy menu.lst to build tree for all molly images
T254: kaluga: use new get_platform() monitor RPC to figure out what to do on armv7
armv7: cpuboot: use get_platform() monitor RPC to figure out which cpu driver to boot
harness: gem5: supply proper kernel command line arguments
harness: fvp: supply proper kernel command line arguments and mmap
platforms/Hakefile: generate rule to copy arm_fvp menu.lst to build tree
T257: use platform monitor RPC to figure out if we need to do Pandaboard usb initialization
T257: add missing platform.h
omap44xx: do not use `div` as variable name
T257: remove USB domains from default pandaboard menu.lst for now
T257: add some more debug output to usb_manager
libpcre: omit -Wshadow to unbreak ARM builds on GCC 4.7.3
harness: Fix image generation for FVP and GEM5 machines to reflect renaming
harness: gem5: fix get_platform()
Timothy Roscoe (5):
Refactored ARMv7-A code. Cleaner startup process. Cleaner cross-platform portability (platform.h). Removed ARMv5. Removed ARMv7-m Removed XScale Changed kernel device paging interface and fixed bugs.
Documentation, and cleaner dispatcher mode tracking code. Still bug with yield.
Missing tool merge
Missing menu.lst files
It helps to initialize your spinlocks
More information about the Barrelfish-users