aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2009-04-06 22:02:00 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-04-07 11:31:20 -0400
commit612392307cb09e49051225092cbbd7049bd8db93 (patch)
tree401a227d0fae219aae7b682bb613bb388b4a7682 /include
parente339ad31f59925b48a92ee3947692fdf9758b8c7 (diff)
nilfs2: support nanosecond timestamp
After a review of user's feedback for finding out other compatibility issues, I found nilfs improperly initializes timestamps in inode; CURRENT_TIME was used there instead of CURRENT_TIME_SEC even though nilfs didn't have nanosecond timestamps on disk. A few users gave us the report that the tar program sometimes failed to expand symbolic links on nilfs, and it turned out to be the cause. Instead of applying the above displacement, I've decided to support nanosecond timestamps on this occation. Fortunetaly, a needless 64-bit field was in the nilfs_inode struct, and I found it's available for this purpose without impact for the users. So, this will do the enhancement and resolve the tar problem. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nilfs2_fs.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/linux/nilfs2_fs.h b/include/linux/nilfs2_fs.h
index 1275b3099535..79fec6af3f9f 100644
--- a/include/linux/nilfs2_fs.h
+++ b/include/linux/nilfs2_fs.h
@@ -67,9 +67,10 @@
67 * struct nilfs_inode - structure of an inode on disk 67 * struct nilfs_inode - structure of an inode on disk
68 * @i_blocks: blocks count 68 * @i_blocks: blocks count
69 * @i_size: size in bytes 69 * @i_size: size in bytes
70 * @i_ctime: creation time 70 * @i_ctime: creation time (seconds)
71 * @i_mtime: modification time 71 * @i_mtime: modification time (seconds)
72 * @i_dtime: deletion time 72 * @i_ctime_nsec: creation time (nano seconds)
73 * @i_mtime_nsec: modification time (nano seconds)
73 * @i_uid: user id 74 * @i_uid: user id
74 * @i_gid: group id 75 * @i_gid: group id
75 * @i_mode: file mode 76 * @i_mode: file mode
@@ -85,7 +86,8 @@ struct nilfs_inode {
85 __le64 i_size; 86 __le64 i_size;
86 __le64 i_ctime; 87 __le64 i_ctime;
87 __le64 i_mtime; 88 __le64 i_mtime;
88 __le64 i_dtime; 89 __le32 i_ctime_nsec;
90 __le32 i_mtime_nsec;
89 __le32 i_uid; 91 __le32 i_uid;
90 __le32 i_gid; 92 __le32 i_gid;
91 __le16 i_mode; 93 __le16 i_mode;