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 6197 d 7 h jermar /trunk/ Merge arm32 into trunk.  
2445 6204 d 8 h decky /trunk/ initial merge of branches/fs
(not finished, huge cleanup is needed)
 
2061 6357 d 8 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 6388 d 23 h jermar /trunk/kernel/ Indentation and comment fixes.  
1950 6426 d 4 h jermar /trunk/kernel/ Indentation changes and coding style fixes in slab.c and slab.h.  
1915 6440 d 2 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 6492 d 10 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 6529 d 3 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1761 6547 d 0 h jermar /kernel/trunk/doc/arch/ Upgrade amd64 hw compatibility list.  
1731 6552 d 21 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 6556 d 10 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 6567 d 11 h palkovsky /kernel/trunk/doc/ Note about mips bug making tetris to fail.  
1422 6574 d 10 h jermar /kernel/trunk/ Modify ia64 linker script to make compilation with gcc 4.1.x possible.  
1420 6574 d 11 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 6587 d 12 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 6594 d 7 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 6607 d 9 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1169 6621 d 0 h jermar /kernel/trunk/doc/ Change developer emails to their aliases in helenos.eu.  
912 6657 d 1 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 6659 d 23 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 6679 d 23 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
822 6681 d 23 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 6683 d 0 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
761 6688 d 9 h jermar /kernel/trunk/doc/ Remove document describing more relaxed preemption model than the one used in the current kernel.  
750 6692 d 2 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 6708 d 9 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 6713 d 10 h jermar /kernel/trunk/ Minor changes.  
558 6745 d 7 h palkovsky /kernel/trunk/ Clean up of build system. Use:
make config
make
make clean
 
534 6748 d 2 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6748 d 2 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6754 d 6 h jermar /kernel/trunk/ Clean up.  
516 6758 d 3 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
501 6760 d 7 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
436 6777 d 1 h decky /SPARTAN/trunk/doc/arch/ new tested IA-32 SMP machines  
410 6797 d 3 h jermar /SPARTAN/trunk/ Doxygen-style comments.  
400 6805 d 12 h jermar /SPARTAN/trunk/ Finalize mapping1 test.
Record omitted excMod bug in msim.
 
398 6806 d 10 h jermar /SPARTAN/trunk/ Add arch directory for sparc64.  
365 6823 d 1 h jermar /SPARTAN/trunk/ Replace #define's in list.h with type-safe inlines.

Update mips32 documentation.
 
347 6830 d 2 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 6831 d 0 h jermar /SPARTAN/trunk/doc/ Update documentation of ports.