Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
cache.c File Reference
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/module.h>
#include <linux/seq_file.h>
#include <linux/pagemap.h>
#include <linux/sched.h>
#include <asm/pdc.h>
#include <asm/cache.h>
#include <asm/cacheflush.h>
#include <asm/tlbflush.h>
#include <asm/page.h>
#include <asm/pgalloc.h>
#include <asm/processor.h>
#include <asm/sections.h>
#include <asm/shmparam.h>

Go to the source code of this file.

Macros

#define CAFL_STRIDE(cnf)   (cnf.cc_line << (3 + cnf.cc_block + cnf.cc_shift))
 
#define FLUSH_THRESHOLD   0x80000 /* 0.5MB */
 

Functions

 EXPORT_SYMBOL (dcache_stride)
 
void flush_dcache_page_asm (unsigned long phys_addr, unsigned long vaddr)
 
 EXPORT_SYMBOL (flush_dcache_page_asm)
 
void flush_icache_page_asm (unsigned long phys_addr, unsigned long vaddr)
 
 DEFINE_SPINLOCK (pa_tlb_lock)
 
void flush_cache_all_local (void)
 
 EXPORT_SYMBOL (flush_cache_all_local)
 
void update_mmu_cache (struct vm_area_struct *vma, unsigned long address, pte_t *ptep)
 
void show_cache_info (struct seq_file *m)
 
void __init parisc_cache_init (void)
 
void disable_sr_hashing (void)
 
void flush_dcache_page (struct page *page)
 
 EXPORT_SYMBOL (flush_dcache_page)
 
 EXPORT_SYMBOL (flush_kernel_dcache_range_asm)
 
 EXPORT_SYMBOL (flush_kernel_dcache_page_asm)
 
 EXPORT_SYMBOL (flush_data_cache_local)
 
 EXPORT_SYMBOL (flush_kernel_icache_range_asm)
 
void clear_user_page_asm (void *page, unsigned long vaddr)
 
void __init parisc_setup_cache_timing (void)
 
void purge_kernel_dcache_page (unsigned long)
 
void clear_user_page (void *page, unsigned long vaddr, struct page *pg)
 
 EXPORT_SYMBOL (clear_user_page)
 
void flush_kernel_dcache_page_addr (void *addr)
 
 EXPORT_SYMBOL (flush_kernel_dcache_page_addr)
 
void copy_user_page (void *vto, void *vfrom, unsigned long vaddr, struct page *pg)
 
 EXPORT_SYMBOL (copy_user_page)
 
void __flush_tlb_range (unsigned long sid, unsigned long start, unsigned long end)
 
void flush_cache_all (void)
 
void flush_cache_mm (struct mm_struct *mm)
 
void flush_user_dcache_range (unsigned long start, unsigned long end)
 
void flush_user_icache_range (unsigned long start, unsigned long end)
 
void flush_cache_range (struct vm_area_struct *vma, unsigned long start, unsigned long end)
 
void flush_cache_page (struct vm_area_struct *vma, unsigned long vmaddr, unsigned long pfn)
 

Variables

int split_tlb __read_mostly = FLUSH_THRESHOLD
 

Macro Definition Documentation

#define CAFL_STRIDE (   cnf)    (cnf.cc_line << (3 + cnf.cc_block + cnf.cc_shift))
#define FLUSH_THRESHOLD   0x80000 /* 0.5MB */

Definition at line 343 of file cache.c.

Function Documentation

void __flush_tlb_range ( unsigned long  sid,
unsigned long  start,
unsigned long  end 
)

Definition at line 422 of file cache.c.

void clear_user_page ( void page,
unsigned long  vaddr,
struct page pg 
)

Definition at line 379 of file cache.c.

void clear_user_page_asm ( void page,
unsigned long  vaddr 
)

Definition at line 332 of file cache.c.

void copy_user_page ( void vto,
void vfrom,
unsigned long  vaddr,
struct page pg 
)

Definition at line 402 of file cache.c.

DEFINE_SPINLOCK ( pa_tlb_lock  )
void disable_sr_hashing ( void  )

Definition at line 228 of file cache.c.

EXPORT_SYMBOL ( dcache_stride  )
EXPORT_SYMBOL ( flush_dcache_page_asm  )
EXPORT_SYMBOL ( flush_cache_all_local  )
EXPORT_SYMBOL ( flush_dcache_page  )
EXPORT_SYMBOL ( flush_kernel_dcache_range_asm  )
EXPORT_SYMBOL ( flush_kernel_dcache_page_asm  )
EXPORT_SYMBOL ( flush_data_cache_local  )
EXPORT_SYMBOL ( flush_kernel_icache_range_asm  )
EXPORT_SYMBOL ( clear_user_page  )
EXPORT_SYMBOL ( flush_kernel_dcache_page_addr  )
EXPORT_SYMBOL ( copy_user_page  )
void flush_cache_all ( void  )

Definition at line 456 of file cache.c.

void flush_cache_all_local ( void  )

Definition at line 67 of file cache.c.

void flush_cache_mm ( struct mm_struct mm)

Definition at line 461 of file cache.c.

void flush_cache_page ( struct vm_area_struct vma,
unsigned long  vmaddr,
unsigned long  pfn 
)

Definition at line 506 of file cache.c.

void flush_cache_range ( struct vm_area_struct vma,
unsigned long  start,
unsigned long  end 
)

Definition at line 489 of file cache.c.

void flush_dcache_page ( struct page page)

Definition at line 275 of file cache.c.

void flush_dcache_page_asm ( unsigned long  phys_addr,
unsigned long  vaddr 
)
void flush_icache_page_asm ( unsigned long  phys_addr,
unsigned long  vaddr 
)
void flush_kernel_dcache_page_addr ( void addr)

Definition at line 391 of file cache.c.

void flush_user_dcache_range ( unsigned long  start,
unsigned long  end 
)

Definition at line 471 of file cache.c.

void flush_user_icache_range ( unsigned long  start,
unsigned long  end 
)

Definition at line 480 of file cache.c.

void __init parisc_cache_init ( void  )

Definition at line 131 of file cache.c.

void __init parisc_setup_cache_timing ( void  )

Definition at line 346 of file cache.c.

void purge_kernel_dcache_page ( unsigned  long)
void show_cache_info ( struct seq_file m)

Definition at line 89 of file cache.c.

void update_mmu_cache ( struct vm_area_struct vma,
unsigned long  address,
pte_t ptep 
)
inline

Definition at line 75 of file cache.c.

Variable Documentation

int parisc_cache_flush_threshold __read_mostly = FLUSH_THRESHOLD

Definition at line 31 of file cache.c.