Skip to content
This repository has been archived by the owner on Oct 18, 2020. It is now read-only.

Releases: mirage/mirage-platform

Add Xen/ARM support, depend on external MiniOS library, install runtime headers

03 Nov 14:33
Compare
Choose a tag to compare
  • Remove dietlibc, libm and most of the include files, replacing them with
    external dependencies on Mini-OS and openlibm.
  • Introduce Xen/ARM support that works with both Xen 4.4 and the 4.5dev
    hypervisor ABI. Testing on Cubieboard2 and Cubietruck devices.
  • [xen] Move the Xen main Lwt loop into OCaml code to simplify it (#99).
  • Build fixes to work with multiple findlib directories in a single
    installation (#101 from Petter Urkedal).
  • [xen] Install runtime headers for mirage-xen so that external C
    libraries can be compiled (#102 from James Bielman)
  • [xen] Add support for demand-mapping for backend devices via a MiniOS
    gntmap device (#103).

Improve Xen evtchn scalability

24 Feb 16:38
Compare
Choose a tag to compare
  • xen: support 4096 event channels (up from 8). Each device typically
    uses one event channel.

Reduction in build dependencies

01 Feb 00:06
Compare
Choose a tag to compare
  • Update to new io-page{,.unix} ocamlfind packages.
  • Remove unused Netif module from Unix backend.
  • Xen now depends on xen-{evtchn,gnt} packages.
  • Add a type 'a io to make it easier to include

Xen fixes and cleanups

17 Dec 23:30
Compare
Choose a tag to compare
  • Set Sys.os_type to Unix in the Xen backend to help compatibility (#78).
  • Suppress another dietlibc linker warning for vprintf in Xen.

Disaggregate libraries in OS

07 Dec 21:40
Compare
Choose a tag to compare
  • Fix uninstall target for Unix.
  • Remove tuntap stubs from Unix module; they are in ocaml-tuntap now.
  • Move OS.Clock out to a toplevel Clock module (the mirage-clock package).
  • Move OS.Io_page out to a toplevel Io_page module (the io-page package).
  • Update library dependencies to reduce them based on new functionality.
  • Install library as mirage-xen or mirage-unix that can coexist.
  • Suppress dietlibc linker warnings for sscanf/sprintf.

OCaml 4.01 Xen support, experimental NS3 backend, bug fixes

07 Nov 23:02
Compare
Choose a tag to compare
  • Add support for OCaml 4.01.0 in addition to the existing 4.00.1 runtime.
  • Major refresh of the NS3 simulation backend, for latest APIs.
  • Add Netif statistics counters per-packet.
  • [xen] Fix multi-page ring support by granting the correct data pages.
  • [unix] flush OS.Console file descriptor more often (#108).
  • Fix regression in Io_page.string_blit with non-zero src offset (#71).

Xen performance and stability improvements

06 Oct 10:24
Compare
Choose a tag to compare
  • Add Travis continuous integration scripts.
  • [xen] fix suspend/resume
  • [xen] switch to interrupts (SCHEDOP_block) rather than polling (SCHEDOP_poll)
    to allow more than 128 event channels
  • [xen] add Activations.after interface to help drivers avoid losing interrupts

Regression test improvements

09 Aug 22:24
Compare
Choose a tag to compare
  • Add the mir-rt regression runner to scripts/ (not installed).
  • Unhook mir-run from the build, as Mirari replaces it.
  • [xen] Port Netif to use the Macaddr module from ocaml-ipaddr.

Xen grant table bug fixes, and FreeBSD support

18 Jul 11:15
Compare
Choose a tag to compare
  • [xen] Prevent spinning in Activations.run when a thread is blocked and then awakened.
  • [xen] Gnt.grant_table_index is now an int, was an int32.
  • [xen] Cleaned some C stubs files, mainly page_stubs.c
  • [xen] Improved module Netif: The function create do not take a callback anymore, hidden some private function from the .mli.
  • [unix] Add support for building and running on FreeBSD.

Xen stability and interface improvements

09 Jul 12:13
Compare
Choose a tag to compare
  • [xen] Add Netif test to wait for a fixed number of ring slots > 0
  • [xen] Add Evtchn.close to Xen backend.
  • [xen] Disable tree-loop-distribute-patterns to workaround crash with
    gcc-4.8. Temporary fix until we isolate the bug.
  • [xen] Improved the interface of Io_page, implement some missing bits
    in Gnt.
  • [xen] Several modules now have an interface similar to the one in
    the libxc bindings for OCaml. This makes it possible to write one
    application that can be compiled for the UNIX or the Xen backend.