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
2620 6052 d 6 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 6053 d 18 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 6054 d 6 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.
 
2617 6054 d 23 h jermar /trunk/kernel/generic/src/ipc/ STRUCT_TO_USPACE may fail in sys_ipc_call_sync_fast.  
2616 6054 d 23 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 6055 d 3 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.
 
2614 6056 d 1 h jermar /trunk/kernel/generic/include/ipc/ Grow the IPC data structures from 3 to 5 payload arguments.
No IPC API changes so far.
 
2613 6056 d 20 h jermar /trunk/ Support for six syscall arguments for ia32.  
2612 6056 d 20 h jermar /trunk/kernel/arch/ Cleanup.  
2611 6057 d 1 h jermar /trunk/ Support for six syscall arguments for arm32.  
2610 6057 d 23 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 6057 d 23 h jermar /trunk/uspace/lib/libc/arch/ppc32/src/ Support for six syscall arguments for ppc32.  
2608 6057 d 23 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 6057 d 23 h jermar /trunk/ Support for six syscall arguments on mips32.  
2606 6057 d 23 h jermar /trunk/ Support for 6 syscalls arguments on amd64.  
2605 6057 d 23 h jermar /trunk/ Start support for six syscall arguments.
This breaks all architectures.
 
2604 6058 d 23 h jermar /trunk/kernel/arch/amd64/src/ Fix register names in exception dump and cstyle.  
2603 6062 d 2 h jermar /trunk/kernel/ Fix case.  
2602 6062 d 2 h jermar /trunk/ Work around the way symtab.data section is constructed.
This fixes building of ia64.
 
2601 6062 d 22 h jermar /trunk/kernel/generic/src/ipc/ Fix and improve two IPC related comments.  
2600 6063 d 2 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.
 
2599 6063 d 16 h decky /trunk/kernel/ replace prescott cpu type with currently more known category  
2598 6065 d 6 h jermar /trunk/uspace/srv/devmap/ Cstyle fixes.  
2597 6066 d 21 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 6067 d 22 h jermar /trunk/uspace/srv/vfs/ VFS work.
Implement VFS node hash table management.
 
2595 6067 d 22 h jermar /trunk/uspace/lib/libc/include/libadt/ Formatting of uspace hash_table.h.  
2594 6068 d 19 h cejka /trunk/uspace/ New version of device mapper.
Added devmap test to tester.
 
2593 6069 d 20 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 6069 d 23 h jermar /trunk/uspace/lib/libc/include/ assert.h should include stdio.h  
2591 6069 d 23 h jermar /trunk/uspace/lib/libc/arch/ppc64/src/ Fix file included by ppc64's tls.c.  
2590 6070 d 22 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 6071 d 0 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 6071 d 0 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 6071 d 1 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 6074 d 17 h jermar /trunk/uspace/lib/libc/ Unify implementations of TLS variant I and variant II __alloc_tls() and
__free_tls_arch().
 
2585 6074 d 17 h cejka /trunk/ Better fix of labels in configuration script.  
2584 6074 d 17 h cejka /trunk/kernel/ Fixed labels for framebuffer options used by build script.  
2583 6076 d 18 h jermar /trunk/uspace/lib/libc/arch/mips32/ Change BFD_NAME from elf32-little to elf32-tradlittlemips.  
2582 6076 d 18 h jermar /trunk/ Change BFD_TARGET from elf32-little to elf32-littlearm.  
2581 6076 d 18 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.