Bug 68131

Summary: Time on FAT file system not correct after DST
Product: File System Reporter: nicofo (nicofo)
Component: FAT/VFAT/MSDOSAssignee: OGAWA Hirofumi (hirofumi)
Status: RESOLVED WILL_NOT_FIX    
Severity: normal CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.12.5 Subsystem:
Regression: No Bisected commit-id:
Attachments: File's time on Linux and Windows

Description nicofo 2014-01-04 10:15:38 UTC
Created attachment 120821 [details]
File's time on Linux and Windows

Description of problem:
The time of files FAT formatted devices (hard disk partition, USB key or SD cards ...) are not correct after DST (Daylight Saving Time). For example:
1) before DST, in summer time (21th of August) at 15:36, I saved a file "15h36.txt" on an USB stick
2) after DST, in winter time (6th of November) at 10:26, I saved another file "10h26.txt" on the USB stick

Results:
- On Windows => everthing is OK concerning the dates, before and after DST (see attachment)
- Idem with "DIR" MSDOS command
- On Linux => before DST, the time of the single file "15h36.txt" was correct
- On Linux => after DST, the time of the new file "10h26.txt" is correct BUT the time of the old file "15h36.txt" is now erroneous !! There is one hour shift ! (see Attachement, made with dolphin, but it is the same with other methods, like "ls" command)


How reproducible:
Always

  
Actual results:
There is a one-hour shift for files after DST => it is not possible to have every files at the correct time: if the ones after DST are correct, the ones before are not (and vice versa)

Expected results:
Every files should have the correct time displayed !
- This is the case in Windows (see attachement) and MSDOS
- This is the case in Linux for the other FS (EXT2/3, NTFS)

Remark: bug initially opened on Fedora bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=873894
Comment 1 Alan 2014-01-06 17:18:33 UTC
FAT stores files relative to a current timezone. Linux has no real notion of a timezone for the system (it depends on the users location and it's a multi-user device) so does its best to fix up. You can simply run the FAT file systems in UTC (tz=UTC mount option) but there is no way to fix this flaw in the design of the FAT filesystem and no intention of doing so