mirror of
https://github.com/drasko/codezero.git
synced 2026-07-10 01:14:12 +02:00
Added per-task ipc flags checking instead of the active task flags.
Previously during ipc copy, only the currently active task flags were checked. This means the flags of whoever doing the actual copy was used in the ipc. Now flags are stored in the ktcb and checked by the copy routine. Current use of the flags is to determine short/full/extended ipc.
This commit is contained in:
@@ -87,6 +87,13 @@
|
||||
#include INC_GLUE(memlayout.h)
|
||||
|
||||
#if defined (__KERNEL__)
|
||||
|
||||
/* Kernel-only flags */
|
||||
#define L4_IPC_FLAGS_ERROR_MASK 0xF0000000
|
||||
#define L4_IPC_FLAGS_ERROR_SHIFT 28
|
||||
#define L4_IPC_EFAULT (1 << 28)
|
||||
#define L4_IPC_ENOIPC (1 << 29)
|
||||
|
||||
struct utcb {
|
||||
u32 mr[MR_TOTAL]; /* MRs that are mapped to real registers */
|
||||
u32 saved_tag; /* Saved tag field for stacked ipcs */
|
||||
|
||||
Reference in New Issue
Block a user