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
4551 5672 d 4 h jermar /trunk/uspace/srv/vfs/ Handle each VFS request using a dedicated connection.  
4519 5679 d 11 h decky /trunk/uspace/srv/vfs/ remove yet another serialization which is not needed anymore  
4518 5680 d 3 h jermar /trunk/uspace/srv/vfs/ Make VFS use the new synchronization for fibrils. Now there should be no (or
only secondary) fibril serialization. Code reorganized not to hold the phone
lock during async_wait_for() in most cases. Tested on ia32. On amd64, VFS
crashes, but I think it is an unrelated problem.
 
4509 5681 d 12 h decky /trunk/uspace/ rename libadt -> adt  
4463 5686 d 6 h decky /trunk/uspace/srv/vfs/ VFS rewrite:
- add new VFS methods
- VFS_NODE for getting VFS node for a file descriptor
- VFS_OPEN_NODE for opening an i-node directly
- VFS_DEVICE for getting the underlying device of a file (if any)
- VFS_SYNC for syncing buffers
- L_OPEN flag is set to underlying filesystem in VFS_LOOKUP when opening a file to support initialization (if any)
- VFS_CLOSE is now propagated to underlying filesystem to support cleanup (if any)
 
4445 5688 d 8 h decky /trunk/uspace/srv/vfs/ revert commit 4443 and implement a much finer solution as suggested by Jakub Jermar in commit 4444  
4444 5691 d 6 h jermar /trunk/uspace/srv/vfs/ Put a comment for consideration.  
3653 5872 d 10 h jermar /trunk/uspace/srv/vfs/ Hold the namespace_rwlock during readdir().  
3109 6048 d 10 h jermar /trunk/uspace/srv/ Split the 'mount another filesystem here' and 'you are being mounted and the
device is this' mount semantics. Add VFS_MOUNTED VFS operation that corresponds
to the latter and reserve VFS_MOUNT only for the former. Because of this
change, the VFS server does not maintain the mr_node VFS node for the name space
root anymore and the VFS_LOOKUP operation is now not meant to be used on
unmounted file system, not even for looking up the root node of unmounted file
systems. In the light of these changes, TMPFS is now initialized from
tmpfs_mounted() function.
 
2770 6135 d 5 h jermar /trunk/uspace/ Introduce fs_handle_t, dev_handle_t and fs_index_t.  
2769 6136 d 3 h jermar /trunk/uspace/srv/vfs/ VFS index needs to be treated as uint64_t.  
2766 6137 d 5 h jermar /trunk/uspace/srv/vfs/ Grab the nodes_futex when manipulating node link counts in rename() and
_unlink().

Fix VFS futex definitions and declarations by replacing atomic_t by futex_t.
 
2763 6137 d 8 h jermar /trunk/uspace/ Support for rename().  
2753 6144 d 4 h jermar /trunk/uspace/ Move canonify() to libc so that it can be used also on the libc side.  
2752 6144 d 10 h jermar /trunk/uspace/srv/vfs/ Make VFS canonify path names on lookup.  
2751 6145 d 8 h jermar /trunk/uspace/ Add canonify() for file system path canonization.
Not yet used by VFS.
 
2730 6159 d 14 h jermar /trunk/uspace/srv/ Introduce the notion of VFS node link counts.  
2707 6179 d 10 h jermar /trunk/uspace/ Support for mkdir().  
2700 6187 d 12 h jermar /trunk/uspace/ Introduce the notion of lflag (i.e. lookup flags) to support the ability to
limit the scope of VFS node types that can be opened by open() and opendir(). In
the future, lflag will also specify actions for VFS_LOOKUP handlers that will be
carried out in situations such as the VFS node is not found (e.g. implementation
of mkdir() and open() with O_CREAT in oflag).
 
2698 6188 d 7 h jermar /trunk/uspace/srv/vfs/ Small fix for VFS_TRUNCATE. Move lookup and registration code to separate
modules.