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
3537 5734 d 21 h jermar /trunk/uspace/ Separate the block_init() phase from reading of the boot block.  
3533 5736 d 15 h jermar /trunk/uspace/srv/fs/fat/ move comment  
3532 5736 d 15 h jermar /trunk/uspace/srv/fs/fat/ fat_read() needs to stop reading beyond the EOF.  
3530 5739 d 16 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.
 
3526 5740 d 9 h jermar /trunk/uspace/srv/fs/fat/ Directory size is always a multiple of BPS. Fix computation of number of
directory entries in the last block of the directory.
 
3521 5740 d 15 h jermar /trunk/uspace/ Move libfs_blockread(), block_get() and block_put() to libblock.  
3519 5740 d 16 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_node_sync().  
3518 5740 d 17 h jermar /trunk/uspace/srv/fs/fat/ Add comments to functions in fat_fat.c.  
3517 5740 d 18 h jermar /trunk/uspace/srv/fs/fat/ Add FAT allocation futex.  
3516 5740 d 19 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.
 
3513 5741 d 12 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_append_clusters().  
3512 5741 d 13 h jermar /trunk/uspace/srv/fs/fat/ Make sure that data are converted from / to the native endianity when writing them
out to / reading them in from the file system.
 
3510 5741 d 14 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_mark_cluster().  
3507 5741 d 16 h jermar /trunk/uspace/srv/fs/fat/ Implement fat_alloc_shadow_clusters().  
3506 5741 d 17 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to manipulatings file allocation tables to fat_fat.c.  
3505 5741 d 18 h jermar /trunk/uspace/srv/fs/fat/ Move functionality related to FAT dentries to fat_dentry.c.  
3504 5741 d 19 h jermar /trunk/uspace/srv/fs/fat/ Prepare to break fat_ops.c into multiple files.  
3503 5741 d 20 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_alloc_clusters().  
3501 5742 d 12 h jermar /trunk/uspace/srv/fs/fat/ Implementation of fat_fill_gap().  
3500 5742 d 14 h jermar /trunk/uspace/srv/fs/fat/ More complete prototype of fat_write().  
3499 5742 d 16 h jermar /trunk/uspace/srv/fs/fat/ Mark progress in fat_write().  
3497 5742 d 21 h jermar /trunk/uspace/srv/fs/fat/ Dummy fat_write().  
3352 5806 d 12 h jermar /trunk/uspace/srv/ Add reference to the mounted FS root.

This makes it possible to keep the FS root logically unlinked (i.e. lnkcnt == 0)
because it prevents VFS from attempting to destroy it during closedir().
 
3335 5810 d 10 h jermar /trunk/uspace/srv/fs/fat/ Support for readdir() on FAT.  
3325 5813 d 11 h jermar /trunk/uspace/srv/fs/fat/ Determine the size of a directory node by walking the FAT and counting clusters.
This eliminates the hardcoded limit on the number of directory entries.
 
3314 5814 d 12 h jermar /trunk/uspace/srv/fs/fat/ fat_read() should expect IPC_M_DATA_READ instead of IPC_M_DATA_WRITE.  
3312 5814 d 12 h jermar /trunk/uspace/srv/fs/fat/ When removing a FAT node from the ffn list, use the correct pointer instead of
an uninitialized one.
 
3308 5816 d 11 h jermar /trunk/uspace/srv/fs/fat/ More complete fat_read().  
3307 5816 d 12 h jermar /trunk/uspace/srv/fs/fat/ Dummy implementation of fat_read().  
3282 5818 d 9 h jermar /trunk/uspace/srv/fs/fat/ FAT dentry type used for subdirectories doesn't store the directory size in the 'size' field.
Introduce a simple workaround that will let us have 64 directory entries at maximum.
 
3272 5818 d 22 h jermar /trunk/uspace/srv/fs/fat/ Several fixes for the FAT file system:
- do not copy padding during file name canonization
- properly nul-terminate the FAT file name during canonization
- compare FAT file name and the component name case insensitively
- block_get() takes a block offset, not byte offset as parameter
 
3257 5819 d 21 h jermar /trunk/uspace/srv/fs/fat/ First attempt at delivering the FAT16 read-only support.
Needless to say it doesn't work yet, but now it's only
the lurking bugs that need to be fixed.
 
3253 5821 d 10 h jermar /trunk/uspace/srv/fs/fat/ Pass block size to block_get() in the last argument.  
3201 5856 d 18 h svoboda /trunk/uspace/ Do not disassemble needlessly.  
3119 5882 d 17 h jermar /trunk/uspace/srv/fs/fat/ Initialize in-core FAT root directory node during mount.  
3111 5883 d 11 h jermar /trunk/uspace/srv/fs/fat/ Put a frequently used construct into a function.  
3110 5883 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.
 
2953 5903 d 10 h jermar /trunk/uspace/srv/fs/fat/ Add synchronization to fat_match().  
2951 5903 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.
 
2945 5904 d 10 h jermar /trunk/uspace/srv/fs/fat/ Introduce a futex protecting the up_hash and ui_hash.