[Barrelfish-users] New Barrelfish Release

Simon Gerber simon.gerber at inf.ethz.ch
Wed Jun 29 10:39:43 CEST 2016

Dear all,

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 [1].

-- Simon

[1] git://git.barrelfish.org/git/barrelfish

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.
      Retabbed exceptions.S
      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
      Renamed build_pandaboard_image.sh
      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.
      Update gitignore.

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 mailing list