Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
2622 6024 d 20 h jermar /trunk/ Add mode argument to IPC forward.
This argument can be used to modify the way forward behaves.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/ns/ns.c
2620 6027 d 1 h jermar /trunk/ Be more deterministic when a user accidently uses fast version of IPC
call/answer instead of the full one and passes fewer arguments than required by
the recipient of the call/response.

and the recipient interprets arguments that
were actually not passed by the sender.
 
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/lib/libc/generic/ipc.c
2619 6028 d 12 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().
 
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/app/tester/ipc/answer.c
/trunk/uspace/app/tester/ipc/register.c
/trunk/uspace/app/tester/ipc/send_async.c
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/fb/ega.c
/trunk/uspace/srv/fb/fb.c
/trunk/uspace/srv/fb/main.c
/trunk/uspace/srv/fb/sysio.c
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/kbd/generic/kbd.c
/trunk/uspace/srv/ns/ns.c
/trunk/uspace/srv/pci/pci.c
/trunk/uspace/srv/rd/rd.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_register.c
2618 6029 d 1 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.
 
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/app/tester/ipc/send_async.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/srv/console/console.c
2617 6029 d 17 h jermar /trunk/kernel/generic/src/ipc/ STRUCT_TO_USPACE may fail in sys_ipc_call_sync_fast.  
/trunk/kernel/generic/src/ipc/sysipc.c
2615 6029 d 22 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.
 
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/app/klog/klog.c
/trunk/uspace/app/tester/ipc/send_sync.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/srv/fs/fat/fat.c
2614 6030 d 19 h jermar /trunk/kernel/generic/include/ipc/ Grow the IPC data structures from 3 to 5 payload arguments.
No IPC API changes so far.
 
/trunk/kernel/generic/include/ipc/ipc.h
2613 6031 d 14 h jermar /trunk/ Support for six syscall arguments for ia32.  
/trunk/uspace/lib/libc/arch/ia32/src/syscall.S
/trunk/uspace/lib/libc/arch/ia32/src/syscall.c
/trunk/kernel/arch/ia32/src/asm.S
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
/trunk/uspace/lib/libc/arch/ia32/src/fibril.S
2612 6031 d 14 h jermar /trunk/kernel/arch/ Cleanup.  
/trunk/kernel/arch/amd64/include/interrupt.h
/trunk/kernel/arch/ia32/include/interrupt.h
/trunk/kernel/arch/ia32/include/pm.h
/trunk/kernel/arch/ia32/src/pm.c
2611 6031 d 20 h jermar /trunk/ Support for six syscall arguments for arm32.  
/trunk/kernel/arch/arm32/src/exception.c
/trunk/uspace/lib/libc/arch/arm32/src/syscall.c
2610 6032 d 17 h jermar /trunk/ Support for six syscall arguments for sparc64.
There is a minor stability issue which needs to be fixed (kernel panics upon entering kconsole from the
console task).
 
/trunk/kernel/arch/sparc64/include/syscall.h
/trunk/kernel/arch/sparc64/src/trap/syscall.c
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/include/stack.h
/trunk/kernel/arch/sparc64/include/trap/syscall.h
/trunk/kernel/arch/sparc64/include/trap/trap_table.h
/trunk/kernel/arch/sparc64/src/trap/trap_table.S
/trunk/uspace/lib/libc/arch/sparc64/include/syscall.h
2608 6032 d 18 h jermar /trunk/ Support for six syscall arguments on ia64.

--iSupis line, and those below, will be ignored--

M kernel/arch/ia64/include/interrupt.h
M kernel/arch/ia64/src/ivt.S
M kernel/arch/ia64/src/interrupt.c
M uspace/lib/libc/arch/ia64/src/syscall.S
 
/trunk/kernel/arch/ia64/include/interrupt.h
/trunk/kernel/arch/ia64/src/interrupt.c
/trunk/kernel/arch/ia64/src/ivt.S
/trunk/uspace/lib/libc/arch/ia64/src/syscall.S
2607 6032 d 18 h jermar /trunk/ Support for six syscall arguments on mips32.  
/trunk/kernel/arch/mips32/include/stack.h
/trunk/kernel/arch/mips32/src/start.S
/trunk/uspace/lib/libc/arch/mips32/src/syscall.c
2606 6032 d 18 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
/trunk/kernel/arch/amd64/include/proc/thread.h
/trunk/kernel/arch/amd64/src/asm_utils.S
/trunk/kernel/arch/amd64/src/proc/scheduler.c
/trunk/kernel/arch/amd64/src/proc/thread.c
/trunk/kernel/arch/amd64/src/syscall.c
/trunk/uspace/lib/libc/arch/amd64/src/fibril.S
/trunk/uspace/lib/libc/arch/amd64/src/syscall.S
2605 6032 d 18 h jermar /trunk/ Start support for six syscall arguments.
This breaks all architectures.
 
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/lib/libc/include/libc.h
/trunk/uspace/lib/libc/include/syscall.h
2604 6033 d 17 h jermar /trunk/kernel/arch/amd64/src/ Fix register names in exception dump and cstyle.  
/trunk/kernel/arch/amd64/src/interrupt.c
2603 6036 d 20 h jermar /trunk/kernel/ Fix case.  
/trunk/kernel/Makefile
2602 6036 d 20 h jermar /trunk/ Work around the way symtab.data section is constructed.
This fixes building of ia64.
 
/trunk/kernel/Makefile
/trunk/kernel/arch/arm32/Makefile.inc
/trunk/kernel/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
2601 6037 d 17 h jermar /trunk/kernel/generic/src/ipc/ Fix and improve two IPC related comments.  
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c
2599 6038 d 11 h decky /trunk/kernel/ replace prescott cpu type with currently more known category  
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/kernel.config

Show All