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
2015 6386 d 2 h jermar /trunk/ Rework support for virtually indexed cache.
Instead of repeatedly flushing the data cache, which was a huge overkill, refuse to create an illegal address alias
in the kernel (again) and allocate appropriate page color in userspace instead. Extend the detection also to
SYS_PHYSMEM_MAP syscall.

Add support for tracking physical memory areas mappable by SYS_PHYSMEM_MAP.

Lots of coding style changes.
 
1999 6397 d 12 h decky /trunk/ start RAM disk support  
1901 6460 d 7 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 6467 d 0 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 6515 d 22 h decky /trunk/kernel/ more sophisticated initial stack handling  
1826 6516 d 5 h decky /trunk/kernel/generic/src/main/ some debugging output  
1787 6537 d 4 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6544 d 5 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1757 6558 d 10 h jermar /kernel/trunk/ Cleanup of comments.  
1729 6560 d 22 h decky /kernel/trunk/generic/src/main/ coding style changes  
1702 6565 d 8 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1595 6572 d 15 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 6581 d 4 h palkovsky /kernel/trunk/ Added 'realtime' clock interface.
Added some asm macros as memory barriers.
Added drift computing for mips platform.
 
1389 6588 d 4 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1315 6596 d 5 h jermar /kernel/trunk/generic/ Improve framebuffer speed by buffering blank line.  
1248 6612 d 5 h jermar /kernel/trunk/ Add some @file doxygen comments and improve already existing comments.  
1229 6615 d 10 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1224 6616 d 8 h cejka /kernel/trunk/ Fix pointers output format.
Fix format of slab and zones tables.
 
1221 6617 d 0 h decky /kernel/trunk/ printf-related and other code cleanup  
1196 6623 d 9 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1164 6630 d 6 h jermar /kernel/trunk/generic/ Switch B+tree node allocation from malloc() to a dedicated slab - btree_node_slab.  
1138 6643 d 6 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 6648 d 0 h jermar /kernel/trunk/ Basic futex. Prototype implementation.  
1101 6650 d 2 h jermar /kernel/trunk/ B+-tree implementation.
Currently supports only inserting and searching.
 
1063 6653 d 23 h palkovsky /kernel/trunk/ Add support for more then 2GB of address space for AMD64.  
1062 6654 d 0 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 6654 d 11 h decky /kernel/trunk/ support for more init tasks
(might break some archs yet)
 
955 6657 d 3 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
860 6677 d 23 h decky /kernel/trunk/ indentation changes
ppc32 fpu context save/restore
ppc32 CPU version
ppc32 memcpy
 
822 6690 d 0 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 6690 d 10 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
799 6692 d 1 h palkovsky /kernel/trunk/ Preliminary work on AMD userspace.  
789 6693 d 1 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 6694 d 21 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 6696 d 21 h palkovsky /kernel/trunk/ Skeleton of SLAB allocator.  
757 6697 d 2 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 6697 d 23 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 6698 d 22 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 6710 d 0 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.
 
724 6712 d 2 h palkovsky /kernel/trunk/ Commit of the falloc_bad branch to trunk (719:723).