[Y2038] [RFC 1/4] fs: vfs: add accessors for inode times

2015-12-06 Thread Deepa Dinamani
This is in preparation for the y2038 changes for the vfs. vfs inode timestamps overflow after 2038. This abstracts the timestamp representation so that any logic to convert between the struct inode timestamps and other interfaces can be placed here. The plan is to globally change all references

[Y2038] [RFC 0/4] fs: support for 64-bit timestamps

2015-12-06 Thread Deepa Dinamani
This is the basic framework for the 64 bit time migration for filesystems. There might be some changes or additions required as I start adapting to filesystems. This gives the basic high level concept so that we can start discussing. Actual changes to vfs and other file systems will be in a

[Y2038] [RFC 3/4] fs: Add support for 64 bit time

2015-12-06 Thread Deepa Dinamani
The current representation of inode times in struct inode, struct iattr, struct kstat: struct timespec are not y2038 safe. Add provision to convert them to use 64 bit times in the future. struct inode uses struct inode time to maintain same size for times across 32 bit and 64 bit architectures.

[Y2038] [RFCv2 3/4] fs: Add support for 64 bit time

2015-12-06 Thread Deepa Dinamani
The current representation of inode times in struct inode, struct iattr, struct kstat: struct timespec are not y2038 safe. Add provision to convert them to use 64 bit times in the future. struct inode uses struct inode time to maintain same size for times across 32 bit and 64 bit architectures.

[Y2038] [RFCv2 2/4] fs: Add new data type for inode times

2015-12-06 Thread Deepa Dinamani
The current representation of inode times in struct inode: struct timespec is not y2038 safe. The 64 bit counterpart of struct timespec: struct timespec64 suffers from the shortcoming that the data type sizes are different on 32 bit and 64 bit systems. Introduce a new struct inode_time to

[Y2038] [RFCv2 4/4] fs: macros and functions support 64 bit time

2015-12-06 Thread Deepa Dinamani
The current file system macros and time functions are not y2038 safe because of the use of struct timespec. Change these to use timespec64. The change will be globally enabled along with all the other 64-bit time file system changes. Signed-off-by: Deepa Dinamani ---

[Y2038] [RFCv2 0/4] fs: support for 64-bit timestamps

2015-12-06 Thread Deepa Dinamani
This is the basic framework for the 64 bit time migration for filesystems. There might be some changes or additions required as I start adapting to filesystems. This gives the basic high level concept so that we can start discussing. Actual changes to vfs and other file systems will be in a