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
4509 5453 d 7 h decky /trunk/uspace/ rename libadt -> adt  
4463 5458 d 2 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 5460 d 4 h decky /trunk/uspace/srv/vfs/ revert commit 4443 and implement a much finer solution as suggested by Jakub Jermar in commit 4444  
4444 5463 d 1 h jermar /trunk/uspace/srv/vfs/ Put a comment for consideration.  
3653 5644 d 5 h jermar /trunk/uspace/srv/vfs/ Hold the namespace_rwlock during readdir().  
3109 5820 d 5 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 5907 d 0 h jermar /trunk/uspace/ Introduce fs_handle_t, dev_handle_t and fs_index_t.  
2769 5907 d 23 h jermar /trunk/uspace/srv/vfs/ VFS index needs to be treated as uint64_t.  
2766 5909 d 1 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 5909 d 3 h jermar /trunk/uspace/ Support for rename().  
2753 5915 d 23 h jermar /trunk/uspace/ Move canonify() to libc so that it can be used also on the libc side.  
2752 5916 d 6 h jermar /trunk/uspace/srv/vfs/ Make VFS canonify path names on lookup.  
2751 5917 d 4 h jermar /trunk/uspace/ Add canonify() for file system path canonization.
Not yet used by VFS.
 
2730 5931 d 9 h jermar /trunk/uspace/srv/ Introduce the notion of VFS node link counts.  
2707 5951 d 6 h jermar /trunk/uspace/ Support for mkdir().  
2700 5959 d 7 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 5960 d 3 h jermar /trunk/uspace/srv/vfs/ Small fix for VFS_TRUNCATE. Move lookup and registration code to separate
modules.