Skip to contentSkip to conversation

VFAT: ->i_[cam]time cleanups (1/6)

PATCH New OGAWA Hirofumi 1 participant 1 message Oct 6, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 VFAT: ->i_[cam]time cleanups (1/6)

Quoted 1 line

From René Scharfe <[email protected]>

there's one call to strncpy() in vfat that really should be a memcpy(). The source, msdos_name, is a space-filled char array, not a NUL-terminated string.

The rest of the patch eliminates duplicate occurencies of the CURRENT_TIME macro inside functions. This shrinks vfat.o by a few bytes.

Please apply.

 linux-2.6.0-test6-hirofumi/fs/vfat/namei.c |   14 +++++---------
 1 files changed, 5 insertions(+), 9 deletions(-)
fs/vfat/namei.c renamed from fs/vfat/namei.c~fat_i_camtime-cleanup +5 -9
diff -puN fs/vfat/namei.c~fat_i_camtime-cleanup fs/vfat/namei.c
@@ -714,7 +714,7 @@ shortname:
 	PRINTK3(("vfat_fill_slots 9\n"));
 	/* build the entry of 8.3 alias name */
 	(*slots)++;
-	strncpy(de->name, msdos_name, MSDOS_NAME);
+	memcpy(de->name, msdos_name, MSDOS_NAME);
 	de->attr = is_dir ? ATTR_DIR : ATTR_ARCH;
 	de->lcase = lcase;
 	de->adate = de->cdate = de->date = 0;
@@ -901,8 +901,7 @@ static void vfat_remove_entry(struct ino
 	int i;
 
 	/* remove the shortname */
-	dir->i_mtime = CURRENT_TIME;
-	dir->i_atime = CURRENT_TIME;
+	dir->i_mtime = dir->i_atime = CURRENT_TIME;
 	dir->i_version++;
 	mark_inode_dirty(dir);
 	de->name[0] = DELETED_FLAG;
@@ -939,8 +938,7 @@ int vfat_rmdir(struct inode *dir,struct 
 		return res;
 	}
 	dentry->d_inode->i_nlink = 0;
-	dentry->d_inode->i_mtime = CURRENT_TIME;
-	dentry->d_inode->i_atime = CURRENT_TIME;
+	dentry->d_inode->i_mtime = dentry->d_inode->i_atime = CURRENT_TIME;
 	fat_detach(dentry->d_inode);
 	mark_inode_dirty(dentry->d_inode);
 	/* releases bh */
@@ -965,8 +963,7 @@ int vfat_unlink(struct inode *dir, struc
 		return res;
 	}
 	dentry->d_inode->i_nlink = 0;
-	dentry->d_inode->i_mtime = CURRENT_TIME;
-	dentry->d_inode->i_atime = CURRENT_TIME;
+	dentry->d_inode->i_mtime = dentry->d_inode->i_atime = CURRENT_TIME;
 	fat_detach(dentry->d_inode);
 	mark_inode_dirty(dentry->d_inode);
 	/* releases bh */
@@ -1013,8 +1010,7 @@ out:
 
 mkdir_failed:
 	inode->i_nlink = 0;
-	inode->i_mtime = CURRENT_TIME;
-	inode->i_atime = CURRENT_TIME;
+	inode->i_mtime = inode->i_atime = CURRENT_TIME;
 	fat_detach(inode);
 	mark_inode_dirty(inode);
 	/* releases bh */

_

Signature · 1 line
OGAWA Hirofumi <[email protected]>