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
2465 6236 d 22 h jermar /trunk/ Merge arm32 into trunk.  
2445 6243 d 23 h decky /trunk/ initial merge of branches/fs
(not finished, huge cleanup is needed)
 
2061 6396 d 23 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 6428 d 14 h jermar /trunk/kernel/ Indentation and comment fixes.  
1950 6465 d 19 h jermar /trunk/kernel/ Indentation changes and coding style fixes in slab.c and slab.h.  
1915 6479 d 17 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 6532 d 1 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 6568 d 18 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1761 6586 d 15 h jermar /kernel/trunk/doc/arch/ Upgrade amd64 hw compatibility list.  
1731 6592 d 12 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 6596 d 1 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 6607 d 2 h palkovsky /kernel/trunk/doc/ Note about mips bug making tetris to fail.  
1422 6614 d 1 h jermar /kernel/trunk/ Modify ia64 linker script to make compilation with gcc 4.1.x possible.  
1420 6614 d 2 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 6627 d 3 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 6633 d 21 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 6647 d 0 h jermar /kernel/trunk/ Remove the outdated TODO file.
Improve doxygen comments here and there.
 
1169 6660 d 14 h jermar /kernel/trunk/doc/ Change developer emails to their aliases in helenos.eu.  
912 6696 d 16 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 6699 d 14 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 6719 d 14 h jermar /kernel/trunk/ Change pt_mapping_remove() to deallocate frames for empty PTL1, PTL2 and PTL3.  
822 6721 d 14 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 6722 d 15 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
761 6728 d 0 h jermar /kernel/trunk/doc/ Remove document describing more relaxed preemption model than the one used in the current kernel.  
750 6731 d 17 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 6748 d 0 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 6753 d 1 h jermar /kernel/trunk/ Minor changes.  
558 6784 d 22 h palkovsky /kernel/trunk/ Clean up of build system. Use:
make config
make
make clean
 
534 6787 d 17 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6787 d 17 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6793 d 21 h jermar /kernel/trunk/ Clean up.  
516 6797 d 18 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
501 6799 d 22 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
436 6816 d 15 h decky /SPARTAN/trunk/doc/arch/ new tested IA-32 SMP machines  
410 6836 d 17 h jermar /SPARTAN/trunk/ Doxygen-style comments.  
400 6845 d 3 h jermar /SPARTAN/trunk/ Finalize mapping1 test.
Record omitted excMod bug in msim.
 
398 6846 d 1 h jermar /SPARTAN/trunk/ Add arch directory for sparc64.  
365 6862 d 16 h jermar /SPARTAN/trunk/ Replace #define's in list.h with type-safe inlines.

Update mips32 documentation.
 
347 6869 d 17 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 6870 d 15 h jermar /SPARTAN/trunk/doc/ Update documentation of ports.