Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
748 6742 d 22 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 6743 d 16 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 6744 d 0 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
744 6744 d 18 h jermar /kernel/trunk/arch/ia64/ Remove ia64 boot as it is not needed by the simulator.  
/kernel/trunk/arch/ia64/boot
743 6745 d 17 h jermar /kernel/trunk/arch/ sparc64 work.
13 bits wide means the max value is 8191 and not 0x8191.
 
/kernel/trunk/arch/mips32/include/mm/asid.h
/kernel/trunk/arch/sparc64/include/mm/asid.h
742 6745 d 17 h jermar /kernel/trunk/arch/ sparc64 work.
Memory context (ASID) is, in fact, 13 bits (and not 12 bits) wide.
 
/kernel/trunk/arch/ia64/src/mm/asid.c
/kernel/trunk/arch/sparc64/include/mm/asid.h
741 6745 d 18 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 6746 d 0 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
736 6747 d 21 h jermar /kernel/trunk/arch/ia64/src/ Fix panic_printf on ia64 to call halt() instead of cpu_halt().  
/kernel/trunk/arch/ia64/src/asm.S
730 6748 d 21 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
728 6750 d 16 h vana /kernel/trunk/arch/ia64/src/mm/ Serialize writes to RR because of assembler RAW warning.  
/kernel/trunk/arch/ia64/src/mm/page.c
727 6750 d 16 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
726 6750 d 16 h jermar /kernel/trunk/arch/ia64/src/mm/ Temporarily disable set_VHPT_environment() to stop ia64 kernel from faulting.  
/kernel/trunk/arch/ia64/src/mm/page.c
724 6752 d 18 h palkovsky /kernel/trunk/ Commit of the falloc_bad branch to trunk (719:723).  
/kernel/trunk/arch/mips32/src/mm/frame.c
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/test/mm/falloc1/test.c
717 6754 d 20 h decky /kernel/trunk/ remove obsolete in-kernel userspace code
remove CONFIG_USERSPACE switch, uspace support is configured at run-time
 
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/src/asm_utils.S
/kernel/trunk/arch/ia32/src/asm.S
/kernel/trunk/arch/mips32/src/asm.S
/kernel/trunk/generic/include/main/uinit.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/kernel.config
716 6754 d 20 h vana /kernel/trunk/arch/ia64/src/mm/ ttag and thash envelope functions  
/kernel/trunk/arch/ia64/src/mm/page.c
715 6754 d 21 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
714 6754 d 21 h decky /kernel/trunk/ syscall handler return value
uspace task termination (primitive)
 
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/generic/src/syscall/syscall.c
712 6754 d 22 h decky /kernel/trunk/ "Hello world" from user space :)  
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/generic/include/syscall/syscall.h
/kernel/trunk/generic/src/syscall/syscall.c
710 6754 d 23 h vana /kernel/trunk/arch/ia64/include/mm/ VHPT entry  
/kernel/trunk/arch/ia64/include/mm/page.h
704 6756 d 22 h jermar /kernel/trunk/ Make various mips32 tlb manipulation functions preserve EntryHi register.

