Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
2622 6026 d 2 h jermar /trunk/ Add mode argument to IPC forward.
This argument can be used to modify the way forward behaves.
 
2621 6028 d 1 h jermar /trunk/uspace/ Modify the async framework to make use of all six syscall arguments.
Supply user-friendly macros as in previous cases.
 
2620 6028 d 8 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.
 
2619 6029 d 19 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 6030 d 7 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.
 
2616 6031 d 0 h jermar /trunk/uspace/lib/libc/ usleep() should return int. Non-void functions really should return a value, so
fix sleep() to always return 0.
 
2615 6031 d 4 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.
 
2613 6032 d 21 h jermar /trunk/ Support for six syscall arguments for ia32.  
2611 6033 d 2 h jermar /trunk/ Support for six syscall arguments for arm32.  
2610 6034 d 0 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).
 
2609 6034 d 0 h jermar /trunk/uspace/lib/libc/arch/ppc32/src/ Support for six syscall arguments for ppc32.  
2608 6034 d 0 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
 
2607 6034 d 0 h jermar /trunk/ Support for six syscall arguments on mips32.  
2606 6034 d 0 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2605 6034 d 0 h jermar /trunk/ Start support for six syscall arguments.
This breaks all architectures.
 
2602 6038 d 3 h jermar /trunk/ Work around the way symtab.data section is constructed.
This fixes building of ia64.
 
2600 6039 d 4 h jermar /trunk/uspace/srv/vfs/ VFS work.
vfs_grab_phone() must disable fibril preemption in order to avoid deadlock with
other fibrils of the same thread that might be trying to vfs_grab_phone() too.
 
2598 6041 d 8 h jermar /trunk/uspace/srv/devmap/ Cstyle fixes.  
2597 6042 d 22 h jermar /trunk/uspace/srv/vfs/ VFS work.
Increment reference counters for the VFS nodes representing the mount point and
the root of the mounted filesystem, respectively, during VFS_MOUNT. Take the
unlink_futex when transforming the triplet into a VFS node.
 
2596 6043 d 23 h jermar /trunk/uspace/srv/vfs/ VFS work.
Implement VFS node hash table management.
 
2595 6043 d 23 h jermar /trunk/uspace/lib/libc/include/libadt/ Formatting of uspace hash_table.h.  
2594 6044 d 20 h cejka /trunk/uspace/ New version of device mapper.
Added devmap test to tester.
 
2593 6045 d 21 h jermar /trunk/uspace/srv/vfs/ A lot of more VFS prototyping.
VFS_OPEN gets reasonably complete, fix a limitation that prevented file
structures from being shared by multiple file descriptors, add functions for
file descriptor management, introduce unlink_futex and two new VFS operations
VFS_UNLINK and VFS_RENAME.
 
2592 6046 d 0 h jermar /trunk/uspace/lib/libc/include/ assert.h should include stdio.h  
2591 6046 d 0 h jermar /trunk/uspace/lib/libc/arch/ppc64/src/ Fix file included by ppc64's tls.c.  
2590 6046 d 23 h jermar /trunk/uspace/srv/vfs/ VFS work.
Start implementing VFS side of VFS_OPEN.
Add vfs_node.c to contain VFS node related internal functions.
 
2589 6047 d 1 h jermar /trunk/uspace/srv/vfs/ VFS work.

Allocate the open filess array dynamically and protect access to it via a
per-connection futex. Defer its allocation until the client makes a first
VFS_OPEN request.

Actually call vfs_mount() and vfs_open(), respectively, when the VFS_MOUNT and
VFS_OPEN requests, respectively, are received from the client.
 
2588 6047 d 2 h jermar /trunk/uspace/ Add ipc_answer_fast_[01] macros so that ipc_answer_fast() users don't have to
write zero arguments all the time.
 
2587 6047 d 2 h jermar /trunk/uspace/srv/vfs/ VFS work.
Introduce the notion of VFS_PAIR which corresponds to a file system instance,
and VFS_TRIPLET, which corresponds to a file system node. Separate vfs_triplet_t
and vfs_node_t as the former one is the stateless counterpart of the latter.
 
2586 6050 d 18 h jermar /trunk/uspace/lib/libc/ Unify implementations of TLS variant I and variant II __alloc_tls() and
__free_tls_arch().
 
2583 6052 d 19 h jermar /trunk/uspace/lib/libc/arch/mips32/ Change BFD_NAME from elf32-little to elf32-tradlittlemips.  
2582 6052 d 19 h jermar /trunk/ Change BFD_TARGET from elf32-little to elf32-littlearm.  
2581 6052 d 20 h jermar /trunk/uspace/lib/libc/ For architectures that make use of TLS variant II (i.e. amd64, ia32 and
sparc64), fix the way TLS and TCB is allocated. Now, TLS is allocated using
memalign() with the alignment specified in _tls_alignment. Size of TLS data
itself is rounded up to be a multiple of _tls_alignment.
 
2580 6052 d 20 h jermar /trunk/uspace/lib/libc/arch/ In all architectures' uspace linker scripts, define the _tls_alignment symbol.  
2577 6054 d 20 h jermar /trunk/ Build system fixes.
Continue cleaning uspace even if cleanup of one component fails.
Remove main Makefile.config after boot, kernel and uspace are cleaned because
cleaning of these components might depend on variables set in the main
Makefile.config.
 
2576 6054 d 21 h jermar /trunk/uspace/srv/vfs/ Specify the width of the printed text in an argument to printf().  
2570 6077 d 2 h jermar /trunk/uspace/lib/libc/generic/io/ Fix a bug in interpretation of precision when printing strings. Fix cstyle.  
2569 6077 d 4 h jermar /trunk/uspace/ Tiny refinement of if-else_if-else statement in vfs_register.c.  
2568 6078 d 10 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.
 
2567 6078 d 10 h jermar /trunk/uspace/srv/vfs/ Don't explicitly answer the IPC_M_DATA_SEND call in VFS_REGISTER.
It is done automatically in ipc_data_deliver().