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 6204 d 4 h decky /trunk/kernel/ fix ICC compilation  
2218 6258 d 2 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 6258 d 3 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 6326 d 6 h decky /trunk/kernel/ fix signed/unsigned comparison and integer overflow  
2071 6338 d 5 h jermar /trunk/ (c) versus (C)  
1970 6418 d 13 h decky /trunk/kernel/arch/ia32/src/smp/ use new IRQ scheme in l_apic_timer_interrupt()  
1888 6463 d 8 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6528 d 7 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6535 d 8 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1708 6553 d 14 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1702 6556 d 11 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1684 6559 d 15 h jermar /kernel/trunk/ #ifdef more debugging printf()'s.  
1667 6561 d 9 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 6566 d 17 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 6614 d 12 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
958 6648 d 5 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 6682 d 3 h jermar /kernel/trunk/ Documentation and dot.bochsrc upgrade.  
750 6691 d 5 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 6712 d 8 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
672 6718 d 3 h jermar /kernel/trunk/arch/ia32/ ia32 work.
Initialize LDR and DFR registers in Local APIC so that logical destination addresses work.
 
576 6742 d 0 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 6747 d 6 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6747 d 6 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
523 6753 d 9 h jermar /kernel/trunk/ Clean up.  
516 6757 d 6 h jermar /kernel/trunk/ Add VMware Workstation 5.5 to SMP compatibility list.  
515 6757 d 7 h jermar /kernel/trunk/ SMP cleanup continued.
Add nice type for IO APIC ID register.
Replace some magic numbers with more descriptive macros.
 
514 6758 d 1 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 6758 d 8 h jermar /kernel/trunk/arch/ia32/ APIC code cleanup.  
512 6758 d 12 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 6759 d 10 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
458 6773 d 13 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
437 6776 d 4 h decky /SPARTAN/trunk/arch/ia32/src/smp/ update comments  
268 6839 d 9 h palkovsky /SPARTAN/trunk/ Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles.
 
125 6889 d 3 h jermar /SPARTAN/trunk/ Huge indentation fix.  
117 6920 d 9 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 6925 d 2 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 6928 d 5 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 6929 d 10 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 6948 d 5 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 6965 d 9 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.