/kernel/trunk/arch/ia64/include/mm/frame.h |
---|
29,12 → 29,16 |
#ifndef __ia64_FRAME_H__ |
#define __ia64_FRAME_H__ |
#define FRAME_WIDTH 14 /* 64K */ |
/* |
* Frame is defined to be 64K long. |
* Such a relatively big frame size is used because of kernel stack requirements |
* and organization. Portion of the stack reserved for RSE must be at least 16K |
* long. If the memory stack is to have some space allocated, the next available |
* frame size (i.e. 64K) needs to be used. |
*/ |
#define FRAME_WIDTH 16 /* 64K */ |
#define FRAME_SIZE (1<<FRAME_WIDTH) |
extern void frame_arch_init(void); |
#define ARCH_STACK_FRAMES TWO_FRAMES |
#endif |
/kernel/trunk/arch/ia64/src/mm/tlb.c |
---|
88,17 → 88,8 |
void tlb_invalidate_asid(asid_t asid) |
{ |
/* TODO */ |
tlb_invalidate_all(); |
} |
void tlb_invalidate_pages(asid_t asid, __address page, count_t cnt) |
{ |
} |
/** Insert data into data translation cache. |
* |
* @param va Virtual page address. |
/kernel/trunk/arch/ia64/src/proc/scheduler.c |
---|
62,10 → 62,8 |
"mov r23 = %1\n" |
"bsw.1\n" |
: |
: /*"r" (((__address) THREAD->kstack) + ALIGN_UP(sizeof(the_t), REGISTER_STACK_ALIGNMENT)),*/ |
"r" (&THREAD->kstack[THREAD_STACK_SIZE]), |
"r" (&THREAD->kstack[THREAD_STACK_SIZE - SP_DELTA]) |
); |
: "r" (((__address) THREAD->kstack) + ALIGN_UP(sizeof(the_t), REGISTER_STACK_ALIGNMENT)), |
"r" (&THREAD->kstack[THREAD_STACK_SIZE - SP_DELTA])); |
} |
void after_thread_ran_arch(void) |