Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4585 5513 d 19 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 5524 d 16 h jermar /trunk/uspace/srv/fs/fat/ Use fibril synchronization in FAT.  
4465 5538 d 19 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 5567 d 16 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 5728 d 16 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_unlink().  
3628 5730 d 22 h jermar /trunk/uspace/ Add somewhat functional fat_link().  
3621 5731 d 3 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_destroy_node() and fat_destroy().  
3615 5732 d 2 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_idx_destroy().  
3609 5732 d 3 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_create_node().  
3546 5749 d 16 h jermar /trunk/uspace/srv/fs/fat/ Start implementing fat_truncate().  
3530 5756 d 23 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 5757 d 21 h jermar /trunk/uspace/ Move libfs_blockread(), block_get() and block_put() to libblock.  
3516 5758 d 2 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 5759 d 0 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to manipulatings file allocation tables to fat_fat.c.  
3505 5759 d 1 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to FAT dentries to fat_dentry.c.  
3497 5760 d 4 h jermar /trunk/uspace/srv/fs/fat/ Dummy fat_write().  
3307 5833 d 19 h jermar /trunk/uspace/srv/fs/fat/ Dummy implementation of fat_read().  
3111 5900 d 18 h jermar /trunk/uspace/srv/fs/fat/ Put a frequently used construct into a function.  
3110 5900 d 18 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 5920 d 18 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 5927 d 3 h jermar /trunk/uspace/srv/fs/fat/ More bits of fat_node_get().
Still needs to do some locking.
 
2890 5929 d 19 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 5932 d 18 h jermar /trunk/uspace/srv/fs/fat/ Add hash table for used fat_idx_t structures and implement fat_idx_map().  
2881 5933 d 22 h jermar /trunk/uspace/srv/fs/fat/ Code for de/allocation of VFS indices for FAT.  
2876 5934 d 2 h jermar /trunk/uspace/srv/fs/fat/ Add a dedicated source file for handling FAT indices.  
2864 5947 d 16 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 5953 d 12 h jermar /trunk/uspace/srv/fs/fat/ Add a locking scheme for FAT in-core cache and nodes.  
2831 5958 d 9 h jermar /trunk/uspace/ Commit progress on the FAT file system server implementation.  
2793 5965 d 19 h jermar /trunk/uspace/srv/fs/fat/ First untested bits of FAT lookup support.  
2789 5971 d 6 h jermar /trunk/uspace/srv/fs/fat/ Fix FAT boot sector definition and introduce the FAT in-core node type.  
2644 6073 d 21 h jermar /trunk/uspace/ Move incomplete fs interface from fat.h to libfs.  
2643 6073 d 22 h jermar /trunk/uspace/ VFS work.
Move FS registration code to libfs.
 
2638 6085 d 18 h jermar /trunk/ Sync IPC comments with IPC code.  
2629 6094 d 17 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT directory entry.
 
2628 6094 d 18 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT boot sector.
 
2627 6094 d 19 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Start VFS_LOOKUP support in FAT.