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
3020 5843 d 12 h jermar /trunk/kernel/generic/ Turn phone->lock into mutex.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c
2802 5896 d 22 h jermar /trunk/kernel/generic/ Fix initialization of answerbox->task in ipc_answerbox_init.
Contributed by Jiri Svoboda.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/proc/task.c
2677 5992 d 16 h jermar /trunk/ Rename IPC_M_AS_AREA_SEND to IPC_M_SHARE_OUT. Rename IPC_M_AS_AREA_RECV to
IPC_M_SHARE_IN. Provide user-friendly wrappers for these methods so that even
dummies can get it right. Some applications using simpler protocols still use
these methods directly.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/klog/klog.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/lib/libfs/libfs.c
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/gcons.c
/trunk/uspace/srv/fb/ega.c
/trunk/uspace/srv/fb/fb.c
/trunk/uspace/srv/ns/ns.c
/trunk/uspace/srv/rd/rd.c
/trunk/uspace/srv/vfs/vfs_register.c
2676 5992 d 23 h jermar /trunk/ Simplify the IPC_M_DATA_WRITE protocol. Do not pass the source address space
virtual address to the recipient. This feature was not used anyway. Now
IPC_M_DATA_WRITE and IPC_M_DATA_READ are feature-aligned.
 
/trunk/kernel/generic/include/ipc/ipc.h
/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/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_rdwr.c
/trunk/uspace/srv/vfs/vfs_register.c
2662 6000 d 11 h jermar /trunk/ Add support for IPC_M_DATA_READ calls.  
/trunk/kernel/generic/include/ipc/ipc.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
2660 6000 d 13 h jermar /trunk/ Rename IPC_M_DATA_SEND to IPC_M_DATA_WRITE. Now, when we also add
IPC_M_DATA_READ, it will not clash and cause confusion with userspace wrappers
such as ipc_data_receive(). Rename the forementioned wrappers to
ipc_data_write_send(), ipc_data_write_receive() and ipc_data_write_deliver().
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_register.c
2638 6019 d 12 h jermar /trunk/ Sync IPC comments with IPC code.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2637 6019 d 13 h cejka /trunk/ Extended IPC_M_CONNECT_TO_ME to use 3 user defined parameters.
Phone identifier is passed in ARG5.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/ipcrsc.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/app/tester/ipc/register.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/main.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_register.c
2635 6021 d 13 h cejka /trunk/ Function ipc_connect_me_to sends 3 user defined arguments now.
One argument added also to ipc_forward_fast.
Fixed devmap and improved its test.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/app/tester/ipc/connect.c
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/io/stream.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/devmap/devmap.h
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/ns/ns.c
/trunk/uspace/srv/vfs/vfs_read.c
2626 6028 d 23 h jermar /trunk/kernel/generic/ Support for 5 payload arguments for IPC irq notifications and the pseudo code.  
/trunk/kernel/generic/include/ipc/irq.h
/trunk/kernel/generic/src/console/klog.c
/trunk/kernel/generic/src/ipc/irq.c
2623 6029 d 18 h jermar /trunk/kernel/generic/ Introduce the IPC_FF_ROUTE_FROM_ME forwarding flag.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
2622 6029 d 19 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
2619 6033 d 11 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 6034 d 0 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
2615 6034 d 21 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 6035 d 18 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
2550 6086 d 16 h cejka /trunk/ Fixed naming convention in IPC.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/uspace/lib/libc/include/ipc/fb.h
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/devmap/devmap.h
/trunk/uspace/srv/vfs/vfs.h
2527 6098 d 22 h jermar /trunk/ VFS work.

Added mandatory VFS_LOOKUP

Handling of VFS_REGISTER request should be now more or less complete.
Added code that inserts the new fs_info structure into the list of registered
filesystems and creates a callback connection to the client FS.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
2523 6100 d 0 h jermar /trunk/ VFS work.

Now, each VFS connection fibril will accept requests in a loop. The idea is that
each connection will be potentially reused for multiple requests before it is
closed by the server.

More VFS_REGISTER bits. Make use of the IPC_M_DATA_SEND wrappers introduced in
the previous commit.

Add enum members for more VFS operations.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
2494 6165 d 12 h jermar /trunk/kernel/generic/ Implement a new mechanism for copying data between two address spaces based on
IPC. New system method IPC_M_DATA_SEND is introduced. The implementation is
generic and does not make use of any possible architecture optimizations such as
direct copy from one address space to another.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c

Show All