mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 02:43:15 +01:00
- KIP's pointer to UTCB seems to work with existing l4lib ipc functions. - Works up to clone() - In clone we mmap() the same UTCB on each new thread - excessive. - Generally during page fault handling, cloned threads may fault on the same page multiple times even though a single handling would be enough for all of them. Need to detect and handle this.
29 lines
514 B
C
29 lines
514 B
C
/*
|
|
* Exchange registers system call data.
|
|
*
|
|
* Copyright (C) 2008 Bahadir Balban
|
|
*/
|
|
#ifndef __EXREGS_H__
|
|
#define __EXREGS_H__
|
|
|
|
#include <l4/macros.h>
|
|
#include INC_GLUE(syscall.h)
|
|
#include INC_GLUE(context.h)
|
|
#include <l4/types.h>
|
|
|
|
#define EXREGS_SET_PAGER 1
|
|
#define EXREGS_SET_UTCB 2
|
|
|
|
/* Structure passed by userspace pagers for exchanging registers */
|
|
struct exregs_data {
|
|
exregs_context_t context;
|
|
u32 valid_vect;
|
|
u32 flags;
|
|
l4id_t pagerid;
|
|
unsigned long utcb_address;
|
|
};
|
|
|
|
|
|
|
|
#endif /* __EXREGS_H__ */
|