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
2071 6339 d 23 h jermar /trunk/ (c) versus (C)  
1901 6453 d 4 h jermar /trunk/kernel/ Make SMP related parts of main.c more generic.
Move initialization of local APIC to architecture specific code.
Add arch_post_cpu_init() to support the above.
 
1888 6465 d 2 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6530 d 1 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6537 d 2 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1766 6545 d 9 h palkovsky /kernel/trunk/ Changed frame_alloc call, cleaned a lot of stuff, fixed some not-perfectly-correct error handling.  
1760 6548 d 3 h palkovsky /kernel/trunk/ Changed interface of frame_alloc/free to use address of frame instead of the pfn.
This makes it impossible to use >4GB of memory on 32-bit machines, but who cares...
 
1702 6558 d 5 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1576 6567 d 0 h jermar /kernel/trunk/ Make use of thread_join_timeout() and thread_detach() in kernel.

Improved comments in slab.h.
 
1502 6569 d 7 h jermar /kernel/trunk/ Replace nonblocking argument of waitq_sleep_timeout with flags that specify mode of operation.
Now a flag can be used to specify interruptible sleep.
Modify waitq_interrupt_sleep() to only interrupt threads that used this flag.
O
 
1477 6570 d 14 h decky /kernel/trunk/arch/ cleanup  
1059 6647 d 0 h jermar /kernel/trunk/ Clear user address space when creating new page tables.
Fix mapping of l_apic and io_apic on amd64.
 
822 6682 d 20 h palkovsky /kernel/trunk/ Changed malloc to include second parameter and documented
recommended usage.
Added zone merging, made ia32 & amd64 to merge found zones.
 
814 6683 d 7 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
756 6690 d 19 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
755 6691 d 19 h jermar /kernel/trunk/ Change page_mapping_find/insert interfaces to take as_t * as first argument
and not asid_t as second argument. This change was necessitated by the
removal of mapping array from as_area_t and the fact that an address
space doesn't have an ASID when it is created.
 
693 6714 d 2 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
687 6714 d 3 h jermar /kernel/trunk/ Memory management work.
Pass address space identifier to functions in page_operations to support single global page hash table.
 
625 6738 d 3 h palkovsky /kernel/trunk/ We are now almost -Wall clean.
- redefined atomic_t
- deleted many, many unused variables
- some minor code cleanups found using compiler warning.
 
534 6749 d 0 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6749 d 0 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
512 6760 d 6 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 6761 d 4 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
492 6761 d 21 h jermar /SPARTAN/trunk/ Rename map_page_to_frame() to page_mapping_insert() and find_mapping() to page_mapping_find().
New names should make it more apparent that these two belong together.
 
458 6775 d 7 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
452 6775 d 23 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
422 6788 d 10 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
300 6839 d 7 h palkovsky /SPARTAN/trunk/arch/ia32/ Backported AMD64 linker and boot changes back to IA32.  
298 6839 d 7 h decky /SPARTAN/trunk/ remove lower 2 GB identity mapping (IA-32)  
294 6839 d 10 h jermar /SPARTAN/trunk/arch/ Add timeout to kmp() so that we don't deadlock while waiting for AP's to come up.

Improve comment in byteorder.h.
 
279 6840 d 21 h decky /SPARTAN/trunk/arch/ia32/ GRUB basic booting (IA-32)  
277 6840 d 22 h palkovsky /SPARTAN/trunk/arch/ Reverted APIC mapping back to identity mapping.
Added AMD64 SMP support. Works now!
 
273 6841 d 1 h palkovsky /SPARTAN/trunk/ Changes to make ia32 smp code not architecture dependent.
Changes to accomodate new gdtr loading scheme.
 
269 6841 d 3 h decky /SPARTAN/trunk/arch/ia32/ make IA-32 SMP work again (finally)  
205 6844 d 9 h jermar /SPARTAN/trunk/ Get rid of memcopy().
All we now have is memcpy() and _memcpy().
memcpy() is defined to be builtin.
Where not applicable, architectures must implement memcpy() code or call slowish _memcopy().
 
195 6845 d 0 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
 
170 6853 d 21 h jermar /SPARTAN/trunk/ Add comment to scheduler.c explaining the reason behind saving CPU priority of preempted thread.

Remove two unnecessary cpu_priority_high() calls.
 
131 6886 d 8 h jermar /SPARTAN/trunk/arch/ia32/src/ Initialize kmp_completion_wq during configuration via ACPI MADT.
Move some generic SMP configuration code from mps.c to smp.c.
 
129 6887 d 4 h jermar /SPARTAN/trunk/arch/ia32/ Implement ACPI MADT operations for interface used by kmp.  
128 6888 d 7 h jermar /SPARTAN/trunk/arch/ia32/ Create IA-32 interface for bringing SMP up.
This interface hides differences between ACPI MADT and MPS configuration tables.
Provide MPS implementation thereof.