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
2625 6199 d 6 h jermar /trunk/uspace/srv/vfs/ VFS work.
Proto implementation of VFS_READ.
 
2624 6199 d 6 h jermar /trunk/uspace/srv/vfs/ Add sanity checks to functions using file descriptors as indices into files.  
2622 6199 d 10 h jermar /trunk/ Add mode argument to IPC forward.
This argument can be used to modify the way forward behaves.
 
2621 6201 d 8 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 6203 d 3 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 6203 d 15 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 6204 d 12 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 6212 d 11 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 6214 d 15 h jermar /trunk/uspace/srv/devmap/ Cstyle fixes.  
2597 6216 d 6 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 6217 d 7 h jermar /trunk/uspace/srv/vfs/ VFS work.
Implement VFS node hash table management.
 
2594 6218 d 3 h cejka /trunk/uspace/ New version of device mapper.
Added devmap test to tester.
 
2593 6219 d 5 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 6220 d 7 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 6220 d 9 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 6220 d 9 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 6220 d 10 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 6228 d 5 h jermar /trunk/uspace/srv/vfs/ Specify the width of the printed text in an argument to printf().  
2569 6250 d 11 h jermar /trunk/uspace/ Tiny refinement of if-else_if-else statement in vfs_register.c.  
2568 6251 d 17 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.
 

Show All