- 03 Oct, 2004 1 commit
-
-
Anton Altaparmakov authored
we did not clear ctx->al_entry but it was still set due to changes in ntfs_attr_lookup() and ntfs_external_attr_find() in particular. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 28 Sep, 2004 1 commit
-
-
Anton Altaparmakov authored
typed enums. This completes the sparse annotations in NTFS. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 26 Sep, 2004 1 commit
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 24 Sep, 2004 4 commits
-
-
Anton Altaparmakov authored
- Fix bug found by the new sparse bitwise warnings where the default upcase table was defined as a pointer to wchar_t rather than ntfschar in fs/ntfs/ntfs.h and super.c. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
- Fix all the sparse bitwise warnings. Had to change all the enums storing little endian values to #defines because we cannot set enums to be little endian so we had lots of bitwise warnings from sparse. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
- Add leMFT_REF data type to fs/ntfs/layout.h. - Update all NTFS header files with the new little endian data types. Affected files are fs/ntfs/layout.h, logfile.h, and time.h. - Do proper type casting when using ntfs_is_*_recordp() in fs/ntfs/logfile.c, mft.c, and super.c. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
- Add le{16,32,64} as well as sle{16,32,64} data types to fs/ntfs/types.h. - Change ntfschar to be le16 instead of u16 in fs/ntfs/types.h. - Add le versions of VCN, LCN, and LSN called leVCN, leLCN, and leLSN, respectively, to fs/ntfs/types.h. - Update endianness conversion macros in fs/ntfs/endian.h to use the new types as appropriate. - Do proper type casting when using sle64_to_cpup() in fs/ntfs/dir.c and index.c. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 23 Sep, 2004 2 commits
-
-
Anton Altaparmakov authored
inode size has changed and to only output an error if so. - Rename fs/ntfs/attrib.h::attribute_value_length() to ntfs_attr_size(). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 22 Sep, 2004 3 commits
-
-
Anton Altaparmakov authored
and ntfs_filldir() as per suggestion from Al Viro. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
kernel. - Update ->setattr (fs/ntfs/inode.c::ntfs_setattr()) to refuse to change the uid, gid, and mode of an inode as we do not support NTFS ACLs yet. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
- Minor cleanup of fs/ntfs/inode.c::ntfs_init_locked_inode(). - Bump version number and update Documentation/filesystems/ntfs.txt Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 21 Sep, 2004 3 commits
-
-
Anton Altaparmakov authored
- Change ntfs_{external_,}attr_find() to return 0 on success, -ENOENT if the attribute is not found, and -EIO on real error. In the case of -ENOENT, the search context is updated to describe the attribute before which the attribute being searched for would need to be inserted if such an action were to be desired and in the case of ntfs_external_attr_find() the search context is also updated to indicate the attribute list entry before which the attribute list entry of the attribute being searched for would need to be inserted if such an action were to be desired. Also make ntfs_find_attr() static and remove its prototype from attrib.h as it is not used anywhere other than attrib.c. Update ntfs_attr_lookup() and all callers of ntfs_{external,}attr_{find,lookup}() for the new return values. - Force use of ntfs_attr_find() in ntfs_attr_lookup() when searching for the attribute list attribute itself. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
ntfs_attr_{{re,}init,get,put}_search_ctx() as well as the type attr_search_context to ntfs_attr_search_ctx. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
find_external_attr() to ntfs_external_attr_find() to cleanup the namespace a bit and to be more consistent with libntfs. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 14 Sep, 2004 1 commit
-
-
Anton Altaparmakov authored
because the code itself is using the ntfs_lock semaphore which provides safe locking. (Ingo Molnar) Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 27 Aug, 2004 1 commit
-
-
Anton Altaparmakov authored
the calculation of total/free inodes as used by statfs(). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 18 Aug, 2004 2 commits
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
- Fix bugs in mount time error code paths involving (de)allocation of the default and volume upcase tables. - Remove ntfs_nr_mounts as it is no longer used. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 16 Aug, 2004 1 commit
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 22 Jul, 2004 1 commit
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 21 Jul, 2004 1 commit
-
-
Anton Altaparmakov authored
includes functions to set/clear a single bit or a run of bits. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 14 Jul, 2004 1 commit
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 08 Jul, 2004 1 commit
-
-
Anton Altaparmakov authored
and directories (fs/ntfs/dir.c). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 07 Jul, 2004 1 commit
-
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 02 Jul, 2004 3 commits
-
-
Anton Altaparmakov authored
enables the writing of page cache pages belonging to mst protected attributes like the index allocation attribute in directory indices and other indices like $Quota/$Q, etc. This means that the quota is now marked out of date on all volumes rather than only on ones where the quota defaults entry is in the index root attribute of the $Quota/$Q index. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
buffers that are inside the ntfs record in the page dirty after which it sets the page dirty. This allows ->writepage to only write the dirty index records rather than having to write all the records in the page. Modify fs/ntfs/index.h::ntfs_index_entry_mark_dirty() to use this rather than __set_page_dirty_nobuffers(). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
It is simply set to __set_page_dirty_nobuffers() to make sure that running set_page_dirty() on a page containing mft/ntfs records will not affect the dirty state of the page buffers. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 21 Jun, 2004 6 commits
-
-
Anton Altaparmakov authored
and if so, mark the quotas out of date. This causes windows to rescan the volume on boot and update all quota entries. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
entry using the corresponding index key. To get an index context, use ntfs_index_ctx_get() and to release it, use ntfs_index_ctx_put(). This also adds a new slab cache for the index contexts. To lookup a key in an index inode, use ntfs_index_lookup(). After modifying an index entry, call ntfs_index_entry_flush_dcache_page() followed by ntfs_index_entry_mark_dirty() to ensure the changes are written out to disk. For details see fs/ntfs/index.[hc]. Note, at present, if an index entry is in the index allocation attribute rather than the index root attribute it will not be written out (you will get a warning message about discarded changes instead). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
We have ntfs_is_collation_rule_supported() to check if the collation rule you want to use is supported and ntfs_collation() which actually collates two data items. We currently only support COLLATION_BINARY and COLLATION_NTOFS_ULONG but support for other collation rules will be added as the need arises. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
accessing them to ensure we never see corrupt data while the page is under writeout. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 15 Jun, 2004 2 commits
-
-
Anton Altaparmakov authored
PAGE_CACHE_SHIFT by casting page->index to s64 in fs/ntfs/aops.c. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
Anton Altaparmakov authored
structure and set it appropriately in ntfs_read_locked_inode(). - Implement a new inode type "index" to allow efficient access to the indices found in various system files and adapt inode handling accordingly (fs/ntfs/inode.[hc]). An index inode is essentially an attribute inode (NInoAttr() is true) with an attribute type of AT_INDEX_ALLOCATION. As such, it is no longer allowed to call ntfs_attr_iget() with an attribute type of AT_INDEX_ALLOCATION as there would be no way to distinguish between normal attribute inodes and index inodes. The function to obtain an index inode is ntfs_index_iget() and it uses the helper function ntfs_read_locked_index_inode(). Note, we do not overload ntfs_attr_iget() as indices consist of multiple attributes so using ntfs_attr_iget() to obtain an index inode would be confusing. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 10 Jun, 2004 1 commit
-
-
Anton Altaparmakov authored
- Modify fs/ntfs/ntfs_readdir() to copy the index root attribute value to a buffer so that we can put the search context and unmap the mft record before calling the filldir() callback. We need to do this because of NFSd which calls ->lookup() from its filldir callback() and this causes NTFS to deadlock as ntfs_lookup() maps the mft record of the directory and since ntfs_readdir() has got it mapped already ntfs_lookup() deadlocks. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 08 Jun, 2004 1 commit
-
-
Anton Altaparmakov authored
- Mark the volume dirty when (re)mounting read-write and mark it clean when unmounting or remounting read-only. If any volume errors are found, the volume is left marked dirty to force chkdsk to run. - Add code to set the NT4 compatibility flag when (re)mounting read-write for newer NTFS versions but leave it commented out for now since we do not make any modifications that are NTFS 1.2 specific yet and since setting this flag breaks Captive-NTFS which is not nice. This code must be enabled once we start writing NTFS 1.2 specific changes otherwise Windows NTFS driver might crash / cause corruption. - Fix a silly bug that caused a deadlock in ntfs_mft_writepage(). For inode 0, i.e. $MFT itself, we cannot use ilookup5() from there because the inode is already locked by the kernel (fs/fs-writeback.c::__sync_single_inode()) and ilookup5() waits until the inode is unlocked before returning it and it never gets unlocked because ntfs_mft_writepage() never returns. )-: Fortunately, we have inode 0 pinned in icache for the duration of the mount so we can access it directly. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 07 Jun, 2004 1 commit
-
-
Anton Altaparmakov authored
information flags (fs/ntfs/super.c). Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-
- 04 Jun, 2004 1 commit
-
-
Anton Altaparmakov authored
records in the page are dirty and if so redirties the page and returns. Otherwise it just returns (after doing set_page_writeback(), unlock_page(), end_page_writeback() or the radix-tree tag PAGECACHE_TAG_DIRTY remains set even though the page is clean), thus alowing the VM to do with the page as it pleases. Also, at umount time, now only throw away dirty mft (meta)data pages if dirty inodes are present and ask the user to email us if they see this happening. Signed-off-by:
Anton Altaparmakov <aia21@cantab.net>
-