[Barrelfish-users] New Barrelfish Release
Lukas Humbel
lukas.humbel at inf.ethz.ch
Mon Mar 23 10:23:43 CET 2020
Dear all,
We are pleased to announce a new release of the Barrelfish OS.
The big topics were:
* User-space driver management, including the unified device queue framework
* Support for the NXP iMX8X SoC, which also improved overall ARMv8 support
* Simon Gerber's new memory subsystem
The new release is available in our git repository [1].
Cheers,
Lukas
[1] git://git.barrelfish.org/git/barrelfish
Adam Turowski (17):
mlx4: a working driver
armv8: fixing the Multiboot2 structure
armv8: adding a missing path
armv8: another missing path
Fixing some debug messages
armv8: adding a missing LMP_FLAG_IDENTIFY flag to invocations
Merge commit 'dde1627a841d'
armv8: EFI Barrelfish loader
armv8: generalizing the interrupt controller
armv8: initial Raspberry Pi 3 support
armv8: adding QEMU UBoot machine (qemu_armv8_uboot_*) to harness
arm: GICs cleanups
qemu: adding a custom QEMU_EFI.fd to speed up booting
systime: adding a relative timeout function
arms: unifying interrupts, timers and platform data
hpet: adding a missing flounder binding
hpet: fixing dependencies
Aya Kayal (3):
armv8: Fix idcap_identify syscall
reading characters from lpuart
serial lpuart driver (reading characters and sending them to the shell)
Changyeon Jo (5):
vmkit: add support for Intel Pentium processsor to VMkit
kaluga: a bug fix for lpc_timer
kaluga: investigate all arguments to check the module is auto
vmkit: use new style for guest frame allocation
vmkit: added delay at VMkit monitor startup to wait required modules
Daniel Schwyn (76):
First implementation of new AST for Sockeye parser
Sockeye: New Parser parses top level structure
Sockeye: Implement declaration parsing
Sockeye: Fix natural set model and parsing
Sockeye: Parse declarations & definition skeletons
Sockeye: Parse address blocks in accept
Sockeye: Implement expression parsing
Sockeye: Implement overlay parsing
Sockeye: Implement binds parsing
Sockeye: Implement maps & converts parsing
Sockeye: Fix qualifed node reference parsing
Sockeye: Add source position to AST
Sockeye: Code cleanup in parser
Sockeye: Move code for compiler v1 to subfolder
Sockeye: Build symbol table for top level
Sockeye: Build whole symbol table
Sockeye: Add back compiler pipeline
Sockeye: Implement import parsing and resolution
Sockeye: Build symbol table with imports
Sockeye: Move files for new compiler to v2 dir
Sockeye: Move old code to v1, Hakefile for new code
Sockeye: Fix slice operator
Sockeye: Do not allow multidimensional quantifiers
Sockeye: Update technote
Sockeye: Update technote with checks
Sockeye: Start implementing checker
Sockeye: Add files for rest of compiler pipeline
Sockeye: Add extended syntax example to technote
Fix extraneous argument in ARMv7 LMP macro
ARMv7: Map all init frames shareable (coherent)
hake: Makefile depends on hakefiles again
armv8: Fix dependencies for building images
armv8: Fix naming of multiboot functions
armv8: Remove Grub artefact from multiboot2 header
armv8: Improve handling of multiboot info
armv8: Kernel expects core data also on BSP
armv8: Don't overwrite core data passed by bootloader
armv8: Start cleaning up static EFI bootloader
armv8: Add debug output for boot driver on QEMU
armv8: Fix booting from U-Boot
armv8: Refactor EFI loader
armv8: EFI loader now builds fresh kernel page tables
armv8: EFI loader sets correct memory attributes
armv8: existing image blob is cleared
armv8: Fix module relocation for static EFI images
armv8: Fix include paths in EFI loader
armv8: Only 3G RAM for U-Boot on QEMU
armv8: Disable debug prints in boot driver
Update Hagfish to latest version
Add lpuart kernel driver
Add imx8x platform
Add serial support for imx8x in boot driver
Strip down imx8x image to boot/CPU driver for now
Get rid of serial driver assembly in boot_entry
Fix platform support for imx8x
Improve lpuart kernel driver
armv8: Stop debugging imx8x in boot driver
imx8x: Fix lpuart Mackerel file
proc_mgmt: Fix race condition
armv8: Support no access page mappings
armv8: Fix modify paging flags
armv8: Pass correct page fault cause
armv8: Fix abort when disabled handling
armv8: Improve readability of register restoration code
libbarrelfish: Store thread state at aligned address
Benchmarks: Make Appel/Li compile on armv8
armv7/8: Don't include armv7 headers in shared code
imx8x: Fix description of usb boot target
imx8x: Fix description of imx8x platform
armv8: Remove duplicate armv8 qemu target
docs: Fix Hakefile comment
armv8 tools: Static bootloader passes full cmdline
armv8: Add missing GIC Mackerel devices to Hakefile
imx8x: Return correct core count in kernel
imx8x: Add Mackerel definition for GPIO
imx8x: Better use of U-Boot env variable for boot
Gerd Zellweger (35):
Expose stack_top address in thread API.
Increase sbrk HEAP size.
Increase sbrk memory size.
kernel,x86_64: make sure page-mapped page tables are never writeable from user space.
Example program that can map it's own pagetables RO.
Trying to map PML4.
Update vnode-as-page mapping test to work with new vnode_identify().
Allowing to clear dirty bits from user-space and rewrite page table test
Added cap invocation that clears the dirty bits.
Move some invocations into libbarrelfish.
Dirty bits.
Fix bug.
Added base.
Remove print.
Save the type of the vnode cap in the user-space vnode struct.
Fix include error.
Update test programs for pagetable manipluations.
Expose sbrk memory objects to interested clients.
Add some sanity checks to the sbrk functions.
Added vaddr for frames in pmap.
Expose offset and base again.
Serialize additional vnode information.
Working on a vnode array of the heap.
Increase vnode list.
Fix assertion.
sbrk time measurements.
Fix assertions with NDEBUG.
Measure sbrk tickwise.
kernel,libbarrelfish: Add debug syscall for flushing the TLB.
Make sure mmap is aligned, use new flags for explicit page-sizes.
Ability to set page-size to two MiB.
Modify apple&li to be able to use hugetlbfs.
COW Benchmark initial commit.
COW main benchmark.
Update benchmark with Linux/fork code.
Github Security Lab (1):
`vallen` is verified to be less than `len`, therefore, it can never be the case that `vallen >= len + sizeof(rhostname)`.
Kornilios Kourtis (5):
import original appel benchmark
mem_appel: modernize it a bit (misc/whitespace)
xmpl-cow: add minor note
mem_appel: initial port to Barrelfish
kernel: dont print message on user page faults
Lukas Humbel (216):
Starting the Prolog backend for sockeye2
Sockeye: Improving on Prolog output
Sockeye: instantiating modules with (no outputs yet)
Sockeye: Handle output nodes
Sockeye: Update technote
Sockeye: Forall quantifier
Sockeye: technote example
Sockeye: cleanup
Sockeye: Simple x86 model with runtime manipulation
Sockeye: Add address properties to address blocks
Sockeye: Add resolve function
Sockeye: Make PL queries treat node overlay correctly
Merge branch 'sockeye' into virtualfunction
Sockeye: load x86 decoding net on kaluga start
Sockeye: Add region query to decoding_net2
Sockeye: Make real world resolve region work
Sockeye: Reserver certain regions and allocate free ones
Sockeye: Add some logic for block remappable and generate PTs from it
Sockeye: Working on region route
Sockeye: First version of common buffer query working
Sockeye: Speedup and cleanup
Start of integrating the model supported memory allocator
iommu: add nodeid to getvmconfig call
iommu_client: Pass nodeids to mem_serv
Sockeye: Initialize DRAM with available memory
mem_serv: Move allocate_common into iommu_client
Sockeye: Correct order for initialization
Sockeye: Mark regions in use
Sockeye: adapting towards iommu_client interface
iommu: Use queries to determine buffer
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
iommu: fix alloc_root_vnodeslot
iommu: make driverkit work without an iommu
Sockeye: Support destination ID in alloc_common query
Sockeye: Fix output
Sockeye: Start with explicit state decoding net
Sockeye: Working on next iteration of the prolog
Sockeye: Add state to more variables
Sockeye: add region_region_intersection
Sockeye: Make decoding_net representation one dimensional
Sockeye: Porting PCI bars to new decoding net
Sockeye: decoding step with overlapping regions
Sockeye: Integrate new decode step into routing
Sockeye: Routing for consecutive blocks
Sockeye: Next iteration
Sockeye: Add some more stuff to new file
Sockeye: Add translate for reconfigurable nodes
Sockeye: Add configurable translate
Sockeye: Add routing
Sockeye: Decoding net allocate free range
Sockeye: Update region_alloc
Sockeye: Add alloc and alias frontend queries
Sockeye: Add BF interface support for new decoding net
Bridge programming: Speedup
Sockeye: Support variable observer count in prolog
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
Integrate new model queries
Integrate new model interface part 2
Sockeye: Prolog fixing
Retry on oct_mset and cleanup some model instantiations
Fix bridge_bios programming method
Sockeye: Make offset smaller pagesize. Allocation speed
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
Fix SKB query syntax, add decoding_net debugging
Sockeye: Remove structs from prolog
driverkit: better handling of node ids
Sockeye: Allow vspace alloc in other foreign nodes
driverkit: 1G align allocations so that mem serv can always handle the request
Sockeye: Remove state file fixup
Sockeye: Remove state file fixup 2
Sockeye: "optimize" search order
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
Sockeye: Add Xeon Phi
Sockeye: Mark pci vaddr in use.
Sockeye: Fix PCI vaddr in use.
Sockeye: Make it work for xeon phi + xeon_phi alias query
Sockeye: Integrate Xeon Phi address translation query
Use debug print in assertion failure
Hack: Only add interesting PCI model nodes
Sockeye: Fix new state representation
Sockeye: More fixes for new state encoding
Sockeye: Fix for new state
Sockeye: More fixes for new state
Sockeye: Try to start DRAM at 16GB + various fixes
Sockeye: Fix knc hwmodel query
Sockeye: Translate blocks that are a subset of translateable blocks
Make hwmodel work somewhat
Sockeye: Respect in_use in intermediate route steps
DMA: integrate hwmodel conversion into more places
Sockeye: Fix numbers. translate (no conf) respect sub-blocks
Remove hack
Sockeye: Make bars start at 0
Sockeye: correct bar addressses
Try if optimizations get in our way
More fixes
Revert some tries
revert some tries
Sockeye: Add reverse resolve wrap query
Sockeye: Add reverse resolve func
Sockeye: move xeon phi special cases to xeon_phi hwmodel
Sockeye: Debug print hwmodel queries
Sockeye: Print all the model queries
Sockeye: Another try
Sockeye: Speed optimizations
Sockeye: Integrate queries
Sockeye: Remove hardcoded xeon phi hack. Add XPHI DMA node
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
Sockeye: capture more queries in debug output
Sockeye: Speedup
Sockeye: Again, make things go fast(er).
Start with re-work
flattening
Sockeye: Add alloc
Sockeye: Cleanup, move asserts out into support
Sockeye: Implement map
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish into virtualfunction
Sockeye: Add tests
Sockeye: Multiple conf nodes
Sockeye: Resolve Dst first in map command
adapt query wrappers
Sockeye: fix add_pci support
Sockeye: add add_process test
Sockeye: Don't use negative numbers for empty region
Sockeye: correct xeon phi defs
Sockeye: process overlay pcibus, not dram
Sockeye: Add Benchmarks
Fix prolog
Sockeye: Remove backtracking point in decrement avail
socs: correct knc sockeye
Sockeye: Remove bt points in sockeye
Sockeye: Fix state_remove bug and tests
Sockeye: Add test wrapper function
Sockeye: Benchmarks
add some VM functions
Sockeye: Add free
Fix for parsing with p2i
Sockeye: Start with unmap
bar programming fixes
Fix p2i error
Sockeye: towards unmap
Sockeye: Bugfix
Sockeye: Implement unmap
Sockeye: make add_pci respect new map assumptions
Sockeye: More unmap integration
virtualfunction: fix kaluga build for armv8
Merge branch 'master' into virtualfunction
Sockeye: quick fix for generating documentation
README adapt to u18.04 and general update
hpet source code cleanup
hpet: remove race, clean kaluga start_hpet
HPET: Work on modularized hpet driver
HPET: starting simple comp module
hpet two part driver
HPET fixups
Merge branch 'hpet_driver'
hpet: dependencies to domain
armv7: Move distributor driver to userspace
armv7: enable timer in kernel
armv7: Correct name PL130 to PL390
ARM: Fix kernel IRQ debug printf
Turn serial driver into module and fix userspace GIC
armv7: remove gic dist debug
armv7: dist and serial: fix races
remove debug prints
turn serial pc16550d into module
armv7: Enable serial driver on pandaboard
armv7: Disable CPU reading cpu count from GIC
Merge branch 'armv7_irq_debug'
hake: correct lib dependencies on linking
armv8: fix boot into qemu with make target
Merge branch 'master' of ssh://code.systems.ethz.ch:8006/diffusion/BFI/barrelfish
hake: enable library dependencies on all platforms
hake: Make proper use of lib dependencies
hake: Ensure correct symbols get linked
pci: add missing flounder dependency
import Sven's barebones system
armv8: Remove debug printf
armv8: Fix mem_alloc on matching caps in init
armv8: add proc_mgmt to menu lst
sockeye: Import LISA backend
sockeye: Import barebones.soc file and add hake rule
serial: Fix armv7
hake: Two pass to minimize memory consumption
hake: Generate PL database with driverdomain/modules
armv8: Improve readme
Merge branch 'hake_deps'
Fix irqtest build
flounder: Type generation correct dependencies
harness: add nice make targets for testsets
pmap: Fix lookup function and add test for it
imx8x: add some more modules in menu.lst
imx8x: Add boot target
update copyright notice
armv7: To support domain spanning, use different vregion per core
harness: add imx8x_local machine and some start for rackmount imx8x
imx8x: Add rack mounted colibris to harness
imx8x: Hack kaluga to pass startup, and add startd
armv8: Start with all interrupts disabled
hpet: fix dependencies
imx8x: Fixup serial driver
armv8: fix duplicate platform_get_timer_interrupt
armv8: Implement wait_for_interrupt
imx8x: Remove hacks from serial_lpuart driver
armv8: Port irq cap invocations
armv8: implement user space irq routing + lpuart interrupt
armv8: remove kernel printfs
armv8: fix compilation on other platforms
armv8: increase kcb size to accomodate vector table
imx8x: Boot second core
imx8x: Enable cores 3 and 4
armv8: Cleanup kernel messages
armv7: Fix for kaluga changes
imx8x: Add domains to harness
imx8x: uSDHC driver
armv8: Initialize systime_frequency for init process
readme: add NXP iMX8X to supported platforms
Moritz Hoffmann (6):
add virt_addr and page_table_frame to vnode pointing to locally mapped page table
add base vaddr to alloc_vnode function
Fix sbrk call in usr/tests/pagetable
Fix syntax error in vmx_vmkit.c
Implement binary search in memobj_append protect.
Fix offset calculation in memobj append
Oleg Godunok (1):
Arrakis with Intel virtualization extensions.
Rana Afifi (2):
HPET Driver which now can configure FSB interrupts and receive them
Driver can now trigger and receive interrupts through FSB and I/O APIC mapping
Reto Achermann (409):
updating memory primitives benchmark
increasing maximum possible heap size
adding gups benchmark
adapting GUPS to run on linux
adding distinct printf labels to distinguish which gups is running
libbarrelfish: towards support for demand paging
libdemandpaging: initial commit with basic functinality and access to dirty bits"
libbench: adding avg and stdev to output
libdemandpaging: cleanup and adding of measurements
libdemandpaging: fixing assert with NDEBUG
libdemandpaging: add test for full page writes and verification, disable debug output
libdemandpaging: fix wrong cnode size
libdemandpaging: adding functionality to add/remove frames from region
drivers/iommu: adding framework for the iommu driver
driverkit: don't panic on returned error
acip: adding parser for the DMAR table
hwrecords: adding iommu and rootbridge records
kaluga: register for iommu events
vtd: adding extended descriptors
hwrecords: fix misformatted record
drivers/iommu: remove unneeded code from the template stub
kaluga: calling watch for iommu after pci devices are initialized
devs/vtd: fix compilation
libdriverkit: properly return error code when attaching a new driver
acpi: parse the madt table and disable vt-d inside acpi
iommu: adding module to the list of modules to be built
devices: reformatting of VTd device spec
caps: adding capability definitions for the Intel VT-d IOMMU root and context tables
Kaluga: obtainign cap from ACPI when starting the IOMMU driver
iommu: adding root and context table management code
iommu: adding iotlb management code
iommu: refactor driver structure and introduce domains
hwrecords: fix in formatting for iommu
iommu: adding driver to the list of drivers
acpi: fixing bugs when parsing dmar table
devices: extending VT-d register descriptions
acpi: adapt old VTd code to the new definitions
iommu: moving vtd commands to separate header file
iommu: parsing of capabilities
acpi: don't compile vtd code anymore
devices: merge VTd with VTd_IOTLB device definitions
iommu: using different debugging macro for first level tables
iommu: proper parsing of the two capability registers
iommu: removing todo from the VT-d driver
acpi: rework DMAR parsing, adding comments and futher todos
acpi: remove references to vt-d header
acpi: rework parsing of device scopes
iommu: remove references to old vtd_iotlb device headers
iommu: adding comments to the struct declarations of VT-d
merging master branch into feature branch
caps: adding a new capability type for devices
errnos: remove chips error definitions
caps: adding invocation handlers for the new captypes to the cpudriver
monitor: hand kaluga the device manager capability
kaluga: adding barrier for when PCI bridges are programmed
if: adding iommu service rpc interface
driverkit: adding function to push arguments
numa: adding numa aware allocation for RAM caps
driverkit: starting with iommu client and server
iommo: using libnuma for allocations, skb queries and cleanup
iommu: adding notion of a devices
iommu: moving service implementation to iommu driver
skb: adapting query for obtaining dmar devices
acpi: include iommu idx in SKB records
caps: change information encoded in the device cap
iommu: creating generic device management functions and service implementations
errnos: change VTD_* to IOMMU_*
iommu: adding generic handling of devices
acpi: adding generic iommu() facts to the skb
Merge remote-tracking branch 'origin/master' into virtualfunction
acpi: remove the VT-d interface and replace it with the generic iommu interface
kaluga: allow starting of multiple IOMMU drivers
hwrecords: defining the IOMMU types as a actual type
dma: adding stubs for the dma driver domain for the new driver framework
dma: adding generic queue manager
qmng: adding queue manager client interface
pci: remove unused device_mapping.h header this is in the SKB
devidcaps: pass all arguemnts to the kernel to fill the cap
pci: remove endpoint creation and add deviceid cap
driverkit: fixing potential memory leaksand adding support for argcn
pci: adding missing function prototoype
iommu: don't fail when there is no proximity information available
driverkit: adding functions to extract the caps from the argcn
dma: towards support for IOMMUs
driverkit: actually return the correct cap
iommu: missing implementations of mapping context table & debug output
ioat: converting driver to the driver framework
caps: properly setting the VT-d domain id
kaluga: using driverkit defined slots
iommu: more debugging output
skb: fill out right module for the ioat dma driver
driverkit: actually freeing slot when init fails
skb: setting coreoffset to 0 for ioat driver
ioat: driver module improvements and selftest
iommu: make sure to obtain the include all segment
skb: adding missing device ids and correcting module for the Xeon Phi
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
ioatdma: adding missing flounder defs and move header to C file
iommu: using macros for debug output, disabling some debug output
caps: adding endpoint cap type for UMP endpoints
flounder: towards support for endpoint capabilities
acpi: use debug macro for printfs when parsing dmar table
libbarrelfish: removing unintentionally added includes
flounder: adding test domain for endpoint caps
test/endpoints: actually use the right argcn creation function
flounder: working support for LMP endpoints
tests: bug fixes in the endpoint test
libbarrelfish: adding endpoint related LMP functions
tests/endpoints: make the test sequential LMP and UMP
flounder: towards support for UMP endpoint caps
caps: implementing support to identify and map endpoint caps
flounder: actually setting the connect handlers on both, bind and create endpoints
flounder: adding missed changes to unbreak compilation
flounder: implementing support to pass caps over UMP connection for endpoints
vtd: implementing various cache invalidation functions
monitor: use the creation of endpoints functionality for the RPC server
monitor: don't overwrite monitor state with connection information
monitor: support for registering revoke notifications
monitor: remove unused code from the revoke notify
iommu: towards the new interface
driverkit: adding the new interface defs for the iommu client
iommu: adding new interface
iommu: start implementing client iterface
caps: returning bits as uint8 instead of size_t
iommu: adding functions to set and get the default client
iommu: implement map/unmap/modify low-level interface
iommu: reformatting in a few places
iommu: moving functions and mark them as todo
iommu: towards managing mappings in the client
iommu: starting with vnode managemnt code
iommu: implement the client side tracking of mappings
iommu: refactor common code into a library and service sub functions
iommu: towards implementation of the iommu service
iommu: fix build
iommu: started refactoring the iommu driver to the new interface
iommu: start implementing the device creation upon request
iommu: setting up devices and cache flushes
iommu: adding some more debug outputs and use of macros
iommu: fix bug in assertion
iommu: allow iotlb invalidations all the time
pci: actually returning with the right message so RPCs can proceed
iommu: adding flags to the mmap() call
libdma: use libdriverkit for memory management
iommu: adding function to unmap() mempry
dma: change of ioat device init functions signature
iommu: fix compilation
iommu: implementation of cap retype
iommu: adding new lines to debug outputs
iommu: fix possible null-pointer deref
iommu: retype with the correct object size
iommu: fix domain creation to not fail when there are domains available
dma: actually use the right client to call for iommu present
iommu: bug fixes and debug output in the iommu client library
iommu: allocating slot for the mapping cap
iommu: passing of mapping flags and varioius bugfixes in the mapping code
iommu: handling of map/unmap in the device to enable tlb flushes of the iommu
driverkit: don't try to connect to endpoint if device setup fails
libdma: make it work with the driverkit dma buffer management
caps: handling minting caprights for all caps
paging: don't use devicetlbs for the iommu context tables
dma: fixing confusion with library names
iommu: preliminary support for mapping more than one page at once
iommu: adding changes to the headers
iommu: fix assertion to allow exact page size
iommu: bugfixes in the mapping code
iommu: passing count to the iommu driver
iommu: do allocations depending on whether the iommu is enabled or not
iommu: check if state is set before accessing the fields
caps: enforce caprights when map/unmap
xeonphi: towards driver framework
iommu: us the right pagetable flags for mapping
ioat: passing the iommu client to the test function
iommu: ability to set the default iommu client
kaluga: start the xeon phi with the new driver domain
xeon phi: initialization with the driver framework
driverkit/iommu: don't free slots when doing RPCs
pci/kauga: actually delete the caps not just free the slots
pci: remove acpi bindings
kaluga: don't free slot which is freed in driverkit
pciclient: actually delete the capabilities not just delete the slot:
pci: return the found index when query suceeds
tests: importing the xeon phi test as the hardware model test
driverkit: use the macros for printfs
iommu: addig an iommu id
fixing a Hakefile
cpudriver: remove a debug printf
iommu: print the iommu id when creating a device
hwmodels: adding outline of offload use case
kaluga: check if an element if returned from the list
hwmodel: implementation of host side of the test
hwmodels: adding desired destination node id
hwmodel: almost complete implementaton of hte text case
xeonphi: implement some RPCs for the paper
xeonphi: adapt the initialization to the new framework
xeonphi: prepare to setup up the iomu
xeonphi: implement the dma requets and factor out the translate function
hwmodels: adding separate file in the driver kit to handle queries
xeon phi: skipping initializaton of the second card for now
xeonphi: make the interphi channel to be large page sized
caps: adding pasid when doing frame identify
xeonphi: hwmodel stub function implementation
tftp: don't reuse the buffer when the packet hasn't sent yet
platforms: adding the common modules to the K1OM target
flounder: calling the connect callback when a bind requst comes in
xeonphi: towards support for model based allocations
driverkit: make devaddr a genpadr
flounder: adding allocate rpc definitions to the xeon phi interfaces
k1om: the xeon phi does not support clflush instructions
dma: passing the iommu client when creating the dma device
hwmodels: update the offload scenario
xeonphi: make the serial part of the phi struct
xeonphi: poll all cards that are present
xeonphi: implementation of memalloc interphi calls
xeonphi: explicit passing of state and implemntation of memalloc rpc sevice
driverkit: don't use the model for now, and directly allocate frames
libxeonphi: update header
ioat: retry when the channel initialization failes
netsocketserver: don't use polling
sockeye: make addresses one dimensional and explicit state passing
sockeye: also pass the state when instantiating the modules
sockeye: fix ste number prpagation
sockeye: adding support for block configurable mappings
socs: updating hakefile
decodingnet: remove the loop and simplify parsing
decnet: replace structs with normal predicates
Sockeye: don't use the internal state predicates as they use cut
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
skb: measure the execution of the queries
skb: starting device drivers on different cores
monitor: return NULL_CAP on error
sockeye: don't use low memory regions when allocating vspace
kaluga: orchestrate the boot up process differently & fix endpoint creation
libbarrelfish: use the default send flags when passing local endpoint to monitor
skb: correct time with the skb query time measure
driverkit: provide some more debug information in the iommu client
netsocketserver: enable the polling again
libnet: attempt to make the polling a bit more efficient
netsocketserver: yield if there is nothing on the wire
netsockets: don't loop forever, have an upper bound
e1000: make the periodic event to trigger every 50us
xeonphi: use the model to allocate memory
sockeye: separate the state lists
sbrk: fixing bug with the goffset calculation and using large pages
sockeye: update to the new state interface
skb: increae memory to 128M
sockeye: call assert inside the init function of the decoding net
sockeye: fix missing comma in parser
sockeye: update xeon phi description
sockeye: don't use bits and use range instead
xeonphi: print ranges instead of bits
xeonphi: stub implementation of the config changes
driverkit: adding optino to map at fixed address
libdma: use provided convert function when setup descriptors
hwmodel: remove constraint of 1G alignment
tests/offload: printing the allocation size
sockeye: don't print the hex values as parsing doesn't work with those
tests/offload: use the ram node id not the numanode:0
libdma; disable debugging again
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
memserv: adding hack for the OSDI18 paper
hwmodels: use the correct query
hwmodels: make the testcase working
sockeye: reorganize queries and the support
iommu: enable the use of the entire address space
iommu: using the right offsets into the page tables
sockeye: use the new assert wrappers for static state
decoding net: make the fail case more visible
decoding net: update the state predicates to use less resolution
decoding net: some formatting changes
decoding net: update the initialization function
decoding net: implement state remove suffix
iommu: use the new prolog interface
driverkit: don't pass state when query for node id
decoding net use retract instead of state remove
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
decoding net: bug fixes in the adding of MMU state
decoding net: remove some debug prints
decoding net: remove another writeln() to match expected parsing format
xeon_phi: connect to the skb when the domain is started
decoding net: fix singleton variable
pci: load the decoding net file instead of use module
decoding net: update free and slots when asserting configurable nodes
decoding net: use the full vspace to initialize the slots
libnet: don't print in event loop
decoding net: restrict block to be of size 0
decoding net: reserve just the first 20 PML4 slots, not 512x20 slots
decoding net: don't return vpn/ppn use the addresses instead
libdriverkit: make it work with the new model
xeon_phi: uadapt to the driverkit changes
libdriverkit: adding missing header file changes
decoding net: reserve the first 4G of the xeon phi
hwmodels: adapt to the changed decoding net interface
memserv: fix in print out for OSDI hack
decodingnet: use current bar values
pci: add the decoding net nodes after the configuration
decoding net: some fixes and correct calculation of the end address
socs: use explicit ranges in the Sockeye definitions
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
hwmodel: make it work with the new queries
pci: adding all model nodes in the end
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
libdma: implementaiton of a small benchmark for the OSDI paper
decoding net: don't use existing node enum
iommu: remove debug output
dma: make the compl status 2M
dma: make the error print buffer bigger
dma: reduce the buffer size
decoding net: enable the ioat dma devices
mvas: adding kernel support for raw vnode copy
tools/arm_boot: clear out structs before use
tools/usbboot: replace deprecated set_debug with set_option
update tools/usbboot to use the right way to ennable debug
replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse
lib/introute: fixing missing flounder defs in Hakefile
integration of ARM FastModels into Hake
hake: change path of the fast models to /home/netos
adding gitlab-ci.yml to check for non-signed off commits
FIXUP: adding gitlab-ci.yml to check for non-signed off commits
gitlab-ci: require new commits to be signed off to pass the test
Merge branch 'master' of gitlab.inf.ethz.ch:OU-ROSCOE/barrelfish/barrelfish-internal-master
gitlab-ci: adding test to compile hake
gitlab-ci: adding basic compilation tests for x86_64, ARMv8 and ARMv7
hake: adding flags to just run hake, without initial dependencies
gitlab-ci: using moderate parallelism for running builds
gitlab-ci: adding cleanup job
gitlab-ci: store the build log on failure
gitlab-ci: adding test that there are no unmerged files
update README
harness: fixing non-exhaustive pater for simjobs function
sockeye: fix non-exhaustive pattern in case error
driverkit/serial: adding missing dependencies to Hakefiles
harness: adding driverdomain_pl390 to armv7 modules
tests/proc_mgmt: fix nullpointer bug
libdriverkit: initialize pointer to l3 vnode in iommu client
harness: increase the default test timeout
proc_mgnt: check if there's a pending client before dereference pointer
tests/mt_waitset: increase the number of thread pointers
tools/harness: name the qemu instances consistently
scalebench: print the path of the xml report
tests/capops: use directy identify as frame_identify requres mappable cap
tests/capops: fix other occurences of frame_identify
tests/twolevel_cspace: fix use of frame_identify on ram cap
tests/capops: actually use the passed capability, fix frame_identify in twolevel layout test
qemu-wrapper: increase memory sizes
libbarrelfish: increase heapsizes for 64-bit platforms
hake: increase memory for armv7 platforms to 2GB
tests/malloc: reduce maximum memory size on 32-bit platforms
tests/nmk: fix compilation for armv8
libbarrelfish: pass the fault type int he first argument
tests/malloc: just malloc 256MB for 32-bit machines
vfs: disable megaraid for standard vfs library
tests/span: adding printfs to see progress
tests/prog_mgmt: don't hardcode architecture specific path
libbarrelfish: setting arch specific fields when creating new dispatchers
harness: adding int_route to armv7 platforms
coreboot: fail when trying to reboot/stop a core on non-x86 architecture
harness: adding serial domains to the harness images on ARMv7
armv8: vnode invocation modify flags takes 4 arguments
armv8: fix calculations of required slabs for mappings
armv7: fixing calculations of required slabs for mappings
tests/malloc: increase allocation size
tests/malloc: reducing malloc size to 128MB for now
x86_64: fail or attempt to map page-tables read/write
armv8: work around to set the page-table flags
cpudriver: get the mapping size for armv8 mappings
armv8: actually passing the flags argument
armv8: expect the right number of arguments in the modify mapping invocation
tests/nkm: towards supporting armv8
fugu: new error code if the attempted map operation had insufficient rights
tools/harness: adding name parameter to qemu machine
harness: increasing test timeout
armv7: adding rdtscp() alias to make benchmark compile
lib/devif: use barrier definitions from barrelfish's atomic.h
armv8: enable compilations of various network drivers
tests/devif: don't test networking for armv7
qemu: enable KVM for x86_64 platforms
armv8: actually pass the faulting address
test/lrpc_fpu: make it compile for armv7 and armv8
test/mtwaitset: disable local core spawning on arm platforms
tests/skb_cap_storage: workaround to get it to work on armv7
skb: remove test apps as they don't really test the SKB
drivesr/virtio: remove empty files
x86_64: make all targets compile
libcxx: ubdate libunwind
hake: adding cpudrivers to the _All target
libcompiler-rt: update to newest version from github repo
drivers/uhci: remove not-implemented UHCI driver
armv8: make all defined target compile (ARMV8_All)
libc: adding missing _setjmp.S to armv8 sources
cxx: adding tests for libunwind
libcxx: update to support armv8
libc:adding missing definitions to nl_types.h
libcxx: enable tests for armv8
armv8: fix signed / unsigned comparison warning
libcompiler-rt: fix compilation for armv7
hake: remove x86_32 architecture
arm: fix signed/unsigned compare in header
libcompiler-rt: adding missing files to the arm target
fix uses of cycles_t throughout the tree
Hakefiles: remove x86_32 from architectures
armv7: fix compilation of the ARMV7_All target
libthc: adding back removed _thc_schedulecont assembly function
libcxx: list the source files explicitly
adding clang-format spec
updating .clang-format file
tweaks to clang-format
clant-format; allow two empty lines
clang-format: tweak penalty when assignment gets broken to newline
clang-format: reduce penalty for excess characters
Roni Häcki (335):
e10k: devif backend make compile with debug flags
e10k: convert driver to new framework
e10k: main for driver domain
kaluga: changed start function for e10k to new framework
acpi: removed force vtd_off flag
e10k: driver remove unused files
pci: fixed bug ...
e10k: PF interrupt setup using new framework
e10k: change to new iommu checks instead of vtd
skb: added module name to driver facts
e10k: virtual function module
kernel: handle devid cap invoke correctly
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
skb: device db allow multiple instances of e10k_vf
e10k: moving devif backend to driver folder
kaluga: starting e10k PF and VF driver correctly
e10k: storing e10k VF resources
e10k: working again until trying to do a DHCP
libnet: net_queue fixed assertion for e10k_queue
e10k: working including DHCP
net_socket_server: added flag to change from interrupt driver to polling mode
pci: refactoring of SR-IOV
iommu: added missing dependency
kaluga: changed driver startup conditions
pci: start SR-IOV virtual functions on demand
e10k: start VF from PF driver
kaluga: when starting PCI add endpoint to kaluga to arguments
pci: added missing dependency
pci: kaluga requests PCI endpoints to add at startup of drivers
pci: client add method to connect using endpoint cap
kaluga: correctyl initalized pci endpoint cap
pci: enabling VFs using channel setup by endpoint cap
pci: request vf bar caps through pci endpoint connection
e10k: request VF regs using PCI endpoint cap
e10k: fixed gettinv VF bar caps.
kaluga: generalized naming of endpoint requesting interface
kaluga: hand off endpoint to itself to driver it starts
driverkit: added missing functions
kaluga: fixed bug when reusing driver domain
driverkit: getting an endpoint from a driver integrated in framework
driverkit: adapted driver to new framework with get_ep call
solarflare: removed FreeBSD code base
Platforms: removed sfxge from platforms file
solarflare: removed unsued header file
kaluga: hand over ep to driver when starting net_socket_server
libnet: added starting network stack with endpoint to driver
e10k: devif backend can use endpoint cap to connect to PF driver
kaluga: some cleanup regarding kaluga channel setup
libnet: changed devif backend of NICs so they can initalize with endpoint caps
skb: device db fixed bug with e1000
PCI: added possiblity to request PCI endpoint specifically for IOMMU
iommu: implemented request for iommu endpoint
pci: channel to iommu setup
driverkit: renamed devid cap to iommu cap
kaluga: requesting iommu endpoint cap for device drivers
pci: added method to requires "starting package" for a VF.
e10k_vf: change to new way to aquire resources from PCI
pci: make compile again using debug flags
iommuclient: if cl client is NULL do normal allocs
e10k: changed memory allocation to new iommu framework
pci_client: rpc received into wrong cap
pci: forwarding iommu cap correctly
iommu_client: properly return error in driverkit_iommu_mmap_cl() when failing
libnet: initalize cardname to avoid null pointer when connecting using endpoint
libnet: added setup of net_filter connection using endpoint
e10k: use new framework to allocate descriptor ring memory
libnet: changed buffer allocation to new framework
libnet: netbufs set vbase correctly
e10k: do not map device registers using framework
kaluga: removed some hardcoded values for e10k_vf
e10k: fixed descriptor ring buffer length
pci: fail gracefully if there is no iommu
kaluga: gracefully handle if iommu is not present
pci: better error handling in case there is no iommu
iommu_client: make compile with debug flags
kaluga: start pci with all iommu endpoints
kaluga: request endpoint when at least one iommu driver is started
libnet: fixed queue creation flags
e1000: driver core hint to 0
e1000: change driver to match new allocation framework
pci: removed unecessary printf
iommu_client: do not free cap slot after failure of setting root
e10k: PF and VF timeout when link does not come up
Merge branch 'virtualfunction' of ssh://code.systems.ethz.ch:8006/source/barrelfish into virtualfunction
pci_client: added functionality to query this connections device info (when connection setup using EP cap)
iommu_client: removed some inline from function headers
iommu_client: flag to disable usage of model for allocation
e1000: working with new allocation framework using iommu
sockey: x86_iommu filed upated for PCI
Sockeye: remove PCI bars from generated code
decoding_net: add pci bar nodes
Sockeye: decoding_net2 only add non IO bars for now
skb: bridge program add procedure bar
PCI: add decoding net nodes for PCI bars
skb: bridge programming root bridge window fix
bridge programming: remove unneccessary output.
acpi: insert fixed memory range for iommu into skb
bridge program: take into account 32 bit limitations
bridge programming: added constraint on bridge for nonprefetchable part
bridge programming: fixed integer_list problem
pci: parsing bridge program output correctly
pci: fixed bar allocating with bridge_page algorithm
pci: add fake bridge so bridge programming takes VFs into account
bridge programming: correctly limit addr range for non prefetchable bridge
bridge programming: adding missing dynamic fact bar
e1000: simulating inerrupts using periodic events
bridge programming: some fixes
pci: reduce number of MAX vfs to 16 for now.
bridge programming: shift higher addresses that fail with distintive to 0 and back.
bridge programming: correctly shifting bridge windows for addr > 10'000'000
decoding net: removing filter for PCI device
bridge programming: towards decoding net as output
decoding net: fixed compile error
decoding net: benchmarking xeon phi usecase and printing it to stdout
bridge programming: shifting bridges and bars merged
pci: disable VFs if we do not add argument on menu.lst
pci: fixed case when bridges are not programmed (size = 0)
bridge programming: fixed some bugs in bridge/device address shifting when addr > 10'000'000*4096
bridge programming: added testcase setup
pci: fixed skb bridge programming return values parsing
bridge programming: building decoding net as PCI hierarchy
Merge branch 'master' into virtualfunction
e10k: fixed e10k_queue (merge was wrong)
e10k: removed #define from queue header file
e10k: removed duplicated DEBUG message
kaluga: several checks for setup when iommu is not enabled
dec_net: iommu_enabled not defined when iommu not enabled
e1000: fixed case when IOMMU is not enabled
iommu_client: more checks if endpoint is invalid
e1000: devif backend handle case when there is no IOMMU endpoint
libnet: e10k fallback to non virtualized queue when init fails
driverkit: check for iommu in skb when iommu client not initialized
e10k: check if VT-d is enabled when VF is requested
iommu_client: fixed bug when client is not initalized
e10k: fixed VF case when IOMMU EP is not valid
e10k: devif backend fixed handing over caps in non VF case
e10k: fixed non VF case memory allocation for rings/tx hwb and some cleanup
pci: added notification when SR-IOV init is skipped when iommu not enabled
iommu client: fixed return value of iommu_present function
dec_net: removed dynamic definition iommu_enabled
e10k: removed old code that gained resources not from PCI
e10k: correctly compute VF number to queue number
e10k: cleanup of local and remote RPC for requesting a VF
iommu client: fixed mmap when client struct is NULL
iommu_client: mmap returing wrong cap
e10k: removing helper function (e10k_helper.c) since iommu_mmap now does the same
e10k: net_filter interface adding non rpc message passing functions
e10k: create net_filter ep on driver side
e10k: devif backend get net filter ep
e10k: removed unneeded debugging statement
e10k: txhwb seems to behave weird sometimes, disable it for now
e10k: correctly checking when setting up devq with endpoint
libnet: using EP to set up networking queues net filter connection
solarflare: changed to new driverkit interface
libnet: net_queue correctly return error for sfn5122f queue
skb: define facts as dynamic if they might never be in the database but are queried
solarflare: setup filter ep on driver and devif backend
libnet: setting uf netfilter interface for sfn5122f
UDP queue: fixed setting up queue using endpoints
queue_service: rough skeleton for serivce
queue_service: adding coreid to requests
mem_serv: disable OSDI hack for now
e1000: make irq test compile again
skb: adding module parameter to irq test device database
devif_test: fix compilation
xeon phi: compile module only on x86
driverkit: split library into two parts: generic and iommu part
armv7: make armv7 compile again on VF branch
xeon phi: check if iommu endpoint is valid
omap44xx: change init of drivers to new function signature
schedsim: fixed compilation
skb: reduce stack size to be able to run in QEMU
iommu client: add missing dependencies for xeon phi
e10k: create correct net_filter interface endpoint (LMP/UMP)
xeon phi: fixing some bugs when running withouth HW model
vmkit: fixing test
iommu client: remove unsued values
skb: disable printing out benchmark values for certain queries.
libbarrelfish: vnode_create fixed for ARMv7 (reverted back)
kaluga: do not query decoding net when loading it failed
multihop test: cap destroy let's the code get stuck
iommu: further check when DMAR failed to read
acpi: fixed compilation
kaluga: fixed compilation with debug flags
acpi: revert previous change to handling parsing DMAR failure
queue_service: adding client library
queue_service: adding way to get an ep from the queue service itself
queue_service: adding libary dependecny to libnet and kaluga
xeonphi: small fixes
driverkit: fixed bug in ddomain service
pci: set bios bridge program as default
pci: handle decoding net loading failure more gracefully
kaluga: new style driver arguments remove redundancy
pci: fixed small compilation error
xeonphi: smpt correct phys address for cases with/withouth IOMMU
driverkit: small fix in ddomain service
xeon phi: correctly polling different xeon phis
xeon phi: move HW MODEL flag to public header as DMA library also needs it
lib dma: fixed xeon phi case when not using HW model
xeonphi: fixed case with multiple xeon phi cards
kaluga: queue servicei init implemented
queue_service: fixed typo in name of function
kaluga: implemented adding EPs to queue service
descq: implemented descq setup using endpoint cap
descq: removed unneeded argument for queue creation
descq: creating endpoint from exporting end
kaluga: added missing dependencies non X86 builds
descq: fixed wrong ordered arguments
driverkit: disable HW model debug output
harness: devif test IDC removed some uneeded modules
devif_test: extended to test setting up descq using endpoint
devif_test: added flounder interface for devif_test
kaluga: better startup synchronization with acpi/pci
devif_test: adding test if to Hakefile
e10k: fixed state allocation of net_filter connection withouth ep
multihop: fixed test
devif: e10k backendcorrectly handle create without EP
e10k: add debuging header file to e10k_phy.c
harness: multihop test update processing function
netsocket: init from endpoint
net_queue: removed unnecessary printf
net_sockets: move defines to seperate header file
net_sockets: implemented library of net_sockets server
e1000: correct chack for setup with endpoint
e1000: also setup RPC tables
kaluga: start net_socket_server as driver module
e1000: remove unused dependecies
driverkit: ddomain service/client correctly send/receive argument strings
queue_service: fixed small bug in client.
net_socket_server: add normal vtbl so that calls don't run into NULL function pointer
iommu: added missing dependency
net socket: default init using queue service
driverkit: correctly free cap slot when failing to get EP
net sockets: default init now uses endpoints and queue service
tftp & vfs: properly return error when init of network stack fails
queue service: client move slot alloc for ep out of function
queue service: server return NULL_CAP if lookup fails
netsocker server: remove debug_printf when requesting EP
libnet: library uses net_socket_server for default init
libnet: installing filter only works when there are HW filters
tftp: fixed compilation error
devif: removing pci dependency from network card backends
queue_service: fixed name comparison
net: fixed default init case using net_socket_server
net sockets: fixed comparing names
xeon phi: init networking in driver domain to avoid redundancy
net sockets: prevent double initialization
webserver: using networking_init instead of net_sockets_init
flounder: generate endpoint type header file
LMP: added iftype to endpoint caps
flounder: fixed bug in endpoint type header file generation
flounder: creating LMP endpoints with iftype
flounder: if type header generation bugfix
lmp: comment out debug_printf
kernel: add invocation to set iftype of endpoint (for x86_64)
LMP: change to invocation to setting endpoint iftype
kernel: adding invoke_endpoint syscalls to armv7 + armv8
flounder: generate endpoint type header for multiple architectures
tommath: fixed harness tess getting confisued about finish string
UMP: added endpoint creation with iftype
flounder: UMP endpoint creation now also sets flounder iftype
LMP: endpoint identify working for both ARMv7 and X86_64
ARMv7: syscall endpoint invoke fixed
devif: extended udp queue test to also measure time taken for enq/deq of NIC queue
libnet: net queue add some benchmarking code
e10k: added benchmarking queue more detailed
solarflare: more detailed benchmarking for the queue
devq: renamed benchmarking define
devif: udp queue test enable benchmarking by default
e10k: added missing memory barrier after writing descriptor
devif: ip queue header benchmark flag fixed
Devq: small optimizations of slow path.
Devq: added some benchmarks/tests
Merge branch 'virtualfunction'
Devq: fixed idc test
Sockeye: remove dependency to Text.Pretty.Simp
e10k: enabled dca by default
libnet: adding iftype lookup to net_queue
e10k: enable some features (DCA, TX HW writeback)
hpet: removed generated headers from hpet.h
nfs: increased max read size
e10k: enabling advanced descriptors again
flounder: generate if type header file correctly
flounder: types generation removed some unnecessary printfs
kaluga: corrected ifdef to right value
e1000: correct computation of RX/TX ring size
driverkit: iommu client implement disabling model
kaluga: correctly adding core id to endpoint service.
iommu: removed frame_identify which is only used for debugging
iommu: added missing newline to command line output
kaluga: adding correct core for getting driver endpoints
kaluga: removing debug define from in start_hpet.c
e1000: more useful debug output for tx/rx ring memory
skb: setting core hint for e1000 to o
driverkit: adding flag defintion (but commented out)
driverkit: iommu client small fix when model is disabled
iommu: removed a cache invalidate that makes problems on vacherin
libnet: fix empty string test
net_socket_server: fixing part so that mlx4 works again
kaluga: fixing mlx4 driver starting
imx8: skeletton for enet driver
imx8x: kaluga starting enet driver
imx8: adding part of NIC dev file
imx8x: NIC up to init of multicast filter
imx8x: enet adding more registers
imx8x: enet driver adding queue skeletton + rest of init
imx8x: enet driver add descriptor status constants
imx8x: enet first attempt at receiving a packet
enet: adding MDIO protocol methods
enet: some cleanup. PHY seems to work including autonegotiation
enet: some more fixes. RX queue no longer shuts down but still does not receive packets.
enet: implmented TX functions. Card resets bits but does not send yet
enet: small fix that finally fixed send/recv
enet: fix wrap around of recv queue
enet: split queue code into library
enet: some cleanup
enet: add toggle for debug output
imx8: skeletton for enet driver
imx8x: kaluga starting enet driver
imx8: adding part of NIC dev file
imx8x: NIC up to init of multicast filter
imx8x: enet adding more registers
imx8x: enet driver adding queue skeletton + rest of init
imx8x: enet driver add descriptor status constants
imx8x: enet first attempt at receiving a packet
enet: adding MDIO protocol methods
enet: some cleanup. PHY seems to work including autonegotiation
enet: some more fixes. RX queue no longer shuts down but still does not receive packets.
enet: implmented TX functions. Card resets bits but does not send yet
enet: small fix that finally fixed send/recv
enet: fix wrap around of recv queue
enet: split queue code into library
enet: some cleanup
enet: add toggle for debug output
Merge branch 'master' of gitlab.inf.ethz.ch:haeckir/barrelfish-internal-master
Simon Gerber (427):
x86: add compiler memory barrier to rdtsc inline assembly
examples: Updated README.txt to reflect changes to platforms/Hakefile
kernel: caps_retype: check offset into source based on requested destination cap
bfscope_nfs: properly signal dump_done when not dumping anything
kernel,x86_64: print rsp,rbp when taking kernel fault
monitor: comment out printfs in bfscope code
fix harness reprocess and fix armv7 build
bfscope: Explicitly add monitor flounder interface
omap44xx,usb: add host of missing mackerel files to hakefile
tools/arm_boot: make compile with usual set of compiler warnings + -Werror
libbarrelfish: pmap: add function to calculate memory and cap slot usage of pmap
libbarrelfish: pmap: add function to calculate memory and cap slot usage of pmap
libbarrelfish: pmap: count slots for frames backing slab allocator in stats
libbarrelfish: pmap: count slots for frames backing slab allocator in stats
pmap: x86_64: add trace points for key functions
pmap: x86_64: add trace points for key functions
fish: Add builtin for pmap resource measurement of fish
fish: Add builtin for pmap resource measurement of fish
posixcompat: add errno-like construction to propagate barrelfish errors through POSIX layer
posixcompat: add errno-like construction to propagate barrelfish errors through POSIX layer
posixcompat: Implement mprotect()
posixcompat: Implement mprotect()
libc/sys: implement mmap() for anonymous mappings and implement munmap().
libc/sys: implement mmap() for anonymous mappings and implement munmap().
tracing: add extra error for coreid out of range for tracing
tracing: add extra error for coreid out of range for tracing
fugu: implement err_pop(), to pop errcode_t off errval_t stack.
fugu: implement err_pop(), to pop errcode_t off errval_t stack.
libbarrelfish: pinned: count slab refills
libbarrelfish: pinned: count slab refills
kernel: x86_64: remove LOG_INFO level output when trying to map over existing entry
kernel: x86_64: remove LOG_INFO level output when trying to map over existing entry
distops benchmark framework, and initial bits of delete benchmark
distops benchmark framework, and initial bits of delete benchmark
Implement get_mdb_size() debug syscall
Implement get_mdb_size() debug syscall
More distops benchmarking
More distops benchmarking
distops_bench: Add delete last w/ remote copies benchmark
distops_bench: Add delete last w/ remote copies benchmark
fixup implement get_mdb_size(): kernel: add debug_get_mdb_size() in sys_debug.h
fixup implement get_mdb_size(): kernel: add debug_get_mdb_size() in sys_debug.h
bench_distops: add revoke() without remote copies benchmark
bench_distops: add revoke() without remote copies benchmark
kernel: capabilities: remove printk() on is_retypeable failure
kernel: capabilities: remove printk() on is_retypeable failure
distops_bench: revoke with remote copies
distops_bench: revoke with remote copies
distops_bench: add benchmark for revoking a remote copy
distops_bench: add benchmark for revoking a remote copy
bench_distops: add flounder interface definition
bench_distops: add flounder interface definition
bench_distops: add local retype benchmarks
bench_distops: add local retype benchmarks
distops_bench: add retype with remote non-overlapping descendants
distops_bench: add retype with remote non-overlapping descendants
kernel: caps_mark_revoke: correctly handle case where there are only descendants on a core
kernel: caps_mark_revoke: correctly handle case where there are only descendants on a core
kernel: caps_mark_revoke: we never have to go backwards when marking descendants
kernel: caps_mark_revoke: we never have to go backwards when marking descendants
distops_bench: delete cnode with contents but contents have no remote relations
distops_bench: delete cnode with contents but contents have no remote relations
monitor: capops: delete: do not use state after freeing it
monitor: capops: delete: do not use state after freeing it
distops_bench: fix #ifdef for warning about missing NDEBUG preprocessor flag
distops_bench: fix #ifdef for warning about missing NDEBUG preprocessor flag
distops_bench: add second variation of delete cnode benchmark
distops_bench: add second variation of delete cnode benchmark
distops_bench: change delete foreign copy to use power of two increments
distops_bench: change delete foreign copy to use power of two increments
distops_bench: harness: add test framework and test case for delete foreign copy
distops_bench: harness: add test framework and test case for delete foreign copy
kernel,libbf: implement noop invocation on Objtype_RAM
kernel,libbf: implement noop invocation on Objtype_RAM
distops_bench: add noop invocation benchmark
distops_bench: add noop invocation benchmark
harness: distops_bench: also dump processed data in files
harness: distops_bench: also dump processed data in files
distops_bench: harmonize towards factors of two mdb sizes
distops_bench: harmonize towards factors of two mdb sizes
distops_bench: harness: add test cases for all the distops benchmarks
distops_bench: harness: add test cases for all the distops benchmarks
harness: distopsbench: limit y axis for delete last copy with remotes and fix timeout for cnode vary
harness: distopsbench: limit y axis for delete last copy with remotes and fix timeout for cnode vary
harness: distops_bench: cleanup plotting code to handle arbitrary node ids and deduplicate test classes
harness: distops_bench: cleanup plotting code to handle arbitrary node ids and deduplicate test classes
distops_bench: unify on 256-65536 cap copies, update file descriptions
distops_bench: unify on 256-65536 cap copies, update file descriptions
distops_bench: revoke_no_remote flaky, not sure why
distops_bench: revoke_no_remote flaky, not sure why
distops_bench: Implement single-core variant of revoke_no_remote
distops_bench: Implement single-core variant of revoke_no_remote
distops_bench: add runner for single-core benchmarks to allow them to be run sequentially on a number of cores
distops_bench: add runner for single-core benchmarks to allow them to be run sequentially on a number of cores
distops_benchmark: update harness revoke_no_remote test to use standalone version
distops_benchmark: update harness revoke_no_remote test to use standalone version
distops_bench: delete cnode with occupied slots: fix #slots occupied in code and update ylim for boxplot
distops_bench: delete cnode with occupied slots: fix #slots occupied in code and update ylim for boxplot
distops_bench: correctly label x-axis for delete cnode
distops_bench: correctly label x-axis for delete cnode
platforms/Hakefile: add e1000_net_sockets_server
platforms/Hakefile: add e1000_net_sockets_server
monitor: capops: add TRACE-points in delete
monitor: capops: add TRACE-points in delete
monitor: hardcode trace_control() stuff
monitor: hardcode trace_control() stuff
hake: Add opt-in list for libraries in addLibraries that need add extra include directories
hake: Add opt-in list for libraries in addLibraries that need add extra include directories
distops_bench: main: comment out spammy printf in unicast_cmd()
distops_bench: main: comment out spammy printf in unicast_cmd()
distops_bench: hardcoded changes to delete_last_remote for tracing run
distops_bench: hardcoded changes to delete_last_remote for tracing run
Revert "monitor: hardcode trace_control() stuff"
Revert "monitor: hardcode trace_control() stuff"
pyaquarium: initial check-in; demo.py is currently parsing subsys_capops traces
pyaquarium: initial check-in; demo.py is currently parsing subsys_capops traces
monitor: tracing: add more info to trace points
monitor: tracing: add more info to trace points
pyaquarium: more work on processing capops_delete traces
pyaquarium: more work on processing capops_delete traces
distops_bench: delete_last_remote: add trace points, start/stop tracing
distops_bench: delete_last_remote: add trace points, start/stop tracing
platforms/Hakefile: add section with programs from usr/examples
platforms/Hakefile: add section with programs from usr/examples
distops_bench: cleanup node naming/handling in benchmarks
distops_bench: cleanup node naming/handling in benchmarks
platforms/Hakefile: remove uncommited example programs from list
platforms/Hakefile: remove uncommited example programs from list
distops_bench: add harness case for deleting local copy
distops_bench: add harness case for deleting local copy
kernel,mdb: add trace points on caps_delete() path
kernel,mdb: add trace points on caps_delete() path
distops_bench: really fix node naming
distops_bench: really fix node naming
pyaquarium: rename demo to reflect what it does
pyaquarium: rename demo to reflect what it does
pyaquarium: do not use Min_timestamp data as it gets reset after each call to trace_dump()
pyaquarium: do not use Min_timestamp data as it gets reset after each call to trace_dump()
kernel,mdb: cleanup delete tracing
kernel,mdb: cleanup delete tracing
distops_bench: instrument delete local copy
distops_bench: instrument delete local copy
kernel: cap_delete: remove #ifdef around trace_seqnum
kernel: cap_delete: remove #ifdef around trace_seqnum
mdbbench: update for SG thesis plotting
mdbbench: update for SG thesis plotting
fix harness reprocess and fix armv7 build
fix harness reprocess and fix armv7 build
Add mdb operation counts to calculate scores for different implementations
Add mdb operation counts to calculate scores for different implementations
distops_bench: generate flounder bindings for standalone binaries
distops_bench: generate flounder bindings for standalone binaries
Update platforms/Hakefile
Update platforms/Hakefile
distops_bench: update standalone runner to use new procmgmt
distops_bench: update standalone runner to use new procmgmt
harness: make reprocess.py a bit smarter, add command line args for sourcedir, builddir and buildarch
harness: make reprocess.py a bit smarter, add command line args for sourcedir, builddir and buildarch
distops_bench: Add new harness test for generating latency breakdown data
distops_bench: Add new harness test for generating latency breakdown data
distops_bench: make tracing better integrated in C code
distops_bench: make tracing better integrated in C code
distops_bench: add TRACE-points in all benchmarks
distops_bench: add TRACE-points in all benchmarks
distops_bench: harness: add breakdown delete foreign bench
distops_bench: harness: add breakdown delete foreign bench
distops_bench: harness: remove checking by event_order list order
distops_bench: harness: remove checking by event_order list order
distops_bench: Add harness tests for trace data for delete_last{,_remote} and add extra trace points in monitor
distops_bench: Add harness tests for trace data for delete_last{,_remote} and add extra trace points in monitor
monitor: add TRACE-points to delete stepping
monitor: add TRACE-points to delete stepping
monitor: add TRACE-points to capops_revoke()
monitor: add TRACE-points to capops_revoke()
monitor: add TRACE-points to capops_retype()
monitor: add TRACE-points to capops_retype()
distops_bench: revoke: use USER_REVOKE_{CALL,RESP} around calls to cap_revoke()
distops_bench: revoke: use USER_REVOKE_{CALL,RESP} around calls to cap_revoke()
distops_bench: revoke: use USER_RETYPE_{CALL,RESP} around calls to cap_retype()
distops_bench: revoke: use USER_RETYPE_{CALL,RESP} around calls to cap_retype()
monitor: add extra trace points between revoke phases
monitor: add extra trace points between revoke phases
harness: cleanup distops trace parsing and add test class for revoke_no_remote
harness: cleanup distops trace parsing and add test class for revoke_no_remote
kernel,retype: add TRACE-points
kernel,retype: add TRACE-points
distops_bench,harness: Improve breakdown tests
distops_bench,harness: Improve breakdown tests
monitor,capops: improve revoke + retype TRACE-points
monitor,capops: improve revoke + retype TRACE-points
libbf,retype: add TRACE-points around actual monitor RPC
libbf,retype: add TRACE-points around actual monitor RPC
monitor,capops: guard root cnode copy deletions in retype to make sure we never try to delete the same capref twice
monitor,capops: guard root cnode copy deletions in retype to make sure we never try to delete the same capref twice
capops: retype: if src and dest root cnode are identical only send one copy to monitor
capops: retype: if src and dest root cnode are identical only send one copy to monitor
libbarrelfish: add explicit TRACE-points around capop RPCs
libbarrelfish: add explicit TRACE-points around capop RPCs
distops_bench: add TRACE-points + harness test for delete_cnode
distops_bench: add TRACE-points + harness test for delete_cnode
distops_bench: fix wrong #ifdef in tracing init
distops_bench: fix wrong #ifdef in tracing init
distops_bench: fix and simplify distops benchmarking, produce row results for later plotting
distops_bench: fix and simplify distops benchmarking, produce row results for later plotting
distops_bench: wrap trace_flush to make it no-op when compiled without tracing support
distops_bench: wrap trace_flush to make it no-op when compiled without tracing support
distops_bench: fix delete cnode vary slots
distops_bench: fix delete cnode vary slots
Add comment in move_request__rx_handler()
Add comment in move_request__rx_handler()
kernel: print rw, dirty and accessed bits when dumping page tables.
T73: make Appel benchmark use new modify_flags.
T73: Added option to use direct invocations in Appel benchmark.
T73: Add more Hake targets for Appel benchmark and change #rounds to 1000.
T77: Implement selective TLB flushing hint for modify_flags.
Reintroduce computed selective flush in modify flags
T80: implement "append-only" memobj and use for sbrk().
T80: add asserts in pmap modify_flags().
T80: Implement protect on arbtrary ranges.
x86_64: T80: implement array-backed pmap.
Add protect pagefaults test
T80: x86_64: make pmap region bigger.
Add pmap datastructure define in hake.
fix arrakis vmx merge errors and add missing file.
Minor fixes.
T81: nested paging test program skeleton (copied from hellotest).
T81: Fix copyright notice in nested_paging_test.
T81: implement simple test that maps a 1G page without kernel interaction.
libbarrelfish,pmap: default to selective assisted flushing when debug global enabled
T81: factored out nested paging management code.
T82: checkpoint. Guest domain up. Need to implement hypervisor service.
T82: implement dynamic EPT mapping.
arrakis: convert EPT mapping code to use new vnode & mapping API
T82: 1G ept.
T82: make EPT translations cacheable + do not reload EPTP when it is unchanged.
T82: small improvements; do not needlessly context switch in cpu driver; pre-set a/d flags in ept.
Appel-Li benchmark: update code to match new system implementation.
T82: fix unintended code duplication and messed-up ifdefs in arrakismon.
libbarrelfish, pmap: update create_pts_pinned() to new mapping capabilities API
libbarrelfish,memobj_append: update to frame id with bytes
libbarrelfish,pmap: deduplicate has_vnodes() for linked list and array pmap implementations
fixup checkpoint commit
libbarrelfish,x86,pmap: move static initial slab buffer out of struct pmap_x86.
Merge distops benchmarking into memory system branch
Merge memory paper code into memory system branch
Refactor cowbench
T166: initial skeletons for pmap-based copy-on-write
T166: implement lazy-cow init
T166: implement sketch of exception handler
T166: add naive measurements for pmap-based cow_init
T166: cowbench: Add user_panic for release mode; measure init+setup individually
T166: fix cowbench to work with array-based pmap
T166: refactor code into clone_vnode (user-space part)
checkpoint cow_get_ptable
T166: implement cloning of pte pages using spacejmp vnode_inherit
T167: implement simple microbenchmark that writes 10% of region uniformly at random.
Add cowbench to platforms/Hakefile
T167: improvements to copy-on-write benchmark.
Merge copy-on-write benchmark into memory system branch.
libbarrelfish: threads: add thread_exited() query
T168: modify system to be more/less verbose about pagefaults.
disable printk for dropped ram caps
Fix VA layout so that thread slabs are <4GB
libbarrelfish: x86_64: pmap: Fix slab refilling using fixed allocator
posixcompat: vfs_fd: fix debug printf formats
kernel: fix remaining merge errors in vspace management code
kernel: add debug printf in vnode_inherit handler
libbarrelfish: correctly initialize all shadow page tables to be marked not cloned
cowbench: update to new vspace and capability APIs
libbf,redis: make pmap->refill_slabs take a number of slabs to allocate
kernel: update copy_remap invocation implementation to use mapping caps
kernel: paging_copy_remap: add offset to dest addr for memcpy
pmap_array: have separate slab allocator for child arrays
pmap_array: update child array slab refilling
pmap_cow: properly handle page cloning
kernel,x86_64: Add assertion about mapping cap type
kernel,x86_64: allow dump of page tables around provided virtual address
pmap: set next pointer in vnode to null when using PMAP_ARRAY
libbarrelfish,threads: print core and thread id when exception undeliverable
libbarrelfish: slab_alloc(): zero slab that we're returning to caller
libbarrelfish: slot allocators: allocate more metadata space for allocators
fixup ->next zeroing
libbarrelfish: cnode_create_l2: add DEBUG_ERR on slot_alloc_root() error
libbarrelfish: dispatch: gracefully handle NULL pointers in assert_print
libbarrelfish: dispatch: print coreid when warning about unhandled page faults
libbarrelfish: debug: print error code when debug_cap_identify() fails
libbarrelfish,x86_64,pmap: add commented out debug prints in refill_slabs()
Use new frame identity format in ram_alloc for arrakis
tracing: trace_reset_buffer: fail when trace_buffer_va == NULL.
libbarrelfish: fix old-style capaddrs in invocation wrappers
kernel: fix sys_copy_remap() declaration
x86_64: libbarrelfish: pmap: create_pts_pinned: change vnode slab refilling to new API
libbarrelfish,pmap: improve slab refilling code
libbarrelfish: pmap: move initial slab buffers back into struct pmap_x86.
T384: x86_64: change shadow page tables to have dedicated cnodes for mapping caps
T383: add test which checks that vnode_inherit cannot create ptes which survive cap_delete() on mapped cap
init: add check in mymm_alloc() to catch recursive calls
T383: Add comment about needing to create mapping caps in vnode_inherit invocation handler
T383: vnode_inherit: create mapping caps for cloned ptes
kernel,paging_generic: clean up create_mapping_cap()
monitor: capops: initialize delete stepping in BSP monitor before going into event loop
libbbarrelfish: x86: pmap: remove_empty_vnodes: remove slot_free() on mapping slots
libbarrelfish: x86: pmap: serialise/deserialise: handle mapping caps.
libbarrelfish: slab_grow: add informative output when called with very small buffer.
libbarrelfish: pmap: x86: refill ptslabs when deserializing, if PMAP_ARRAY is enabled.
libbarrelfish: pmap: x86_64: adjust slabs required formulas
libbarrelfish: x86_64: pmap: instrumentation to debug corner cases in slab refilling
libbarrelfish: pmap: x86_64: add debug flag to enable slab refill debugging on per-application basis
kernel: paging_generic: page_mappings_unmap: print debug info when compile_vaddr() returns unexpected error
Cleanup code + fix appel li for current BF
harness: add appel li test cases
kernel: x86_64: fix offset calculation in page_mappings_modify_flags
kernel: x86_64: print raw values of large and huge page ptes
kernel,libbarrelfish: implement general purpose direct cap_identify
harness: appel-li: run tests on core 4 if possible, machine.ncores() - 1 otherwise
x86_64: make sure the Barrelfish-internal CACHE_LINE_SIZE definition does not clash with the one in machine/param.h
kernel,x86_64: mask write flag on page table when it is mapped as data page
libbarrelfish,x86_64,pmap: add facility for applications to get array of leaf shadow page tables.
Merge upstream (including changes for ubuntu 18.04) into memory system branch
libbarrelfish,debug: properly print x86_64 EPT mapping caps
posixcompat: sbrk: add comment about using a memobj_append.
kernel,x86_64: vnode_inherit: fix call to create_mapping_cap
libbarrelfish: libarrakis: link against cap_predicates
T167: add preprocessor error if cowbench compiled with PMAP_LL.
capabilities: fix static asserts after merge
update cow pf handlers to new function signature
harness: distops tests: make distops tests prefix-distinguishable from distops bench
harness: distops_bench: make matplotlib dependency optional
harness: distopsbreakdown: remove errant print of options.
harness: compiler-rt: refactor test builder to make tests with <=25 test cases each.
libbarrelfish: heap: explicitly store and propagate heap pagesize instead of relying on heap alignment to infer pagesize
hake: Main.hs: properly concatenate paths in makeFlounderTypesArch.
armv7: make compile
libbarrelfish: armv7: pmap: use explicit mapping cnodes for non-root vnode mappings
libbarrelfish: x86_64: cleanup commented-out cnode allocation for mapping cnodes
armv8: make compile
libbarrelfish: armv8: pmap: implement alignment in determine_addr
libbarrelfish: pmap: prepare for deduplicating shadow page table walking
libbarrelfish: armv8: pmap: switch to fixed mapping cnodes.
libbarrelfish: armv8: pmap: add comment about PTABLE_SIZE semantic difference to x86_64.
platform definitions: make PTABLE_ENTRIES an arch-independent alias for #entries in a pagetable (for x86_64 and aarch64).
libbarrelfish: pmap: factor out shadow page traversal for x86_64 and armv8
x86_64,armv8: fix unified pmap walking and pmap_array implementation for aarch64.
x86_64: fix clashing #defines for X86_64_PTABLE_ENTRIES
libbarrelfish: pmap: factor out slab refilling from x86_64 and aarch64
libbarrelfish: control pmap datastructure header through Hakefile
libbarrelfish: pmap: define pmap_foreach_child.
libbarrelfish: pmap: Move set_mapping_cap() to pmap_priv.h and use in x86_64.
libbarrelfish: Delete pmap datastructure public headers, they got moved to lib/barrelfish/include.
libbarrelfish: unified pmap: do not include unified pmap code in armv7 builds.
libbarrelfish: unified pmap: refactor slab refilling.
libbf: use cap_direct_identify for frame_identify and co and replace calls to debug_cap_identify where appropriate
kernel,armv8: move offsets constants to target/armv8/offsets_target.h
harness: distops: rename tests back to old scheme and rename benchmarks to bench_distops_*
libbarrelfish: unified pmap: define pmap_ds_child_t type to remove more #ifdefs
libbarrelfish, cowbench: move pmap_vnode_mgmt definition into public header
libarrakis: fix Hakefile to include pmap_ds sources
kernel: implement access_ok() to check user pointer validity
libbarrelfish: pmap_array: pmap_vnode_insert_child: store child for each entry it covers.
libbarrelfish: pmap: do_single_map: only insert child after new vnode fully initialized
barrelfish: x86: pmap: refactor struct vnode.
x86: adapt applications to use new struct vnode layout
libbarrelfish: armv8: pmap: update for new struct vnode layout
x86_64: fix tests/pagetable to use new struct vnode layout
libbarrelfish: pmap-ll: fix pmap_foreach_child() macro
libbarrelfish: move (de-)serialisation out of x86 specific code. Use in aarch64 also.
harness: rename distops breakdown benchmarks to bench_distops_breakdown_*.
libbarrelfish: Hakefile: libarrakis: build pmap_serialise.c
hake: Fix include directories for ARMv8 kernel linker script
release builds: fix compiler errors on armv8
libbarrelfish: pmap slab mgmt: move initial regions for slab allocators into core state.
k1om: add missing libbarrelfish Hakefile stuff and missing #define
libbarrelfish: pmap datastructures: hard-select linked-list pmap for armv7
cowbench: use new pmap vnode mgmt data layout
kernel,monitor: implement reclaiming of previously dropped ram caps.
Comment about uartX.out_file for armv7 FVP.
harness: interactive tests: give console a couple seconds after starting so we avoid test-relevant output being garbled
libbarrelfish: early cn allocator: move state to ram_alloc_state
kernel: x86_64: vmkit: handle_dispatcher_setup_guest: save guest root pt address in dcb->vspace and dcb->guest_desc.vspace.
libbarrelfish: hide mapping cnodes behind #define
libbarrelfish: actually free mapping cap slots when not using mapping cnodes
harness: mark tests as finished on kernel panics
monitor: RAM reclamation: enqueue first sweep with 10ms delay (down from 1s).
pci: add missing newline in debug output
kernel: caps_reclaim_ram: zero reclaimed ram slot in KCB.
kernel: cap_delete: clean up delete list handling.
libbarrelfish: pmap_array: pmap_refill_slabs: refill vnode slabs again after refilling ptslabs
harness,tests: add malloc() test with different buffer sizes
libbarrelfish: pmap serialisation: global mapping cnodes: allocate mapping cnodes in deserialise() when GLOBAL_MCN is set
Early cnode allocation: only provide 64 16kB RAM caps per domain for early cnode allocator
monitor: armv8: add missing DEBUG_INVOCATION statement in invoke_monitor_is_retypeable
boot: armv8: reduce ARMV8_CORE_DATA_PAGES to 1100 (from 1500).
kernel: armv8: add missing invocation handler for KernelCmd_Is_retypeable
tests: distops_delete: use arch-independent invocation to test presence of cap
kernel: armv7: paging_is_region_valid: add parentheses around bitwise ops for readability
kernel: access_ok: properly check that buffer is in user space
libbarrelfish: Refactor Hakefile to allow building multiple versions of libbf with different #defines
hake: Add new options parameter libraryOs which allows applications to select which libOs to link against
memtest: add new application build which links against barrelfish_mcn instead of barrelfish
libbarrelfish: Hakefile: aarch64: move assembly source to arch_assembly
libbarrelfish: Hakefile: fully unify build commands.
hake: Use Args.addCFlags and Args.libraryOs to implement arrakisapplication
libbarrelfish: Hakefile: rewrite to use Args subtype
libbarrelfish: endpoints: refactor to make EP management invocations unnecessary.
Remove invoke_frame_identify, replaced with frame_identify().
libbarrelfish: implement vnode_identify using cap_identify
libbarrelfish: reimplement deviceid_identify using cap_identify.
kernel: only allow sys_identify_cap() when target is L1 CNode
libbarrelfish: Add comment why we still need KCB identify
kernel,libbarrelfish: Remove Frame identify and Vnode identify invocation handlers and commands
hake: cxx: Add libraryOs lib to optCxxLibs
hake: Rewrite libraryOs selection to be more robust.
harness: add memtest variants which link against all available library os implementations.
hake: add Args.addCFlags of libraryOs to extraCxxFlags
libbarrelfish: only include hyper interface if building libarrakis
libmdb: remove unnecessary library dependency on libbarrelfish
asmoffsets: add #define PMAP_ARRAY to avoid error.
hamlet: user_cap_predicates.c: only include static_assert.h and barrelfish_kpi/capabilities.h instead of barrelfish/barrelfish.h
libbarrelfish: pmap_ll: remove debug printf which uses too many __builtin_return_address() for armv8
acpi, kaluga: Add missing newlines in debug printfs
hake: libraryOs flag: use Config.<libraryOsConfig> when building the library OS itself instead of repeating the flags in the Hakefile
hake,libbarrelfish: simplify libraryOs definition
docs: hake: Update technote to briefly describe library OS selection
Merge branch 'memory_system'
libmultiboot: remove unused variable "buf"
libbarrelfish: heap: correctly determine number of page to allocate in internal morecore
dispatcher: remove DISPATCHER_FRAME_BITS, and redefine DISPATCHER_FRAME_SIZE as 512kB.
Stefan Kaestle (2):
GUPS: make GUPS run within DUNE
gups: modified benchmark to use 2M pages
Timothy Roscoe (2):
Added documentation for ARMv8 booting
Added boot target and qemu support for U-Boot on ARMv8
--
Lukas Humbel
More information about the Barrelfish-users
mailing list