• Anton Altaparmakov's avatar
    NTFS: 2.0.11 - Initial preparations for fake inode based attribute i/o. · 6bb39cd9
    Anton Altaparmakov authored
    - Move definition of ntfs_inode_state_bits to fs/ntfs/inode.h and
      do some macro magic (adapted from include/linux/buffer_head.h) to
      expand all the helper functions NInoFoo(), NInoSetFoo(), and
      NInoClearFoo().
    - Add new flag to ntfs_inode_state_bits: NI_Sparse.
    - Add new fields to ntfs_inode structure to allow use of fake inodes
      for attribute i/o: type, name, name_len. Also add new state bits:
      NI_Attr, which, if set, indicates the inode is a fake inode, and
      NI_MstProtected, which, if set, indicates the attribute uses multi
      sector transfer protection, i.e. fixups need to be applied after
      reads and before/after writes.
    - Rename fs/ntfs/inode.c::ntfs_{new,clear,destroy}_inode() to
      ntfs_{new,clear,destroy}_extent_inode() and update callers.
    - Use ntfs_clear_extent_inode() in fs/ntfs/inode.c::__ntfs_clear_inode()
      instead of ntfs_destroy_extent_inode().
    - Cleanup memory deallocations in {__,}ntfs_clear_{,big_}inode().
    - Make all operations on ntfs inode state bits use the NIno* functions.
    - Set up the new ntfs inode fields and state bits in
      fs/ntfs/inode.c::ntfs_read_inode() and add appropriate cleanup of
      allocated memory to __ntfs_clear_inode().
    - Cleanup ntfs_inode structure a bit for better ordering of elements
      w.r.t. their size to allow better packing of the structure in memory.
    6bb39cd9
To find the state of this project's repository at the time of any of these versions, check out the tags.
ChangeLog 29.7 KB