#
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>
|
#
4bccd389 |
|
20-Feb-2019 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
Turn serial driver into module and fix userspace GIC Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
ca8451e9 |
|
13-Nov-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,libbarrelfish: Remove Frame identify and Vnode identify invocation handlers and commands Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
8ff0486c |
|
13-Nov-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Remove invoke_frame_identify, replaced with frame_identify(). This commit fully removes the Frame_Identify invocation and replaces the calls with frame_identify(). Additionally, because the KCB is special, this commit introduces a new invocation kcb_identify() which translates the lvaddr in the KCB capability into the pysical address of the kernel control block. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
b917f1c1 |
|
13-Nov-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
libbarrelfish: endpoints: refactor to make EP management invocations unnecessary. This commit implements endpoint_identify using cap_direct_identify and endpoint_set_iftype using cap_mint. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
bf04495c |
|
06-Nov-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel: x86_64: vmkit: handle_dispatcher_setup_guest: save guest root pt address in dcb->vspace and dcb->guest_desc.vspace. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
81781123 |
|
01-Nov-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,monitor: implement reclaiming of previously dropped ram caps. Until now, if the kernel couldn't return a freed region of physical memory to the monitor, e.g. because the monitor was not ready yet, or the monitor's receive slot is already occupied, it would drop the range and print a diagnostic message. With this change, the cpu driver has 4 slots per KCB in which it can store a range that would be dropped. The monitor gets a new kernel cap invocation which allows it to retrieve one of the stored slots, if any. The monitor runs a deferred event loop which checks if there's a range to retrieve every second, and forwards any retrieved ranges to the memory server. The retrieval is very similar to a capops delete step, but does not happen inside the capops machinery because the need for an action are not coupled to a capability operation. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
5ef61ece |
|
23-Oct-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
libbf: use cap_direct_identify for frame_identify and co and replace calls to debug_cap_identify where appropriate Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
dc30d977 |
|
18-Oct-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,x86_64: vnode_inherit: fix call to create_mapping_cap Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
91d728c7 |
|
25-Jun-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,libbarrelfish: implement general purpose direct cap_identify This is required when an application wishes to map its own page tables read only, as we previously did not have a sensible general purpose way of figuring out the type of a given capref without using a debug invocation. Realistically, direct cap_identify should be modified to redact potentially sensitive information which we want to withhold from applications. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
b4221c3b |
|
09-Dec-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T383: vnode_inherit: create mapping caps for cloned ptes Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
6d6a44dd |
|
08-Dec-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T383: Add comment about needing to create mapping caps in vnode_inherit invocation handler Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
c8597501 |
|
17-Oct-2018 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,x86_64: allow dump of page tables around provided virtual address Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
922fc829 |
|
07-Mar-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel: add debug printf in vnode_inherit handler Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
31736bdc |
|
07-Mar-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel: fix remaining merge errors in vspace management code Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
30b6237b |
|
18-Oct-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T167: improvements to copy-on-write benchmark. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
e7a11470 |
|
08-Oct-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T166: implement cloning of pte pages using spacejmp vnode_inherit Closes T166 Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
da6b8b38 |
|
21-Jul-2015 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
mvas: adding kernel support for raw vnode copy cherry-pick vnode_clone() for lazy cow Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
fcc60dd3 |
|
19-Jul-2018 |
Roni Häcki <roni.haecki@inf.ethz.ch> |
kernel: add invocation to set iftype of endpoint (for x86_64) Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>
|
#
73630d29 |
|
18-Apr-2018 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
driverkit: better handling of node ids Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
d843c206 |
|
04-Apr-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
cpudriver: remove a debug printf Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
b76150a5 |
|
16-Mar-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
caps: implementing support to identify and map endpoint caps Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
4213f5b8 |
|
15-Mar-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
caps: adding endpoint cap type for UMP endpoints Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
e864260a |
|
12-Mar-2018 |
Roni Häcki <roni.haecki@inf.ethz.ch> |
kernel: handle devid cap invoke correctly Signed-off-by: Roni Häcki <roni.haecki@inf.ethz.ch>
|
#
52f0a76b |
|
11-Mar-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
devidcaps: pass all arguemnts to the kernel to fill the cap Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
7773be69 |
|
05-Mar-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
caps: adding invocation handlers for the new captypes to the cpudriver Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
6f321005 |
|
28-Feb-2018 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
caps: adding capability definitions for the Intel VT-d IOMMU root and context tables Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
a2f1e286 |
|
23-Mar-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T82: checkpoint. Guest domain up. Need to implement hypervisor service. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
13980b70 |
|
25-Mar-2015 |
Gerd Zellweger <mail@gerdzellweger.com> |
kernel,libbarrelfish: Add debug syscall for flushing the TLB. Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
|
#
825c48c3 |
|
19-Mar-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Minor fixes. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
5b1c86e8 |
|
19-Mar-2015 |
Oleg Godunok <none@none> |
Arrakis with Intel virtualization extensions. Made the necessary changes to allow Arrakis domains to work with Intel virtualization extensions. The type of extensions that are enabled (AMD or Intel) is controlled by the configuration variable config_svm in hake/Config.hs. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
78ccc02c |
|
03-Mar-2015 |
Gerd Zellweger <mail@gerdzellweger.com> |
Added cap invocation that clears the dirty bits. Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
|
#
2614f67c |
|
27-Oct-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Add mdb operation counts to calculate scores for different implementations Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
07645779 |
|
27-Oct-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Add mdb operation counts to calculate scores for different implementations Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
4500ea44 |
|
18-Sep-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,libbf: implement noop invocation on Objtype_RAM Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
e4aef53a |
|
18-Sep-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,libbf: implement noop invocation on Objtype_RAM Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
54207f1f |
|
25-Aug-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Implement get_mdb_size() debug syscall Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
c1c6635e |
|
25-Aug-2017 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Implement get_mdb_size() debug syscall Signed-off-by: Simon Gerber <simon.gerber@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>
|
#
f3d04a51 |
|
14-May-2018 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
Removing the unnecessary syscall GET_ABS_TIME from x86_64 Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
5e68d81b |
|
14-May-2018 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
fpu: some cleanups 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>
|
#
a5455891 |
|
14-May-2018 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
Removing the unnecessary syscall GET_ABS_TIME from x86_64 Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
9fbec89f |
|
14-May-2018 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
fpu: some cleanups 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>
|
#
f5426458 |
|
06-Oct-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T166: x86_64: implement vnode_modify_flags Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
01ee9a40 |
|
22-Sep-2017 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
Fixup of some headers. Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
05f3eb5a |
|
27-Nov-2016 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
systime: introducing system time based on time stamp counter/global timer, removing kernel_now Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
8d697ae2 |
|
09-Nov-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
x86_64: kernel: fix handle_vnode_identify to not do superfluous switch on objtype Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
80f4ecf3 |
|
01-Nov-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
Make debug_my_cspace work with new CSpace layout Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
d29f9d41 |
|
31-Oct-2016 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
network: replacing the continuation manager with simple queues e1000: small performance tweaks Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
d30a3f6b |
|
07-Oct-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: Add range to IRQSrc cap To prepare for MSIx, we change the IRQSrc cap so that it does not represent a single interrupt source but a whole range. This commit changes it to a range. Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
10957289 |
|
05-Aug-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T258: Delete GPT cspace functionality and rename new functions This commit deletes all the old GPT cnode code, and renames the new two-level functions to the "old" names (e.g. caps_lookup_slot() is now a two-level cspace function). Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
aa13ea83 |
|
02-Aug-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T276: Fix monitor revoke check to check for overlapping descendants instead of any descendants Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
1e2a5455 |
|
29-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T274: Fix remote retype Properly propagate source and destiation root cnode throughout monitor retype code and fix kernel code for monitor cap creation and monitor retype. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
145c3282 |
|
12-Jul-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: use uint64_t everywhere for int numbers, renamed controller Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
be009ebd |
|
27-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T266: Resizing root cnode enabled for libmm slot allocator Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
3adb4eaf |
|
25-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T273: x86_64: monitor invocation handlers: rename vbits to level for cspace level arguments Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
0d0a3446 |
|
25-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T273: fix monitor_retype and adjust arguments in direct retype Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
9918bcec |
|
25-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T258: x86_64: change dispatcher_setup_guest, trace_setup and perfcounter_activate to use new cap lookup functions Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
b590dd1b |
|
25-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T273: x86_64: distributed capability operations updated to new cspace layout Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
0af702bd |
|
25-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel,x86_64: move handle_map to where it should be in the file Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
17948f60 |
|
22-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T258, T264, T270: Implement two-level cspace layout using L1/L2 CNode objects. distops functionality is NYI. This commit also makes the root cnodes explicit for sys_map(), closes T270. Notable changes: * LRPC LMP endpoints are regular capabilities in L2 cnode, no longer in root cnode. * Capability operations take a capability address for the root cnode relative to which capability addresses are to be resolved. The root cnode capability address must be resolvable in the current domains cspace. Closes T264. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
fad6529e |
|
04-Jul-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T264: Add NYI handler for L1/L2 CNode invocations Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
eb4f236c |
|
22-Jun-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T255: kernel cap invocation and monitor RPC to discover architecture and platform. Closes T255. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
bc066070 |
|
16-Jun-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel: x86_64: set dcb_current->disabled correctly when entering kernel via syscall Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
be54ebeb |
|
29-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: x86_64: refactor retype2 back to retype Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
e07e9496 |
|
20-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: remove old caps_retype() code from kernel Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
4d6a0890 |
|
20-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: add warning about use of old retype Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
bb44e814 |
|
20-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: update monitor capops retype Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
de0e8f91 |
|
19-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: comment arg dumping for retype2 and add comment about retype + copies of src Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
ff7cf126 |
|
18-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Implement identify command for ObjType_RAM Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
d5a0820b |
|
18-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: fix wrong command in invoke_cnode_retype2, and add some more output in kernel code Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
c80cb48d |
|
18-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: Implement prototype for new retype The new retype call takes an offset into the source cap and a count of objects to create. This is different from the old call that just took a source and created as many new objects as fit into that source (determined by source size and requested size for new objects). Currently available as `cap_retype2(dest_start, src, offset, new_type, objsize, count);` Note that this is not used anywhere yet. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
69b41b96 |
|
18-Apr-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Squashed changes of e89aa91..6ca6bdf (master as of 2016-04-18). Take this commit out when merging Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
823b775b |
|
05-Apr-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: refactoring caps names Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
380c1162 |
|
31-Mar-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: added irq source capability and make the inthandler setup use it Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
21504120 |
|
30-Mar-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: Making the code actually work. ACPI interface Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
84deeb42 |
|
22-Mar-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: work in progress on receiving side Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
68d69b70 |
|
11-Mar-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: Started on the local/driver side. Not a working state. Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
8f0bb8a2 |
|
11-Mar-2016 |
Lukas Humbel <lukas.humbel@inf.ethz.ch> |
IRQ: cap stubs Signed-off-by: Lukas Humbel <lukas.humbel@inf.ethz.ch>
|
#
ced110dd |
|
26-Feb-2016 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: x86_64: frame_identify returns size in bytes Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
fc7fc8de |
|
16-Dec-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T191: change PhysAddr, RAM, Frame, DevFrame and VNode_* cap types to have size in bytes This only changes the actual struct capability reprensentation for these types. Most of the code dealing with these types now uses log2ceil(bits) to set the new `bytes` field. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
1afe32bb |
|
18-Nov-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T187: change vnode_unmap() to only take ptable and mapping caps Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
0a849360 |
|
18-Nov-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T187: Implement modify_flags() on mapping cap Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
bd42059e |
|
17-Nov-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T187: x86_64: squash capability size to 64 bytes Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
612306d2 |
|
17-Nov-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T187: kernel: add mapping cap commands (NYI) Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
7a7afdec |
|
17-Nov-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T187: kernel unmarshalling of mapping cap slot Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
0c769dd9 |
|
20-Aug-2015 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
kernel: SYS_ERR_VMKIT_UNAVAIL on VM syscalls on Xeon Phi Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
42ff64e3 |
|
14-Aug-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Fix arrakis merge errors Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
af59ae7e |
|
15-Jun-2015 |
Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch> |
T119: kernel, spawn, libbarrelfish, fish: Remove DEBUG_PRINT_CAPABILITIES syscall. Use capinvoke from fish instead. Improve output formatting. Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>
|
#
cd66fb54 |
|
15-Jun-2015 |
Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch> |
T119: kernel, spawnd, fish: Use dispatcher invocations to dump capability information Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>
|
#
27e7faaa |
|
15-Jun-2015 |
Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch> |
T119: kernel: Unify debug_print_capabilities in sys_debug.c Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>
|
#
6ed71d68 |
|
11-Jun-2015 |
Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch> |
T119: implement syscall and monitor interface to debug_print_capabilities Signed-off-by: Moritz Hoffmann <moritz.hoffmann@inf.ethz.ch>
|
#
47cce963 |
|
11-Mar-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T77: Implement selective TLB flushing hint for modify_flags. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
878547ec |
|
04-Jun-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Merge of upstream arrakis code. This merge includes the following: * VT-d (IOMMU) support * VMX (Intel CPU virtualization) support * Parallel hake build * MegaRAID driver * Subways fast packet forwarding application * Identify physical address of VNodes * libstorage (VSIC & VSA support) * POSIX support: poll, uname, nanosleep, fsync, poll, pthread attributes, syslog, wait3, ... * TenaciousD (persistent data structures: log & queue) * Hack to skip boot RAM when it's too large * Arranet: Support for raw IP sockets, interrupts * Removal of colorful debug output * MegaRAID blockdevfs support * Arrakis compile wrappers for Autoconf * Patches to binutils & GCC to build Arrakis C++ applications Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch> Signed-off-by: Simon Peter <simpeter@cs.washington.edu> Signed-off-by: Oleg Godunok <ogodunok@gmail.com> Signed-off-by: Antoine Kaufmann <antoinek@cs.washington.edu> Signed-off-by: Jialin Li <lijl@cs.washington.edu> Signed-off-by: Dalton Black <dalton.m.black@gmail.com> Signed-off-by: Taesoo Kim <taesoo@uw.edu>
|
#
92460242 |
|
03-Mar-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
kernel: x86_64: fix error passthrough in modify_flags. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
4713b669 |
|
20-Feb-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Add get_absolute_time() syscall + implement std::chrono::steady_clock::now() using it. This addresses T64. Needs revising and more work to make it available on architectures other than x86_64. This may not quite satisfy the requirements mandated for std::chrono::steady_clock, but is good enough to make steady_clock workable for code that needs to work with millisecond precision durations. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
d2cf0745 |
|
11-Dec-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
[clang] Fixes for the clang compiler.
|
#
dfddb708 |
|
26-Nov-2014 |
Timothy Roscoe <troscoe@inf.ethz.ch> |
Ensure all Mackerel files are included explicitly from dev/
|
#
37a8558c |
|
26-Nov-2014 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
Cleanup of Xeon Phi Kernel: Merged duplicated code from k1om architecture with the X86_64 architecture. No-longer files in arch/k1om have been deleted.
|
#
db8fa193 |
|
21-Nov-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Factored out IPI sending invocations to their own cap instead of kernel cap.
|
#
119e092c |
|
11-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Remove unneeded code.
|
#
089514f9 |
|
11-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Make sure it compiles on x86 again.
|
#
de30396d |
|
11-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Boot driver for ARM can now boot a pandaboard core.
|
#
fb383f0d |
|
10-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Put KCB syscalls in platform independent kernel source.
|
#
5c16930d |
|
10-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Move boot-up assembly to usr/drivers.
|
#
b09035c2 |
|
05-Nov-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Remove unneeded code in x86_64.
|
#
5e985cb2 |
|
29-Oct-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Remove no longer necessary assertion and print.
|
#
6788c45f |
|
28-Oct-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Refactor kcb add/remove function in kernel.
|
#
5ae4dc83 |
|
21-Oct-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Remove the KernelCmd_StopCore. We do not really have need for this as long as booting a core is fast enough.
|
#
ead6438d |
|
30-Apr-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Changes to make benchmarks work.
|
#
060eb5bb |
|
05-Apr-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Warning to pleco file added.
|
#
85cc112e |
|
27-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Fixed deferred events when migrating onto running cpu driver.
|
#
10188087 |
|
24-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Added current core_id so we can properly reroute interrupts after moving kcb.
|
#
00e703f2 |
|
23-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Implemented call chain for making interrupts movable.
|
#
424e4674 |
|
22-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Moved interrupt vector allocation into cpu driver.
|
#
f7f0d859 |
|
14-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Added moving kcb off shared cpu driver, currently crashes in newly started kernel on target core.
|
#
21520879 |
|
14-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Added invocation to remove kcb from kcb scheduling ring.
|
#
237e5bdf |
|
13-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Various debugging and disabled mdb sanity checks.
|
#
6d4e786a |
|
13-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Reverted kernel_add_kcb to take a kernel-local address again. This reverts commit 3e872068eff416694c585511539172f11858daf1.
|
#
b33a6465 |
|
13-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Make kernel_add_kcb take a physical instead of a kernel-local address.
|
#
cd1a5359 |
|
13-Jan-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Added switching of kcb on timer interrupt and added invocation to add kcb to ring.
|
#
28a9f55f |
|
09-Jan-2014 |
Gerd Zellweger <mail@gerdzellweger.com> |
Fix some code, able to do benchmarks.
|
#
fac688a5 |
|
18-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Using sys_suspend syscall to halt a core and resume later. Also adding user-level part where we do something similar to sys_yield, ie. save the context for enabled dispatcher while disabled and set the dispatcher to enabled again in the kernel. This ensures we will jump back to the right part when scheduling without ever returning from the syscall.
|
#
e5692154 |
|
17-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Use monitor/mwait function that were already there Refactored some of the code, have a function that checks for monitor/mwait support before.
|
#
d9aca7a5 |
|
17-Dec-2013 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Implemented FrameCmd_Identify for kcb.
|
#
f4e96de8 |
|
13-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Enable monitor/mwait.
|
#
d0d3f2f7 |
|
13-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Keyboard working.
|
#
8bf552b9 |
|
11-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Trying to figure out why APIC is no longer working
|
#
a9805c82 |
|
10-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Can halt/resume cores again using monitor/mwait.
|
#
387fbfef |
|
05-Dec-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Try monitor/mwait in kernel.
|
#
08ecc314 |
|
19-Nov-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Add syscall to get phys address of struct global. We need to set a pointer in the bootstrap code of the new kernel to point to this global struct that is shared by all kernels. The global struct contains a lock for printing to console. This change allows to completely remove all boot-up logic in the kernel. All we use the kernel for now is to send interrupts to awake the destination core.
|
#
4154407d |
|
14-Nov-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Remove trailing whitespace.
|
#
b88f6a2e |
|
14-Nov-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Added Syscalls for startup ipi and init ipi.
|
#
f02a8d89 |
|
25-Mar-2014 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
monitor: removed unused monitor_identify_cnode_get_cap.
|
#
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.
|
#
1bcf4690 |
|
25-Sep-2013 |
Gerd Zellweger <mail@gerdzellweger.com> |
Added a syscall to halt a core. Currently only for x86-64 and it does not do any checks if its actually safe to halt the core.
|
#
b8d995cb |
|
02-Oct-2013 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Redesigned hw page table dumping to be an invocation on a dispatcher cap. This has two benefits over the old design where dumping hw page tables was a kernel cap invocation and took a dispatcher cap as an argument: 1) This is probably the most common use case, you don't have to go through the monitor if you just want to dump your own hw page tables. 2) A domain which has the dispatcher cap of another domain (mostly because it's going to spawn said domain) can dump the hw page tables of the to-be-spawned domain without capability address contortions.
|
#
97241117 |
|
20-Aug-2013 |
Simon Gerber <gesimu@gmail.com> |
Added missing ifdefs in TRACE_PMEM_CTRL syscall.
|
#
7cf6d00d |
|
31-Jul-2013 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Added debug syscall & Config.hs variable for physmem capability tracing.
|
#
1e14b9d3 |
|
18-Jul-2013 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Fixed capability system merge errors. Builds, boots and promptly crashes.
|
#
cd9c7033 |
|
03-Aug-2012 |
Mark Nevill <mark@nevill.ch> |
Implemented monitor_delete_foreign invocation. This invocation is used when deleting the last copy of a non-moveable cap on its owning core. In this case, because the owner cannot be migrated, all foreign caps must also be deleted, for which this invocation is run on each monitor with foreign copies.
|
#
b9db7ed3 |
|
03-Jul-2012 |
Mark Nevill <nevillm@ethz.ch> |
Rewrote distributed revoke and delete handling.
|
#
8055af74 |
|
25-May-2012 |
Mark Nevill <nevillm@ethz.ch> |
Implemented support for "give_away" transfers in capops_copy.
|
#
f0f90877 |
|
16-May-2012 |
Mark Nevill <nevillm@ethz.ch> |
Added individual remote relations bits for copies/ancestors/descendants.
|
#
e229b39a |
|
01-Apr-2012 |
Mark Nevill <nevillm@ethz.ch> |
Implemented "has_descendants" for retype.
|
#
e822f263 |
|
31-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Completed implementation of "give away" cap support.
|
#
e992c5b3 |
|
27-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Implemented monitor_copy_existing invocation.
|
#
0ac6a546 |
|
26-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Fixed get/set owner invocation argument handling in kernel.
|
#
b7c694b4 |
|
22-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Fixed cap lock/unlock calls to allow lookup from custom root cap.
|
#
2633a91c |
|
20-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Integrated delete & revoke handling.
|
#
82f33c11 |
|
16-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Implemented monitor_(un)lock_cap.
|
#
62334d8e |
|
14-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Implemented get/set owner monitor invocations.
|
#
ba57ae83 |
|
14-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Integrated capops with monitor_cap_create. Note that cap_create_from_existing does not currently check that the supplied owner matches existing local copies of the cap.
|
#
8c02a1f1 |
|
12-Mar-2012 |
Mark Nevill <nevillm@ethz.ch> |
Added invocations for distcap_get_state.
|
#
b600a240 |
|
08-Mar-2013 |
Kornilios Kourtis <kkourt@inf.ethz.ch> |
New tracing infrastructure This is a Distributed Systems Lab project by Alexander Grest <agrest@student.ethz.ch> and David Stolz <stolzda@ethz.ch>
|
#
bde9b9d6 |
|
26-Jun-2013 |
Raphael Fuchs <fuchs.raphael@gmail.com> |
vmkitmon: Adjust vmkitmon to new terminal API. Modify the virtual PC16550d driver allowing to connect a virtual serial port to a host serial port. This patch also fixes serial input, which previously was broken.
|
#
c0763898 |
|
18-Jan-2013 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
x86_64: Implemented modifying flags for parts of mapped regions.
|
#
3962edb6 |
|
27-Nov-2012 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Cleanup function names and converted printfs to debug() in kernel component of new memory interface.
|
#
16a3ba1b |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
x86: Added mapped capability in unmap syscall arguments.
|
#
b63daf9d |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Removed old syscall vm_modify_mapping.
|
#
422cbdc7 |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Implemented new VNode_Map syscall.
|
#
a0e28164 |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Added code to dump hardware page tables from user space.
|
#
96df4814 |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Implemented unmap with checks. Fixed unmap_region to unmap each frame individually.
|
#
f7f6b6e5 |
|
22-Nov-2012 |
Simon Gerber <simugerber@student.ethz.ch> |
Added vm_modify_mapping syscall on pmem capabilities. Also lots of debugging printfs.
|
#
49d9d284 |
|
22-Jun-2012 |
Raphael Fuchs <raphaelfuchs@student.ethz.ch> |
Added ID capability, providing a system-wide unique ID. The ID capability currently supports one invocation called 'identify', to retrieve the system-wide unique ID. The Domain capability, which was never used, is removed with this patch, since the ID capability provides a more general capability.
|
#
96dc7841 |
|
18-Jun-2012 |
Raphael Fuchs <raphaelfuchs@student.ethz.ch> |
Added ability to create certain capabilities at runtime (without using retype). The CNode capabilities are enhanced with a new invocation 'CNodeCmd_Create', allowing to create new capabilities at runtime. Only certain types of capabilities can be created this way. If invoked on a capability type, that is not creatable at runtime the error SYS_ERR_NOT_CREATABLE is emitted.
|
#
84539d5c |
|
25-Jan-2012 |
Mark Nevill <nevillm@ethz.ch> |
Adapt existing mdb functions in kernel to use new tree.
|
#
38f02e71 |
|
11-Jan-2012 |
Andrew Baumann <andrew.baumann@microsoft.com> |
clean up and add some flexbility to mapping of APIC IDs and core IDs * introduced kernel boot parameter to control the core ID for the BSP (on x86, where it was always zero) * introduced spawnd parameter to allow all core IDs to start from an offset (I'm using this for boot on MIC) * added monitor API to query the local core's APIC ID (some drivers might need it) * fixed some kernel paths that were needlessly reading the APIC ID out of the APIC all the time
|
#
52c61712 |
|
28-Dec-2011 |
Zeus Gómez Marmolejo <zeus.gomez@bsc.es> |
Replaced caddr_t type with capaddr_t to avoid conflict with libc for i in $(find . -type f) do grep -r caddr_t $i if [ $? -eq 0 ] then sed 's/caddr_t/capaddr_t/g' $i > $i.sed mv $i.sed $i fi done
|
#
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.
|