|
@@ -14,7 +14,6 @@ Table of contents
|
|
|
- The Device-Mapper driver
|
|
|
- The Software RAID / MD driver
|
|
|
- Limitations when using the MD driver
|
|
|
-- ChangeLog
|
|
|
|
|
|
|
|
|
Overview
|
|
@@ -450,270 +449,3 @@ number of sectors BEFORE attempting to use it. You have been warned!
|
|
|
|
|
|
Even better is to simply use the Device-Mapper for linear raid and then you do
|
|
|
not have this problem with odd numbers of sectors.
|
|
|
-
|
|
|
-
|
|
|
-ChangeLog
|
|
|
-=========
|
|
|
-
|
|
|
-2.1.30:
|
|
|
- - Fix writev() (it kept writing the first segment over and over again
|
|
|
- instead of moving onto subsequent segments).
|
|
|
- - Fix crash in ntfs_mft_record_alloc() when mapping the new extent mft
|
|
|
- record failed.
|
|
|
-2.1.29:
|
|
|
- - Fix a deadlock when mounting read-write.
|
|
|
-2.1.28:
|
|
|
- - Fix a deadlock.
|
|
|
-2.1.27:
|
|
|
- - Implement page migration support so the kernel can move memory used
|
|
|
- by NTFS files and directories around for management purposes.
|
|
|
- - Add support for writing to sparse files created with Windows XP SP2.
|
|
|
- - Many minor improvements and bug fixes.
|
|
|
-2.1.26:
|
|
|
- - Implement support for sector sizes above 512 bytes (up to the maximum
|
|
|
- supported by NTFS which is 4096 bytes).
|
|
|
- - Enhance support for NTFS volumes which were supported by Windows but
|
|
|
- not by Linux due to invalid attribute list attribute flags.
|
|
|
- - A few minor updates and bug fixes.
|
|
|
-2.1.25:
|
|
|
- - Write support is now extended with write(2) being able to both
|
|
|
- overwrite existing file data and to extend files. Also, if a write
|
|
|
- to a sparse region occurs, write(2) will fill in the hole. Note,
|
|
|
- mmap(2) based writes still do not support writing into holes or
|
|
|
- writing beyond the initialized size.
|
|
|
- - Write support has a new feature and that is that truncate(2) and
|
|
|
- open(2) with O_TRUNC are now implemented thus files can be both made
|
|
|
- smaller and larger.
|
|
|
- - Note: Both write(2) and truncate(2)/open(2) with O_TRUNC still have
|
|
|
- limitations in that they
|
|
|
- - only provide limited support for highly fragmented files.
|
|
|
- - only work on regular, i.e. uncompressed and unencrypted files.
|
|
|
- - never create sparse files although this will change once directory
|
|
|
- operations are implemented.
|
|
|
- - Lots of bug fixes and enhancements across the board.
|
|
|
-2.1.24:
|
|
|
- - Support journals ($LogFile) which have been modified by chkdsk. This
|
|
|
- means users can boot into Windows after we marked the volume dirty.
|
|
|
- The Windows boot will run chkdsk and then reboot. The user can then
|
|
|
- immediately boot into Linux rather than having to do a full Windows
|
|
|
- boot first before rebooting into Linux and we will recognize such a
|
|
|
- journal and empty it as it is clean by definition.
|
|
|
- - Support journals ($LogFile) with only one restart page as well as
|
|
|
- journals with two different restart pages. We sanity check both and
|
|
|
- either use the only sane one or the more recent one of the two in the
|
|
|
- case that both are valid.
|
|
|
- - Lots of bug fixes and enhancements across the board.
|
|
|
-2.1.23:
|
|
|
- - Stamp the user space journal, aka transaction log, aka $UsnJrnl, if
|
|
|
- it is present and active thus telling Windows and applications using
|
|
|
- the transaction log that changes can have happened on the volume
|
|
|
- which are not recorded in $UsnJrnl.
|
|
|
- - Detect the case when Windows has been hibernated (suspended to disk)
|
|
|
- and if this is the case do not allow (re)mounting read-write to
|
|
|
- prevent data corruption when you boot back into the suspended
|
|
|
- Windows session.
|
|
|
- - Implement extension of resident files using the normal file write
|
|
|
- code paths, i.e. most very small files can be extended to be a little
|
|
|
- bit bigger but not by much.
|
|
|
- - Add new mount option "disable_sparse". (See list of mount options
|
|
|
- above for details.)
|
|
|
- - Improve handling of ntfs volumes with errors and strange boot sectors
|
|
|
- in particular.
|
|
|
- - Fix various bugs including a nasty deadlock that appeared in recent
|
|
|
- kernels (around 2.6.11-2.6.12 timeframe).
|
|
|
-2.1.22:
|
|
|
- - Improve handling of ntfs volumes with errors.
|
|
|
- - Fix various bugs and race conditions.
|
|
|
-2.1.21:
|
|
|
- - Fix several race conditions and various other bugs.
|
|
|
- - Many internal cleanups, code reorganization, optimizations, and mft
|
|
|
- and index record writing code rewritten to fit in with the changes.
|
|
|
- - Update Documentation/filesystems/ntfs.txt with instructions on how to
|
|
|
- use the Device-Mapper driver with NTFS ftdisk/LDM raid.
|
|
|
-2.1.20:
|
|
|
- - Fix two stupid bugs introduced in 2.1.18 release.
|
|
|
-2.1.19:
|
|
|
- - Minor bugfix in handling of the default upcase table.
|
|
|
- - Many internal cleanups and improvements. Many thanks to Linus
|
|
|
- Torvalds and Al Viro for the help and advice with the sparse
|
|
|
- annotations and cleanups.
|
|
|
-2.1.18:
|
|
|
- - Fix scheduling latencies at mount time. (Ingo Molnar)
|
|
|
- - Fix endianness bug in a little traversed portion of the attribute
|
|
|
- lookup code.
|
|
|
-2.1.17:
|
|
|
- - Fix bugs in mount time error code paths.
|
|
|
-2.1.16:
|
|
|
- - Implement access time updates (including mtime and ctime).
|
|
|
- - Implement fsync(2), fdatasync(2), and msync(2) system calls.
|
|
|
- - Enable the readv(2) and writev(2) system calls.
|
|
|
- - Enable access via the asynchronous io (aio) API by adding support for
|
|
|
- the aio_read(3) and aio_write(3) functions.
|
|
|
-2.1.15:
|
|
|
- - Invalidate quotas when (re)mounting read-write.
|
|
|
- NOTE: This now only leave user space journalling on the side. (See
|
|
|
- note for version 2.1.13, below.)
|
|
|
-2.1.14:
|
|
|
- - Fix an NFSd caused deadlock reported by several users.
|
|
|
-2.1.13:
|
|
|
- - Implement writing of inodes (access time updates are not implemented
|
|
|
- yet so mounting with -o noatime,nodiratime is enforced).
|
|
|
- - Enable writing out of resident files so you can now overwrite any
|
|
|
- uncompressed, unencrypted, nonsparse file as long as you do not
|
|
|
- change the file size.
|
|
|
- - Add housekeeping of ntfs system files so that ntfsfix no longer needs
|
|
|
- to be run after writing to an NTFS volume.
|
|
|
- NOTE: This still leaves quota tracking and user space journalling on
|
|
|
- the side but they should not cause data corruption. In the worst
|
|
|
- case the charged quotas will be out of date ($Quota) and some
|
|
|
- userspace applications might get confused due to the out of date
|
|
|
- userspace journal ($UsnJrnl).
|
|
|
-2.1.12:
|
|
|
- - Fix the second fix to the decompression engine from the 2.1.9 release
|
|
|
- and some further internals cleanups.
|
|
|
-2.1.11:
|
|
|
- - Driver internal cleanups.
|
|
|
-2.1.10:
|
|
|
- - Force read-only (re)mounting of volumes with unsupported volume
|
|
|
- flags and various cleanups.
|
|
|
-2.1.9:
|
|
|
- - Fix two bugs in handling of corner cases in the decompression engine.
|
|
|
-2.1.8:
|
|
|
- - Read the $MFT mirror and compare it to the $MFT and if the two do not
|
|
|
- match, force a read-only mount and do not allow read-write remounts.
|
|
|
- - Read and parse the $LogFile journal and if it indicates that the
|
|
|
- volume was not shutdown cleanly, force a read-only mount and do not
|
|
|
- allow read-write remounts. If the $LogFile indicates a clean
|
|
|
- shutdown and a read-write (re)mount is requested, empty $LogFile to
|
|
|
- ensure that Windows cannot cause data corruption by replaying a stale
|
|
|
- journal after Linux has written to the volume.
|
|
|
- - Improve time handling so that the NTFS time is fully preserved when
|
|
|
- converted to kernel time and only up to 99 nano-seconds are lost when
|
|
|
- kernel time is converted to NTFS time.
|
|
|
-2.1.7:
|
|
|
- - Enable NFS exporting of mounted NTFS volumes.
|
|
|
-2.1.6:
|
|
|
- - Fix minor bug in handling of compressed directories that fixes the
|
|
|
- erroneous "du" and "stat" output people reported.
|
|
|
-2.1.5:
|
|
|
- - Minor bug fix in attribute list attribute handling that fixes the
|
|
|
- I/O errors on "ls" of certain fragmented files found by at least two
|
|
|
- people running Windows XP.
|
|
|
-2.1.4:
|
|
|
- - Minor update allowing compilation with all gcc versions (well, the
|
|
|
- ones the kernel can be compiled with anyway).
|
|
|
-2.1.3:
|
|
|
- - Major bug fixes for reading files and volumes in corner cases which
|
|
|
- were being hit by Windows 2k/XP users.
|
|
|
-2.1.2:
|
|
|
- - Major bug fixes alleviating the hangs in statfs experienced by some
|
|
|
- users.
|
|
|
-2.1.1:
|
|
|
- - Update handling of compressed files so people no longer get the
|
|
|
- frequently reported warning messages about initialized_size !=
|
|
|
- data_size.
|
|
|
-2.1.0:
|
|
|
- - Add configuration option for developmental write support.
|
|
|
- - Initial implementation of file overwriting. (Writes to resident files
|
|
|
- are not written out to disk yet, so avoid writing to files smaller
|
|
|
- than about 1kiB.)
|
|
|
- - Intercept/abort changes in file size as they are not implemented yet.
|
|
|
-2.0.25:
|
|
|
- - Minor bugfixes in error code paths and small cleanups.
|
|
|
-2.0.24:
|
|
|
- - Small internal cleanups.
|
|
|
- - Support for sendfile system call. (Christoph Hellwig)
|
|
|
-2.0.23:
|
|
|
- - Massive internal locking changes to mft record locking. Fixes
|
|
|
- various race conditions and deadlocks.
|
|
|
- - Fix ntfs over loopback for compressed files by adding an
|
|
|
- optimization barrier. (gcc was screwing up otherwise ?)
|
|
|
- Thanks go to Christoph Hellwig for pointing these two out:
|
|
|
- - Remove now unused function fs/ntfs/malloc.h::vmalloc_nofs().
|
|
|
- - Fix ntfs_free() for ia64 and parisc.
|
|
|
-2.0.22:
|
|
|
- - Small internal cleanups.
|
|
|
-2.0.21:
|
|
|
- These only affect 32-bit architectures:
|
|
|
- - Check for, and refuse to mount too large volumes (maximum is 2TiB).
|
|
|
- - Check for, and refuse to open too large files and directories
|
|
|
- (maximum is 16TiB).
|
|
|
-2.0.20:
|
|
|
- - Support non-resident directory index bitmaps. This means we now cope
|
|
|
- with huge directories without problems.
|
|
|
- - Fix a page leak that manifested itself in some cases when reading
|
|
|
- directory contents.
|
|
|
- - Internal cleanups.
|
|
|
-2.0.19:
|
|
|
- - Fix race condition and improvements in block i/o interface.
|
|
|
- - Optimization when reading compressed files.
|
|
|
-2.0.18:
|
|
|
- - Fix race condition in reading of compressed files.
|
|
|
-2.0.17:
|
|
|
- - Cleanups and optimizations.
|
|
|
-2.0.16:
|
|
|
- - Fix stupid bug introduced in 2.0.15 in new attribute inode API.
|
|
|
- - Big internal cleanup replacing the mftbmp access hacks by using the
|
|
|
- new attribute inode API instead.
|
|
|
-2.0.15:
|
|
|
- - Bug fix in parsing of remount options.
|
|
|
- - Internal changes implementing attribute (fake) inodes allowing all
|
|
|
- attribute i/o to go via the page cache and to use all the normal
|
|
|
- vfs/mm functionality.
|
|
|
-2.0.14:
|
|
|
- - Internal changes improving run list merging code and minor locking
|
|
|
- change to not rely on BKL in ntfs_statfs().
|
|
|
-2.0.13:
|
|
|
- - Internal changes towards using iget5_locked() in preparation for
|
|
|
- fake inodes and small cleanups to ntfs_volume structure.
|
|
|
-2.0.12:
|
|
|
- - Internal cleanups in address space operations made possible by the
|
|
|
- changes introduced in the previous release.
|
|
|
-2.0.11:
|
|
|
- - Internal updates and cleanups introducing the first step towards
|
|
|
- fake inode based attribute i/o.
|
|
|
-2.0.10:
|
|
|
- - Microsoft says that the maximum number of inodes is 2^32 - 1. Update
|
|
|
- the driver accordingly to only use 32-bits to store inode numbers on
|
|
|
- 32-bit architectures. This improves the speed of the driver a little.
|
|
|
-2.0.9:
|
|
|
- - Change decompression engine to use a single buffer. This should not
|
|
|
- affect performance except perhaps on the most heavy i/o on SMP
|
|
|
- systems when accessing multiple compressed files from multiple
|
|
|
- devices simultaneously.
|
|
|
- - Minor updates and cleanups.
|
|
|
-2.0.8:
|
|
|
- - Remove now obsolete show_inodes and posix mount option(s).
|
|
|
- - 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.
|
|
|
- - Mostly drop support for short file names (for backwards compatibility
|
|
|
- we only support accessing files via their short file name if one
|
|
|
- exists).
|
|
|
- - Fix dcache aliasing issues wrt short/long file names.
|
|
|
- - Cleanups and minor fixes.
|
|
|
-2.0.7:
|
|
|
- - Just cleanups.
|
|
|
-2.0.6:
|
|
|
- - Major bugfix to make compatible with other kernel changes. This fixes
|
|
|
- the hangs/oopses on umount.
|
|
|
- - Locking cleanup in directory operations (remove BKL usage).
|
|
|
-2.0.5:
|
|
|
- - Major buffer overflow bug fix.
|
|
|
- - Minor cleanups and updates for kernel 2.5.12.
|
|
|
-2.0.4:
|
|
|
- - Cleanups and updates for kernel 2.5.11.
|
|
|
-2.0.3:
|
|
|
- - Small bug fixes, cleanups, and performance improvements.
|
|
|
-2.0.2:
|
|
|
- - Use default fmask of 0177 so that files are no executable by default.
|
|
|
- If you want owner executable files, just use fmask=0077.
|
|
|
- - Update for kernel 2.5.9 but preserve backwards compatibility with
|
|
|
- kernel 2.5.7.
|
|
|
- - Minor bug fixes, cleanups, and updates.
|
|
|
-2.0.1:
|
|
|
- - Minor updates, primarily set the executable bit by default on files
|
|
|
- so they can be executed.
|
|
|
-2.0.0:
|
|
|
- - Started ChangeLog.
|
|
|
-
|