Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
869 6664 d 4 h vana /kernel/trunk/ Uaaaaaaa ;-) Itanium Paging !!!!!! ;-)  
/kernel/trunk/arch/ia64/_link.ld.in
/kernel/trunk/arch/ia64/include/faddr.h
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/register.h
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/arch/ia64/src/start.S
/kernel/trunk/contrib/arch/ia64/vmaxlma.c
/kernel/trunk/generic/include/mm/asid.h
819 6678 d 7 h vana /kernel/trunk/arch/ia64/ TR tlb filling functions  
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/mm/tlb.h
/kernel/trunk/arch/ia64/src/mm/tlb.c
818 6678 d 11 h vana /kernel/trunk/arch/ia64/ IA-64 TLB filling functions for dynamic tlb filling (TC tlb).  
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/mm/tlb.h
/kernel/trunk/arch/ia64/src/mm/tlb.c
815 6678 d 15 h jermar /kernel/trunk/ Fix sparc64 and ia64 to work with the changed frame allocator.

Fix ppc32 to at least compile.
 
/kernel/trunk/arch/ia64/include/types.h
/kernel/trunk/arch/ia64/src/mm/frame.c
/kernel/trunk/arch/mips32/src/mm/frame.c
/kernel/trunk/arch/ppc32/include/types.h
/kernel/trunk/arch/ppc32/src/mm/frame.c
/kernel/trunk/arch/sparc64/include/types.h
/kernel/trunk/arch/sparc64/src/mm/frame.c
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/generic/src/mm/buddy.c
792 6680 d 14 h jermar /kernel/trunk/ Page hash table architectures now use generic hash table to manage
mappings.
 
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/types.h
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/arch/sparc64/include/types.h
/kernel/trunk/arch/sparc64/src/mm/frame.c
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/generic/include/adt/hash_table.h
/kernel/trunk/generic/src/adt/hash_table.c
/kernel/trunk/generic/src/mm/as.c
763 6684 d 13 h jermar /kernel/trunk/ Modify frame.h to use shifting instead of multiplication and division.
Define FRAME_WIDTH for all architectures.
 
/kernel/trunk/arch/amd64/include/mm/frame.h
/kernel/trunk/arch/ia32/include/mm/frame.h
/kernel/trunk/arch/ia64/include/mm/frame.h
/kernel/trunk/arch/mips32/include/mm/frame.h
/kernel/trunk/arch/ppc32/include/mm/frame.h
/kernel/trunk/arch/sparc64/include/mm/frame.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/slab.c
756 6686 d 4 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
/kernel/trunk/arch/amd64/src/mm/as.c
/kernel/trunk/arch/ia32/src/mm/as.c
/kernel/trunk/arch/ia64/src/mm/as.c
/kernel/trunk/arch/ppc32/src/mm/as.c
/kernel/trunk/arch/sparc64/src/mm/as.c
/kernel/trunk/genarch/include/mm/as_ht.h
/kernel/trunk/genarch/include/mm/as_pt.h
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia32/src/drivers/ega.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/mips32/src/mm/as.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/frame.h
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/genarch/src/acpi/acpi.c
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/buddy.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/test/mm/mapping1/test.c
753 6687 d 11 h jermar /kernel/trunk/ Convert ASID management of ia64 to ASID FIFO mechanism.
18-bit RIDs are supported.
 
/kernel/trunk/arch/ia64/src/mm/asid.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/mips32/include/mm/asid.h
/kernel/trunk/arch/sparc64/include/mm/asid.h
/kernel/trunk/genarch/src/mm/asid.c
751 6687 d 14 h jermar /kernel/trunk/arch/ia64/ Fix initialization of pta.base on ia64.  
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/page.c
749 6689 d 11 h jermar /kernel/trunk/arch/ia64/ ia64 virtual address translation subsystem update.  
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/asid.c
/kernel/trunk/arch/ia64/src/mm/page.c
748 6690 d 12 h jermar /kernel/trunk/arch/ia64/ First HT_HASH_ARCH implementation for ia64.  
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/page.c
747 6691 d 5 h jermar /kernel/trunk/ ia64 work.
Add nice wrappers for thash and ttag instructions.
Add nice wrappers for accessing reion registers and PTA.
Fix set_vhpt_environment().
Allocate and initialize page_ht (a.k.a. VHPT).

