Re: TLB Question

2008-02-06 Thread Peter Teoh
I found one header file for x86 that implement the TLB flushing - include/asm-x86/tlbflush.h (the different implementation are used are used because of the diff generation of x86: static inline void __native_flush_tlb(void) { write_cr3(read_cr3()); } (my questions: WHAT IS THE DIFF

Re: TLB Question

2008-02-06 Thread mahaveer darade
On Feb 6, 2008 7:54 PM, Peter Teoh [EMAIL PROTECTED] wrote: I found one header file for x86 that implement the TLB flushing - include/asm-x86/tlbflush.h (the different implementation are used are used because of the diff generation of x86: static inline void __native_flush_tlb(void) {

Re: TLB Question

2008-02-05 Thread Mulyadi Santosa
Hi... On 2/5/08, sahlot arvind [EMAIL PROTECTED] wrote: TLB entries are filled by H/W and not explicitly by kernel. Whenever MMU translates VA to PA it caches that translation into TLB. If TLB is full then MMU uses its own algorithms to replace some entry in TLB e.g. MMU might consider TLB

Re: TLB Question

2008-02-05 Thread sahlot arvind
AFAIK, by using certain instructions...you can manually insert entry/entries to TLB. Same thing to deleting TLB entries. Yes you can insert/delete entries in TLB manually. Though I am not sure but AFAIK, linux kernel does do this. Please correct if I am wrong. Regards On 2/5/08, Mulyadi

Re: TLB Question

2008-02-05 Thread mahaveer darade
hadling tlb is architecture specific thing, so its better to search the manuals of corresponding processor to find out appropriate instructions to manipulate TLB entries. AFAI can recall INVLPG is used to invalidate specific pte in TLB. regards, mahaveer darade On 2/5/08, sahlot arvind [EMAIL

TLB Question

2008-02-04 Thread Rick Brown
Hi, I'm trying to understand the MMU operations am wondering where is the kernel code where the kernel interfaces with the this piece of hardware? Can some one help me in understanding that what all are the responsibilities of the kernel, and what is it the hardware takes care of automatically?

Re: TLB Question

2008-02-04 Thread sahlot arvind
E.g. who fills, flushes refills the TLB entries? TLB entries are filled by H/W and not explicitly by kernel. Whenever MMU translates VA to PA it caches that translation into TLB. If TLB is full then MMU uses its own algorithms to replace some entry in TLB e.g. MMU might consider TLB as circular