An error occurred fetching the project authors.
  1. 11 Nov, 2003 1 commit
  2. 30 Apr, 2003 1 commit
  3. 22 Apr, 2003 1 commit
  4. 13 Mar, 2003 1 commit
  5. 23 Feb, 2003 1 commit
  6. 15 Dec, 2002 1 commit
  7. 13 Aug, 2002 2 commits
  8. 07 Aug, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.24 - Cleanups. · 16b39f5f
      Anton Altaparmakov authored
      - Treat BUG_ON() as ASSERT() not VERIFY(), i.e. do not use side effects
        inside BUG_ON(). (Adam J. Richter)
      - Split logical OR expressions inside BUG_ON() into individual BUG_ON()
        calls for improved debugging. (Adam J. Richter)
      - Add errors flag to the ntfs volume state, accessed via
        NVol{,Set,Clear}Errors(vol).
      - Do not allow read-write remounts of read-only volumes with errors.
      - Clarify comment for ntfs file operation sendfile which was added by
        Christoph Hellwig a while ago (just using generic_file_sendfile())
        to say that ntfs ->sendfile is only used for the case where the
        source data is on the ntfs partition and the destination is
        somewhere else, i.e. nothing we need to concern ourselves with.
      16b39f5f
  9. 05 Aug, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.23 - Major bug fixes (races, deadlocks, non-i386 architectures). · 8e27b910
      Anton Altaparmakov authored
      - Massive internal locking changes to mft record locking. Fixes lock
        recursion and replaces the mrec_lock read/write semaphore with a
        mutex. Also removes the now superfluous mft_count. This fixes several
        race conditions and deadlocks, especially in the future write code.
      - Fix ntfs over loopback for compressed files by adding an
        optimization barrier. (gcc was screwing up otherwise ?)
      - Miscellaneous cleanups all over the code and a fix or two in error
        handling code paths.
      Thanks go to Christoph Hellwig for pointing out the following two:
      - Remove now unused function fs/ntfs/malloc.h::vmalloc_nofs().
      - Fix ntfs_free() for ia64 and parisc by checking for VMALLOC_END, too.
      8e27b910
  10. 24 Jul, 2002 1 commit
  11. 15 Jul, 2002 2 commits
    • Anton Altaparmakov's avatar
      NTFS: 2.0.21 - Check for, and refuse to work with too large files/directories/volumes. · 38606c07
      Anton Altaparmakov authored
      - Limit volume size at mount time to 2TiB on architectures where
        unsigned long is 32-bits (fs/ntfs/super.c::parse_ntfs_boot_sector()).
        This is the most we can do without overflowing the 32-bit limit of
        the block device size imposed on us by sb_bread() and sb_getblk()
        for the time being.
      - Limit file/directory size at open() time to 16TiB on architectures
        where unsigned long is 32-bits (fs/ntfs/file.c::ntfs_file_open() and
        fs/ntfs/dir.c::ntfs_dir_open()). This is the most we can do without
        overflowing the page cache page index.
      38606c07
    • Anton Altaparmakov's avatar
      NTFS: 2.0.20 - Support non-resident directory index bitmaps, fix page leak in readdir. · a5ea1066
      Anton Altaparmakov authored
      - Move the directory index bitmap to use an attribute inode instead of
        having special fields for it inside the ntfs inode structure. This
        means that the index bitmaps now use the page cache for i/o, too,
        and also as a side effect we get support for non-resident index
        bitmaps for free.
      - Simplify/cleanup error handling in fs/ntfs/dir.c::ntfs_readdir() and
        fix a page leak that manifested itself in some cases.
      - Add fs/ntfs/inode.c::ntfs_put_inode(), which we need to release the
        index bitmap inode on the final iput().
      a5ea1066
  12. 13 Jul, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.19 - Fix race condition, improvements, and optimizations in i/o interface. · 1138bf4c
      Anton Altaparmakov authored
      - Apply block optimization added to fs/ntfs/aops.c::ntfs_read_block()
        to fs/ntfs/compress.c::ntfs_file_read_compressed_block() as well.
      - Drop the "file" from ntfs_file_read_compressed_block().
      - Rename fs/ntfs/aops.c::ntfs_enb_buffer_read_async() to
        ntfs_end_buffer_async_read() (more like the fs/buffer.c counterpart).
      - Update ntfs_end_buffer_async_read() with the improved logic from
        its updated counterpart fs/buffer.c::end_buffer_async_read(). Apply
        further logic improvements to better determine when we set PageError.
      - Update submission of buffers in fs/ntfs/aops.c::ntfs_read_block() to
        check for the buffers being uptodate first in line with the updated
        fs/buffer.c::block_read_full_page(). This plugs a small race
        condition.
      1138bf4c
  13. 11 Jul, 2002 2 commits
    • Anton Altaparmakov's avatar
      NTFS: 2.0.18 - Fix race condition in reading of compressed files. · 3968bf66
      Anton Altaparmakov authored
      - There was a narrow window between checking a buffer head for being
      uptodate and locking it in ntfs_file_read_compressed_block(). We now
      lock the buffer and then check whether it is uptodate or not.
      3968bf66
    • Anton Altaparmakov's avatar
      NTFS: 2.0.17 - Cleanups and optimizations - shrinking the ToDo list. · 759cec37
      Anton Altaparmakov authored
      - Modify fs/ntfs/inode.c::ntfs_read_locked_inode() to return an error
        code and update callers, i.e. ntfs_iget(), to pass that error code
        up instead of just using -EIO.
      - Modifications to super.c to ensure that both mount and remount
        cannot set any write related options when the driver is compiled
        read-only.
      - Optimize block resolution in fs/ntfs/aops.c::ntfs_read_block() to
        cache the current run list element. This should improve performance
        when reading very large and/or very fragmented data.
      759cec37
  14. 08 Jul, 2002 2 commits
    • Anton Altaparmakov's avatar
      NTFS: 2.0.16 - Convert access to $MFT/$BITMAP to attribute inode API. · 600a1382
      Anton Altaparmakov authored
      - Fix a stupid bug introduced in 2.0.15 where we were unmapping the
        wrong inode in fs/ntfs/inode.c::ntfs_attr_iget().
      - Convert $MFT/$BITMAP access to attribute inode API and remove all
        remnants of the ugly mftbmp address space and operations hack. This
        means we finally have only one readpage function as well as only one
        async io completion handler. Yey! The mft bitmap is now just an
        attribute inode and is accessed from vol->mftbmp_ino just as if it
        were a normal file. Fake inodes rule. (-:
      600a1382
    • Anton Altaparmakov's avatar
      NTFS: 2.0.15 - Fake inodes based attribute i/o via the pagecache, fixes, cleanups. · db05cffc
      Anton Altaparmakov authored
      - Fix silly bug in fs/ntfs/super.c::parse_options() which was causing
        remounts to fail when the partition had an entry in /etc/fstab and
        the entry specified the nls= option.
      - Apply same macro magic used in fs/ntfs/inode.h to fs/ntfs/volume.h to
        expand all the helper functions NVolFoo(), NVolSetFoo(), and
        NVolClearFoo().
      - Move copyright statement from driver initialisation message to
        module description (fs/super.c). This makes the initialisation
        message fit on one line and fits in better with rest of kernel.
      - Update fs/ntfs/attrib.c::map_run_list() to work on both real and
        attribute inodes, and both for files and directories.
      - Implement fake attribute inodes allowing all attribute i/o to go via
        the page cache and to use all the normal vfs/mm functionality:
        - Add ntfs_attr_iget() and its helper ntfs_read_locked_attr_inode()
          to fs/ntfs/inode.c.
        - Add needed cleanup code to ntfs_clear_big_inode().
      - Merge address space operations for files and directories (aops.c),
        now just have ntfs_aops:
        - Rename:
              end_buffer_read_attr_async() -> ntfs_end_buffer_read_async(),
              ntfs_attr_read_block()       -> ntfs_read_block(),
              ntfs_file_read_page()        -> ntfs_readpage().
        - Rewrite fs/ntfs/aops.c::ntfs_readpage() to work on both real and
          attribute inodes, and both for files and directories.
        - Remove obsolete fs/ntfs/aops.c::ntfs_mst_readpage().
      db05cffc
  15. 03 Jul, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.14 - Run list merging code cleanup, minor locking changes, typo fixes. · 1d209b00
      Anton Altaparmakov authored
      - Change fs/ntfs/super.c::ntfs_statfs() to not rely on BKL by moving
        the locking out of super.c::get_nr_free_mft_records() and taking and
        dropping the mftbmp_lock rw_semaphore in ntfs_statfs() itself.
      - Bring attribute run list merging code (fs/ntfs/attrib.c) in sync with
        current userspace ntfs library code. This means that if a merge
        fails the original run lists are always left unmodified instead of
        being silently corrupted.
      - Misc typo fixes.
      1d209b00
  16. 27 Jun, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.13 - Use iget5_locked() in preparation for fake inodes and small cleanups. · b9e6be22
      Anton Altaparmakov authored
      - Remove nr_mft_bits and the now superfluous union with nr_mft_records
        from ntfs_volume structure.
      - Remove nr_lcn_bits and the now superfluous union with nr_clusters
        from ntfs_volume structure.
      - Use iget5_locked() and friends instead of conventional iget(). Wrap
        the call in fs/ntfs/inode.c::ntfs_iget() and update callers of iget()
        to use ntfs_iget(). Leave only one iget() call at mount time so we
        don't need an ntfs_iget_mount().
      - Change fs/ntfs/inode.c::ntfs_new_extent_inode() to take mft_no as an
        additional argument.
      b9e6be22
  17. 26 Jun, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.12 - Initial cleanup of address space operations following 2.0.11 changes. · b30de928
      Anton Altaparmakov authored
      - Merge fs/ntfs/aops.c::end_buffer_read_mst_async() and
        fs/ntfs/aops.c::end_buffer_read_file_async() into one function
        fs/ntfs/aops.c::end_buffer_read_attr_async() using NInoMstProtected()
        to determine whether to apply mst fixups or not.
      - Above change allows merging fs/ntfs/aops.c::ntfs_file_read_block()
        and fs/ntfs/aops.c::ntfs_mst_readpage() into one function
        fs/ntfs/aops.c::ntfs_attr_read_block(). Also, create a tiny wrapper
        fs/ntfs/aops.c::ntfs_mst_readpage() to transform the parameters from
        the VFS readpage function prototype to the ntfs_attr_read_block()
        function prototype.
      b30de928
  18. 25 Jun, 2002 1 commit
    • 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
  19. 19 Jun, 2002 2 commits
  20. 26 May, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: The beginning of 2.0.8. - Major updates for handling of case sensitivity. · 6f3894e9
      Anton Altaparmakov authored
      - Remove unused source file fs/ntfs/attraops.c.
      - Remove show_inodes mount option(s), thus dropping support for
        displaying of short file names.
      - Remove deprecated mount option posix.
      - Restore show_sys_files mount option.
      - Add new mount option case_sensitive, to determine if the driver treats
        file names as case sensitive or not. If case sensitive, create file names
        in the POSIX namespace. Otherwise create file names in the WIN32
        namespace. By default, or when case_sensitive is set to FALSE, files
        remain accessible via their short file name, if it exists.
      - Add additional argument to ntfs_lookup_inode_by_name() in which we
        return information about the matching file name if the case is not
        matching or the match is a short file name. See comments above the
        function definition for details.
      6f3894e9
  21. 24 May, 2002 1 commit
  22. 11 May, 2002 1 commit
  23. 04 May, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: Release 2.0.6 - Major bugfix to make compatible with other kernel changes. · 70d3a085
      Anton Altaparmakov authored
      - Initialize the mftbmp address space properly now that there are more
      fields in the struct address_space. This was leading to hangs and
      oopses on umount since 2.5.12 because of changes to other parts of
      the kernel. We probably want a kernel generic init_address_space()
      function...
      - Drop BKL from ntfs_readdir() after consultation with Al Viro. The
      only caller of ->readdir() is vfs_readdir() which holds i_sem during
      the call, and i_sem is sufficient protection against changes in the
      directory inode (including ->i_size).
      - Use generic_file_llseek() for directories (as opposed to
      default_llseek()) as this downs i_sem instead of the BKL which is
      what we now need for exclusion against ->f_pos changes considering we
      no longer take the BKL in ntfs_readdir().
      70d3a085
  24. 02 May, 2002 1 commit
  25. 27 Apr, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS: 2.0.4 - Cleanups and updates for kernel 2.5.11. · dfeb4845
      Anton Altaparmakov authored
      - Add documentation on how to use the MD driver to be able to use NTFS
      stripe and volume sets in Linux and generally cleanup documentation
      a bit.
      
      Remove all uses of kdev_t in favour of struct block_device *:
      - Change compress.c::ntfs_file_read_compressed_block() to use sb_getblk()
      instead of getblk().
      - Change super.c::ntfs_fill_suoer() to use bdev_hardsect_size() instead
      of get_hardsect_size().
      - No need to get old blocksize in super.c::ntfs_fill_super() as
      fs/super.c::get_sb_bdev() already does this.
      - Set bh->b_bdev instead of bh->b_dev throughout aops.c.
      dfeb4845
  26. 26 Apr, 2002 1 commit
    • Anton Altaparmakov's avatar
      NTFS 2.0.3: Small bug fixes, cleanups, and performance improvements. · eeb382a1
      Anton Altaparmakov authored
      - Remove some dead code from mft.c.
      - Optimize readpage and read_block functions throughout aops.c so that
        only initialized blocks are read. Non-initialized ones have their
        buffer head mapped, zeroed, and set up to date, without scheduling
        any i/o. Thanks to Al Viro for advice on how to avoid the device i/o.
      Thanks go to Andrew Morton for spotting the below:
      - Fix buglet in allocate_compression_buffers() error code path.
      - Call flush_dcache_page() after modifying page cache page contents in
        ntfs_file_readpage().
      - Check for existence of page buffers throughout aops.c before calling
        create_empty_buffers(). This happens when an I/O error occurs and the
        read is retried. (It also happens once writing is implemented so that
        needed doing anyway but I had left it for later...)
      - Don't BUG_ON() uptodate and/or mapped buffers throughout aops.c in
        readpage and read_block functions. Reasoning same as above (i.e. I/O
        error retries and future write code paths.)
      eeb382a1
  27. 11 Apr, 2002 1 commit
  28. 04 Apr, 2002 1 commit
    • Dave Jones's avatar
      [PATCH] Improved allocator for NTFS · 4f096985
      Dave Jones authored
      Originally by Anton Altaparmakov.
      I think Anton is going to submit his rewritten NTFS soon making this null and void,
      but in the interim, it fixes a known problem with NTFS and large allocations.
      4f096985
  29. 25 Mar, 2002 2 commits
  30. 14 Mar, 2002 1 commit
  31. 09 Mar, 2002 1 commit
  32. 08 Mar, 2002 1 commit
  33. 07 Mar, 2002 1 commit
  34. 05 Feb, 2002 1 commit
    • Linus Torvalds's avatar
      v2.5.0.8 -> v2.5.0.9 · b1507c9a
      Linus Torvalds authored
      - Jeff Garzik: separate out handling of older tulip chips
      - Jens Axboe: more bio stuff
      - Anton Altaparmakov: NTFS 1.1.21 update
      b1507c9a