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
2465 6175 d 19 h jermar /trunk/ Merge arm32 into trunk.  
2445 6182 d 20 h decky /trunk/ initial merge of branches/fs
(not finished, huge cleanup is needed)
 
2061 6335 d 21 h jermar /trunk/ Improve comments and fix formatting in (sparc64) TLS implementation.
Improve some comments and formatting in sparc64 uspace thread library
code.

Update required msim version.
 
2001 6367 d 11 h jermar /trunk/kernel/ Indentation and comment fixes.  
1950 6404 d 16 h jermar /trunk/kernel/ Indentation changes and coding style fixes in slab.c and slab.h.  
1915 6418 d 14 h jermar /trunk/kernel/ A quote from from SPARC V9 specification:

The Y register is deprecated; it is provided only for compatibility with previous versions
of the architecture. It should not be used in new SPARC-V9 software. It is
recommended that all instructions that reference the Y register (i.e., SMUL,
SMULcc, UMUL, UMULcc, MULScc, SDIV, SDIVcc, UDIV, UDIVcc, RDY, and
WRY) be avoided. See the appropriate pages in Appendix A, “Instruction Definitions,”
for suitable substitute instructions.

Still gcc is generating code which uses Y and some of the instructions above.
This change modifies the preemptible_handler() to preserve the Y register
across preemption.
 
1849 6470 d 23 h jermar /trunk/kernel/ sparc64 work.
interrupt_vector trap experimental handling.
Minimal reverse-engineered FireHose Controller driver (documentation needed!).
Keyboard on Sun Enterprise is now interrupt driven. Keyboard on Sun Ultra
is still polled.
 
1787 6507 d 16 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1761 6525 d 12 h jermar /kernel/trunk/doc/arch/ Upgrade amd64 hw compatibility list.  
1731 6531 d 9 h jermar /kernel/trunk/ Updates in Doxygen-style comments.
Make architecture specific modules appear conditionally in the documentation.
Add time management module.
Improve names of other modules and sort module order
to be more like in the design documentation.
 
1705 6534 d 23 h cejka /kernel/trunk/ Added file with modules definitions and descriptions.
We are able to change modules order and their description in one place.
 
1543 6546 d 0 h palkovsky /kernel/trunk/doc/ Note about mips bug making tetris to fail.  
1422 6552 d 22 h jermar /kernel/trunk/ Modify ia64 linker script to make compilation with gcc 4.1.x possible.  
1420 6552 d 23 h jermar /kernel/trunk/ Upgrade toolchain to use gcc 4.1.1.
ia64 still cannot be built with combination of binutils 2.16.1 and gcc 4.1.x
 
1323 6566 d 1 h jermar /kernel/trunk/ Increase "timeout" for debugging spinlock so that false positive
deadlock reports are suppressed on real hardware.

Also add one HT configuration to hardware compatibility list.
 
1297 6572 d 19 h jermar /kernel/trunk/ Add SYS_CAP_GRANT and SYS_CAP_REVOKE syscalls.
Move SYS_PREEMPT_CONTROL to ddi.c.
Add some comments and fix some small issues.
 
1229 6585 d 21 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1169 6599 d 12 h jermar /kernel/trunk/doc/ Change developer emails to their aliases in helenos.eu.  
912 6635 d 14 h jermar /kernel/trunk/ ia64 work.

ivt.S:
Detect userspace stack in heavyweight handler and switch to kernel stack.
Remember the old stack pointer.
As for register stack, kernel stack is assumed still.
Fix alignment issues that showed when STACK_ITEMS was odd.
Fix ld8 instruction that did subtraction of 8 instead of addition of 8.

scheduler.c:
Change before_thread_runs_arch() to calculate address of top of the stack
for the interrupt handler.
 
905 6638 d 12 h jermar /kernel/trunk/ Upgrade toolchain build scripts to install binutils 2.16.1 and gcc 4.1.0.
The only exception is ia64, where the kernel does not build with gcc 4.1.0.
 
832 6658 d 12 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
822 6660 d 11 h palkovsky /kernel/trunk/ Changed malloc to include second parameter and documented
recommended usage.
Added zone merging, made ia32 & amd64 to merge found zones.
 
812 6661 d 12 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
761 6666 d 21 h jermar /kernel/trunk/doc/ Remove document describing more relaxed preemption model than the one used in the current kernel.  
750 6670 d 14 h jermar /kernel/trunk/ ia32 SMP updates.
Update info about supported version of Bochs (bump the counter to 2.2.6).
Add Task Priority Register type and initialize this register to a known state.
 
703 6686 d 21 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().
 
681 6691 d 22 h jermar /kernel/trunk/ Minor changes.  
558 6723 d 20 h palkovsky /kernel/trunk/ Clean up of build system. Use:
make config
make
make clean
 
534 6726 d 14 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6726 d 15 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6732 d 18 h jermar /kernel/trunk/ Clean up.  
516 6736 d 15 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
501 6738 d 19 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
436 6755 d 13 h decky /SPARTAN/trunk/doc/arch/ new tested IA-32 SMP machines  
410 6775 d 15 h jermar /SPARTAN/trunk/ Doxygen-style comments.  
400 6784 d 1 h jermar /SPARTAN/trunk/ Finalize mapping1 test.
Record omitted excMod bug in msim.
 
398 6784 d 22 h jermar /SPARTAN/trunk/ Add arch directory for sparc64.  
365 6801 d 13 h jermar /SPARTAN/trunk/ Replace #define's in list.h with type-safe inlines.

Update mips32 documentation.
 
347 6808 d 14 h jermar /SPARTAN/trunk/ Documentation updates for amd64, mips32 and ia32.

Replace %L with %P printf() formatter in MPS and ACPI detection functions to print addresses in maximal width.

Tweak memmap.S and IA-32 and AMd64 boot.S.
Cancel unneeded instructions.
Replace cmpl $0, %ebx with testl %ebx, %ebx.
Move memmap.S data to K_DATA_START section.
 
346 6809 d 13 h jermar /SPARTAN/trunk/doc/ Update documentation of ports.