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
2007 6427 d 1 h jermar /trunk/kernel/ Introduce page colors. So far, only sparc64 uses correct page color bits. Other architectures have a dummy define
specifying zero bits for a page color.

There is a new check of page color in as_area_share(). Because of lack of support for this in the userspace, the
check has been #ifef'ed out.
 
2003 6428 d 8 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
1957 6462 d 11 h decky /trunk/kernel/ ia32: mouse support, mouse regrab is still broken  
1956 6462 d 12 h decky /trunk/kernel/ ia32: adopt new IRQ interface, mouse not tested yet  
1939 6471 d 7 h decky /trunk/ ia32: fix compilation, keyboard not checked yet  
1901 6493 d 8 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.
 
1891 6501 d 1 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6501 d 12 h jermar /trunk/ - Create a dedicated slab cache for as_t objects and switch from malloc/free to slab_alloc/slab_free for
them.

- Slightly fix and improve both the kernel and userspace atomic_add() on sparc64.

- More TSB work on the sparc64 front.
 
1889 6502 d 3 h jermar /trunk/kernel/ Fix bug in mm/as.c:
- as_area_destroy() should not work with AS but as

sparc64 work:
- start implementing TSB support
 
1888 6505 d 6 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1882 6506 d 10 h jermar /trunk/kernel/ Support for sparc64 FPU context.  
1854 6521 d 13 h jermar /trunk/kernel/ Define architecture-specific thread sub-constructors and sub-destructors on all architectures.
Define the THREAD_FLAG_USPACE which means that the thread runs in user space.
The forementioned changes allow for allocating of user window buffer on sparc64
threads that execute in userspace.

A lot of formatting and indentation fixes.
 
1817 6556 d 23 h decky /trunk/kernel/arch/ xen32 work: create identity mapping for the main memory zone,
make several dummy modifications to get to the banner
 
1811 6557 d 11 h decky /trunk/kernel/arch/ unify bootstrapping  
1787 6570 d 5 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6577 d 6 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1731 6593 d 23 h jermar /kernel/trunk/ Updates in Doxygen-style comments.
Make architecture specific modules appear conditionally in the documentation.
Add time management module.
Improve names of other modules and sort module order
to be more like in the design documentation.
 
1703 6597 d 16 h jermar /kernel/trunk/arch/ Put sparc64 interrupt stuff under the Interrupt group in Doxygen-generated documentation.  
1702 6598 d 9 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1697 6599 d 4 h palkovsky /kernel/trunk/arch/ Fixed incorrect atomic_postinc/postdec...again...  
1691 6600 d 7 h palkovsky /kernel/trunk/arch/ia32/include/ Fix either bad compiler or bad code. The net result is better
optimization in GCC
 
1595 6605 d 16 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
1576 6607 d 4 h jermar /kernel/trunk/ Make use of thread_join_timeout() and thread_detach() in kernel.

Improved comments in slab.h.
 
1511 6609 d 9 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
1477 6610 d 18 h decky /kernel/trunk/arch/ cleanup  
1473 6611 d 4 h decky /kernel/trunk/ kernel support for text-only framebuffer  
1468 6611 d 7 h jermar /kernel/trunk/ Function for destroying address space for which there is no other reference in the kernel.  
1434 6614 d 5 h palkovsky /kernel/trunk/ Added 'realtime' clock interface.
Added some asm macros as memory barriers.
Added drift computing for mips platform.
 
1423 6615 d 10 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1411 6618 d 7 h jermar /kernel/trunk/ Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault.
 
1310 6630 d 11 h jermar /kernel/trunk/ Change coding style in vesa.c and do some minor changes.  
1292 6637 d 8 h vana /kernel/trunk/arch/ VESA FB cut unwanted  
1289 6637 d 10 h vana /kernel/trunk/arch/ Amd64 framebuffer  
1288 6637 d 12 h jermar /kernel/trunk/ Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided.
 
1287 6637 d 13 h vana /kernel/trunk/ ia32 VESA FB support  
1256 6643 d 9 h jermar /kernel/trunk/arch/ Improve SYS_IOSPACE_ENABLE support.
The general protection fault handler now contains
code to service early I/O Permission bitmap faults.
 
1251 6644 d 9 h jermar /kernel/trunk/ Fix BITS2BYTES macro to return 0 when passed 0 as argument.
Fix ia32 TSS segment granularity to be 0.
Fix ia32 and amd64 initial TSS limit to be 103.
Little textual changes here and there.
 
1212 6650 d 6 h palkovsky /kernel/trunk/ Added uspace call to enable/disable interrupts.  
1203 6655 d 7 h jermar /kernel/trunk/arch/ Full implementation of amd64 and ia32 SYS_ENABLE_IOSPACE syscall.
Needs testing.
 
1201 6655 d 8 h jermar /kernel/trunk/arch/ Fix amd64 and ia32 management of I/O bitmap in before_task_runs_arch()
by treating the iomap array as a bitmap. Make use of the bitmap type
and functions added in previous commit.