History log of /barrelfish-master/kernel/include/syscall.h
Revision Date Author Comments
# 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>


# 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>


# 4a25e38a 04-Dec-2017 Simon Gerber <simon.gerber@inf.ethz.ch>

kernel: fix sys_copy_remap() declaration

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


# 1c079728 04-Dec-2017 Simon Gerber <simon.gerber@inf.ethz.ch>

kernel: update copy_remap invocation implementation to use mapping caps

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>


# 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>


# 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>


# 2a364094 06-Mar-2017 Reto Achermann <reto.achermann@inf.ethz.ch>

ARM: unifying coreboot on ARMv7 and ARMv8

Coreboot:
* use of hwid_t instead of coreid_t to ensure enough size
* adding context id parameter to the start function

ARMv8:
* removing PSCI debug syscall and use ipi_cap instead
* implementaton of platform specific call functions

ARMv7:
* adapting call sites to deal with new argument
* adaption of platform boot function

Signed-off-by: Reto Achermann <reto.achermann@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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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>


# 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.


# 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.


# 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.


# 0fa35984 24-Sep-2013 Gerd Zellweger <mail@gerdzellweger.com>

Refactoring core boot-up logic in kernel.

Move architecture independent logic into single arch-independent
syscall for all platforms. Handle arch specific boot-up with
specialized function (usually defined in start_aps.c).


# 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.


# 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.


# 8c02a1f1 12-Mar-2012 Mark Nevill <nevillm@ethz.ch>

Added invocations for distcap_get_state.


# 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.


# 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.


# 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


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

Initial version of public stable barrelfish repository.