Rev |
Age |
Author |
Path |
Log message |
Diff |
2625 |
6077 d 11 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Proto implementation of VFS_READ. |
|
2624 |
6077 d 11 h |
jermar |
/trunk/uspace/srv/vfs/ |
Add sanity checks to functions using file descriptors as indices into files. |
|
2622 |
6077 d 15 h |
jermar |
/trunk/ |
Add mode argument to IPC forward.
This argument can be used to modify the way forward behaves. |
|
2621 |
6079 d 14 h |
jermar |
/trunk/uspace/ |
Modify the async framework to make use of all six syscall arguments.
Supply user-friendly macros as in previous cases. |
|
2619 |
6081 d 8 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 |
6081 d 21 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. |
|
2615 |
6082 d 17 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. |
|
2600 |
6090 d 17 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 |
6092 d 21 h |
jermar |
/trunk/uspace/srv/devmap/ |
Cstyle fixes. |
|
2597 |
6094 d 11 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 |
6095 d 12 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Implement VFS node hash table management. |
|
2594 |
6096 d 9 h |
cejka |
/trunk/uspace/ |
New version of device mapper.
Added devmap test to tester. |
|
2593 |
6097 d 10 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. |
|
2590 |
6098 d 12 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 |
6098 d 14 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 |
6098 d 15 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 |
6098 d 15 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. |
|
2576 |
6106 d 10 h |
jermar |
/trunk/uspace/srv/vfs/ |
Specify the width of the printed text in an argument to printf(). |
|
2569 |
6128 d 17 h |
jermar |
/trunk/uspace/ |
Tiny refinement of if-else_if-else statement in vfs_register.c. |
|
2568 |
6129 d 23 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 |
6129 d 23 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(). |
|
2566 |
6129 d 23 h |
jermar |
/trunk/uspace/srv/console/ |
Fix cstyle in console.c. |
|
2560 |
6133 d 12 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Start VFS_OPEN. |
|
2555 |
6134 d 7 h |
cejka |
/trunk/uspace/srv/devmap/ |
Added message forwarding to device mapper. |
|
2554 |
6134 d 7 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Add the missing bits of VFS-side VFS_MOUNT. |
|
2553 |
6134 d 9 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Prevent race conditions when checking rootfs by taking a newly introduced
rootfs_futex. |
|
2552 |
6134 d 10 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
This is a checkpoint commit.
It introduces initial, still incomplete, code for VFS-side VFS_MOUNT request. |
|
2550 |
6134 d 13 h |
cejka |
/trunk/ |
Fixed naming convention in IPC. |
|
2549 |
6134 d 15 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Modify vfs_lookup_internal() to be able to work with an alternate root. This
will be useful for VFS_MOUNT support.
Improve observability and debuggability by explicitly zeroing out PLB after the
path has been looked up. |
|
2548 |
6134 d 16 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Add fs_name_to_handle() function to abstract away the details of walking the
list of registered file systems, and in order to avoid code duplication. |
|
2547 |
6134 d 16 h |
cejka |
/trunk/ |
Added basic support for device mapper. |
|
2546 |
6134 d 19 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Upon FS registration via VFS_REGISTER, the client is assigned a unique file
system handle. When generating the VFS_LOOKUP request in VFS, we also need to
pass the device handle. Add function to transform file system handle to phone.
Implement basic multi-call VFS request serialization on VFS side. |
|
2544 |
6135 d 11 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Proto implementation of VFS-side vfs_lookup_internal(). |
|
2543 |
6135 d 14 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Modify the protocol so that VFS and FAT (or any other FS) have to share the Path
Lookup Buffer in read-only mode. |
|
2542 |
6135 d 17 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Start support for the Patch Lookup Buffer.
Also add rootfs pointer. |
|
2541 |
6135 d 17 h |
jermar |
/trunk/uspace/ |
Header cleanup.
Move off_t, size_t and ssize_t into sys/types.h.
Get rid off the non-standard and dummy types.h. |
|
2540 |
6136 d 8 h |
jermar |
/trunk/uspace/srv/vfs/ |
VFS work.
Introduce basic types representing a file system node and an open file. |
|
2539 |
6136 d 14 h |
jermar |
/trunk/uspace/srv/console/ |
Cstyle and other minor fixes in the console code. |
|
2536 |
6140 d 10 h |
jermar |
/trunk/uspace/srv/ |
VFS work.
Describe the bottleneck of one VFS-FS connection in fat.c. Add a comment
outlining possible approaches.
Also in fat.c, the async_create_manager() _must_ be called as well as
async_set_client_connection(). The latter alows VFS to duplicate the connection.
Modify fat_connection() to ACK all IPC_M_CONNECT_ME_TO calls. |
|
2535 |
6142 d 13 h |
jermar |
/trunk/uspace/srv/vfs/ |
Move VFS_REGISTER functionality into a separate file. |
|