mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 02:43:15 +01:00
Removed bits from kernel where pager utcb is set.
Pagers now set their own utcb explicitly via exchange_registers. exregs accepts calls from active pagers for this purpose only.
This commit is contained in:
@@ -18,6 +18,8 @@
|
||||
#define CAP_TYPE_UMUTEX (1 << 5)
|
||||
#define CAP_TYPE_QUANTITY (1 << 6)
|
||||
|
||||
#define cap_type(c) ((c)->type & CAP_TYPE_MASK)
|
||||
|
||||
/*
|
||||
* Resource types
|
||||
*/
|
||||
@@ -36,6 +38,8 @@
|
||||
#define CAP_RTYPE_MAPPOOL (1 << 27) /* For pmd spending */
|
||||
#define CAP_RTYPE_CAPPOOL (1 << 28) /* For new cap generation */
|
||||
|
||||
#define cap_rtype(c) ((c)->type & CAP_RTYPE_MASK)
|
||||
|
||||
/*
|
||||
* Access permissions
|
||||
*/
|
||||
|
||||
@@ -161,7 +161,7 @@ struct ktcb *tcb_alloc_init(void);
|
||||
void tcb_delete(struct ktcb *tcb);
|
||||
|
||||
void init_ktcb_list(struct ktcb_list *ktcb_list);
|
||||
void task_update_utcb(struct ktcb *cur, struct ktcb *next);
|
||||
void task_update_utcb(struct ktcb *task);
|
||||
int tcb_check_and_lazy_map_utcb(struct ktcb *task);
|
||||
|
||||
#endif /* __TCB_H__ */
|
||||
|
||||
@@ -15,9 +15,6 @@
|
||||
#define KERNEL_AREA_SIZE (KERNEL_AREA_END - KERNEL_AREA_START)
|
||||
#define KERNEL_AREA_SECTIONS (KERNEL_AREA_SIZE / ARM_SECTION_SIZE)
|
||||
|
||||
#define UTCB_AREA_START 0xF8000000
|
||||
#define UTCB_AREA_END 0xF9000000
|
||||
#define UTCB_AREA_SIZE (UTCB_AREA_END - UTCB_AREA_START)
|
||||
#define UTCB_SIZE (sizeof(int) * 64)
|
||||
|
||||
#define IO_AREA_START 0xF9000000
|
||||
|
||||
@@ -9,7 +9,7 @@ static inline int set_intersection(unsigned long a, unsigned long b,
|
||||
unsigned long c, unsigned long d)
|
||||
{
|
||||
/*
|
||||
* Below is the complement (') of the intersection
|
||||
* Below is the complement set (') of the intersection
|
||||
* of 2 ranges, much simpler ;-)
|
||||
*/
|
||||
if (b <= c || a >= d)
|
||||
|
||||
Reference in New Issue
Block a user