Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4691 5562 d 9 h svoboda /branches/dynload/ Merge trunk changes up to r4686.  
3403 5901 d 17 h svoboda /branches/dynload/ Merge latest trunk changes into dynload  
2927 6023 d 18 h decky /branches/dynload/ added dynload branch  
2467 6360 d 10 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2465 6365 d 13 h jermar /trunk/ Merge arm32 into trunk.  
2089 6496 d 14 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6507 d 7 h jermar /trunk/ (c) versus (C)  
2007 6554 d 5 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.
 
1958 6589 d 14 h decky /trunk/kernel/arch/amd64/ amd64: adopt new IRQ interface  
1888 6632 d 11 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6697 d 9 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6704 d 10 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1702 6725 d 13 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1423 6742 d 14 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1411 6745 d 11 h jermar /kernel/trunk/ Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault.
 
1064 6814 d 3 h palkovsky /kernel/trunk/arch/amd64/ Cleanup of amd64 code.  
1063 6814 d 4 h palkovsky /kernel/trunk/ Add support for more then 2GB of address space for AMD64.  
977 6816 d 13 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
967 6816 d 17 h palkovsky /kernel/trunk/ Allowed userspace to include page.h.  
832 6848 d 5 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
831 6848 d 11 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 6849 d 11 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.
 
808 6851 d 18 h palkovsky /kernel/trunk/arch/amd64/ Doc updates.  
765 6856 d 6 h jermar /kernel/trunk/ Add PAGE_WIDTH to aid divisions by PAGE_SIZE.  
760 6856 d 15 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 6916 d 8 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6916 d 8 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6928 d 13 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
391 6977 d 6 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.
 
349 6996 d 7 h jermar /SPARTAN/trunk/ Optimize sorting functions so that malloc() and free() is called only for e_size > EBUFSIZE.
Smaller buffers are allocated directly on the stack.

Some copyright holder fixes on some files written by Ondrej Palkovsky.
 
289 7007 d 8 h palkovsky /SPARTAN/trunk/ Added preprocessed linker script to AMD architecture, so that
the constants are all only in the header files.
 
251 7009 d 3 h palkovsky /SPARTAN/trunk/ Changes, that were needed to make it work on Bochs.
- We CAN use the NX bit in paging tables, but we have
to initialize the NXE bit in EFER register first.
 
226 7010 d 13 h palkovsky /SPARTAN/trunk/ Fixed typo in 'outb' instruction.
Paging basically working.
 
194 7012 d 10 h palkovsky /SPARTAN/trunk/arch/amd64/ Code cleanup.  
188 7012 d 13 h palkovsky /SPARTAN/trunk/arch/amd64/ AMD64 now can switch into long mode.
Basic page tables working.
 
172 7018 d 15 h palkovsky /SPARTAN/trunk/arch/amd64/ Do not allow red area on stack in kernel mode.
Small updates for AMD64 memory layout.
 
169 7022 d 5 h jermar /SPARTAN/trunk/arch/ For each architecture, add an extra type cast of x to __address to both KA2PA() and PA2KA().  
164 7025 d 9 h palkovsky /SPARTAN/trunk/ Basics for amd64 architecture. It does compile, but it does not work yet.