Ignore:
Timestamp:
Feb 4, 2016, 4:55:22 PM (8 years ago)
Author:
alain
Message:

Fix several bugs related to new files or directories creation:

  • The first_free_cluster computation in _fat_init has been corrected.
  • The generation of SFN 8-3 names has been modified to pass the fsck_msdos check.
  • The number of clusters occupied by a directory is now stored in the <is_dir> field of inode.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/giet_fat32/fat32.h

    r772 r773  
    144144
    145145/********************************************************************************
    146   This struct defines a cluster descriptor, that is a leaf cell in a 64-tree.
    147   Each cluster descriptor contains a pointer on a 4K bytes buffer, and the
     146  This struct defines a buffer descriptor, that is a leaf cell in a 64-tree.
     147  Each buffer descriptor contains a pointer on a 4K bytes buffer, and the
    148148  lba on block device.
    149149********************************************************************************/
     
    225225*******************************************************************************/
    226226
     227extern int _fat_ioc_access( unsigned int use_irq,               // descheduling
     228                            unsigned int to_mem,                // read / write
     229                            unsigned int lba,                   // first sector
     230                            unsigned int buf_vaddr,             // memory buffer vaddr
     231                            unsigned int count );               // number of sectors
     232
    227233extern int _fat_init();         
    228234
     
    271277                               unsigned int buffer_size );      // buffer size
    272278
     279extern int _get_fat_cache_buffer( unsigned int    cluster_id,   // cluster index in FAT
     280                                  fat_cache_desc_t**  desc );   // buffer descriptor
     281
    273282extern int _get_file_cache_buffer( fat_inode_t*    inode,       // inode pointer
    274                                    unsigned int    cluster_id,  // cluster index
    275                                    unsigned int     writable,   // writable mmap
     283                                   unsigned int    cluster_id,  // cluster index in file
     284                                   unsigned int    writable,    // behaviour if miss
    276285                                   fat_cache_desc_t** desc );   // buffer descriptor
    277286#endif
Note: See TracChangeset for help on using the changeset viewer.