Rev |
Age |
Author |
Path |
Log message |
Diff |
483 |
6848 d 5 h |
jermar |
/SPARTAN/trunk/ |
For now, each architecture must use its own -O switch (-O2 doesn't work for ia64, -O3 doesn't work for mips32).
New mips32 atomic_add() function.
Cleanup. |
|
480 |
6850 d 5 h |
bondari |
/SPARTAN/trunk/generic/ |
Buddy system allocator implementation. Not checked. For review only. |
|
479 |
6851 d 6 h |
bondari |
/SPARTAN/trunk/generic/ |
Buddy system implementation. Not functional yet - only framework prepeared.
Also added 2 macros FRAME2ADDR and ADDR2FRAME. |
|
475 |
6852 d 11 h |
jermar |
/SPARTAN/trunk/ |
Define atomic_t type. |
|
470 |
6854 d 0 h |
jermar |
/SPARTAN/trunk/ |
ia64 work.
Big cleanup of IA-64 interrupt processing.
Merge of interrupt.c and interrupt_handler.c.
Rewrite of ivt.S and interrupt.c.
Higher level interrupt handlers are now passed a vector number and a pointer to stack structure.
ia32 work.
ia32 has ordered writes. Until it deploys weaker memory ordering model, write_barrier() can be empty statement. |
|
463 |
6854 d 10 h |
decky |
/SPARTAN/trunk/ |
even fancier release/revision display |
|
462 |
6854 d 11 h |
decky |
/SPARTAN/trunk/ |
include svn revision and build time in the kernel |
|
460 |
6854 d 12 h |
decky |
/SPARTAN/trunk/ |
some fancy stuff |
|
459 |
6854 d 12 h |
decky |
/SPARTAN/trunk/ |
build system: CONFIG_TEST, CONFIG_USERSPACE |
|
458 |
6854 d 13 h |
decky |
/SPARTAN/trunk/ |
make configuration variables usage consistent |
|
452 |
6855 d 5 h |
decky |
/SPARTAN/trunk/ |
major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient |
|
430 |
6861 d 3 h |
jermar |
/SPARTAN/trunk/ |
Move src/ and include/ to generic. |
|
414 |
6875 d 16 h |
jermar |
/SPARTAN/trunk/ |
Create generic context_save() and context_restore().
These two functions are defined inline and only call context_save_arch() and context_restore_arch(), respectively.
The main purpose of this is to enable centralized commenting of these important and tricky functions. |
|
413 |
6876 d 2 h |
jermar |
/SPARTAN/trunk/ |
Rename cpu_priority_{high|low|restore|read} functions to interrupts_{disable|enable|restore|read}.
Rename pri_t to ipl_t (Interrupt Priority Level).
Rename thread_t::pri to thread_t::priority. |
|
411 |
6877 d 5 h |
jermar |
/SPARTAN/trunk/ |
Doxygen comments. |
|
405 |
6882 d 4 h |
jermar |
/SPARTAN/trunk/src/ |
Doxygen comments fixes. |
|
404 |
6882 d 5 h |
jermar |
/SPARTAN/trunk/src/ |
Fix doxygen comments. |
|
402 |
6883 d 14 h |
jermar |
/SPARTAN/trunk/ |
Add ALIGN() macro.
Fix usage of early_mapping() in main.c.
The previous version would not map part of the heap.
Please, review. |
|
391 |
6889 d 3 h |
jermar |
/SPARTAN/trunk/ |
mips32 memory management work.
TLB Refill Exception implemented (passed basic testing).
Remove bit g from struct entry_hi.
Add generic find_mapping().
Add asid to vm_t type, define asid_t to hide architecture specific differences.
Implement ASID allocation for mips32, dummy for other architectures.
Add THE->vm (a.k.a. VM).
Add vm_install_arch().
Move pte_t definition to arch/types.h on each architecture.
Fix PTL manipulating functions on mips32 to shift pfn by 12 instead of by 14.
Fix tlb_init_arch() to initialize all entries.
Other.
Remove unnecessary header files from arch.h
Add missing headers here and there.
Remove two unnecessary ld flags from mips32 makefile. |
|
389 |
6889 d 14 h |
jermar |
/SPARTAN/trunk/ |
MIPS work.
Fix some name inconsistencies between cp0 functions' declarations and definitions.
Add and implement tlb_init_arch().
Add tlb_modified() exception handler.
Other architectures: add dummy tlb_init_arch(). |
|
387 |
6891 d 7 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for condvar.c. |
|
386 |
6891 d 8 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for mutex.c. |
|
385 |
6891 d 8 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for rwlock.c. |
|
384 |
6891 d 9 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for semaphore.c. |
|
383 |
6891 d 10 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for spinlock.c. |
|
382 |
6892 d 2 h |
jermar |
/SPARTAN/trunk/src/synch/ |
Doxygen-style comments for waitq.c. |
|
381 |
6894 d 2 h |
jermar |
/SPARTAN/trunk/ |
Make cross-compiler the default compiler on IA-32.
For native compilations, use ./build.ia32 native.
Small changes elsewhere. |
|
379 |
6895 d 12 h |
jermar |
/SPARTAN/trunk/src/mm/ |
Optimize buddy_system_free().
Remove special-case code from the main codepath. |
|
378 |
6895 d 12 h |
jermar |
/SPARTAN/trunk/ |
Redeclare eraly_malloc() with __attribute__ ((malloc)) to improve optimizations.
Reorganize #include's in scheduler.c.
Buddy system improvements.
Make buddy_system_free() explicitly invalidate order of blocks before they are coalesced.
Add some assertions. |
|
377 |
6898 d 5 h |
jermar |
/SPARTAN/trunk/ |
Generic buddy allocator.
Please review the code before it is deployed. |
|
376 |
6898 d 8 h |
jermar |
/SPARTAN/trunk/ |
Move kernel build files one level up the directory tree.
Fix paths in your testing environment! |
|
375 |
6898 d 9 h |
jermar |
/SPARTAN/trunk/src/mm/ |
Replace free() call with early_free() call in zone_create(). |
|
374 |
6900 d 2 h |
jermar |
/SPARTAN/trunk/ |
Revert previous change in frame_t as it broke IA-64.
(Most likely some alignment problem.)
Rename heap_init(), malloc() and free(), respectively, to early_heap_init(), early_malloc() and early_free(), respectively.
Define new macros malloc() and free(). They are to be replaced by real functions some day. |
|
373 |
6900 d 4 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
Add "__attribute__ ((packed))" to frame_t so that it takes up less space.
Note that this is essential as there is lot of these structures.
Remove busy list from zone_t as it is redundant. |
|
369 |
6902 d 6 h |
jermar |
/SPARTAN/trunk/src/main/ |
The more physical frames, the more memory allocated for heap. |
|
368 |
6902 d 11 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap. |
|
367 |
6903 d 2 h |
jermar |
/SPARTAN/trunk/ |
Physical memory management work.
Implement zone_*() and some frame_*() functions. |
|
364 |
6903 d 15 h |
palkovsky |
/SPARTAN/trunk/ |
Added support for msim with 4kc instructions.
Fixed support for upstream msim.
Small boot fix on Indy. |
|
360 |
6904 d 11 h |
jermar |
/SPARTAN/trunk/ |
Compilation fixes.
memcpy() must be declared in memstr.h |
|
351 |
6907 d 14 h |
jermar |
/SPARTAN/trunk/src/lib/ |
Ok. The idea of _qsort() was not broken at all.
Revert the changes and make _qsort() call _qsort() rather than qsort() so that the idea has effect.
Add _bubblesort() to optimize number of allocations when bubblesort algorithm is invoked from _qsort().
Add doxygen-style comments. |
|