summaryrefslogtreecommitdiffstats
path: root/fs/udf
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2018-02-07 14:23:06 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2018-02-07 14:23:06 -0800
commitfe803f862804065af4f856764cd85cafa01fe794 (patch)
tree2636ab0c98268347a85398fe3830e95ff21440ed /fs/udf
parentffefb181728f7b97df49ceba18cacfb6c5ee19f2 (diff)
parentf463589a7cd2d156e3b6b64ee26588c0cdcce08a (diff)
downloadlinux-fe803f862804065af4f856764cd85cafa01fe794.tar.bz2
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
Pull UDF and ext2 fixlets from Jan Kara: "A UDF fix and an ext2 cleanup" * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: ext2: drop unneeded newline udf: Sanitize nanoseconds for time stamps
Diffstat (limited to 'fs/udf')
-rw-r--r--fs/udf/udftime.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/udf/udftime.c b/fs/udf/udftime.c
index 14626b34d13e..0927a4b2ecaf 100644
--- a/fs/udf/udftime.c
+++ b/fs/udf/udftime.c
@@ -62,6 +62,11 @@ udf_disk_stamp_to_time(struct timespec *dest, struct timestamp src)
dest->tv_sec -= offset * 60;
dest->tv_nsec = 1000 * (src.centiseconds * 10000 +
src.hundredsOfMicroseconds * 100 + src.microseconds);
+ /*
+ * Sanitize nanosecond field since reportedly some filesystems are
+ * recorded with bogus sub-second values.
+ */
+ dest->tv_nsec %= NSEC_PER_SEC;
return dest;
}