linux/Documentation/filesystems
Anton Altaparmakov bfab36e816 NTFS: Fix a mount time deadlock.
Big thanks go to Mathias Kolehmainen for reporting the bug, providing
debug output and testing the patches I sent him to get it working.

The fix was to stop calling ntfs_attr_set() at mount time as that causes
balance_dirty_pages_ratelimited() to be called which on systems with
little memory actually tries to go and balance the dirty pages which tries
to take the s_umount semaphore but because we are still in fill_super()
across which the VFS holds s_umount for writing this results in a
deadlock.

We now do the dirty work by hand by submitting individual buffers.  This
has the annoying "feature" that mounting can take a few seconds if the
journal is large as we have clear it all.  One day someone should improve
on this by deferring the journal clearing to a helper kernel thread so it
can be done in the background but I don't have time for this at the moment
and the current solution works fine so I am leaving it like this for now.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-12 09:16:30 -07:00
..
configfs some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
00-INDEX Documentation/00-INDEX: notice ecryptfs.txt moved 2007-09-11 17:21:19 -07:00
9p.txt 9p: update maintainers and documentation 2007-08-23 10:12:48 -05:00
Exporting
Locking mm: fault feedback #1 2007-07-19 10:04:41 -07:00
adfs.txt
affs.txt
afs.txt [AFS]: Update the AFS fs documentation. 2007-04-26 15:57:43 -07:00
automount-support.txt
befs.txt
bfs.txt
cifs.txt
coda.txt
cramfs.txt
dentry-locking.txt
directory-locking Documentation: Fix up docs still talking about i_sem 2007-05-24 10:16:17 -07:00
dlmfs.txt
ecryptfs.txt eCryptfs: Move ecryptfs docs into Documentation/filesystems/ 2007-07-17 10:23:08 -07:00
ext2.txt
ext3.txt
ext4.txt
files.txt
fuse.txt
gfs2.txt
hfs.txt
hfsplus.txt Documentation: document HFSPlus 2007-07-31 15:39:38 -07:00
hpfs.txt misc doc and kconfig typos 2007-05-09 08:58:15 +02:00
inotify.txt
isofs.txt
jfs.txt JFS: document uid, gid, and umask mount options in jfs.txt 2007-03-09 10:27:31 -06:00
ncpfs.txt
ntfs.txt NTFS: Fix a mount time deadlock. 2007-10-12 09:16:30 -07:00
ocfs2.txt ocfs2: update docs for new features 2007-09-11 11:38:25 -07:00
porting Documentation: Fix up docs still talking about i_sem 2007-05-24 10:16:17 -07:00
proc.txt coredump masking: documentation for /proc/pid/coredump_filter 2007-07-19 10:04:47 -07:00
ramfs-rootfs-initramfs.txt
relay.txt misc doc and kconfig typos 2007-05-09 08:58:15 +02:00
romfs.txt
smbfs.txt
spufs.txt
sysfs-pci.txt
sysfs.txt
sysv-fs.txt
tmpfs.txt mount -t tmpfs -o mpol=: check nodes online 2007-06-08 17:23:32 -07:00
udf.txt
ufs.txt
vfat.txt fat: don't use free_clusters for fat32 2007-05-08 11:15:13 -07:00
vfs.txt update Documentation/filesystems/vfs.txt 2007-07-16 09:05:51 -07:00
xfs.txt
xip.txt misc doc and kconfig typos 2007-05-09 08:58:15 +02:00