diff options
author | Theodore Ts'o <tytso@mit.edu> | 2014-02-16 19:29:32 -0500 |
---|---|---|
committer | Jiri Slaby <jslaby@suse.cz> | 2014-03-05 17:13:40 +0100 |
commit | 0fab4fa22023f408f6fc181b5029dcb9b8ff9fe3 (patch) | |
tree | 9a6b208a911b3c66bb4ffdef0db6cb9a3a705220 /fs/ext4/ext4.h | |
parent | 50e31fc3f09c418d312d4129d8f01f607087bd5a (diff) | |
download | lwn-0fab4fa22023f408f6fc181b5029dcb9b8ff9fe3.tar.gz lwn-0fab4fa22023f408f6fc181b5029dcb9b8ff9fe3.zip |
ext4: don't leave i_crtime.tv_sec uninitialized
commit 19ea80603715d473600cd993b9987bc97d042e02 upstream.
If the i_crtime field is not present in the inode, don't leave the
field uninitialized.
Fixes: ef7f38359 ("ext4: Add nanosecond timestamps")
Reported-by: Vegard Nossum <vegard.nossum@oracle.com>
Tested-by: Vegard Nossum <vegard.nossum@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 745faaa7ef95..a9d2bf941066 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -770,6 +770,8 @@ do { \ if (EXT4_FITS_IN_INODE(raw_inode, einode, xtime)) \ (einode)->xtime.tv_sec = \ (signed)le32_to_cpu((raw_inode)->xtime); \ + else \ + (einode)->xtime.tv_sec = 0; \ if (EXT4_FITS_IN_INODE(raw_inode, einode, xtime ## _extra)) \ ext4_decode_extra_time(&(einode)->xtime, \ raw_inode->xtime ## _extra); \ |