- 13 10月, 2007 1 次提交
-
-
由 Anton Altaparmakov 提交于
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: NAnton Altaparmakov <aia21@cantab.net> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 18 1月, 2007 1 次提交
-
-
由 Anton Altaparmakov 提交于
- Fix deadlock in fs/ntfs/inode.c::ntfs_put_inode(). Thanks to Sergey Vlasov for the report and detailed analysis of the deadlock. The fix involved getting rid of ntfs_put_inode() altogether and hence NTFS no longer has a ->put_inode super operation. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 24 3月, 2006 6 次提交
-
-
由 Ingo Molnar 提交于
The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: NIngo Molnar <mingo@elte.hu> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
fs/ntfs/unistr.c::ntfs_nlstoucs() in fs/ntfs/namei.c::ntfs_lookup(). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
fs/ntfs/inode.c::ntfs_write_inode(). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
forgot to update a temporary variable so loading index inodes which have an index allocation attribute failed. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
allowed by NTFS, i.e. 255 Unicode characters, not including the terminating NULL (which is not stored on disk). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 23 3月, 2006 6 次提交
-
-
由 Anton Altaparmakov 提交于
from read inode and new inode code paths. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
unused, invalid mft records which are the same in both $MFT and $MFTMirr. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
address space operations. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
continued the attribute lookup loop instead of aborting it. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 24 2月, 2006 3 次提交
-
-
由 Anton Altaparmakov 提交于
special casing the VOLUME_MODIFIED_BY_CHKDSK flag. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
supported by NTFS which is 4096 bytes).
-
由 Anton Altaparmakov 提交于
Windows copes with this and even chkdsk does not detect or fix this so we have to cope with it, too. Thanks to Pawel Kot for reporting the problem. - Miscellaneous updates to layout.h. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 03 1月, 2006 1 次提交
-
-
由 Adrian Bunk 提交于
This patch removes all references to the bouncing address rddunlap@osdl.org and one dead web page from the kernel. Signed-off-by: NAdrian Bunk <bunk@stusta.de> Acked-by: NRandy Dunlap <rdunlap@xenotime.net>
-
- 24 10月, 2005 3 次提交
-
-
由 Anton Altaparmakov 提交于
patch by Yura Pakhuchiy.) Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 19 10月, 2005 1 次提交
-
-
由 Anton Altaparmakov 提交于
Minor tidying. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 11 10月, 2005 2 次提交
-
-
由 Anton Altaparmakov 提交于
file operations ->write(), ->aio_write(), and ->writev() for regular files. This replaces the old use of generic_file_write(), et al and the address space operations ->prepare_write and ->commit_write. This means that both sparse and non-sparse (unencrypted and uncompressed) files can now be extended using the normal write(2) code path. There are two limitations at present and these are that we never create sparse files and that we only have limited support for highly fragmented files, i.e. ones whose data attribute is split across multiple extents. When such a case is encountered, EOPNOTSUPP is returned. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
and cond_resched() in the main loop as we could be dirtying a lot of pages and this ensures we play nice with the VM and the system as a whole. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 04 10月, 2005 10 次提交
-
-
由 Anton Altaparmakov 提交于
the initial implementation of file truncation. Now both open(2)ing a file with the O_TRUNC flag and the {,f}truncate(2) system calls will resize a file appropriately. The limitations are that only uncompressed and unencrypted files are supported. Also, there is only very limited support for highly fragmented files (the ones whose $DATA attribute is split into multiple attribute extents). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
uncompressed and unencrypted files. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
extend the allocation of an attributes. Optionally, the data size, but not the initialized size can be extended, too. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
which is zero for a resident attribute but should no longer be zero once the attribute is non-resident as it then has real clusters allocated. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
as an extra parameter. This is needed since we need to know the size before we can map the mft record and our callers always know it. The reason we cannot simply read the size from the vfs inode i_size is that this is not necessarily uptodate. This happens when ntfs_attr_make_non_resident() is called in the ->truncate call path. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
specifying whether the cluster are being allocated to extend an attribute or to fill a hole. - Change ntfs_attr_make_non_resident() to call ntfs_cluster_alloc() with @is_extension set to TRUE and remove the runlist terminator fixup code as this is now done by ntfs_cluster_alloc(). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
search context as argument. This allows calling it with the mft record mapped. Update all callers. - Fix potential deadlock in ntfs_mft_data_extend_allocation_nolock() error handling by passing in the active search context when calling ntfs_cluster_free(). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
search context as argument. This allows calling it with the mft record mapped. Update all callers. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
search context. This allows calling it with the mft record mapped. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
count to become negative and hence we had a wild memset() scribbling all over the system's ram. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 26 9月, 2005 1 次提交
-
-
由 Anton Altaparmakov 提交于
restart pages in the journal without multi sector transfer protection fixups (i.e. the update sequence array is empty and in fact does not exist). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 23 9月, 2005 1 次提交
-
-
由 Anton Altaparmakov 提交于
since we otherwise get into a lock reversal deadlock if a read locked runlist is passed in. In the process also change it to take an ntfs inode instead of a vfs inode as parameter. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 22 9月, 2005 1 次提交
-
-
由 Anton Altaparmakov 提交于
Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 19 9月, 2005 1 次提交
-
-
由 Anton Altaparmakov 提交于
changes by Richard Russon.) Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
- 12 9月, 2005 2 次提交
-
-
由 Anton Altaparmakov 提交于
otherwise causes a BUG(). Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-
由 Anton Altaparmakov 提交于
an octal number to conform to how chmod(1) works, too. Thanks to Giuseppe Bilotta and Horst von Brand for pointing out the errors of my ways. Signed-off-by: NAnton Altaparmakov <aia21@cantab.net>
-