Subversion Repositories HelenOS-historic

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1780 6524 d 7 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1767 6532 d 14 h palkovsky /kernel/trunk/ Remove unneeded FRAME_PANIC.
Fix some things broken by last commit.
 
1760 6535 d 8 h palkovsky /kernel/trunk/ Changed interface of frame_alloc/free to use address of frame instead of the pfn.
This makes it impossible to use >4GB of memory on 32-bit machines, but who cares...
 
1705 6544 d 12 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 6545 d 9 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1637 6551 d 23 h jermar /kernel/trunk/genarch/src/mm/ Improve comment.  
1636 6551 d 23 h jermar /kernel/trunk/ Move comment.

Do TLB shootdown also when allocating new ASID.
 
1468 6558 d 7 h jermar /kernel/trunk/ Function for destroying address space for which there is no other reference in the kernel.  
1424 6562 d 6 h jermar /kernel/trunk/ Move the sharing functionality to address space area backends.
Add backend for continuous regions of physical memory.
Sharing for these areas works automagically now.
 
1380 6569 d 4 h jermar /kernel/trunk/ Turn address space lock, address space area lock and
page_ht_lock into mutexes.
 
1266 6588 d 10 h jermar /kernel/trunk/genarch/ Rename acpi/matd.c to madt.c (Multiple APIC Description Table).
Improve Doxygen comments in genarch/.
 
1248 6592 d 7 h jermar /kernel/trunk/ Add some @file doxygen comments and improve already existing comments.  
1229 6595 d 11 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1059 6634 d 4 h jermar /kernel/trunk/ Clear user address space when creating new page tables.
Fix mapping of l_apic and io_apic on amd64.
 
1044 6634 d 11 h jermar /kernel/trunk/ Page table locking.  
922 6641 d 2 h jermar /kernel/trunk/genarch/src/mm/ Fix generic page hash table to align down page addresses.
This was the ia64 userspace show stopper.
 
902 6649 d 11 h jermar /kernel/trunk/ ia64 work.
More capable TLB miss handlers.
The ia64 kernel now passes mm/mapping1 test.

Fix generic hash table to properly initialize lists.

Change page_ht() to properly initialize inserted PTE's.
Change format of generic page hash table PTE's.
 
832 6668 d 1 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
831 6668 d 8 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).
 
830 6668 d 10 h jermar /kernel/trunk/ Make ASID FIFO for mips32 be allocated statically.
Make ASID FIFO for sparc64 and ia64 be allocated dynamically.
Fix ia64 to call asid_fifo_init().
All three architectures now call asid_fifo_init() from as_arch_init().
 
826 6669 d 2 h jermar /kernel/trunk/ Add page_mapping_remove().  
823 6670 d 0 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
815 6670 d 11 h jermar /kernel/trunk/ Fix sparc64 and ia64 to work with the changed frame allocator.

Fix ppc32 to at least compile.
 
814 6670 d 11 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
793 6672 d 9 h jermar /kernel/trunk/ Use hash_table_get_instance instead of list_get_instance.
Rename page_operations to page_mapping_operations.
Rename page_pt_operations to pt_mapping_operations.
Rename page_ht_operations to ht_mapping_operations.
 
792 6672 d 10 h jermar /kernel/trunk/ Page hash table architectures now use generic hash table to manage
mappings.
 
788 6673 d 6 h jermar /kernel/trunk/ Move list and fifo data types to adt/.  
786 6673 d 8 h bondari /kernel/trunk/ frame_alloc() functions variations in order to avoid problems with frame_alloc_generic() changes.
IMPORTANT: Parameter order for frame_alloc() was changed
 
762 6676 d 10 h palkovsky /kernel/trunk/ Currently not-working SLAB allocator.
- slightly changed interface to frame_alloc, allow zone preference
 
757 6677 d 3 h jermar /kernel/trunk/ Blacklist addresses between 0xa0000 and 0xfffff on ia64 for frame allocator.
This area contains VGA text frame buffer and should be avoided.
falloc2 test now passes on ia64.
 
756 6678 d 0 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
755 6678 d 23 h jermar /kernel/trunk/ Change page_mapping_find/insert interfaces to take as_t * as first argument
and not asid_t as second argument. This change was necessitated by the
removal of mapping array from as_area_t and the fact that an address
space doesn't have an ASID when it is created.
 
753 6679 d 7 h jermar /kernel/trunk/ Convert ASID management of ia64 to ASID FIFO mechanism.
18-bit RIDs are supported.
 
746 6683 d 10 h jermar /kernel/trunk/ Page hash table modifications.  
741 6685 d 3 h jermar /kernel/trunk/ Unlock address space prior TLB shootdown in get_asid() to unify
the locking order among mips32, sparc64 and ia64.

Add ASID_STEALING_ENABLED macro to disable the stealing part on ia64
in a clean way.
 
740 6685 d 9 h jermar /kernel/trunk/ ia64 ASID management code (not tested).  
730 6688 d 6 h jermar /kernel/trunk/ Finalize ASID management for sparc64 and mips32 by making use of FIFO queue of ASIDs.  
727 6690 d 2 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.
 
699 6699 d 10 h jermar /kernel/trunk/ Memory management work.
Proto-interface and dummy implementation of generic page hash table subsytem.
 
689 6701 d 7 h bondari /kernel/trunk/ Frame alloc test #1