/kernel/trunk/generic/include/adt/hash_table.h |
---|
66,7 → 66,7 |
void (*remove_callback)(link_t *item); |
}; |
#define hash_table_get_instance(item,type,member) list_get_instance((item),(type),(member)) |
#define hash_table_get_instance(item, type, member) list_get_instance((item), type, member) |
extern void hash_table_create(hash_table_t *h, count_t m, count_t max_keys, hash_table_operations_t *op); |
extern void hash_table_insert(hash_table_t *h, __native key[], link_t *item); |
/kernel/trunk/generic/include/mm/page.h |
---|
60,13 → 60,13 |
#define PAGE_GLOBAL (1<<PAGE_GLOBAL_SHIFT) |
/** Operations to manipulate page mappings. */ |
struct page_operations { |
struct page_mapping_operations { |
void (* mapping_insert)(as_t *as, __address page, __address frame, int flags); |
pte_t *(* mapping_find)(as_t *as, __address page); |
}; |
typedef struct page_operations page_operations_t; |
typedef struct page_mapping_operations page_mapping_operations_t; |
extern page_operations_t *page_operations; |
extern page_mapping_operations_t *page_mapping_operations; |
extern void page_init(void); |
extern void page_mapping_insert(as_t *as, __address page, __address frame, int flags); |
/kernel/trunk/generic/src/mm/page.c |
---|
43,7 → 43,7 |
#include <arch.h> |
/** Virtual operations for page subsystem. */ |
page_operations_t *page_operations = NULL; |
page_mapping_operations_t *page_mapping_operations = NULL; |
void page_init(void) |
{ |
85,10 → 85,10 |
*/ |
void page_mapping_insert(as_t *as, __address page, __address frame, int flags) |
{ |
ASSERT(page_operations); |
ASSERT(page_operations->mapping_insert); |
ASSERT(page_mapping_operations); |
ASSERT(page_mapping_operations->mapping_insert); |
page_operations->mapping_insert(as, page, frame, flags); |
page_mapping_operations->mapping_insert(as, page, frame, flags); |
} |
/** Find mapping for virtual page |
104,8 → 104,8 |
*/ |
pte_t *page_mapping_find(as_t *as, __address page) |
{ |
ASSERT(page_operations); |
ASSERT(page_operations->mapping_find); |
ASSERT(page_mapping_operations); |
ASSERT(page_mapping_operations->mapping_find); |
return page_operations->mapping_find(as, page); |
return page_mapping_operations->mapping_find(as, page); |
} |