diff options
author | marcus <marcus> | 2004-10-06 15:13:01 +0000 |
---|---|---|
committer | marcus <marcus> | 2004-10-06 15:13:01 +0000 |
commit | 7c8aa6b5af257a5c41208df95f44192849eb115e (patch) | |
tree | 5614ca910a211c6d920262f7d99d1ac30be4f293 /libl4 | |
parent | 0838e7fcbd6d4662ecf50f7b1e9224159e448371 (diff) |
2004-10-06 Marcus Brinkmann <marcus@gnu.org>
* l4/gnu/space.h (L4_FPAGE_READ_WRITE_ONLY): Define macro.
* l4/space.h (_L4_read_write_only): Define macro.
* l4/compat/space.h (L4_ReadWriteOnly): Define macro.
* l4/compat/syscall.h (L4_ErrOk): Define macro.
* l4/misc.h (_L4_set_page_attribute): Wrap the ATTRIBUTE argument
into an object of the correct type.
Diffstat (limited to 'libl4')
-rw-r--r-- | libl4/ChangeLog | 9 | ||||
-rw-r--r-- | libl4/l4/compat/space.h | 1 | ||||
-rw-r--r-- | libl4/l4/compat/syscall.h | 1 | ||||
-rw-r--r-- | libl4/l4/gnu/space.h | 1 | ||||
-rw-r--r-- | libl4/l4/misc.h | 3 | ||||
-rw-r--r-- | libl4/l4/space.h | 1 |
6 files changed, 16 insertions, 0 deletions
diff --git a/libl4/ChangeLog b/libl4/ChangeLog index 1825279..1863c9b 100644 --- a/libl4/ChangeLog +++ b/libl4/ChangeLog @@ -1,3 +1,12 @@ +2004-10-06 Marcus Brinkmann <marcus@gnu.org> + + * l4/gnu/space.h (L4_FPAGE_READ_WRITE_ONLY): Define macro. + * l4/space.h (_L4_read_write_only): Define macro. + * l4/compat/space.h (L4_ReadWriteOnly): Define macro. + * l4/compat/syscall.h (L4_ErrOk): Define macro. + * l4/misc.h (_L4_set_page_attribute): Wrap the ATTRIBUTE argument + into an object of the correct type. + 2004-08-02 Peter Bruin <pjbruin@dds.nl> * powerpc/l4/bits/vregs.h (_L4_my_local_id): Remove variable diff --git a/libl4/l4/compat/space.h b/libl4/l4/compat/space.h index f9d687f..6775a70 100644 --- a/libl4/l4/compat/space.h +++ b/libl4/l4/compat/space.h @@ -34,6 +34,7 @@ #define L4_Writable _L4_writable #define L4_eXecutable _L4_executable #define L4_FullyAccessible _L4_fullly_accesible +#define L4_ReadWriteOnly _L4_read_write_only #define L4_ReadeXecOnly _L4_read_exec_only #define L4_NoAccess _L4_no_access diff --git a/libl4/l4/compat/syscall.h b/libl4/l4/compat/syscall.h index b6c3d5c..4aad801 100644 --- a/libl4/l4/compat/syscall.h +++ b/libl4/l4/compat/syscall.h @@ -23,6 +23,7 @@ # error "Never use <l4/compat/syscall.h> directly; include <l4/syscall.h> instead." #endif +#define L4_ErrOk (0) #define L4_ErrNoPrivilege _L4_ERR_NO_PRIVILEGE #define L4_ErrInvalidThread _L4_ERR_INV_THREAD #define L4_ErrInvalidSpace _L4_ERR_INV_SPACE diff --git a/libl4/l4/gnu/space.h b/libl4/l4/gnu/space.h index 5982dc9..9ae560e 100644 --- a/libl4/l4/gnu/space.h +++ b/libl4/l4/gnu/space.h @@ -29,6 +29,7 @@ #define L4_FPAGE_WRITABLE _L4_writable #define L4_FPAGE_READABLE _L4_readable #define L4_FPAGE_FULLY_ACCESSIBLE _L4_fully_accessible +#define L4_FPAGE_READ_WRITE_ONLY _L4_read_write_only #define L4_FPAGE_READ_EXEC_ONLY _L4_read_exec_only #define L4_NILPAGE _L4_nilpage diff --git a/libl4/l4/misc.h b/libl4/l4/misc.h index 38008d3..c266936 100644 --- a/libl4/l4/misc.h +++ b/libl4/l4/misc.h @@ -36,6 +36,9 @@ static inline _L4_word_t _L4_attribute_always_inline _L4_set_page_attribute (_L4_fpage_t fpage, _L4_word_t attribute) { + _L4_word_t attributes[4]; + + attributes[0] = attribute; _L4_set_rights (&fpage, 0); _L4_load_mr (0, fpage); return _L4_memory_control (0, &attribute); diff --git a/libl4/l4/space.h b/libl4/l4/space.h index 55bd0b2..715bcf8 100644 --- a/libl4/l4/space.h +++ b/libl4/l4/space.h @@ -60,6 +60,7 @@ typedef _L4_RAW #define _L4_writable 0x02 #define _L4_readable 0x04 #define _L4_fully_accessible (_L4_readable | _L4_writable | _L4_executable) +#define _L4_read_write_only (_L4_readable | _L4_writable) #define _L4_read_exec_only (_L4_readable | _L4_executable) #define _L4_nilpage ((_L4_fpage_t) 0) |