Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1901 6480 d 13 h jermar /trunk/kernel/ Make SMP related parts of main.c more generic.
Move initialization of local APIC to architecture specific code.
Add arch_post_cpu_init() to support the above.
 
1894 6487 d 5 h jermar /trunk/ Add balloc() (a.k.a boot allocator):
- balloc() only needs to know how to allocate memory.
- Memory allocated via balloc() is supposed to be passed to kernel and never freed by boot itself.
- make kernel aware of boot allocations

More work on OFW device tree:
- use balloc() to efficiently and safely allocate memory for the canonical copy of the device tree

sparc64 boot:
- pass OFW device tree root node pointer to kernel
 
1833 6536 d 3 h decky /trunk/kernel/ more sophisticated initial stack handling  
1826 6536 d 10 h decky /trunk/kernel/generic/src/main/ some debugging output  
1787 6557 d 10 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6564 d 11 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1757 6578 d 16 h jermar /kernel/trunk/ Cleanup of comments.  
1729 6581 d 4 h decky /kernel/trunk/generic/src/main/ coding style changes  
1702 6585 d 14 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1595 6592 d 21 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
1434 6601 d 10 h palkovsky /kernel/trunk/ Added 'realtime' clock interface.
Added some asm macros as memory barriers.
Added drift computing for mips platform.
 
1389 6608 d 9 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1315 6616 d 11 h jermar /kernel/trunk/generic/ Improve framebuffer speed by buffering blank line.  
1248 6632 d 11 h jermar /kernel/trunk/ Add some @file doxygen comments and improve already existing comments.  
1229 6635 d 15 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1224 6636 d 14 h cejka /kernel/trunk/ Fix pointers output format.
Fix format of slab and zones tables.
 
1221 6637 d 5 h decky /kernel/trunk/ printf-related and other code cleanup  
1196 6643 d 15 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1164 6650 d 12 h jermar /kernel/trunk/generic/ Switch B+tree node allocation from malloc() to a dedicated slab - btree_node_slab.  
1138 6663 d 11 h jermar /kernel/trunk/ CPU stacks must have two frames on ia64.
Make sure both thread stack frames are mapped in before_thread_runs_arch().
Take STACK_FRAMES into account during kernel memory layout initialization in main_bsp().
 
1109 6668 d 6 h jermar /kernel/trunk/ Basic futex. Prototype implementation.  
1101 6670 d 8 h jermar /kernel/trunk/ B+-tree implementation.
Currently supports only inserting and searching.
 
1063 6674 d 4 h palkovsky /kernel/trunk/ Add support for more then 2GB of address space for AMD64.  
1062 6674 d 6 h jermar /kernel/trunk/ It is now possible to associate symbolic names with both threads and tasks.
More verbose kconsole threads, tasks and scheduler commands.
 
1037 6674 d 17 h decky /kernel/trunk/ support for more init tasks
(might break some archs yet)
 
955 6677 d 9 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
860 6698 d 4 h decky /kernel/trunk/ indentation changes
ppc32 fpu context save/restore
ppc32 CPU version
ppc32 memcpy
 
822 6710 d 5 h palkovsky /kernel/trunk/ Changed malloc to include second parameter and documented
recommended usage.
Added zone merging, made ia32 & amd64 to merge found zones.
 
814 6710 d 16 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
799 6712 d 7 h palkovsky /kernel/trunk/ Preliminary work on AMD userspace.  
789 6713 d 6 h palkovsky /kernel/trunk/generic/ Early SLAB initialization, the cpu-cache is initialized later.
If you want to use slab_cache_create befor slab_cpu_enable, add
a flag SLAB_CACHE_MAGDEFERRED.
 
773 6715 d 2 h palkovsky /kernel/trunk/ Added slab stress test.
Fixed race condition in slab allocator.
Moved initialization of slab to the point where we know correct config.cpu_count
Correctly passes tests on amd64, ia32 in both bochs & qemu.
 
759 6717 d 2 h palkovsky /kernel/trunk/ Skeleton of SLAB allocator.  
757 6717 d 7 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 6718 d 4 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 6719 d 3 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.
 
727 6730 d 6 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.
 
724 6732 d 7 h palkovsky /kernel/trunk/ Commit of the falloc_bad branch to trunk (719:723).  
703 6736 d 15 h jermar /kernel/trunk/ Memory management work.
- vm.* -> as.* (as like address space is, imho, more fitting)
- Don't do TLB shootdown on vm_install(). Some architectures only need to call tlb_invalidate_asid().
- Don't allocate all frames for as_area in as_area_create(), but let them be allocated on-demand by as_page_fault().
- Add high-level page fault handler as_page_fault().
- Add as_area_load_mapping().
 
684 6741 d 13 h jermar /kernel/trunk/ Memory management work.
Move generic 4-level page table interface to genarch
and enable architectures to use different virtual memory
mechanisms (e.g. page hash tables).
Start page hash table support.
Switch ia64 and sparc64 to page hash tables.
Other architectures keep on using 4-level page table interface.