Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
4585 5443 d 18 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 5454 d 15 h jermar /trunk/uspace/srv/fs/fat/ Use fibril synchronization in FAT.  
4465 5468 d 18 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 5497 d 15 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 5658 d 15 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_unlink().  
3628 5660 d 21 h jermar /trunk/uspace/ Add somewhat functional fat_link().  
3621 5661 d 2 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_destroy_node() and fat_destroy().  
3615 5662 d 1 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_idx_destroy().  
3609 5662 d 2 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_create_node().  
3546 5679 d 15 h jermar /trunk/uspace/srv/fs/fat/ Start implementing fat_truncate().  
3530 5686 d 22 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 5687 d 20 h jermar /trunk/uspace/ Move libfs_blockread(), block_get() and block_put() to libblock.  
3516 5688 d 1 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 5688 d 23 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to manipulatings file allocation tables to fat_fat.c.  
3505 5689 d 0 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to FAT dentries to fat_dentry.c.  
3497 5690 d 3 h jermar /trunk/uspace/srv/fs/fat/ Dummy fat_write().  
3307 5763 d 18 h jermar /trunk/uspace/srv/fs/fat/ Dummy implementation of fat_read().  
3111 5830 d 17 h jermar /trunk/uspace/srv/fs/fat/ Put a frequently used construct into a function.  
3110 5830 d 17 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 5850 d 17 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 5857 d 2 h jermar /trunk/uspace/srv/fs/fat/ More bits of fat_node_get().
Still needs to do some locking.
 
2890 5859 d 18 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 5862 d 17 h jermar /trunk/uspace/srv/fs/fat/ Add hash table for used fat_idx_t structures and implement fat_idx_map().  
2881 5863 d 21 h jermar /trunk/uspace/srv/fs/fat/ Code for de/allocation of VFS indices for FAT.  
2876 5864 d 1 h jermar /trunk/uspace/srv/fs/fat/ Add a dedicated source file for handling FAT indices.  
2864 5877 d 15 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 5883 d 11 h jermar /trunk/uspace/srv/fs/fat/ Add a locking scheme for FAT in-core cache and nodes.  
2831 5888 d 8 h jermar /trunk/uspace/ Commit progress on the FAT file system server implementation.  
2793 5895 d 18 h jermar /trunk/uspace/srv/fs/fat/ First untested bits of FAT lookup support.  
2789 5901 d 5 h jermar /trunk/uspace/srv/fs/fat/ Fix FAT boot sector definition and introduce the FAT in-core node type.  
2644 6003 d 20 h jermar /trunk/uspace/ Move incomplete fs interface from fat.h to libfs.  
2643 6003 d 21 h jermar /trunk/uspace/ VFS work.
Move FS registration code to libfs.
 
2638 6015 d 17 h jermar /trunk/ Sync IPC comments with IPC code.  
2629 6024 d 16 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT directory entry.
 
2628 6024 d 17 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT boot sector.
 
2627 6024 d 18 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Start VFS_LOOKUP support in FAT.