History log of /barrelfish-master/lib/barrelfish/dispatch.c
Revision Date Author Comments
# 54f3b426 22-Nov-2019 Daniel Schwyn <daniel.schwyn@inf.ethz.ch>

armv8: Pass correct page fault cause

Signed-off-by: Daniel Schwyn <daniel.schwyn@inf.ethz.ch>


# 9bd8d1d5 03-Apr-2019 Reto Achermann <reto.achermann@inf.ethz.ch>

replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse

Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>


# b6851fa3 19-Oct-2018 Simon Gerber <simon.gerber@inf.ethz.ch>

armv7: make compile

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# b2ed0956 18-Oct-2018 Simon Gerber <simon.gerber@inf.ethz.ch>

libbarrelfish: dispatch: print coreid when warning about unhandled page faults

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# 5427ee02 18-Oct-2018 Simon Gerber <simon.gerber@inf.ethz.ch>

libbarrelfish: dispatch: gracefully handle NULL pointers in assert_print

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# d537665d 20-Oct-2015 Simon Gerber <simon.gerber@inf.ethz.ch>

T168: modify system to be more/less verbose about pagefaults.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# 3343d814 24-Aug-2018 Adam Turowski <adam.turowski@inf.ethz.ch>

armv7: fixing VFP support

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 6296e5d6 07-Aug-2018 Adam Turowski <adam.turowski@inf.ethz.ch>

xeon_phi: fixing timers, dispatching and stack's alignment

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 9a7d2f5b 11-May-2018 Adam Turowski <adam.turowski@inf.ethz.ch>

fpu: unifing the fpu's context switching
x86_64: fixing the stack's alignment

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# df7a10ce 11-May-2018 Adam Turowski <adam.turowski@inf.ethz.ch>

fpu: unifing the fpu's context switching
x86_64: fixing the stack's alignment

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 691a9c6a 06-Jun-2017 Adam Turowski <adam.turowski@inf.ethz.ch>

net_sockets: converting nfs

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 2a1e8db1 03-Jan-2017 Adam Turowski <adam.turowski@inf.ethz.ch>

ump,flounder: moving a flow control from a flounder level to a ump level

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# acc20fde 16-Aug-2016 Simon Gerber <simon.gerber@inf.ethz.ch>

k1om: libbarrelfish: Fix disp_try_disable

Use __sync_compare_and_swap() instead of unavailable __atomic_test_and_set()
for k1om gcc 4.7.0.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# 44f445db 27-Jul-2016 Adam Turowski <adam.turowski@inf.ethz.ch>

New conditional dispatcher disabling function.

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# d328987d 26-Jul-2016 Adam Turowski <adam.turowski@inf.ethz.ch>

Multi-threaded waitsets, tokens added to IPC messages.

Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>


# 198249b2 06-Jun-2016 Timothy Roscoe <troscoe@inf.ethz.ch>

Documentation, and cleaner dispatcher mode tracking code. Still bug with yield.

Signed-off-by: Timothy Roscoe <troscoe@inf.ethz.ch>


# f747554f 17-Nov-2015 Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>

T24: remove remaining SCC code

Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>


# 5fbf6836 22-Jul-2015 Simon Gerber <simon.gerber@inf.ethz.ch>

32bit arm: fix large page support. Close T148.

This implements a bit field to track the mapping of individual L2 tables for
armv5 and armv7 user space page table management. Having this tracking
bitfield we can use 1MB sections without having weird interference between
unused L2 tables and creating new section mappings.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# da716250 22-Jul-2015 Simon Gerber <simon.gerber@inf.ethz.ch>

32bit arm: fix large page support. Close T148.

This implements a bit field to track the mapping of individual L2 tables for
armv5 and armv7 user space page table management. Having this tracking
bitfield we can use 1MB sections without having weird interference between
unused L2 tables and creating new section mappings.

Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>


# df57367a 27-Jun-2014 Reto Achermann <acreto@student.ethz.ch>

Kernel: Added a new field to the dispatcher struct for K1OM architecutre

Addition of xeon_phi_id information to the dispatcher generic struct
Adding of a new function to obtain this structure
Adding of new fields to multiboot and coredata structures
(xeon_phi_info)
Adapted lib spawndomain to forward the own xeon phi id when spawning
kernel: shows message on which Xeon Phi we are running on.


# de906f69 28-Feb-2014 Simon Peter <simpeter@cs.washington.edu>

The Arrakis backport to Barrelfish.

