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 5604 d 18 h decky /trunk/ very experimental TLB refill for ppc32  
3856 5604 d 19 h decky /trunk/ ppc32: strict coherency, compatible TLB flush  
3839 5606 d 22 h decky /trunk/kernel/arch/ppc32/src/mm/ respect stricker lookup algorithm (first look for colliding PTEs, then look for unused PTEs)  
3838 5606 d 22 h decky /trunk/kernel/ make RANDI a generic macro  
3837 5606 d 22 h decky /trunk/kernel/arch/ppc32/ use pseudorandom generator to avoid even the longest path of livelock collisions  
3836 5606 d 23 h decky /trunk/kernel/arch/ppc32/src/mm/ use secondary hash for kernel identity mapping to avoid livelocks on colliding PHT addresses  
3833 5607 d 19 h decky /trunk/ avoid nasty race condition during page fault handling  
3830 5608 d 17 h decky /trunk/kernel/arch/ppc32/ ppc32: add support for cache disable page access control  
3827 5608 d 19 h decky /trunk/ remove tlbia instruction, which is unsupported by PowerPC 7450  
3790 5630 d 0 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 5630 d 13 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 5680 d 16 h svoboda /trunk/kernel/arch/ppc32/src/mm/ Handle page faults from userspace properly on ppc32, do not panic.  
3586 5685 d 23 h jermar /trunk/kernel/arch/ Do not print "Page fault.\n" if a mapping is not found during TLB refill.  
3584 5686 d 1 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 5821 d 15 h jermar /trunk/kernel/ cstyle fixes  
3071 5848 d 21 h decky /trunk/kernel/ reflect changes in generic code
proper formatting directives
coding style
 
2725 5966 d 21 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 5967 d 20 h decky /trunk/kernel/arch/ remove memory_print_map(), as it duplicates functionality of physmem_print()  
2222 6270 d 15 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 6278 d 13 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 6340 d 22 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6351 d 15 h jermar /trunk/ (c) versus (C)  
1787 6541 d 17 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6548 d 18 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1758 6562 d 18 h decky /kernel/trunk/arch/ppc32/src/mm/ remove ASIDs from Page Hash Table  
1743 6564 d 15 h decky /kernel/trunk/arch/ppc32/src/mm/ fix compiler warning  
1736 6565 d 0 h decky /kernel/trunk/arch/ppc32/ verbose segment and BAT registers printout  
1733 6565 d 11 h decky /kernel/trunk/arch/ppc32/src/mm/ fix segment register values, ppc32 works again (both w/ and w/o BAT)  
1730 6565 d 11 h decky /kernel/trunk/arch/ppc32/ ppc32: BAT-less memory mapping (broken yet)
VSID support (broken yet)
boot API change
cleanup
 
1726 6565 d 18 h decky /kernel/trunk/arch/ppc32/ ppc32: more generic page hash table handling
(preliminary code, will be fixed properly later)
 
1716 6566 d 16 h decky /kernel/trunk/ move ppc32 four pages up, move real mode code, change config  
1708 6567 d 0 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1705 6569 d 0 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 6569 d 21 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1609 6576 d 22 h decky /kernel/trunk/arch/ppc32/ generalize ppc32 exception handling  
1411 6589 d 19 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 6592 d 17 h decky /kernel/trunk/arch/ppc32/src/mm/ fixes  
1389 6592 d 17 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1384 6593 d 13 h decky /kernel/trunk/arch/ppc32/src/ ppc32 work
decrementer workaround
primitive TLB support
 
1383 6593 d 13 h decky /kernel/trunk/ ppc32: hardware memory mapping, kernel PHT refill fix