Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
4552 5619 d 23 h jermar /trunk/uspace/srv/fs/fat/ Use fibril synchronization in FAT.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_fat.c
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
4465 5634 d 2 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
 
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_fat.c
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
4357 5662 d 23 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.
 
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_dump.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
3638 5823 d 23 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_unlink().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_dentry.c
/trunk/uspace/srv/fs/fat/fat_dentry.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
3628 5826 d 5 h jermar /trunk/uspace/ Add somewhat functional fat_link().  
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_dentry.c
/trunk/uspace/srv/fs/fat/fat_dentry.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
3621 5826 d 10 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_destroy_node() and fat_destroy().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3615 5827 d 9 h jermar /trunk/uspace/srv/fs/fat/ Add implementation of fat_idx_destroy().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
3609 5827 d 10 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_create_node().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3546 5844 d 23 h jermar /trunk/uspace/srv/fs/fat/ Start implementing fat_truncate().  
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3530 5852 d 6 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.
 
/trunk/uspace/lib/libblock/libblock.c
/trunk/uspace/lib/libblock/libblock.h
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/Makefile
/trunk/uspace/srv/fs/tmpfs/tmpfs_dump.c
3521 5853 d 4 h jermar /trunk/uspace/ Move libfs_blockread(), block_get() and block_put() to libblock.  
/trunk/uspace/lib/libblock
/trunk/uspace/lib/libblock/Makefile
/trunk/uspace/lib/libblock/libblock.c
/trunk/uspace/lib/libblock/libblock.h
/trunk/uspace/Makefile
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_fat.c
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/Makefile
/trunk/uspace/srv/fs/tmpfs/tmpfs_dump.c
3516 5853 d 9 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.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_fat.c
/trunk/uspace/srv/fs/fat/fat_fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3506 5854 d 7 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to manipulatings file allocation tables to fat_fat.c.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_fat.c
/trunk/uspace/srv/fs/fat/fat_fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3505 5854 d 8 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to FAT dentries to fat_dentry.c.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_dentry.c
/trunk/uspace/srv/fs/fat/fat_dentry.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3497 5855 d 11 h jermar /trunk/uspace/srv/fs/fat/ Dummy fat_write().  
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3307 5929 d 2 h jermar /trunk/uspace/srv/fs/fat/ Dummy implementation of fat_read().  
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
3111 5996 d 1 h jermar /trunk/uspace/srv/fs/fat/ Put a frequently used construct into a function.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
3110 5996 d 1 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.
 
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2951 6016 d 1 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.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2893 6022 d 10 h jermar /trunk/uspace/srv/fs/fat/ More bits of fat_node_get().
Still needs to do some locking.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2890 6025 d 2 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.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2889 6028 d 1 h jermar /trunk/uspace/srv/fs/fat/ Add hash table for used fat_idx_t structures and implement fat_idx_map().  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
2881 6029 d 5 h jermar /trunk/uspace/srv/fs/fat/ Code for de/allocation of VFS indices for FAT.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/fat_ops.c
2876 6029 d 9 h jermar /trunk/uspace/srv/fs/fat/ Add a dedicated source file for handling FAT indices.  
/trunk/uspace/srv/fs/fat/fat_idx.c
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2864 6042 d 23 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.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2856 6048 d 19 h jermar /trunk/uspace/srv/fs/fat/ Add a locking scheme for FAT in-core cache and nodes.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2831 6053 d 16 h jermar /trunk/uspace/ Commit progress on the FAT file system server implementation.  
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2793 6061 d 2 h jermar /trunk/uspace/srv/fs/fat/ First untested bits of FAT lookup support.  
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2789 6066 d 13 h jermar /trunk/uspace/srv/fs/fat/ Fix FAT boot sector definition and introduce the FAT in-core node type.  
/trunk/uspace/srv/fs/fat/fat.h
2644 6169 d 4 h jermar /trunk/uspace/ Move incomplete fs interface from fat.h to libfs.  
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
2643 6169 d 5 h jermar /trunk/uspace/ VFS work.
Move FS registration code to libfs.
 
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2638 6181 d 1 h jermar /trunk/ Sync IPC comments with IPC code.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
2629 6190 d 0 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT directory entry.
 
/trunk/uspace/srv/fs/fat/fat.h
2628 6190 d 1 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Add type describing FAT boot sector.
 
/trunk/uspace/srv/fs/fat/fat.h
2627 6190 d 2 h jermar /trunk/uspace/srv/fs/fat/ FAT work.
Start VFS_LOOKUP support in FAT.
 
/trunk/uspace/srv/fs/fat/fat.h
/trunk/uspace/srv/fs/fat/fat_ops.c
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/fat/fat.c