Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
2596 6043 d 1 h jermar /trunk/uspace/srv/vfs/ VFS work.
Implement VFS node hash table management.
 
2593 6044 d 22 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.
 
2589 6046 d 3 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 6046 d 3 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.
 
2569 6076 d 5 h jermar /trunk/uspace/ Tiny refinement of if-else_if-else statement in vfs_register.c.  
2560 6081 d 0 h jermar /trunk/uspace/srv/vfs/ VFS work.
Start VFS_OPEN.
 
2552 6081 d 22 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.
 
2543 6083 d 3 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 6083 d 6 h jermar /trunk/uspace/srv/vfs/ VFS work.
Start support for the Patch Lookup Buffer.
Also add rootfs pointer.
 
2535 6090 d 1 h jermar /trunk/uspace/srv/vfs/ Move VFS_REGISTER functionality into a separate file.  
2532 6090 d 23 h jermar /trunk/ VFS work.

The VFS_REGISTER is now fully implemented by both vfs and fat servers. Thanks to
the debugging dprintf()'s, I was able to fix little errors here and there to
make them actually work.

Modified vfs and fat service makefiles so that the two are not built as drivers
and can therefore print to standard output. Added many debugging dprintf()'s.

Change the amd64 boot configuration to load vfs and fat.
 
2531 6091 d 22 h jermar /trunk/uspace/ VFS work.
Implement VFS_REGISTER part of the protocol in the FAT file system.

IPC work.
Rename ipc_data_send_accept() to ipc_data_receive() and ipc_data_send_answer()
to ipc_data_deliver(). Introduce ipc_data_send().
 
2527 6094 d 7 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.
 
2526 6095 d 3 h jermar /trunk/uspace/ VFS work.
Delve deeper into VFS_REGISTER.
 
2523 6095 d 9 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.
 
2521 6096 d 22 h jermar /trunk/uspace/srv/vfs/ VFS work.
Start implementing the VFS_REGISTER request.
 
2520 6096 d 23 h jermar /trunk/uspace/ VFS work.
Turn the dummy skeleton into a dummy skeleton that can handle connections.
There are already traces of the VFS protocol.
 
2518 6097 d 22 h jermar /trunk/uspace/ One occurrence of the left-over term 'pseudo thread' replaced with 'fibril' in
the rd task.

Start the vfs task. Now it is dummy, but integrated into the sources.