Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
4407 5485 d 16 h jermar /trunk/ Add IPC_M_CONNECTION_CLONE and IPC_M_CONNECT_ME.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/ipcrsc.h
/trunk/kernel/generic/src/ipc/ipcrsc.c
/trunk/kernel/generic/src/ipc/kbox.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/lib/libc/generic/async.c
4381 5493 d 17 h jermar /trunk/uspace/lib/libc/generic/ msg->wdata.inlist needs to be allocated before the reply_received()
callback can be called.
 
/trunk/uspace/lib/libc/generic/async.c
4324 5510 d 22 h decky /trunk/uspace/lib/libc/ create a new fibril for each notification received, which allows to do nested async calls from the notification handler
(this fixes ticket #19 and solves various problems with klog)
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/include/async.h
3760 5625 d 19 h decky /trunk/uspace/lib/libc/ support for sending asynchronous messages (without preemption) in interrupt notification handler
any potential synchronization problems should be solved properly in the user code, not by an unconditional termination
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/include/async.h
3050 5836 d 2 h decky /trunk/uspace/lib/libc/generic/ empty line remove  
/trunk/uspace/lib/libc/generic/async.c
2635 6019 d 18 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
2621 6029 d 22 h jermar /trunk/uspace/ Modify the async framework to make use of all six syscall arguments.
Supply user-friendly macros as in previous cases.
 
/trunk/uspace/app/tetris/screen.c
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/include/async.h
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/gcons.c
/trunk/uspace/srv/kbd/arch/ia32/src/mouse.c
/trunk/uspace/srv/kbd/generic/kbd.c
2619 6031 d 17 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
2569 6079 d 1 h jermar /trunk/uspace/ Tiny refinement of if-else_if-else statement in vfs_register.c.  
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs_mount.c
2568 6080 d 7 h jermar /trunk/uspace/ Rename fibril_schedule_next_adv() to fibril_switch(). Rename
fibril_schedule_next() to fibril_yield(). Some fibril structures could be
uninitialized, set them to zero in fibril_setup(). For some fibrils, the stack
member can be NULL (e.g. every thread's first/main fibril); don't do free on
these stacks when cleaning up after a dead fibril.
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/thread.c
/trunk/uspace/lib/libc/include/async.h
/trunk/uspace/lib/libc/include/fibril.h
/trunk/uspace/srv/fs/fat/fat.c
2534 6092 d 21 h jermar /trunk/uspace/ In async_new_connection(), be more robust in the case that the function
is called by the server directly after its client accepts the
IPC_M_CONNECT_TO_ME call.

In fat.c main(), kill the "main" fibril and switch to the connection
fibril.
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/srv/fs/fat/fat.c
2492 6168 d 20 h jermar /trunk/uspace/lib/libc/generic/ Add comment clarifying how a fibril waiting for a message gets rescheduled.  
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/fibril.c
2490 6170 d 21 h jermar /trunk/uspace/lib/libc/generic/ Improve comments in async.c  
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
2488 6172 d 16 h jermar /trunk/uspace/lib/libc/generic/ Improve comments in async.c  
/trunk/uspace/lib/libc/generic/async.c
2486 6172 d 20 h jermar /trunk/uspace/lib/libc/ Remove duplicit and empty time.h from libc.
Move timeval functions from async.c to time.c.
 
/trunk/uspace/lib/libc/include/time.h
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/include/sys/time.h
2485 6176 d 17 h jermar /trunk/uspace/lib/libc/generic/ More fibril/psthread cleanup.  
/trunk/uspace/lib/libc/generic/async.c
2484 6176 d 18 h jermar /trunk/uspace/lib/libc/generic/ More psthread/fibril cleanup.  
/trunk/uspace/lib/libc/generic/async.c
2483 6176 d 22 h jermar /trunk/uspace/lib/libc/ Remove fibril_join().
We cannot guarantee our assumptions that easily.
This broken feature is removed instead of fixing because there are now users of it.
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/include/fibril.h
2482 6177 d 13 h jermar /trunk/ Goodbye pseudo threads, welcome fibrils.
The renaming might still be incomplete.
 
/trunk/uspace/lib/libc/arch/amd64/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/src/fibril.S
/trunk/uspace/lib/libc/arch/arm32/include/fibril.h
/trunk/uspace/lib/libc/arch/arm32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia32/include/fibril.h
/trunk/uspace/lib/libc/arch/ia32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia64/include/fibril.h
/trunk/uspace/lib/libc/arch/ia64/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32/include/fibril.h
/trunk/uspace/lib/libc/arch/mips32/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32eb/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/src/fibril.S
/trunk/uspace/lib/libc/arch/ppc64/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc64/src/fibril.S
/trunk/uspace/lib/libc/arch/sparc64/include/fibril.h
/trunk/uspace/lib/libc/arch/sparc64/src/fibril.S
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/include/psthread.h
/trunk/uspace/lib/libc/arch/amd64/src/psthread.S
/trunk/uspace/lib/libc/arch/arm32/include/psthread.h
/trunk/uspace/lib/libc/arch/arm32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia32/include/psthread.h
/trunk/uspace/lib/libc/arch/ia32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia64/include/psthread.h
/trunk/uspace/lib/libc/arch/ia64/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32/include/psthread.h
/trunk/uspace/lib/libc/arch/mips32/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32eb/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/src/psthread.S
/trunk/uspace/lib/libc/arch/ppc64/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc64/src/psthread.S
/trunk/uspace/lib/libc/arch/sparc64/include/psthread.h
/trunk/uspace/lib/libc/arch/sparc64/src/psthread.S
/trunk/uspace/lib/libc/generic/psthread.c
/trunk/uspace/lib/libc/include/psthread.h
/trunk/kernel/arch/ia32/src/context.s
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/Makefile.inc
/trunk/uspace/lib/libc/arch/amd64/include/thread.h
/trunk/uspace/lib/libc/arch/arm32/Makefile.inc
/trunk/uspace/lib/libc/arch/arm32/include/thread.h
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
/trunk/uspace/lib/libc/arch/ia32/include/thread.h
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/include/thread.h
/trunk/uspace/lib/libc/arch/mips32/Makefile.inc
/trunk/uspace/lib/libc/arch/mips32/include/thread.h
/trunk/uspace/lib/libc/arch/mips32eb/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/include/thread.h
/trunk/uspace/lib/libc/arch/ppc64/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc64/include/thread.h
/trunk/uspace/lib/libc/arch/sparc64/Makefile.inc
/trunk/uspace/lib/libc/arch/sparc64/include/thread.h
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/generic/thread.c
/trunk/uspace/lib/libc/include/async.h
2479 6182 d 1 h jermar /trunk/ New, better-structured, directory layout for uspace.  
/trunk/uspace/app
/trunk/uspace/app/init
/trunk/uspace/app/klog
/trunk/uspace/app/tester
/trunk/uspace/app/tetris
/trunk/uspace/lib
/trunk/uspace/lib/libc
/trunk/uspace/lib/softfloat
/trunk/uspace/lib/softint
/trunk/uspace/srv
/trunk/uspace/srv/console
/trunk/uspace/srv/fb
/trunk/uspace/srv/fs
/trunk/uspace/srv/kbd
/trunk/uspace/srv/ns
/trunk/uspace/srv/pci
/trunk/uspace/srv/rd
/trunk/uspace/console
/trunk/uspace/fb
/trunk/uspace/fs
/trunk/uspace/init
/trunk/uspace/kbd
/trunk/uspace/klog
/trunk/uspace/libc
/trunk/uspace/ns
/trunk/uspace/pci
/trunk/uspace/rd
/trunk/uspace/softfloat
/trunk/uspace/softint
/trunk/uspace/tester
/trunk/uspace/tetris
/trunk/boot/arch/amd64/Makefile.inc
/trunk/boot/arch/arm32/loader/Makefile
/trunk/boot/arch/ia32/Makefile.inc
/trunk/boot/arch/ia32xen/Makefile.inc
/trunk/boot/arch/mips32/loader/Makefile
/trunk/boot/arch/ppc32/loader/Makefile
/trunk/boot/arch/ppc64/loader/Makefile
/trunk/boot/arch/sparc64/loader/Makefile
/trunk/contrib/conf/ski.conf
/trunk/uspace/Makefile
/trunk/uspace/app/init/Makefile
/trunk/uspace/app/klog/Makefile
/trunk/uspace/app/tester/Makefile
/trunk/uspace/app/tetris/Makefile
/trunk/uspace/app/tetris/input.c
/trunk/uspace/app/tetris/screen.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/_link.ld.in
/trunk/uspace/lib/libc/arch/arm32/Makefile.inc
/trunk/uspace/lib/libc/arch/arm32/_link.ld.in
/trunk/uspace/lib/libc/arch/ia32/_link.ld.in
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/_link.ld.in
/trunk/uspace/lib/libc/arch/mips32/Makefile.inc
/trunk/uspace/lib/libc/arch/mips32/_link.ld.in
/trunk/uspace/lib/libc/arch/ppc32/_link.ld.in
/trunk/uspace/lib/libc/arch/ppc64/_link.ld.in
/trunk/uspace/lib/libc/arch/sparc64/_link.ld.in
/trunk/uspace/srv/console/Makefile
/trunk/uspace/srv/fb/Makefile
/trunk/uspace/srv/fs/Makefile
/trunk/uspace/srv/kbd/Makefile
/trunk/uspace/srv/ns/Makefile
/trunk/uspace/srv/pci/Makefile
/trunk/uspace/srv/pci/libpci/Makefile
/trunk/uspace/srv/rd/Makefile

Show All