Rev |
Age |
Author |
Path |
Log message |
Diff |
2222 |
6343 d 19 h |
decky |
/trunk/kernel/ |
map kernel pages explicitly as writable (this solves compatibility issues with Intel Core 2)
make VESA framebuffer initialization more robust |
|
2218 |
6344 d 16 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 |
6344 d 17 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. |
|
2107 |
6407 d 18 h |
jermar |
/trunk/ |
When clock() is called by an external interrupt dispatched by the IRQ dispatcher,
no spinlock can be held or the kernel will not be preemptive. This fixes Ticket #24.
Formating and indentation fixes. |
|
2101 |
6412 d 20 h |
decky |
/trunk/kernel/ |
fix signed/unsigned comparison and integer overflow |
|
2097 |
6412 d 21 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
fix signed/unsigned comparison |
|
2095 |
6412 d 22 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
fix signed/unsigned comparison |
|
2089 |
6414 d 2 h |
decky |
/trunk/ |
huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes |
|
2071 |
6424 d 19 h |
jermar |
/trunk/ |
(c) versus (C) |
|
1970 |
6505 d 3 h |
decky |
/trunk/kernel/arch/ia32/src/smp/ |
use new IRQ scheme in l_apic_timer_interrupt() |
|
1901 |
6538 d 0 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 |
6549 d 22 h |
jermar |
/trunk/ |
C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64. |
|
1787 |
6614 d 21 h |
decky |
/ |
move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot |
|
1780 |
6621 d 22 h |
jermar |
/kernel/trunk/ |
Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.). |
|
1766 |
6630 d 5 h |
palkovsky |
/kernel/trunk/ |
Changed frame_alloc call, cleaned a lot of stuff, fixed some not-perfectly-correct error handling. |
|
1760 |
6632 d 23 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... |
|
1708 |
6640 d 4 h |
jermar |
/kernel/trunk/ |
Fix some broken doxygen comments. |
|
1702 |
6643 d 1 h |
cejka |
/kernel/trunk/ |
Kernel doxygen comments updated. |
|
1684 |
6646 d 5 h |
jermar |
/kernel/trunk/ |
#ifdef more debugging printf()'s. |
|
1667 |
6647 d 23 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. |
|
1576 |
6651 d 20 h |
jermar |
/kernel/trunk/ |
Make use of thread_join_timeout() and thread_detach() in kernel.
Improved comments in slab.h. |
|
1540 |
6653 d 7 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). |
|
1502 |
6654 d 3 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 |
6655 d 10 h |
decky |
/kernel/trunk/arch/ |
cleanup |
|
1246 |
6689 d 23 h |
vana |
/kernel/trunk/arch/ia32/src/smp/ |
This patch enables 32 base of GDT on APs at boot. It should now be able to use GDTs allocated up of 16MB so I hope this patches AP crash bug ocurred in some memory configurations. |
|
1242 |
6690 d 18 h |
jermar |
/kernel/trunk/arch/ |
This time really fix wrong definition of K_DATA_START. |
|
1241 |
6690 d 18 h |
jermar |
/kernel/trunk/arch/ |
Fix K_DATA_START section definition. |
|
1221 |
6694 d 16 h |
decky |
/kernel/trunk/ |
printf-related and other code cleanup |
|
1196 |
6701 d 2 h |
cejka |
/kernel/trunk/ |
Printf ported back from uspace to kernel.
Printf calls changed to match new conventions. |
|
1059 |
6731 d 20 h |
jermar |
/kernel/trunk/ |
Clear user address space when creating new page tables.
Fix mapping of l_apic and io_apic on amd64. |
|
958 |
6734 d 19 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. |
|
822 |
6767 d 17 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 |
6768 d 3 h |
palkovsky |
/kernel/trunk/ |
Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print. |
|
812 |
6768 d 17 h |
jermar |
/kernel/trunk/ |
Documentation and dot.bochsrc upgrade. |
|
756 |
6775 d 15 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 |
6776 d 15 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. |
|
750 |
6777 d 20 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 |
6798 d 22 h |
decky |
/kernel/trunk/arch/ia32/ |
simplify and cleanup ia32 boot process, remove obsolete stuff |
|
687 |
6798 d 23 h |
jermar |
/kernel/trunk/ |
Memory management work.
Pass address space identifier to functions in page_operations to support single global page hash table. |
|
672 |
6804 d 17 h |
jermar |
/kernel/trunk/arch/ia32/ |
ia32 work.
Initialize LDR and DFR registers in Local APIC so that logical destination addresses work. |
|