Add missing header to sparc64.
Remove excessive header from debug.h.
 
/kernel/trunk/arch/ia64/include/asm.h
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/types.h
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/arch/sparc64/src/trap/interrupt.c
/kernel/trunk/generic/include/debug.h
746 6691 d 14 h jermar /kernel/trunk/ Page hash table modifications.  
/kernel/trunk/arch/ia64/include/asm.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/include/register.h
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/src/mm/page_ht.c
741 6693 d 7 h jermar /kernel/trunk/ Unlock address space prior TLB shootdown in get_asid() to unify
the locking order among mips32, sparc64 and ia64.

Add ASID_STEALING_ENABLED macro to disable the stealing part on ia64
in a clean way.
 
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/mips32/include/mm/asid.h
/kernel/trunk/arch/sparc64/include/mm/asid.h
/kernel/trunk/genarch/src/mm/asid.c
740 6693 d 13 h jermar /kernel/trunk/ ia64 ASID management code (not tested).  
/kernel/trunk/arch/ia64/src/mm/asid.c
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/genarch/src/mm/asid.c
/kernel/trunk/generic/src/mm/tlb.c
730 6696 d 10 h jermar /kernel/trunk/ Finalize ASID management for sparc64 and mips32 by making use of FIFO queue of ASIDs.  
/kernel/trunk/genarch/include/mm/asid_fifo.h
/kernel/trunk/genarch/src/mm/asid_fifo.c
/kernel/trunk/arch/mips32/src/mm/asid.c
/kernel/trunk/arch/ia32/src/mm/tlb.c
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/src/mm/tlb.c
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/generic/include/mm/asid.h
727 6698 d 6 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.
 
/kernel/trunk/genarch/src/mm/asid.c
/kernel/trunk/arch/ia32/include/mm/asid.h
/kernel/trunk/arch/ia32/src/mm/tlb.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/asid.h
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/include/mm/asid.h
/kernel/trunk/arch/mips32/src/mm/as.c
/kernel/trunk/arch/mips32/src/mm/asid.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/include/mm/asid.h
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/include/mm/asid.h
/kernel/trunk/arch/sparc64/src/mm/tlb.c
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/asid.h
/kernel/trunk/generic/include/mm/tlb.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/tlb.c
715 6702 d 10 h vana /kernel/trunk/arch/ia64/ VHPT setup to be able to use ttag and thash instructions  
/kernel/trunk/arch/ia64/include/mm/frame.h
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/ia64/src/mm/page.c
710 6702 d 12 h vana /kernel/trunk/arch/ia64/include/mm/ VHPT entry  
/kernel/trunk/arch/ia64/include/mm/page.h
703 6704 d 15 h jermar /kernel/trunk/ Memory management work.
- vm.* -> as.* (as like address space is, imho, more fitting)
- Don't do TLB shootdown on vm_install(). Some architectures only need to call tlb_invalidate_asid().
- Don't allocate all frames for as_area in as_area_create(), but let them be allocated on-demand by as_page_fault().
- Add high-level page fault handler as_page_fault().
- Add as_area_load_mapping().
 
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/mips32/src/mm/as.c
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/arch/amd64/include/mm/vm.h
/kernel/trunk/arch/ia32/include/mm/vm.h
/kernel/trunk/arch/ia64/include/mm/vm.h
/kernel/trunk/arch/mips32/include/mm/vm.h
/kernel/trunk/arch/mips32/src/mm/vm.c
/kernel/trunk/arch/ppc32/include/mm/vm.h
/kernel/trunk/arch/sparc64/include/mm/vm.h
/kernel/trunk/generic/include/mm/vm.h
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/userspace.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/doc/mm
/kernel/trunk/generic/include/arch.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/the.c

Show All