Here are the macro changes:
* Made lwIP an optional network stack
* Moved lwIP headers out of the general include directory
* Parallel hake
* CPU-virtualized ("arrakis") applications
* libarrakis is a new libOS that uses CPU features directly
* arrakismon is a new monitor for Arrakis apps
* QEMU Multiboot support instead of GRUB (enables KVM)
* e10k virtual function driver
* Software virtual->physical mapping (substitutes IOMMU)
* To be replaced soon with an Intel IOMMU driver
* Better GDB and stack tracing support
* New POSIX support
* pthreads, inet_*(), usleep(), syslimits.h, sigaction(), mman.h,
* resource.h, sendmsg(), recvmsg(), mkfifo(), syslog.h, sysexits.h,
* fcntl(), getegid(), getgid(), pipe(), rlimits
* epoll support
* Separate waitset for interrupts
* Thread TLS key and ID support
* Moved PCRE headers to include/, where they usually are
* Intel performance counters support
* Handle boot-time RAM overflow (for machines with >=64GB RAM)
* Arranet network stack
* Fix for build of lib/barrelfish/arch/x86_64/dispatch.c without -O2
* New comandline options to pci daemon:
* maxvfs=x, x is number of virtual functions to create for each
* device supporting it
* skb_bridge_program=x, x is SKB bridge programming script to use
* bridge_bios is a script that uses the BIOS pre-set values, like Linux
* Correctly build machine-optimized newlib parts
* Library versions of e1000 and e10k drivers
* Support for virtualization in e10k driver
* e10k datacenter control plane daemon
* Modified hellotest to be both a Barrelfish and an Arrakis application

I've decided not to include the lwIP 1.4.1 code, as the port is
not finished and who wants to use lwIP anyway with the Arrakis
network stack and mTCP being released soon. If you want this,
let me know (it's hugely superior to lwIP 1.3.1).

I've made the code backwards-compatible with Barrelfish. The
default should do what Barrelfish does. One can specify
commandline options to the PCI daemon and e10k driver to
configure I/O virtualization and the optional arrakismon allows
loading CPU-virtualized "arrakis" programs.

There are more pending changes, such as support for hardware
rate limiting and weighted round robin packet scheduling, but
I'd like these to go in first, before I push the rest.


# ca0fa85f 07-Nov-2013 pravin@inf.ethz.ch <pravin@inf.ethz.ch>

Cleaned up code and removed all the debugging related code


# 0be97004 07-Nov-2013 pravin@inf.ethz.ch <pravin@inf.ethz.ch>

Webserver working for full website with LMP.

This version of code still does not work for UMP,
and also it does not work for httperf test.

Also, there is lot of commented out code which was helpful for me
in debugging the issue of randome page-fault.


# a6171934 30-Oct-2013 pravin@inf.ethz.ch <pravin@inf.ethz.ch>

Partially working version of the modified network stack.
Status: Networking works
Small website test works (Barrelfish website without pdfs)
Full website test does not work (Barrelfish website with pdfs)
Tests done with e1000n running on separate core


# 42f81ef4 08-Feb-2013 Zaheer Chothia <zchothia@student.ethz.ch>

Clang: resolve several minor warnings.


# dffaedf8 25-Oct-2012 Raphael Fuchs <raphaelfuchs@student.ethz.ch>

libbarrelfish: Rename the header lib/barrelfish/include/threads.h to
lib/barrelfish/include/threads_priv.h.

To avoid confusion between the public and the private thread header, rename
the libbarrelfish-private thread header to threads_priv.h.

--HG--
rename : lib/barrelfish/include/threads.h => lib/barrelfish/include/threads_priv.h


# b88f14b4 04-Aug-2012 pravin@inf.ethz.ch <pravin@inf.ethz.ch>

Userspace is working now.
There was an issue with stack pointer not restored properly,
but now it is fixed by restoring sp separately with help of temporary register.

Currently code stops somewhere in mem_serv with complain MM_ERR_OUT_OF_BOUNDS


# f8512ecf 31-Jul-2012 Stefan Kästle <stefan.kaestle@inf.ethz.ch>

Steps towards going to user-level.

The first sys_print works (from within the dispatcher of init), but
the state does not seem to be restored properly. The infinite-loop
after this sys_print is never reached. I assume the code to restore
the registers in swi_done is broken.

This code is not stable. A lot of things are disabled, e.g. caching,
interrupts. Also, there are some infinite loops in there.


# 70c30847 23-Jan-2012 Andrew Baumann <andrew.baumann@microsoft.com>

remove support for Beehive

see the mailing list discussion at the end of December 2011 for motivation


# e471e7c3 07-Oct-2011 pravin@inf.ethz.ch <pravin@inf.ethz.ch>

Working checkupoint: added context switch measurements


# 559955b4 02-Aug-2011 Simon Peter <speter@inf.ethz.ch>

Merge from ASPLOS tree.


# e196fe93 18-Jul-2011 Andrew Baumann <andrew.baumann@microsoft.com>

fixes to enable compilation with ICC

The primary changes are avoiding pointer arithmetic on void * types, which is
evidently a GCCism: instead a byte-sized pointer type should be used.

Other changes include workarounds to avoid uninitialised variable warnings,
and an insistence that const values have an initialiser (being static and implicitly
initialised to zero isn't sufficient).


# 9299dcef 08-Jul-2011 Stefan Kästle <stefan.kaestle@inf.ethz.ch>

Initial version of public stable barrelfish repository.