Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3857 5640 d 19 h decky /trunk/ very experimental TLB refill for ppc32  
3856 5640 d 21 h decky /trunk/ ppc32: strict coherency, compatible TLB flush  
3839 5642 d 23 h decky /trunk/kernel/arch/ppc32/src/mm/ respect stricker lookup algorithm (first look for colliding PTEs, then look for unused PTEs)  
3838 5643 d 0 h decky /trunk/kernel/ make RANDI a generic macro  
3837 5643 d 0 h decky /trunk/kernel/arch/ppc32/ use pseudorandom generator to avoid even the longest path of livelock collisions  
3836 5643 d 0 h decky /trunk/kernel/arch/ppc32/src/mm/ use secondary hash for kernel identity mapping to avoid livelocks on colliding PHT addresses  
3833 5643 d 20 h decky /trunk/ avoid nasty race condition during page fault handling  
3830 5644 d 19 h decky /trunk/kernel/arch/ppc32/ ppc32: add support for cache disable page access control  
3827 5644 d 20 h decky /trunk/ remove tlbia instruction, which is unsupported by PowerPC 7450  
3790 5666 d 1 h svoboda /trunk/kernel/ Make newlines in panic messages consistent. Add periods at end of messages so that it is obvious whether they are printed entirely.  
3788 5666 d 14 h svoboda /trunk/kernel/ Unify newlines in fault_if_from_uspace() format strings. (Remove them and print newline automatically). Also start messages with caps.  
3594 5716 d 17 h svoboda /trunk/kernel/arch/ppc32/src/mm/ Handle page faults from userspace properly on ppc32, do not panic.  
3586 5722 d 0 h jermar /trunk/kernel/arch/ Do not print "Page fault.\n" if a mapping is not found during TLB refill.  
3584 5722 d 2 h svoboda /trunk/kernel/arch/ppc32/src/mm/ Bugfix: A ppc32 task would hang if it touched unmapped memory - was calling printf() with address-space mutex held.  
3193 5857 d 16 h jermar /trunk/kernel/ cstyle fixes  
3071 5884 d 22 h decky /trunk/kernel/ reflect changes in generic code
proper formatting directives
coding style
 
2725 6002 d 23 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
2723 6003 d 21 h decky /trunk/kernel/arch/ remove memory_print_map(), as it duplicates functionality of physmem_print()  
2222 6306 d 16 h decky /trunk/kernel/ map kernel pages explicitly as writable (this solves compatibility issues with Intel Core 2)
make VESA framebuffer initialization more robust
 
2170 6314 d 15 h jermar /trunk/kernel/ Simplify synchronization in as_switch().
The function was oversynchronized, which
was causing deadlocks on the address
space mutex.

Now, address spaces can only be switched
when the asidlock is held. This also protects
stealing of ASIDs. No other synchronization
is necessary.
 
2089 6377 d 0 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6387 d 16 h jermar /trunk/ (c) versus (C)  
1787 6577 d 19 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6584 d 20 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1758 6598 d 20 h decky /kernel/trunk/arch/ppc32/src/mm/ remove ASIDs from Page Hash Table  
1743 6600 d 16 h decky /kernel/trunk/arch/ppc32/src/mm/ fix compiler warning  
1736 6601 d 1 h decky /kernel/trunk/arch/ppc32/ verbose segment and BAT registers printout  
1733 6601 d 12 h decky /kernel/trunk/arch/ppc32/src/mm/ fix segment register values, ppc32 works again (both w/ and w/o BAT)  
1730 6601 d 13 h decky /kernel/trunk/arch/ppc32/ ppc32: BAT-less memory mapping (broken yet)
VSID support (broken yet)
boot API change
cleanup
 
1726 6601 d 20 h decky /kernel/trunk/arch/ppc32/ ppc32: more generic page hash table handling
(preliminary code, will be fixed properly later)
 
1716 6602 d 17 h decky /kernel/trunk/ move ppc32 four pages up, move real mode code, change config  
1708 6603 d 2 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1705 6605 d 2 h cejka /kernel/trunk/ Added file with modules definitions and descriptions.
We are able to change modules order and their description in one place.
 
1702 6605 d 23 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1609 6612 d 23 h decky /kernel/trunk/arch/ppc32/ generalize ppc32 exception handling  
1411 6625 d 20 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.
 
1390 6628 d 18 h decky /kernel/trunk/arch/ppc32/src/mm/ fixes  
1389 6628 d 18 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1384 6629 d 14 h decky /kernel/trunk/arch/ppc32/src/ ppc32 work
decrementer workaround
primitive TLB support
 
1383 6629 d 15 h decky /kernel/trunk/ ppc32: hardware memory mapping, kernel PHT refill fix