minix/minix/kernel
David van Moolenbroek 12cb1e7a64 Add sequence numbers to grant IDs
The memory grant identifier for safecopies now includes a sequence
number in its upper bits, to prevent accidental reuse of a grant ID
after revocation and subsequent reallocation.  This should increase
overall system robustness by a tiny amount, and possibly help catch
bugs in system services early on.  For now, the lower 20 bits of the
grant ID are used as grant table slot index (thus allowing for up to
a million grants per process), and the next 11 bits of the (signed
32-bit) grant ID are used to store the per-slot sequence number.  As
grant IDs are never exposed to userland, the split can be changed
later on without breaking the userland ABI.

Change-Id: Ic34be27ff2a45db0ea5db037a24eef9efcd9ca40
2016-01-01 01:28:45 +01:00
..
arch Kernel: apply x86 copy overflow check to ARM 2016-01-01 01:28:45 +01:00
system Add sequence numbers to grant IDs 2016-01-01 01:28:45 +01:00
clock.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
clock.h New sources layout 2014-07-31 16:00:30 +02:00
config.h New sources layout 2014-07-31 16:00:30 +02:00
const.h vm: Separate mmap regions. 2015-09-16 11:06:17 +00:00
cpulocals.c New sources layout 2014-07-31 16:00:30 +02:00
cpulocals.h New sources layout 2014-07-31 16:00:30 +02:00
debug.c kernel: Add support for IPC filters. 2015-09-16 11:02:24 +00:00
debug.h kernel: Add support for IPC filters. 2015-09-16 11:02:24 +00:00
extract-errno.sh New sources layout 2014-07-31 16:00:30 +02:00
extract-mfield.sh New sources layout 2014-07-31 16:00:30 +02:00
extract-mtype.sh New sources layout 2014-07-31 16:00:30 +02:00
glo.h Kernel: separate userland ABI on kernel page 2015-09-23 12:01:15 +00:00
interrupt.c New sources layout 2014-07-31 16:00:30 +02:00
interrupt.h New sources layout 2014-07-31 16:00:30 +02:00
ipc_filter.h kernel: Add support for IPC filters. 2015-09-16 11:02:24 +00:00
ipc.h kernel: Add support for IPC filters. 2015-09-16 11:02:24 +00:00
kernel.h New sources layout 2014-07-31 16:00:30 +02:00
main.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
Makefile Integrate magic instrumentation into build system 2016-01-01 01:28:13 +01:00
priv.h kernel: Handle IPC properly at live update time. 2015-09-16 11:02:53 +00:00
proc.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
proc.h Kernel: per-process sleep time 2016-01-01 01:28:19 +01:00
profile.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
profile.h Remove support for call profiling 2014-09-30 12:39:03 +00:00
proto.h Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
smp.c New sources layout 2014-07-31 16:00:30 +02:00
smp.h New sources layout 2014-07-31 16:00:30 +02:00
spinlock.h New sources layout 2014-07-31 16:00:30 +02:00
system.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
system.h Remove support for call profiling 2014-09-30 12:39:03 +00:00
table.c Add MIB service, sysctl(2) support 2016-01-01 01:28:16 +01:00
type.h New sources layout 2014-07-31 16:00:30 +02:00
usermapped_data.c Kernel: separate userland ABI on kernel page 2015-09-23 12:01:15 +00:00
utility.c Kernel: convert K&R functions to ANSI 2016-01-01 01:28:43 +01:00
vm.h New sources layout 2014-07-31 16:00:30 +02:00
watchdog.c New sources layout 2014-07-31 16:00:30 +02:00
watchdog.h New sources layout 2014-07-31 16:00:30 +02:00