Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4647 5645 d 15 h jermar /branches/arm/ Branch out a new arm branch.  
4490 5687 d 14 h decky /trunk/kernel/ remove redundant index_t and count_t types (which were always quite ambiguous and not actually needed)  
3233 5998 d 18 h decky /trunk/ remove dummy page coloring facility, which is currenty not used  
2467 6408 d 15 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2465 6413 d 18 h jermar /trunk/ Merge arm32 into trunk.  
2089 6544 d 20 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6555 d 13 h jermar /trunk/ (c) versus (C)  
2007 6602 d 11 h jermar /trunk/kernel/ Introduce page colors. So far, only sparc64 uses correct page color bits. Other architectures have a dummy define
specifying zero bits for a page color.

There is a new check of page color in as_area_share(). Because of lack of support for this in the userspace, the
check has been #ifef'ed out.
 
1980 6615 d 21 h jermar /trunk/kernel/arch/mips32/include/mm/ mips32 mm has not been under construction for while now  
1888 6680 d 16 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6745 d 15 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6752 d 16 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1776 6752 d 18 h jermar /kernel/trunk/arch/mips32/ Typos and indentation fixes for mips32 and some generic files as well.  
1702 6773 d 19 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1423 6790 d 20 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1087 6859 d 22 h palkovsky /kernel/trunk/arch/mips32/include/mm/ Fix MIPS32 bad paging index computation. Fixed random page faults on mips.  
980 6864 d 19 h palkovsky /kernel/trunk/ Small speed update of ipc.
Fixed some bugs regarding pages in mremap.
 
977 6864 d 19 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
967 6864 d 23 h palkovsky /kernel/trunk/ Allowed userspace to include page.h.  
832 6896 d 11 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
831 6896 d 17 h jermar /kernel/trunk/ Make use of one unused bit in PTE formats of amd64, ia32 and mips32 to store 1 in valid mappings.
This helps to distinguish valid entries from not present entries with 0 content (i.e. not present
entries with PFN 0 and other bits cleared).
 
825 6897 d 16 h jermar /kernel/trunk/ Remove WAKEUP_IPI stuff.

Make it possible to use PAGE_GLOBAL on ia32, amd64 and mips32.
Make ia32 and amd64 map the kernel using PAGE_GLOBAL.
 
765 6904 d 12 h jermar /kernel/trunk/ Add PAGE_WIDTH to aid divisions by PAGE_SIZE.  
760 6904 d 20 h jermar /kernel/trunk/ mips32 is not supposed to allocate page table.
This is done by the generic code now.
Remove PTL0 pointer as it is not needed.

Remove GET_PTL0_ADDRESS from kernel.

Update sparc64 comments in barrier.h.
 
534 6964 d 14 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6964 d 14 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6976 d 18 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
403 7019 d 13 h jermar /SPARTAN/trunk/arch/ Small improvement in pte_t type definition.  
394 7024 d 12 h jermar /SPARTAN/trunk/arch/mips32/ MIPS32 memory management work.
Fix some bugs introduced yesterday (PTL3 index is indeed calculated by >> 14).
Introduce two new bits in pte_t (i.e. 'a' and 'w').
Implement TLB Invalid Exception and TLB Modified Exception. (Needs review and testing)
 
391 7025 d 11 h jermar /SPARTAN/trunk/ mips32 memory management work.
TLB Refill Exception implemented (passed basic testing).
Remove bit g from struct entry_hi.
Add generic find_mapping().
Add asid to vm_t type, define asid_t to hide architecture specific differences.
Implement ASID allocation for mips32, dummy for other architectures.
Add THE->vm (a.k.a. VM).
Add vm_install_arch().
Move pte_t definition to arch/types.h on each architecture.
Fix PTL manipulating functions on mips32 to shift pfn by 12 instead of by 14.
Fix tlb_init_arch() to initialize all entries.

Other.
Remove unnecessary header files from arch.h
Add missing headers here and there.
Remove two unnecessary ld flags from mips32 makefile.
 
341 7047 d 19 h jermar /SPARTAN/trunk/ Rename mips port to mips32.  
319 7052 d 23 h jermar /SPARTAN/trunk/arch/mips/ Copyright notices changes.  
306 7054 d 0 h palkovsky /SPARTAN/trunk/ Fixed mips boot process.
On interrupt saving registers, save $lo, $hi.
Add interrupt naming to asm files (mips).
Save only necessary registers on context switch (see mips ABI).
Fixed copyright info.
 
177 7061 d 21 h jermar /SPARTAN/trunk/ Add some comments to IA-32 src/boot/boot.S and src/smp.S.

Make the boot stack start on page boundary.
This is required by get_stack_base().

Define 'THE' macro.

Implement preemption_disable() and preemption_enable().

Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.

Reduction of many #include paths.
 
169 7070 d 11 h jermar /SPARTAN/trunk/arch/ For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA().  
135 7101 d 19 h jermar /SPARTAN/trunk/ Fix setters of page table attributes for both IA-32 and MIPS.  
125 7106 d 11 h jermar /SPARTAN/trunk/ Huge indentation fix.  
121 7107 d 11 h jermar /SPARTAN/trunk/ Begin MIPS implementation of 4-level page table interface.

Add email address to each item in doc/AUTHORS.

Correct type names in comments in mm/vm.c.
Introduce ptl0 pointer in vm_t.
 
120 7121 d 10 h jermar /SPARTAN/trunk/ Generic 4-level page tables interface & implementation (review & test).
Implement more architecture dependant macros on IA-32.
Provide fake implementation on IA-64 and MIPS.
Convert map_page_to_frame() to use the new interface.
Move adjusted map_page_to_frame() from IA-32's arch/mm/page.c to the generic mm/page.c.
 
1 7253 d 16 h jermar /SPARTAN/ Initial import