Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 788 → Rev 789

/kernel/trunk/generic/include/mm/slab.h
55,6 → 55,8
/* cache_create flags */
#define SLAB_CACHE_NOMAGAZINE 0x1 /**< Do not use per-cpu cache */
#define SLAB_CACHE_SLINSIDE 0x2 /**< Have control structure inside SLAB */
/** We add magazine cache later, if we have this flag */
#define SLAB_CACHE_MAGDEFERRED (0x4 | SLAB_CACHE_NOMAGAZINE)
 
typedef struct {
link_t link;
64,6 → 66,13
}slab_magazine_t;
 
typedef struct {
slab_magazine_t *current;
slab_magazine_t *last;
SPINLOCK_DECLARE(lock);
}slab_mag_cache_t;
 
 
typedef struct {
char *name;
 
link_t link;
92,11 → 101,7
SPINLOCK_DECLARE(maglock);
 
/** CPU cache */
struct {
slab_magazine_t *current;
slab_magazine_t *last;
SPINLOCK_DECLARE(lock);
}mag_cache[0];
slab_mag_cache_t *mag_cache;
}slab_cache_t;
 
extern slab_cache_t * slab_cache_create(char *name,
113,6 → 118,7
 
/** Initialize SLAB subsytem */
extern void slab_cache_init(void);
extern void slab_enable_cpucache(void);
 
/* KConsole debug */
extern void slab_print_list(void);
120,5 → 126,4
/* Malloc support */
extern void * kalloc(unsigned int size, int flags);
extern void kfree(void *obj);
 
#endif
/kernel/trunk/generic/include/mm/as.h
49,7 → 49,6
#define UDATA_ADDRESS UDATA_ADDRESS_ARCH
 
#define FLAG_AS_KERNEL (1 << 0) /**< Kernel address space. */
#define FLAG_AS_EARLYMALLOC (1 << 1) /**< Use early malloc */
 
enum as_area_type {
AS_AREA_TEXT = 1, AS_AREA_DATA, AS_AREA_STACK