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
2441 6322 d 1 h decky /trunk/kernel/ fix ICC compilation  
2218 6375 d 23 h decky /trunk/kernel/ support the possibility to send EOI or Interrupt Acknowledgement
prior to processing the interrupt
(this is essential on some architectures to prevent preemption deadlock)
 
2217 6376 d 0 h jermar /trunk/kernel/arch/ia32/src/smp/ On SMP amd64 and ia32 systems, release the irq->lock
before calling clock() from the interrupt handler.
This is important for maintaining kernel preemption
since no preemption can take place while a spinlock
is held.
 
2101 6444 d 3 h decky /trunk/kernel/ fix signed/unsigned comparison and integer overflow  
2071 6456 d 2 h jermar /trunk/ (c) versus (C)  
1970 6536 d 10 h decky /trunk/kernel/arch/ia32/src/smp/ use new IRQ scheme in l_apic_timer_interrupt()  
1888 6581 d 5 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6646 d 4 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6653 d 5 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1708 6671 d 11 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1702 6674 d 8 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1684 6677 d 12 h jermar /kernel/trunk/ #ifdef more debugging printf()'s.  
1667 6679 d 6 h jermar /kernel/trunk/ Print spurious interrupt messages only when compiled with CONFIG_DEBUG.
Print warning about looping spinlock only after 100000000 unsuccessfull attempts to gain the spinlock.
 
1540 6684 d 14 h jermar /kernel/trunk/arch/ia32/src/smp/ Fix programming of local APIC timer to interrupt the processor
in the proper relation to HZ. (Was hardcoded to be each 1ms,
but should have been each 10ms).
 
1196 6732 d 9 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
958 6766 d 2 h jermar /kernel/trunk/ Nicer ia32 interrupt handlers and structures holding interrupted context data.
Unify the name holding interrupted context data on all architectures to be istate.
 
812 6800 d 0 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
750 6809 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.
 
693 6830 d 5 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
672 6836 d 0 h jermar /kernel/trunk/arch/ia32/ ia32 work.
Initialize LDR and DFR registers in Local APIC so that logical destination addresses work.
 
576 6859 d 21 h palkovsky /kernel/trunk/ Changed ia32 & amd64 to use exc_register instead of trap_register.

Fixed dependency list building. I hope you all have 'makedepend' installed,
if you don't it's time to install it, as CC -M builds the dependency
list without directory names..and it just does not work.
 
534 6865 d 3 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6865 d 3 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6871 d 6 h jermar /kernel/trunk/ Clean up.  
516 6875 d 3 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
515 6875 d 4 h jermar /kernel/trunk/ SMP cleanup continued.
Add nice type for IO APIC ID register.
Replace some magic numbers with more descriptive macros.
 
514 6875 d 22 h jermar /kernel/trunk/arch/ia32/ More SMP cleanup.
Suddenly, keyboard started to work on SMP under Simics.
Still not functional on Bochs (will consult Bochs people).
Doxygen style comments for apic.c.
 
513 6876 d 5 h jermar /kernel/trunk/arch/ia32/ APIC code cleanup.  
512 6876 d 9 h jermar /kernel/trunk/ SMP work.
Add madt_irq_to_pin().
Make ksmp() use virtual irq_to_pin() function, which makes better sence for ACPI configurations.
 
501 6877 d 7 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
458 6891 d 10 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
437 6894 d 1 h decky /SPARTAN/trunk/arch/ia32/src/smp/ update comments  
268 6957 d 6 h palkovsky /SPARTAN/trunk/ Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.
 
125 7007 d 0 h jermar /SPARTAN/trunk/ Huge indentation fix.  
117 7038 d 6 h jermar /SPARTAN/trunk/ Do panic() on page_fault().
Good for long testing in SMP mode as silent "extinctions" of a CPU are no longer supported.

Tiny changes here and there.
 
115 7042 d 23 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.
 
112 7046 d 2 h jermar /SPARTAN/trunk/ Define two placeholder functions for atomic_inc and atomic_dec on IA-64.

Add Ondrej Palkovsky to doc/AUTHORS.

Tweaks in IA-32 low level code to bring SMP back to life. (SMP still broken)
 
110 7047 d 7 h jermar /SPARTAN/trunk/ SMP recovery patch #1. (SMP still broken)
Move ap_boot() to K_TEXT_START_2 section.
Change ap_boot() to cope with mapping of kernel address space.
Change some addresses in mps.c from kernel to physical.

MIPS.
Move msim dprinter device to 0xB0000000.
This address is from kseg1 (unmapped, uncached) segment.
 
81 7066 d 2 h jermar /SPARTAN/trunk/ Add SP_DELTA macro for each architecture.
On IA-32, this macro represents two doublewords that must be on the stack when switching to a new stack.
On MIPS, there is no need to fix sp when switching to a new stack.
On IA-64, this macro is used to allocate the 16-byte scratch area.

IA-64 work.
Changes in start.S. More changes to come.
Define memcopy().

Janitorial fixes.
Add missing #include <panic.h> to rwlock4/test.c.
Remove wrong use of inline keyword from both declaration and definition of l_apic_id().
 
34 7083 d 6 h jermar /SPARTAN/trunk/ More ACPI work.
Initial MADT table parsing.

SMP renaming and reorganization to reflect there are more ways to bring SMP up.