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
2170 6307 d 14 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 6369 d 23 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6380 d 16 h jermar /trunk/ (c) versus (C)  
1787 6570 d 18 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6577 d 19 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1758 6591 d 19 h decky /kernel/trunk/arch/ppc32/src/mm/ remove ASIDs from Page Hash Table  
1743 6593 d 15 h decky /kernel/trunk/arch/ppc32/src/mm/ fix compiler warning  
1736 6594 d 0 h decky /kernel/trunk/arch/ppc32/ verbose segment and BAT registers printout  
1733 6594 d 11 h decky /kernel/trunk/arch/ppc32/src/mm/ fix segment register values, ppc32 works again (both w/ and w/o BAT)  
1730 6594 d 12 h decky /kernel/trunk/arch/ppc32/ ppc32: BAT-less memory mapping (broken yet)
VSID support (broken yet)
boot API change
cleanup
 
1726 6594 d 19 h decky /kernel/trunk/arch/ppc32/ ppc32: more generic page hash table handling
(preliminary code, will be fixed properly later)
 
1716 6595 d 16 h decky /kernel/trunk/ move ppc32 four pages up, move real mode code, change config  
1708 6596 d 1 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1705 6598 d 1 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 6598 d 22 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1609 6605 d 23 h decky /kernel/trunk/arch/ppc32/ generalize ppc32 exception handling  
1411 6618 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 6621 d 17 h decky /kernel/trunk/arch/ppc32/src/mm/ fixes  
1389 6621 d 17 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1384 6622 d 13 h decky /kernel/trunk/arch/ppc32/src/ ppc32 work
decrementer workaround
primitive TLB support
 
1383 6622 d 14 h decky /kernel/trunk/ ppc32: hardware memory mapping, kernel PHT refill fix  
1378 6623 d 22 h decky /kernel/trunk/arch/ppc32/ kernel identity mapping still to be done using BAT  
1374 6624 d 13 h decky /kernel/trunk/arch/ppc32/ ppc32 work
update framebuffer
get rid of the BAT memory mapping (not finished yet)
 
1328 6628 d 21 h decky /kernel/trunk/arch/ppc32/src/ ppc32: TLB manipulation stub  
1304 6633 d 18 h palkovsky /kernel/trunk/arch/ Fix zone_merge_all in ppc architectures.  
1288 6638 d 0 h jermar /kernel/trunk/ Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided.
 
1270 6641 d 15 h decky /kernel/trunk/arch/ppc32/ page index and VSID fixes  
1269 6641 d 17 h decky /kernel/trunk/ PHT Refill handler  
1221 6650 d 13 h decky /kernel/trunk/ printf-related and other code cleanup  
1215 6650 d 16 h decky /kernel/trunk/arch/ ppc32: stub for Page Hash Table support  
1196 6656 d 23 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1151 6668 d 1 h decky /kernel/trunk/arch/ppc32/src/mm/ ppc32: mark four first frames as unavailable  
1132 6679 d 17 h decky /kernel/trunk/arch/ppc32/ kernel boot API change  
972 6690 d 1 h decky /kernel/trunk/arch/ppc32/ ppc32: move kernel one frame up
frame zones initialization
 
970 6690 d 1 h decky /kernel/trunk/arch/ppc32/ ppc32: get memory map from loader  
934 6691 d 19 h decky /kernel/trunk/arch/ppc32/ remove all OpenFirmware bindings from ppc32 kernel code
kernel now runs in real mode (ppc32)
 
867 6709 d 21 h jermar /kernel/trunk/ Move OFW functionality of ppc32 memory_init to genarch so that the code can also be used by sparc64.
sparc64 is now close to broken as it lacks functionality to provide identity mapping for the whole phyisical memory.
 
843 6715 d 16 h palkovsky /kernel/trunk/ Made powerpc to get on PearPC to the version print when compiled with -O1:
- create proper memory zones
- switch to real mode on boot
TODO
- kernel relocation during boot
- autodetection of framebuffer settings (PCI?) - now includes hardcoded
settings for PearPc.
 
836 6718 d 13 h palkovsky /kernel/trunk/ Added support for 24-bit framebuffer.  
815 6723 d 23 h jermar /kernel/trunk/ Fix sparc64 and ia64 to work with the changed frame allocator.

Fix ppc32 to at least compile.