aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ntfs
diff options
context:
space:
mode:
authorAnton Altaparmakov <aia21@cantab.net>2005-10-24 03:57:59 -0400
committerAnton Altaparmakov <aia21@cantab.net>2005-10-24 03:57:59 -0400
commitdda65b941f992ab10fda3d9f09539c68206b7114 (patch)
tree27468ef642b1d6e7a8b3c7f7f9a842e5ad92456e /fs/ntfs
parentd04bd1fb60252f30f4f41a56613ade48df130588 (diff)
NTFS: Fix compilation warnings with gcc-4.0.2 on SUSE 10.0.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Diffstat (limited to 'fs/ntfs')
-rw-r--r--fs/ntfs/ChangeLog1
-rw-r--r--fs/ntfs/attrib.c2
-rw-r--r--fs/ntfs/file.c23
3 files changed, 10 insertions, 16 deletions
diff --git a/fs/ntfs/ChangeLog b/fs/ntfs/ChangeLog
index 2a76b1fbbfc0..dea742405161 100644
--- a/fs/ntfs/ChangeLog
+++ b/fs/ntfs/ChangeLog
@@ -77,6 +77,7 @@ ToDo/Notes:
77 EOPNOTSUPP is returned. 77 EOPNOTSUPP is returned.
78 - $EA attributes can be both resident and non-resident. 78 - $EA attributes can be both resident and non-resident.
79 - Use %z for size_t to fix compilation warnings. (Andrew Morton) 79 - Use %z for size_t to fix compilation warnings. (Andrew Morton)
80 - Fix compilation warnings with gcc-4.0.2 on SUSE 10.0.
80 81
812.1.24 - Lots of bug fixes and support more clean journal states. 822.1.24 - Lots of bug fixes and support more clean journal states.
82 83
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c
index df2e2091f936..eda056bac256 100644
--- a/fs/ntfs/attrib.c
+++ b/fs/ntfs/attrib.c
@@ -91,7 +91,7 @@ int ntfs_map_runlist_nolock(ntfs_inode *ni, VCN vcn, ntfs_attr_search_ctx *ctx)
91 struct page *put_this_page = NULL; 91 struct page *put_this_page = NULL;
92 int err = 0; 92 int err = 0;
93 BOOL ctx_is_temporary, ctx_needs_reset; 93 BOOL ctx_is_temporary, ctx_needs_reset;
94 ntfs_attr_search_ctx old_ctx; 94 ntfs_attr_search_ctx old_ctx = { NULL, };
95 95
96 ntfs_debug("Mapping runlist part containing vcn 0x%llx.", 96 ntfs_debug("Mapping runlist part containing vcn 0x%llx.",
97 (unsigned long long)vcn); 97 (unsigned long long)vcn);
diff --git a/fs/ntfs/file.c b/fs/ntfs/file.c
index cdedc84e1372..cf3e6ced2d01 100644
--- a/fs/ntfs/file.c
+++ b/fs/ntfs/file.c
@@ -78,12 +78,8 @@ static int ntfs_file_open(struct inode *vi, struct file *filp)
78 * Extend the initialized size of an attribute described by the ntfs inode @ni 78 * Extend the initialized size of an attribute described by the ntfs inode @ni
79 * to @new_init_size bytes. This involves zeroing any non-sparse space between 79 * to @new_init_size bytes. This involves zeroing any non-sparse space between
80 * the old initialized size and @new_init_size both in the page cache and on 80 * the old initialized size and @new_init_size both in the page cache and on
81 * disk (if relevant complete pages are zeroed in the page cache then these may 81 * disk (if relevant complete pages are already uptodate in the page cache then
82 * simply be marked dirty for later writeout). There is one caveat and that is 82 * these are simply marked dirty).
83 * that if any uptodate page cache pages between the old initialized size and
84 * the smaller of @new_init_size and the file size (vfs inode->i_size) are in
85 * memory, these need to be marked dirty without being zeroed since they could
86 * be non-zero due to mmap() based writes.
87 * 83 *
88 * As a side-effect, the file size (vfs inode->i_size) may be incremented as, 84 * As a side-effect, the file size (vfs inode->i_size) may be incremented as,
89 * in the resident attribute case, it is tied to the initialized size and, in 85 * in the resident attribute case, it is tied to the initialized size and, in
@@ -98,10 +94,10 @@ static int ntfs_file_open(struct inode *vi, struct file *filp)
98 * with new data via mmap() based writes, so we cannot just zero it. And since 94 * with new data via mmap() based writes, so we cannot just zero it. And since
99 * POSIX specifies that the behaviour of resizing a file whilst it is mmap()ped 95 * POSIX specifies that the behaviour of resizing a file whilst it is mmap()ped
100 * is unspecified, we choose not to do zeroing and thus we do not need to touch 96 * is unspecified, we choose not to do zeroing and thus we do not need to touch
101 * the page at all. For a more detailed explanation see ntfs_truncate() which 97 * the page at all. For a more detailed explanation see ntfs_truncate() in
102 * is in fs/ntfs/inode.c. 98 * fs/ntfs/inode.c.
103 * 99 *
104 * @cached_page and @lru_pvec are just optimisations for dealing with multiple 100 * @cached_page and @lru_pvec are just optimizations for dealing with multiple
105 * pages. 101 * pages.
106 * 102 *
107 * Return 0 on success and -errno on error. In the case that an error is 103 * Return 0 on success and -errno on error. In the case that an error is
@@ -110,9 +106,8 @@ static int ntfs_file_open(struct inode *vi, struct file *filp)
110 * this is the case, the necessary zeroing will also have happened and that all 106 * this is the case, the necessary zeroing will also have happened and that all
111 * metadata is self-consistent. 107 * metadata is self-consistent.
112 * 108 *
113 * Locking: This function locks the mft record of the base ntfs inode and 109 * Locking: i_sem on the vfs inode corrseponsind to the ntfs inode @ni must be
114 * maintains the lock throughout execution of the function. This is required 110 * held by the caller.
115 * so that the initialized size of the attribute can be modified safely.
116 */ 111 */
117static int ntfs_attr_extend_initialized(ntfs_inode *ni, const s64 new_init_size, 112static int ntfs_attr_extend_initialized(ntfs_inode *ni, const s64 new_init_size,
118 struct page **cached_page, struct pagevec *lru_pvec) 113 struct page **cached_page, struct pagevec *lru_pvec)
@@ -1836,7 +1831,7 @@ static ssize_t ntfs_file_buffered_write(struct kiocb *iocb,
1836 VCN last_vcn; 1831 VCN last_vcn;
1837 LCN lcn; 1832 LCN lcn;
1838 unsigned long flags; 1833 unsigned long flags;
1839 size_t bytes, iov_ofs; 1834 size_t bytes, iov_ofs = 0; /* Offset in the current iovec. */
1840 ssize_t status, written; 1835 ssize_t status, written;
1841 unsigned nr_pages; 1836 unsigned nr_pages;
1842 int err; 1837 int err;
@@ -1988,8 +1983,6 @@ static ssize_t ntfs_file_buffered_write(struct kiocb *iocb,
1988 last_vcn = -1; 1983 last_vcn = -1;
1989 if (likely(nr_segs == 1)) 1984 if (likely(nr_segs == 1))
1990 buf = iov->iov_base; 1985 buf = iov->iov_base;
1991 else
1992 iov_ofs = 0; /* Offset in the current iovec. */
1993 do { 1986 do {
1994 VCN vcn; 1987 VCN vcn;
1995 pgoff_t idx, start_idx; 1988 pgoff_t idx, start_idx;