Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4585 5515 d 12 h jermar /trunk/uspace/ Introduce VFS_IN_FSTAT and VFS_OUT_STAT.
Provide libc fstat() and devfs_stat().
This functionality replaces VFS_IN_NODE
and VFS_IN/OUT_DEVICE. FAT and TMPFS
still do not implement this and VFS_IN_STAT
and stat() need implementation as well.
 
4552 5526 d 9 h jermar /trunk/uspace/srv/fs/fat/ Use fibril synchronization in FAT.  
4465 5540 d 12 h decky /trunk/uspace/srv/fs/ implement VFS_OPEN_NODE and VFS_DEVICE (no device handle is returned)
implement no-op VFS_SYNC and VFS_CLOSE
 
4357 5569 d 9 h jermar /trunk/uspace/ Introduce the concept of FS nodes. A FS node is a typed abstraction of
file-system-specific node type. It replaces the void * in libfs interfaces
and is suitable for holding various information such as mount point data.
 
3638 5730 d 8 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_unlink().  
3628 5732 d 15 h jermar /trunk/uspace/ Add somewhat functional fat_link().  
3621 5732 d 20 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_destroy_node() and fat_destroy().  
3615 5733 d 19 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_idx_destroy().  
3609 5733 d 20 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_create_node().  
3546 5751 d 8 h jermar /trunk/uspace/srv/fs/fat/ Start implementing fat_truncate().  
3530 5758 d 15 h jermar /trunk/uspace/ Setup communication parameters with the block device in block_init(). The file
system now doesn't know anything about the communication with the block device.
Rename blockread() to block_read(). The boot block is now read only once. The file
system can get access it using the block_bb_get() function.
 
3521 5759 d 14 h jermar /trunk/uspace/ Move libfs_blockread(), block_get() and block_put() to libblock.  
3516 5759 d 18 h jermar /trunk/uspace/srv/fs/fat/ Pass the buffer holding the boot sector to the internal functions so that it
doesn't have to be block_get()'ed in each function. The idea is that the boot
block should be read by the top-level functions in fat_ops.c and passed down the
call chain.
 
3506 5760 d 17 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to manipulatings file allocation tables to fat_fat.c.  
3505 5760 d 18 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to FAT dentries to fat_dentry.c.  
3497 5761 d 20 h jermar /trunk/uspace/srv/fs/fat/ Dummy fat_write().  
3307 5835 d 12 h jermar /trunk/uspace/srv/fs/fat/ Dummy implementation of fat_read().  
3111 5902 d 10 h jermar /trunk/uspace/srv/fs/fat/ Put a frequently used construct into a function.  
3110 5902 d 11 h jermar /trunk/uspace/srv/fs/fat/ Initialize global FAT IDX structures when the FAT server starts and initialize
per-file system FAT IDX structures when a file system gets mounted.
 
2951 5922 d 11 h jermar /trunk/uspace/srv/fs/fat/ Add locks to FAT index structures, FAT in-core node structures. Add futex to
protect the list of free cached FAT in-core nodes. Make fat_node_get() and
fat_node_put() and some other functions aware of these new locks.
 
2893 5928 d 20 h jermar /trunk/uspace/srv/fs/fat/ More bits of fat_node_get().
Still needs to do some locking.
 
2890 5931 d 12 h jermar /trunk/uspace/srv/fs/fat/ Need a way to locate the FAT index structure by VFS index. Also fix code that
locates the FAT index structure by position in the file system namespace.
 
2889 5934 d 11 h jermar /trunk/uspace/srv/fs/fat/ Add hash table for used fat_idx_t structures and implement fat_idx_map().  
2881 5935 d 15 h jermar /trunk/uspace/srv/fs/fat/ Code for de/allocation of VFS indices for FAT.  
2876 5935 d 18 h jermar /trunk/uspace/srv/fs/fat/ Add a dedicated source file for handling FAT indices.  
2864 5949 d 8 h jermar /trunk/uspace/srv/fs/fat/ Introduce the foundation for unique and stable FAT VFS node indices.

The first two reserved FAT entries are physically present in each FAT, so fix
the code to be aware of this.
 
2856 5955 d 4 h jermar /trunk/uspace/srv/fs/fat/ Add a locking scheme for FAT in-core cache and nodes.  
2831 5960 d 2 h jermar /trunk/uspace/ Commit progress on the FAT file system server implementation.  
2793 5967 d 11 h jermar /trunk/uspace/srv/fs/fat/ First untested bits of FAT lookup support.  
2789 5972 d 22 h jermar /trunk/uspace/srv/fs/fat/ Fix FAT boot sector definition and introduce the FAT in-core node type.  
2644 6075 d 14 h jermar /trunk/uspace/ Move incomplete fs interface from fat.h to libfs.  
2643 6075 d 15 h jermar /trunk/uspace/ VFS work.
Move FS registration code to libfs.
 
2638 6087 d 11 h jermar /trunk/ Sync IPC comments with IPC code.  
2629 6096 d 9 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT directory entry.
 
2628 6096 d 10 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT boot sector.
 
2627 6096 d 11 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Start VFS_LOOKUP support in FAT.