Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3862 5751 d 4 h rimsky /branches/sparc/kernel/ Changed the structure of header files, which have sun4u and sun4v versions. Implemented some sun4v TSB functions.  
3742 5791 d 14 h rimsky /branches/sparc/ The sparc branch synchronized with trunk at revision 3722 (trunk@3722).  
3665 5815 d 3 h rimsky /branches/sparc/ Merged latest trunk changes into the sparc brach.  
3492 5864 d 7 h rimsky /branches/sparc/ Changes in trunk merged into the sparc branch. SILO's ramdisk issue solved by the CONFIG_RD_EXTERNAL option.  
3343 5920 d 9 h decky /branches/sparc/ add sparc branch  
3222 5962 d 10 h svoboda /trunk/ Merge program-loader related stuff from dynload branch to trunk. (huge)  
3113 5994 d 3 h decky /trunk/kernel/generic/ rename SYS_IO to SYS_KLOG
do not notify uspace klog with every single character, introduce some latency
 
3097 5996 d 7 h decky /trunk/kernel/ resurrect klog  
3096 5996 d 7 h svoboda /trunk/kernel/generic/src/syscall/ Fix malloc(0) in sys_io()  
3064 5997 d 11 h decky /trunk/kernel/generic/src/syscall/ change SYS_IO semantics
add SYS_TASK_SPAWN
proper printf formatting
 
2619 6193 d 4 h jermar /trunk/ Modify ipc_answer_*() to make use of all six syscall arguments. The recommended
means of answering calls is via the ipc_answer_m() macros (where m denotes the
number of return arguments) that automatically decide between the fast register
version or the slow universal version of ipc_answer().
 
2618 6193 d 17 h jermar /trunk/ Modify asynchronous IPC to make use of all six syscall arguments. The preferred
means of asynchronous communication is now via the set of ipc_call_async_m()
macros, where m is the number of payload arguments passed to the kernel. These
macros will automatically decide between the fast and the universal slow version
of ipc_call_async.
 
2615 6194 d 14 h jermar /trunk/ Modify synchronous IPC to make use of all six syscall arguments. The preferred
means of synchronous communication is now via the set of ipc_call_sync_m_n()
macros, where m is the number of payload arguments passed to the kernel and n is
the number of return values. These macros will automatically decide between the
fast and the universal slow version of ipc_call_sync.
 
2605 6197 d 10 h jermar /trunk/ Start support for six syscall arguments.
This breaks all architectures.
 
2467 6353 d 8 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
2216 6420 d 6 h decky /trunk/ make thread ID 64 bit (task ID is 64 bit already)
cleanup thread syscalls
 
2187 6421 d 13 h decky /trunk/kernel/generic/ add syscall for getting current thread ID  
2119 6481 d 11 h decky /trunk/kernel/generic/src/syscall/ explicit typecast  
2089 6489 d 13 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2071 6500 d 5 h jermar /trunk/ (c) versus (C)  
1888 6625 d 9 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1862 6638 d 9 h jermar /trunk/kernel/ sparc64 work.
Kernel syscall support.
Modify the preemptive_handler for the use by syscalls.
 
1822 6669 d 15 h jermar /trunk/ sparc64 work.
1. Formatting fixes.
2. When writing to DMMU ASI's, simple membar() can be used in place of flush().
3. Substantial changes in the way the TLB is taken over.
4. Remove unneeded functions.

This is the first revision that also runs on a real world Ultra 5 with UltraSPARC IIi
processor.

Note that 3. needs further work as the current implementation depends on the fact
that the compiler will use registers for local variables in take_over_tlb_and_tt().
Rewrite of that function into assembly is to follow.
 
1787 6690 d 8 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1780 6697 d 9 h jermar /kernel/trunk/ Replace old __u?? types with respective C99 variants (e.g. uint32_t, int64_t, uintptr_t etc.).  
1708 6715 d 15 h jermar /kernel/trunk/ Fix some broken doxygen comments.  
1702 6718 d 12 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1597 6725 d 18 h palkovsky /kernel/trunk/ Added possibility to interrupt task at exit from interrupt routine.  
1579 6727 d 4 h jermar /kernel/trunk/generic/ Framework for task_kill().
Some pieces (e.g. implementation of ktask_cleanup() kernel thread and
task_destroy() function) are missing.
Changed locking order for task lock, threads_lock and thread lock from
threads_lock, thread lock, task lock to task lock, threads_lock, thread lock.
 
1474 6731 d 4 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1448 6733 d 9 h palkovsky /kernel/trunk/generic/src/syscall/ Better SYS_IO  
1386 6741 d 11 h palkovsky /kernel/trunk/ Fixed mips bug fith TLS register not being properly saved on syscall context
switch.
Reverted SYS_IO, so that it could be used on machines without fb.
 
1362 6746 d 2 h vana /kernel/trunk/generic/src/syscall/ kernel changes for uspace FB driver  
1329 6748 d 9 h palkovsky /kernel/trunk/generic/ Added support to IPC for simple page sharing.  
1318 6749 d 6 h vana /kernel/trunk/ Sysinfo userspace interface  
1306 6751 d 10 h jermar /kernel/trunk/generic/ Add SYS_AS_AREA_DESTROY syscall.
Add few error codes to errno.h
and change as.c accordingly.
 
1297 6755 d 11 h jermar /kernel/trunk/ Add SYS_CAP_GRANT and SYS_CAP_REVOKE syscalls.
Move SYS_PREEMPT_CONTROL to ddi.c.
Add some comments and fix some small issues.
 
1294 6756 d 14 h jermar /kernel/trunk/generic/src/syscall/ Remove unused variable.  
1293 6757 d 11 h palkovsky /kernel/trunk/ Implemented mips memcpy (copy from gcc builtin memcpy).  
1288 6757 d 14 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.