Added kernel + libl4 changes for full and extended ipc.

- Short ipc working as normal. Full/extended ipc haven't been tested.
- Added automated compilation and inclusion of test executable in test0.
This commit is contained in:
Bahadir Balban
2009-05-15 19:14:40 +03:00
parent 814eba43dd
commit 93368447f9
21 changed files with 289 additions and 49 deletions

View File

@@ -52,7 +52,7 @@ int fork(void)
return ret;
}
extern int arch_clone(l4id_t to, l4id_t from);
extern int arch_clone(l4id_t to, l4id_t from, unsigned int flags);
int clone(int (*fn)(void *), void *child_stack, int flags, void *arg, ...)
{
@@ -74,7 +74,7 @@ int clone(int (*fn)(void *), void *child_stack, int flags, void *arg, ...)
write_mr(L4SYS_ARG1, flags);
/* Perform an ipc but with different return logic. See implementation. */
if ((ret = arch_clone(PAGER_TID, PAGER_TID)) < 0) {
if ((ret = arch_clone(PAGER_TID, PAGER_TID, 0)) < 0) {
print_err("%s: L4 IPC Error: %d.\n", __FUNCTION__, ret);
return ret;
}