1. 01 4月, 2009 8 次提交
    • B
      exofs: Documentation · 214c8adb
      Boaz Harrosh 提交于
      Added some documentation in exofs.txt, as well as a BUGS file.
      
      For further reading, operation instructions, example scripts
      and up to date infomation and code please see:
      http://open-osd.orgSigned-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      214c8adb
    • B
      exofs: export_operations · 8cf74b39
      Boaz Harrosh 提交于
      implement export_operations and set in superblock.
      It is now posible to export exofs via nfs
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      8cf74b39
    • B
      exofs: super_operations and file_system_type · ba9e5e98
      Boaz Harrosh 提交于
      This patch ties all operation vectors into a file system superblock
      and registers the exofs file_system_type at module's load time.
      
      * The file system control block (AKA on-disk superblock) resides in
        an object with a special ID (defined in common.h).
        Information included in the file system control block is used to
        fill the in-memory superblock structure at mount time. This object
        is created before the file system is used by mkexofs.c It contains
        information such as:
      	- The file system's magic number
      	- The next inode number to be allocated
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      ba9e5e98
    • B
      exofs: dir_inode and directory operations · e6af00f1
      Boaz Harrosh 提交于
      implementation of directory and inode operations.
      
      * A directory is treated as a file, and essentially contains a list
        of <file name, inode #> pairs for files that are found in that
        directory. The object IDs correspond to the files' inode numbers
        and are allocated using a 64bit incrementing global counter.
      * Each file's control block (AKA on-disk inode) is stored in its
        object's attributes. This applies to both regular files and other
        types (directories, device files, symlinks, etc.).
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      e6af00f1
    • B
      exofs: address_space_operations · beaec07b
      Boaz Harrosh 提交于
      OK Now we start to read and write from osd-objects. We try to
      collect at most contiguous pages as possible in a single write/read.
      The first page index is the object's offset.
      
      TODO:
         In 64-bit a single bio can carry at most 128 pages.
         Add support of chaining multiple bios
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      beaec07b
    • B
      exofs: symlink_inode and fast_symlink_inode operations · 982980d7
      Boaz Harrosh 提交于
      Generic implementation of symlink ops.
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      982980d7
    • B
      exofs: file and file_inode operations · e8062719
      Boaz Harrosh 提交于
      implementation of the file_operations and inode_operations for
      regular data files.
      
      Most file_operations are generic vfs implementations except:
      - exofs_truncate will truncate the OSD object as well
      - Generic file_fsync is not good for none_bd devices so open code it
      - The default for .flush in Linux is todo nothing so call exofs_fsync
        on the file.
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      e8062719
    • B
      exofs: Kbuild, Headers and osd utils · b14f8ab2
      Boaz Harrosh 提交于
      This patch includes osd infrastructure that will be used later by
      the file system.
      
      Also the declarations of constants, on disk structures,
      and prototypes.
      
      And the Kbuild+Kconfig files needed to build the exofs module.
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      b14f8ab2
  2. 31 3月, 2009 32 次提交