[2.6-GIT] NTFS: Release 2.1.25.

From: Anton Altaparmakov (aia21_at_cam.ac.uk)
Date: 10/31/05

  • Next message: Anton Altaparmakov: "[PATCH 1/17] NTFS: Change ntfs_map_runlist_nolock() to also take an optional attribute search context."
    Date:	Mon, 31 Oct 2005 14:22:47 +0000 (GMT)
    To: Linus Torvalds <torvalds@osdl.org>
    
    

    Hi Linus, please pull from

    git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs-2.6.git

    This is the next NTFS update containing more extended write support (and
    in fact pretty much completely rewritten file write support)! This has
    been in -mm for a while and at least one person (other than me that is)
    tested it, found a bug which I fixed, and since then noone has reported
    any bugs with the code. So I think it is definitely ready for a larger
    audience, i.e. the mainline kernel. (-:

    Please apply. Thanks! (Diffstat is at bottom of email.)

    And people: please try it before Linus releases 2.6.15 and report back
    (especially if you find bugs but even a "it works" would be nice to hear
    from a few more people)...

    The new features are:

    Given an existing uncompressed and unencrypted file, you can use:

    - write(2) to write to the file, including beyond the end of the
    existing file, and the file will be extended appropriately. Both
    resident and non-resident files are supported. Support for heavily
    fragmented files still has some limitations but you will just get an
    EOPNOTSUPP error if you hit one. Everything will still be consistent on
    the volume. Sparse files can also be written to and holes will be
    filled in appropriately.

    - truncate(2) and ftruncate(2) to change the size of the file, inlcuding
    using open(2) with O_TRUNC flag. As with write(2) there still are some
    limitations for heavily fragmented files, and as above, everything will
    still be consistent on the volume if you hit an unsupported case. Note,
    that no sparse regions are created yet as this requires directory
    operations to be implemented, too, which they are not yet. This is not as
    bad as it sounds as the regions are allocated but not initialized at the
    time of the truncate call so it is still very fast. Though a subsequent
    write then needs to initialize the space so may be slow...

    What this means is that you can now run your favourite editor on an
    existing file, e.g. "vim /ntfs/somefile.txt" works fine and you can save
    your changes. Also things like running OpenOffice and editing existing MS
    Office documents works. Basically anything that does not need to create
    temporary files in the same directory as the document should work fine
    now.

    Still not supported features are creation/deletion of files/directories
    and mmap(2) based writes to sparse regions of files. (The mmap(2)
    support has not been modified since the last release, only the file
    write(2) support was rewritten.)

    Here is the diffstat for those who care...

     b/Documentation/filesystems/ntfs.txt | 42
     b/fs/ntfs/ChangeLog | 117 +
     b/fs/ntfs/Makefile | 4
     b/fs/ntfs/aops.c | 832 ------------
     b/fs/ntfs/attrib.c | 987 +++++++++++++--
     b/fs/ntfs/attrib.h | 10
     b/fs/ntfs/file.c | 2289 ++++++++++++++++++++++++++++++++++-
     b/fs/ntfs/inode.c | 514 +++++++
     b/fs/ntfs/layout.h | 31
     b/fs/ntfs/lcnalloc.c | 60
     b/fs/ntfs/lcnalloc.h | 43
     b/fs/ntfs/malloc.h | 3
     b/fs/ntfs/mft.c | 26
     b/fs/ntfs/super.c | 2
     14 files changed, 3879 insertions(+), 1081 deletions(-)

    I am sending the changesets as actual patches generated using git
    format-patch for non-git users in follow up emails (in reply to this one).

    Best regards,

            Anton

    -- 
    Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
    Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
    Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
    WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at  http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at  http://www.tux.org/lkml/
    

  • Next message: Anton Altaparmakov: "[PATCH 1/17] NTFS: Change ntfs_map_runlist_nolock() to also take an optional attribute search context."

    Relevant Pages

    • [BK-PATCH-2.6-test] Minor NTFS update
      ... Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK ... Linux NTFS maintainer / IRC: ... Using Software RAID with NTFS ... The driver currently works only in read-only mode, ...
      (Linux-Kernel)
    • [PATCH 12/20] Re: [2.6-BK-URL] NTFS 2.1.17 release
      ... Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK ... Linux NTFS maintainer / IRC: ... Small bug fix in error detection in unistr.c and some cleanups. ... extern BOOL find_attr(const ATTR_TYPES type, const ntfschar *name, ...
      (Linux-Kernel)
    • Re: Best Distro For The Job
      ... What is NTFS write support like in linux these days? ... Possible software RAID card use. ...
      (alt.os.linux)
    • Re: Why Linux Sucks As a Desktop OS.
      ... Linux distributers are reluctant to enable ... >> drivers may not fully implement some undocumented NTFS behavior. ... > I think the issue of NTFS support is perhaps the most interesting part ... Windows) that there are places where the developers ...
      (comp.os.linux.misc)
    • Re: Does Microsoft lie about the Linux features?
      ... >>configurations of individual permissions to the file level. ... Apparently you aren't actually aware of how NTFS works. ... long filename 1", and "This is a long filename 2". ... big problems with long file name support for DOS apps in OS/2, ...
      (comp.os.linux.networking)