summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Altaparmakov <aia21@cantab.net>2004-09-22 12:11:14 +0100
committerAnton Altaparmakov <aia21@cantab.net>2004-09-22 12:11:14 +0100
commit9be7abff30a534152de95d3001512e4975cdc41a (patch)
tree21db7e75a2e475a1704d9bc0c4d85996d77c6d17
parentc801720ce507c0a401c703970e052ee3a06d4eed (diff)
NTFS: 2.1.18 release
- 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>
-rw-r--r--Documentation/filesystems/ntfs.txt4
-rw-r--r--fs/ntfs/ChangeLog3
-rw-r--r--fs/ntfs/Makefile2
-rw-r--r--fs/ntfs/inode.c10
4 files changed, 14 insertions, 5 deletions
diff --git a/Documentation/filesystems/ntfs.txt b/Documentation/filesystems/ntfs.txt
index 0522df2e7000..05c1de4cd87f 100644
--- a/Documentation/filesystems/ntfs.txt
+++ b/Documentation/filesystems/ntfs.txt
@@ -277,6 +277,10 @@ ChangeLog
Note, a technical ChangeLog aimed at kernel hackers is in fs/ntfs/ChangeLog.
+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:
diff --git a/fs/ntfs/ChangeLog b/fs/ntfs/ChangeLog
index d8aad408b4ea..d60c4933588d 100644
--- a/fs/ntfs/ChangeLog
+++ b/fs/ntfs/ChangeLog
@@ -21,7 +21,7 @@ ToDo/Notes:
- Enable the code for setting the NT4 compatibility flag when we start
making NTFS 1.2 specific modifications.
-2.1.18-WIP
+2.1.18 - Fix scheduling latencies at mount time as well as an endianness bug.
- Remove vol->nr_mft_records as it was pretty meaningless and optimize
the calculation of total/free inodes as used by statfs().
@@ -54,6 +54,7 @@ ToDo/Notes:
anywhere other than attrib.c. Update ntfs_attr_lookup() and all
callers of ntfs_{external,}attr_{find,lookup}() for the new return
values.
+ - Minor cleanup of fs/ntfs/inode.c::ntfs_init_locked_inode().
2.1.17 - Fix bugs in mount time error code paths and other updates.
diff --git a/fs/ntfs/Makefile b/fs/ntfs/Makefile
index 8796d51b5213..5d2967b7cd9f 100644
--- a/fs/ntfs/Makefile
+++ b/fs/ntfs/Makefile
@@ -6,7 +6,7 @@ ntfs-objs := aops.o attrib.o collate.o compress.o debug.o dir.o file.o \
index.o inode.o mft.o mst.o namei.o super.o sysctl.o unistr.o \
upcase.o
-EXTRA_CFLAGS = -DNTFS_VERSION=\"2.1.18-WIP\"
+EXTRA_CFLAGS = -DNTFS_VERSION=\"2.1.18\"
ifeq ($(CONFIG_NTFS_DEBUG),y)
EXTRA_CFLAGS += -DDEBUG
diff --git a/fs/ntfs/inode.c b/fs/ntfs/inode.c
index fc000d8c62df..d87e1e8254c5 100644
--- a/fs/ntfs/inode.c
+++ b/fs/ntfs/inode.c
@@ -105,8 +105,11 @@ static int ntfs_init_locked_inode(struct inode *vi, ntfs_attr *na)
ni->name_len = na->name_len;
/* If initializing a normal inode, we are done. */
- if (likely(na->type == AT_UNUSED))
+ if (likely(na->type == AT_UNUSED)) {
+ BUG_ON(na->name);
+ BUG_ON(na->name_len);
return 0;
+ }
/* It is a fake inode. */
NInoSetAttr(ni);
@@ -118,15 +121,16 @@ static int ntfs_init_locked_inode(struct inode *vi, ntfs_attr *na)
* thus the fraction of named attributes with name != I30 is actually
* absolutely tiny.
*/
- if (na->name && na->name_len && na->name != I30) {
+ if (na->name_len && na->name != I30) {
unsigned int i;
+ BUG_ON(!na->name);
i = na->name_len * sizeof(ntfschar);
ni->name = (ntfschar*)kmalloc(i + sizeof(ntfschar), GFP_ATOMIC);
if (!ni->name)
return -ENOMEM;
memcpy(ni->name, na->name, i);
- ni->name[i] = cpu_to_le16('\0');
+ ni->name[i] = cpu_to_le16(L'\0');
}
return 0;
}