Cleanup and more precise comments for previous commit.
 
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/generic/src/mm/as.c
703 6757 d 2 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
702 6757 d 2 h jermar /kernel/trunk/arch/amd64/src/ Fix amd64 interrupt_handler to properly remove error code from stack before iretq.  
/kernel/trunk/arch/amd64/src/asm_utils.S
700 6760 d 1 h jermar /kernel/trunk/arch/sparc64/include/ Remove fmath.h  
/kernel/trunk/arch/sparc64/include/fmath.h
699 6760 d 1 h jermar /kernel/trunk/ Memory management work.
Proto-interface and dummy implementation of generic page hash table subsytem.
 
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/sparc64/include/mm/page.h
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/mm/page.c
696 6761 d 19 h decky /kernel/trunk/arch/amd64/ AMD64 SMP boots again  
/kernel/trunk/arch/amd64/_link.ld.in
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/boot/boot.S
/kernel/trunk/arch/amd64/src/smp/ap.S
695 6761 d 20 h decky /kernel/trunk/arch/amd64/ make AMD64 boot again (using grub, see /boot tree), SMP is still broken  
/kernel/trunk/arch/amd64/include/boot/boot.h
/kernel/trunk/arch/amd64/src/boot/boot.S
694 6761 d 20 h decky /kernel/trunk/arch/amd64/ break AMD64, will be fixed soon  
/kernel/trunk/arch/amd64/boot
/kernel/trunk/arch/amd64/include/boot/memmapasm.h
/kernel/trunk/arch/amd64/src/boot/memmap.S
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/_link.ld.in
/kernel/trunk/arch/amd64/include/boot/boot.h
/kernel/trunk/arch/amd64/src/boot/boot.S
/kernel/trunk/arch/amd64/src/mm/memory_init.c
693 6761 d 21 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
/kernel/trunk/arch/ia32/_link.ld.in
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/smp/ap.S
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia32/src/smp/smp.c
691 6761 d 22 h jermar /kernel/trunk/arch/ Cleanup.  
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/sparc64/include/mm/page.h
690 6761 d 22 h bondari /kernel/trunk/arch/ Fixes of 3-param frame_alloc() function calls  
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/src/mm/page.c
689 6761 d 22 h bondari /kernel/trunk/ Frame alloc test #1  
/kernel/trunk/test/mm/falloc1
/kernel/trunk/test/mm/falloc1/test.c
/kernel/trunk/arch/mips32/src/mm/page.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/kernel.config
/kernel/trunk/test/mm/mapping1/test.c
687 6761 d 22 h jermar /kernel/trunk/ Memory management work.
Pass address space identifier to functions in page_operations to support single global page hash table.
 
/kernel/trunk/generic/include/mm/asid.h
/kernel/trunk/arch/amd64/src/mm/page.c
/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/mips32/src/mm/tlb.c
/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/page.h
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/test/mm/mapping1/test.c
685 6761 d 23 h decky /kernel/trunk/arch/amd64/ AMD64 PM initialization  
/kernel/trunk/arch/amd64/include/pm.h
/kernel/trunk/arch/amd64/src/boot/boot.S
684 6762 d 0 h jermar /kernel/trunk/ Memory management work.
Move generic 4-level page table interface to genarch
and enable architectures to use different virtual memory
mechanisms (e.g. page hash tables).
Start page hash table support.
Switch ia64 and sparc64 to page hash tables.
Other architectures keep on using 4-level page table interface.
 
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/genarch/include/mm
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/genarch/src/mm
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/mm/page.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/src/mm/page.c
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/src/mm/page.c
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/mm/vm.c
682 6762 d 0 h decky /kernel/trunk/arch/ia32/src/mm/ fix ia32 build  
/kernel/trunk/arch/ia32/src/mm/memory_init.c
680 6765 d 16 h decky /kernel/trunk/arch/ remove deprecated pre-grub stuff on ia32
prepare for the same on amd64
 
/kernel/trunk/arch/ia32/src/boot/memmap.S
/kernel/trunk/arch/amd64/src/boot/boot.S
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/_link.ld.in
/kernel/trunk/arch/ia32/src/boot/boot.S
674 6766 d 3 h cejka /kernel/trunk/ Support for printing float numbers in kernel removed.  
/kernel/trunk/arch/amd64/include/fmath.h
/kernel/trunk/arch/amd64/src/fmath.c
/kernel/trunk/arch/ia32/include/fmath.h
/kernel/trunk/arch/ia32/src/fmath.c
/kernel/trunk/arch/ia64/include/fmath.h
/kernel/trunk/arch/ia64/src/fmath.c
/kernel/trunk/arch/mips32/include/fmath.h
/kernel/trunk/arch/mips32/src/fmath.c
/kernel/trunk/arch/ppc32/include/fmath.h
/kernel/trunk/arch/ppc32/src/fmath.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/generic/src/debug/print.c
/kernel/trunk/test/print/print1/test.c
673 6766 d 17 h jermar /kernel/trunk/ Add 'version' and 'cpus' kconsole commands.
Remove leading p from names of p* commands.
 
/kernel/trunk/generic/include/main/version.h
/kernel/trunk/generic/src/main/version.c
/kernel/trunk/Makefile
/kernel/trunk/arch/mips32/src/debugger.c
/kernel/trunk/generic/include/cpu.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/interrupt/interrupt.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
672 6767 d 16 h jermar /kernel/trunk/arch/ia32/ ia32 work.
Initialize LDR and DFR registers in Local APIC so that logical destination addresses work.
 
/kernel/trunk/arch/ia32/include/smp/apic.h
/kernel/trunk/arch/ia32/src/smp/apic.c