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 6183 d 15 h jermar /trunk/ Merge arm32 into trunk.  
2445 6190 d 15 h decky /trunk/ initial merge of branches/fs
(not finished, huge cleanup is needed)
 
2061 6343 d 16 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 6375 d 7 h jermar /trunk/kernel/ Indentation and comment fixes.  
1950 6412 d 12 h jermar /trunk/kernel/ Indentation changes and coding style fixes in slab.c and slab.h.  
1915 6426 d 9 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 6478 d 18 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 6515 d 11 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1761 6533 d 8 h jermar /kernel/trunk/doc/arch/ Upgrade amd64 hw compatibility list.  
1731 6539 d 5 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 6542 d 18 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 6553 d 19 h palkovsky /kernel/trunk/doc/ Note about mips bug making tetris to fail.  
1422 6560 d 18 h jermar /kernel/trunk/ Modify ia64 linker script to make compilation with gcc 4.1.x possible.  
1420 6560 d 18 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 6573 d 20 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 6580 d 14 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 6593 d 17 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1169 6607 d 7 h jermar /kernel/trunk/doc/ Change developer emails to their aliases in helenos.eu.  
912 6643 d 9 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 6646 d 7 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 6666 d 7 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
822 6668 d 7 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 6669 d 7 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
761 6674 d 17 h jermar /kernel/trunk/doc/ Remove document describing more relaxed preemption model than the one used in the current kernel.  
750 6678 d 10 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 6694 d 17 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 6699 d 18 h jermar /kernel/trunk/ Minor changes.  
558 6731 d 15 h palkovsky /kernel/trunk/ Clean up of build system. Use:
make config
make
make clean
 
534 6734 d 10 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6734 d 10 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6740 d 13 h jermar /kernel/trunk/ Clean up.  
516 6744 d 10 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
501 6746 d 14 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
436 6763 d 8 h decky /SPARTAN/trunk/doc/arch/ new tested IA-32 SMP machines  
410 6783 d 10 h jermar /SPARTAN/trunk/ Doxygen-style comments.  
400 6791 d 20 h jermar /SPARTAN/trunk/ Finalize mapping1 test.
Record omitted excMod bug in msim.
 
398 6792 d 18 h jermar /SPARTAN/trunk/ Add arch directory for sparc64.  
365 6809 d 8 h jermar /SPARTAN/trunk/ Replace #define's in list.h with type-safe inlines.

Update mips32 documentation.
 
347 6816 d 10 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 6817 d 8 h jermar /SPARTAN/trunk/doc/ Update documentation of ports.