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 6324 d 22 h jermar /trunk/ (c) versus (C)  
1901 6438 d 3 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 6450 d 1 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6515 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6522 d 1 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1766 6530 d 8 h palkovsky /kernel/trunk/ Changed frame_alloc call, cleaned a lot of stuff, fixed some not-perfectly-correct error handling.  
1760 6533 d 2 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 6543 d 4 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1576 6551 d 22 h jermar /kernel/trunk/ Make use of thread_join_timeout() and thread_detach() in kernel.

Improved comments in slab.h.
 
1502 6554 d 6 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 6555 d 13 h decky /kernel/trunk/arch/ cleanup  
1059 6631 d 22 h jermar /kernel/trunk/ Clear user address space when creating new page tables.
Fix mapping of l_apic and io_apic on amd64.
 
822 6667 d 19 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 6668 d 6 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
756 6675 d 18 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 6676 d 18 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 6699 d 0 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
687 6699 d 2 h jermar /kernel/trunk/ Memory management work.
Pass address space identifier to functions in page_operations to support single global page hash table.
 
625 6723 d 2 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 6733 d 23 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
532 6733 d 23 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
512 6745 d 5 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 6746 d 3 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
492 6746 d 20 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 6760 d 6 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
452 6760 d 22 h decky /SPARTAN/trunk/ major build system revision (unfinished)
this patchset most definitively breaks a lot of things, be patient
 
422 6773 d 9 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
300 6824 d 6 h palkovsky /SPARTAN/trunk/arch/ia32/ Backported AMD64 linker and boot changes back to IA32.  
298 6824 d 6 h decky /SPARTAN/trunk/ remove lower 2 GB identity mapping (IA-32)  
294 6824 d 9 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 6825 d 20 h decky /SPARTAN/trunk/arch/ia32/ GRUB basic booting (IA-32)  
277 6825 d 21 h palkovsky /SPARTAN/trunk/arch/ Reverted APIC mapping back to identity mapping.
Added AMD64 SMP support. Works now!
 
273 6826 d 0 h palkovsky /SPARTAN/trunk/ Changes to make ia32 smp code not architecture dependent.
Changes to accomodate new gdtr loading scheme.
 
269 6826 d 2 h decky /SPARTAN/trunk/arch/ia32/ make IA-32 SMP work again (finally)  
205 6829 d 8 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 6829 d 23 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 6838 d 20 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 6871 d 7 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 6872 d 3 h jermar /SPARTAN/trunk/arch/ia32/ Implement ACPI MADT operations for interface used by kmp.  
128 6873 d 6 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.