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
3485 5847 d 16 h jermar /trunk/ Support for SYSENTER on ia32.  
2444 6340 d 14 h jermar /trunk/kernel/ First fixes for suncc support.
It is going to be a long way...
 
2441 6340 d 16 h decky /trunk/kernel/ fix ICC compilation  
2233 6392 d 16 h decky /trunk/kernel/arch/ use the hlt instruction more properly  
2082 6470 d 0 h decky /trunk/ __asm__ __volatile__ -> asm volatile  
2071 6474 d 17 h jermar /trunk/ (c) versus (C)  
2018 6511 d 20 h decky /trunk/kernel/ rename rdtsc() to get_cycle()  
1888 6599 d 20 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6664 d 19 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6671 d 20 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1702 6692 d 23 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1251 6738 d 23 h jermar /kernel/trunk/ Fix BITS2BYTES macro to return 0 when passed 0 as argument.
Fix ia32 TSS segment granularity to be 0.
Fix ia32 and amd64 initial TSS limit to be 103.
Little textual changes here and there.
 
1187 6753 d 20 h jermar /kernel/trunk/ Cleanup pm.c and pm.h code on ia32 and amd64.
Add before_task_runs() and before_task_runs_arch() for each architecture.
Add ia32 and amd64 code to ensure I/O Permission Bitmap update.
 
1186 6753 d 21 h jermar /kernel/trunk/arch/ Replace assembly from pm.c with new inline functions defined in asm.h.  
1074 6781 d 1 h palkovsky /kernel/trunk/ Ported AMD64 debugger to ia32 and enabled AS watchpoint to ia32 as well.  
984 6783 d 22 h palkovsky /kernel/trunk/arch/ Fixed invlpg for ia32 & amd64.  
597 6877 d 0 h jermar /kernel/trunk/ Finer grained TLB invalidate functions for ia32 and amd64. Not yet deployed.  
581 6878 d 1 h palkovsky /kernel/trunk/ Small debug changes.  
534 6883 d 18 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6883 d 18 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6895 d 22 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
432 6914 d 17 h jermar /SPARTAN/trunk/arch/ IA-64 work.
Add some asm functions for manipulation with PSR, AR and CR registers.
 
413 6931 d 14 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.
 
393 6943 d 17 h bondari /SPARTAN/trunk/arch/ia32/include/ Comments fixed  
363 6959 d 16 h jermar /SPARTAN/trunk/arch/ Fix copyright notices.  
361 6959 d 17 h bondari /SPARTAN/trunk/ Memory routines per-arch declations for future implementation  
359 6960 d 15 h bondari /SPARTAN/trunk/arch/ia32/include/ I think some comments to the algoritm would be helful  
358 6960 d 16 h bondari /SPARTAN/trunk/ built-in memcpy is not used anymore on IA-32.
IA-32 memcpy is now fast and inline.
 
356 6960 d 18 h bondari /SPARTAN/trunk/arch/ia32/ Get from port functions are now inline  
353 6961 d 4 h bondari /SPARTAN/trunk/arch/ia32/ Outb, outw, outl are now inline functions  
352 6961 d 16 h bondari /SPARTAN/trunk/arch/ia32/ outb inline function  
348 6965 d 16 h jermar /SPARTAN/trunk/arch/ Optimize some assembler functions.  
195 6979 d 17 h vana /SPARTAN/trunk/ 1) memcopy and _memcopy functions rewriten to ANSI C norm.
2) Repaired ia32,ia64 and mips version of SPARTAN to work with this memcopy functions
3) Warning for non declared funcions added and repaired ia32,ia64 and mips versions to pass build process with this warning and Werror option
 
192 6979 d 20 h jermar /SPARTAN/trunk/ Dump implementation of THREAD, TASK and CPU.
Implement preemption-safe versions of THREAD, TASK and CPU using THE.
Get rid of CPU_ID_ARCH on all architectures.
Get rid of write_dr0() and read_dr0() on IA-32.
Get rid of cpu_private_data and cpu_private_data_t.
 
180 6980 d 17 h jermar /SPARTAN/trunk/ Globalize 'size' and 'delta' and rename them to 'kernel_size' and 'heap_delta'.

Fix heap initialization to take 'heap_delta' into account.

Implement IA-64 get_stack_base().

Adjust SP_DELTA's to consider one extra word on stack.
(So that the stack pointer is within appropriate limits even on IA-64).

More #include cleanup.
 
177 6981 d 1 h jermar /SPARTAN/trunk/ Add some comments to IA-32 src/boot/boot.S and src/smp.S.

Make the boot stack start on page boundary.
This is required by get_stack_base().

Define 'THE' macro.

Implement preemption_disable() and preemption_enable().

Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.

Reduction of many #include paths.
 
173 6984 d 16 h jermar /SPARTAN/trunk/ Preparations for weaker preemption model.
Make all kernel stacks (i.e. startup, scheduler and thread) be STACK_SIZE bytes long.
Reincarnate "the" structure. This time, it is planned to be located at the base of each and every kernel stack.
On IA-32 and MIPS, implement get_stack_base() functions. On the rest of supported platforms, define it to be dummy.
 
139 7020 d 20 h cejka /SPARTAN/trunk/arch/ia32/ Added e801 method for obtaining memory size, improved e820 method for memory map.  
115 7061 d 13 h jermar /SPARTAN/trunk/ Implement several assembler functions in gcc's __asm__ notation instead of in .s or .S file.
Gain both better speed and size.
 
38 7098 d 18 h jermar /SPARTAN/trunk/arch/ia32/ Make read/write_dr0() inlined.