[PATCH] drivers: md: use ktime_get_real_seconds()

2015-11-12 Thread Deepa Dinamani
2106. Assumption is that the usage of v0.90 will be deprecated by year 2106. Timestamp fields in the on disk meta data for v1.0 version already use 64 bit data types. Remove the truncation of the bits while writing to or reading from these from the disk. Signed-off-by: Deepa Dinamani <deepa.

[PATCH] usb: misc: usbtest: Remove timeval usage

2015-11-04 Thread Deepa Dinamani
to isolate the handling of the testing timing measurement. The official testusb userspace tool can be changed in a separate patch to reflect the __u32 changes as well. It can use the usbtest_param_32 struct, since 32 bit seconds is long enough for test durations. Signed-off-by: Deepa Dinamani

[RFC 08/15] fs: Enable 64 bit time

2016-01-06 Thread Deepa Dinamani
64 bit time support is in place for all filesystems. Enable CONFIG_USES_64BIT_TIME to start using 64 bit time everywhere. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/Kconfig b/fs/Kconfig

[RFC 00/15] Add 64 bit timestamp support

2016-01-06 Thread Deepa Dinamani
nality. Patches 8-15 are only included to provide a complete picture. Deepa Dinamani (15): fs: add Kconfig entry CONFIG_FS_USES_64BIT_TIME vfs: Change all structures to support 64 bit time kernel: time: Add macros and functions to support 64 bit time vfs: Add support for vfs code to use 64 bi

[RFC 02/15] vfs: Change all structures to support 64 bit time

2016-01-06 Thread Deepa Dinamani
will be used directly. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/fs.h | 55 +++--- include/linux/stat.h | 6 +++--- include/linux/time64.h | 21 +++ 3 files changed, 72 insertions(+), 10 deletions(-) diff

[RFC 07/15] fs: ext4: convert to use 64 bit time

2016-01-06 Thread Deepa Dinamani
struct timespec is not y2038 safe. The ext4 uses time_extra fields to extend {a,c,m,cr} times until 2446. Use struct inode_timespec to replace timespec. inode_timespec will eventually be replaced by struct timespec64 when CONFIG_FS_USES_64BIT_TIME is enabled. Signed-off-by: Deepa Dinamani

[RFC 09/15] fs: cifs: replace inode_timespec with timespec64

2016-01-06 Thread Deepa Dinamani
Substitute inode_timespec aliases with timespec64. Since CONFIG_FS_USES_64BIT_TIME is enabled, internally all inode_timespec references are using timespec64 already. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/cifs/cache.c | 4 ++-- fs/cifs/cifsglob.h | 6 +++--- f

[RFC 15/15] fs: Drop CONFIG_FS_USES_64BIT_TIME

2016-01-06 Thread Deepa Dinamani
All file system code is using 64 bit time already and this config is no longer required. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/Kconfig | 10 -- 1 file changed, 10 deletions(-) diff --git a/fs/Kconfig b/fs/Kconfig index bfeefce..922893f 100644 --- a/fs/K

[RFC 05/15] fs: cifs: Add support for cifs to use 64 bit time

2016-01-06 Thread Deepa Dinamani
. This means we can get away with 32 bit unsigned sec field. But, the sec field uses long long to maintain uniformity in the kernel, where everyone uses the theoretical max. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/cifs/cache.c | 16 - fs/cifs/cifsencrypt.

[RFC 14/15] vfs: Remove inode_timespec aliases

2016-01-06 Thread Deepa Dinamani
Now that CONFIG_FS_USES_64BIT_TIME is enabled, the aliases for inode_timespec are no longer used and can be removed. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/time64.h | 21 - 1 file changed, 21 deletions(-) diff --git a/include/linux/ti

[RFC 06/15] fs: fat: convert fat to 64 bit time

2016-01-06 Thread Deepa Dinamani
CONFIG_FS_USES_64BIT_TIME is turned on. Use a larger data type for seconds in fat_time_fat2unix(). This extends timestamps beyond the year 2038. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/fat/dir.c | 7 +-- fs/fat/fat.h | 8 +--- fs/fat/file.c

[RFC 12/15] vfs: remove inode_timespec and timespec references

2016-01-06 Thread Deepa Dinamani
Substitute inode_timespec aliases with timespec64. Since CONFIG_FS_USES_64BIT_TIME is enabled, internally all inode_timespec references are using timespec64 already. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/attr.c| 2 +- fs/bad_inode.c | 2

[RFC 13/15] kernel: time: change inode_timespec to timespec64

2016-01-06 Thread Deepa Dinamani
Substitute inode_timespec aliases with timespec64. Since CONFIG_FS_USES_64BIT_TIME is enabled, internally all inode_timespec references are using timespec64 already. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Conflicts: kernel/time/time.c Conflicts: kerne

[RFC 01/15] fs: add Kconfig entry CONFIG_FS_USES_64BIT_TIME

2016-01-06 Thread Deepa Dinamani
This config will be used to #ifdef code that will be required for switching over all file systems to use 64 bit time. The config should remain turned off until all the support in vfs and other file systems has been added. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/K

[RFC 04/15] vfs: Add support for vfs code to use 64 bit time

2016-01-06 Thread Deepa Dinamani
to timespec_trunc() to fs_time_trunc(). The latter supports range checking on timestamps. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/attr.c| 15 +++--- fs/bad_inode.c | 10 +++-- fs/binfmt_misc.c | 7 +-- fs/i

[RFC 03/15] kernel: time: Add macros and functions to support 64 bit time

2016-01-06 Thread Deepa Dinamani
kernel does not internally use timestamps and it cannot decide how catastrophic these timestamp clamps can be for the on disk file system or user space applications that use it. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/libfs.c | 5 ++ fs/s

[RFC 10/15] fs: fat: replace inode_timespec with timespec64

2016-01-06 Thread Deepa Dinamani
Substitute inode_timespec aliases with timespec64. Since CONFIG_FS_USES_64BIT_TIME is enabled, internally all inode_timespec references are using timespec64 already. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/fat/dir.c | 4 ++-- fs/fat/fat.h | 6 +++-

[RFC 11/15] fs: ext4: replace inode_timespec with timespec64

2016-01-06 Thread Deepa Dinamani
Substitute inode_timespec aliases with timespec64. Since CONFIG_FS_USES_64BIT_TIME is enabled, internally all inode_timespec references are using timespec64 already. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/ext4/ext4.h| 14 +++--- fs/ext4/extents.

Re: [RFC 13/15] kernel: time: change inode_timespec to timespec64

2016-01-07 Thread Deepa Dinamani
On Thu, Jan 07, 2016 at 09:50:30AM +0100, Michael Adam wrote: > Hi, > > the patch contains a conflict resolution artifact.. > Thanks, I've fixed it in my tree now. I will wait to hear other comments before I send an update. -Deepa -- To unsubscribe from this list: send the line "unsubscribe

[PATCH] coccicheck: Allow for overriding spatch flags

2016-06-12 Thread Deepa Dinamani
. This allows for overriding of the default --no-show-diff option through SPFLAGS. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Julia Lawall <julia.law...@lip6.fr> Cc: Gilles Muller <gilles.mul...@lip6.fr> Cc: Nicolas Palix <nicolas.pa...@imag.fr> Cc: Michal Marek <mm

Re: [PATCH] coccicheck: Allow for overriding spatch flags

2016-06-12 Thread Deepa Dinamani
>> >> Documentation/coccinelle.txt suggests using the SPFLAGS >> >> make variable to pass additional options to spatch. >> >> >> >> Reorder the way SPFLAGS is added to FLAGS, to allow >> >> for options in the SPFLAGS to override the default >> >> --very-quiet option. >> >> >> >> Similarly,

Re: [PATCH] coccicheck: Allow for overriding spatch flags

2016-06-12 Thread Deepa Dinamani
>> Documentation/coccinelle.txt suggests using the SPFLAGS >> make variable to pass additional options to spatch. >> >> Reorder the way SPFLAGS is added to FLAGS, to allow >> for options in the SPFLAGS to override the default >> --very-quiet option. >> >> Similarly, rearrage the FLAGS for org or

Re: [PATCH 01/21] fs: Replace CURRENT_TIME_SEC with current_fs_time()

2016-06-10 Thread Deepa Dinamani
On Fri, Jun 10, 2016 at 3:21 PM, Arnd Bergmann <a...@arndb.de> wrote: > On Wednesday, June 8, 2016 10:04:45 PM CEST Deepa Dinamani wrote: >> CURRENT_TIME_SEC is not y2038 safe. current_fs_time() will >> be transitioned to use 64 bit time along with vfs in a >> separate

Re: [PATCH 18/21] fs: nfs: Make nfs boot time y2038 safe

2016-06-09 Thread Deepa Dinamani
>>boot_time is represented as a struct timespec. >>struct timespec and CURRENT_TIME are not y2038 safe. >>Overall, the plan is to use timespec64 for all internal >>kernel representation of timestamps. >>CURRENT_TIME will also be removed. >>Use struct timespec64 to represent boot_time. >>And,

Re: [PATCH 01/21] fs: Replace CURRENT_TIME_SEC with current_fs_time()

2016-06-09 Thread Deepa Dinamani
On Thu, Jun 9, 2016 at 12:15 PM, Linus Torvalds wrote: > On Thu, Jun 9, 2016 at 12:35 AM, Jan Kara wrote: >> >> You create line longer than 80 characters for affs and reiserfs. Please >> wrap those lines properly. > > No, please do *NOT* do things

Re: [PATCH 06/21] fs: udf: Replace CURRENT_TIME with current_fs_time()

2016-06-09 Thread Deepa Dinamani
On Thu, Jun 9, 2016 at 12:41 AM, Jan Kara <j...@suse.cz> wrote: > On Wed 08-06-16 22:04:50, Deepa Dinamani wrote: >> Logical Volume Integrity format is described to have the >> same timestamp format for "Recording Date and time" as >> the other [a,c,m]times

Re: [PATCH 17/21] audit: Use timespec64 to represent audit timestamps

2016-06-09 Thread Deepa Dinamani
On Thu, Jun 9, 2016 at 7:31 AM, Steve Grubb <sgr...@redhat.com> wrote: > On Wednesday, June 08, 2016 10:05:01 PM Deepa Dinamani wrote: >> Audit timestamps are recorded in string format into >> an audit buffer for a given context. >> These mark the entry timestamps for

Re: [Y2038] [PATCH 02/21] fs: ext4: Use current_fs_time() for inode timestamps

2016-06-14 Thread Deepa Dinamani
On Fri, Jun 10, 2016 at 3:19 PM, Arnd Bergmann <a...@arndb.de> wrote: > On Thursday, June 9, 2016 11:45:01 AM CEST Linus Torvalds wrote: >> On Wed, Jun 8, 2016 at 10:04 PM, Deepa Dinamani <deepa.ker...@gmail.com> >> wrote: >> > CURRENT_TIME_SEC

Re: [PATCH 15/21] time: Add time64_to_tm()

2016-06-15 Thread Deepa Dinamani
On Tue, Jun 14, 2016 at 2:18 PM, John Stultz <john.stu...@linaro.org> wrote: > On Wed, Jun 8, 2016 at 10:04 PM, Deepa Dinamani <deepa.ker...@gmail.com> > wrote: >> time_to_tm() takes time_t as an argument. >> time_t is not y2038 safe. >> Add time64_to_tm(

[PATCH 06/21] fs: udf: Replace CURRENT_TIME with current_fs_time()

2016-06-08 Thread Deepa Dinamani
nded to do range checks. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Jan Kara <j...@suse.com> --- fs/udf/super.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/udf/super.c b/fs/udf/super.c index 4942549..482a610 100644 --- a/fs/udf/super.

[PATCH 07/21] fs: cifs: Replace CURRENT_TIME by current_fs_time()

2016-06-08 Thread Deepa Dinamani
will be deleted before merging the aforementioned change. Change signature of helper cifs_all_info_to_fattr since it now needs both super_block and cifs_sb_info. Note: The inode timestamps read from the server are assumed to have correct granularity and range. Signed-off-by: Deepa Dinamani

[PATCH 18/21] fs: nfs: Make nfs boot time y2038 safe

2016-06-08 Thread Deepa Dinamani
() for the boot_time value. boot_time is used to construct the nfs client boot verifier. This will now wrap in 2106 instead of 2038 on 32-bit systems. The server only relies on the value being persistent until reboot so the wrapping should be fine. Signed-off-by: Deepa Dinamani <deepa.

[PATCH 00/21] Delete CURRENT_TIME and CURRENT_TIME_SEC macros

2016-06-08 Thread Deepa Dinamani
macro bug fixes are being handled in a series separate from transitioning vfs to use 64 bit timestamps. Some reviewers have requested not to change line wrapping only for the longer function call names, so checkpatch warnings for such cases are ignored in the patch series. Deepa Dinamani (21): fs

[PATCH 03/21] fs: ubifs: Use current_fs_time() for inode timestamps

2016-06-08 Thread Deepa Dinamani
in the super_block. The granularity check to call current_fs_time() or CURRENT_TIME_SEC is not required. Use current_fs_time() to obtain timestamps unconditionally. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Artem Bityutskiy <dedeki...@gmail.com> Cc: Adrian Hunter <adrian.hun..

[PATCH 01/21] fs: Replace CURRENT_TIME_SEC with current_fs_time()

2016-06-08 Thread Deepa Dinamani
when range checking is introduced. This works because alloc_super() fills in the the s_time_gran in super block to NSEC_PER_SEC. Also note that filesystem specific times like the birthtime, creation time that were using same interfaces to obtain time retain same logistics. Signed-off-by: Deepa

[PATCH 02/21] fs: ext4: Use current_fs_time() for inode timestamps

2016-06-08 Thread Deepa Dinamani
is not required. Use current_fs_time() to obtain timestamps unconditionally. Quota files are assumed to be on the same filesystem. Hence, use current_fs_time() for these files as well. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Theodore Ts'o" <ty...@mit.edu> Cc: Andre

[PATCH 05/21] fs: jfs: Replace CURRENT_TIME_SEC by current_fs_time()

2016-06-08 Thread Deepa Dinamani
jfs uses nanosecond granularity for filesystem timestamps. Only this assignemt is not using nanosecond granularity. Use current_fs_time() to get the right nanosecond granularity. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Dave Kleikamp <sha...@kernel.org> Cc:

[PATCH 13/21] fs: ocfs2: Use time64_t to represent orphan scan times

2016-06-08 Thread Deepa Dinamani
of real time as only delta scan times are relevant and these values are not persistent across reboots. The format string for the debug print is still using long as this is only the time elapsed since the last scan and long is sufficient to represent this value. Signed-off-by: Deepa Dinamani

[PATCH 15/21] time: Add time64_to_tm()

2016-06-08 Thread Deepa Dinamani
time_to_tm() takes time_t as an argument. time_t is not y2038 safe. Add time64_to_tm() that takes time64_t as an argument which is y2038 safe. The plan is to eventually replace all calls to time_to_tm() by time64_to_tm(). Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: John

[PATCH 17/21] audit: Use timespec64 to represent audit timestamps

2016-06-08 Thread Deepa Dinamani
1024 characters. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Paul Moore <p...@paul-moore.com> Cc: Eric Paris <epa...@redhat.com> Cc: linux-au...@redhat.com --- include/linux/audit.h | 4 ++-- kernel/audit.c| 10 +- kernel/audit.h| 2 +-

[PATCH 14/21] fs: ocfs2: Replace CURRENT_TIME with ktime_get_real_seconds()

2016-06-08 Thread Deepa Dinamani
CURRENT_TIME is not y2038 safe. Use y2038 safe ktime_get_real_seconds() here for timestamps. struct heartbeat_block's hb_seq is already 64 bits wide and accommodates times beyond y2038. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Mark Fasheh <mfas...@suse.com> Cc: Joe

[PATCH 08/21] fs: cifs: Replace CURRENT_TIME with ktime_get_real_ts()

2016-06-08 Thread Deepa Dinamani
timestamps for cifs is transitioned to use timespec64. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Steve French <sfre...@samba.org> Cc: linux-c...@vger.kernel.org Cc: samba-techni...@lists.samba.org --- fs/cifs/cifsencrypt.c | 4 +++- 1 file changed, 3 insertions(+), 1 delet

[PATCH 10/21] fs: f2fs: Use ktime_get_real_seconds for sit_info times

2016-06-08 Thread Deepa Dinamani
CURRENT_TIME_SEC is not y2038 safe. Replace use of CURRENT_TIME_SEC with ktime_get_real_seconds in segment timestamps used by GC algorithm including the segment mtime timestamps. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Jaegeuk Kim <jaeg...@kernel.org> Cc: Changma

[PATCH 11/21] drivers: staging: lustre: Replace CURRENT_TIME with current_fs_time()

2016-06-08 Thread Deepa Dinamani
of the effort current_fs_time() will be extended to do range checks. Hence, it is necessary for all file system timestamps to use current_fs_time(). Also change format string for prints so that these are valid when vfs is transitioned to use 64 bit timestamps. Signed-off-by: Deepa Dinamani <deepa.

[PATCH 09/21] fs: cifs: Replace CURRENT_TIME by get_seconds

2016-06-08 Thread Deepa Dinamani
server and client, and the largest timezone difference is in the range of one day. All cifs timestamps currently use timespec internally. This timestamp can also be transitioned into using timespec64 when all other timestamps for cifs is transitioned to use timespec64. Signed-off-by: Deepa Dinamani

[PATCH 12/21] block: rbd: Replace non inode CURRENT_TIME with current_fs_time()

2016-06-08 Thread Deepa Dinamani
of the effort current_fs_time() will be extended to do range checks. Hence, it is necessary for all file system timestamps to use current_fs_time(). Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Ilya Dryomov <idryo...@gmail.com> Cc: Sage Weil <s...@redhat.com> Cc: Alex Elder <

[PATCH 16/21] fnic: Use time64_t to represent trace timestamps

2016-06-08 Thread Deepa Dinamani
trace timestamps use struct timespec and CURRENT_TIME which are not y2038 safe. These timestamps are only part of the trace log on the machine and are not shared with the fnic. Replace then with y2038 safe struct timespec64 and ktime_get_real_ts64(), respectively. Signed-off-by: Deepa Dinamani

[PATCH 19/21] libceph: Remove CURRENT_TIME references

2016-06-08 Thread Deepa Dinamani
struct timespec64 in a separate patch. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Yan, Zheng" <z...@redhat.com> Cc: Sage Weil <s...@redhat.com> Cc: Ilya Dryomov <idryo...@gmail.com> Cc: ceph-de...@vger.kernel.org --- net/ceph/messenger.c | 6 --

[PATCH 20/21] libceph: Replace CURRENT_TIME with ktime_get_real_ts

2016-06-08 Thread Deepa Dinamani
struct timespec64 in a separate patch. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Yan, Zheng" <z...@redhat.com> Cc: Sage Weil <s...@redhat.com> Cc: Ilya Dryomov <idryo...@gmail.com> Cc: ceph-de...@vger.kernel.org --- net/ceph/osd_client.c | 4 ++--

[PATCH 21/21] time: Delete CURRENT_TIME_SEC and CURRENT_TIME macro

2016-06-08 Thread Deepa Dinamani
All uses of these macors have been replaced by other time functions. These macros are also not y2038 safe. And, all its usecases can be fulfilled by y2038 safe ktime_get_* variants. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: John Stultz <john.stu...@linaro.org> Cc: Tho

Re: [Y2038] [PATCH v2 09/24] fs: udf: Replace CURRENT_TIME with current_time()

2016-06-22 Thread Deepa Dinamani
On Wed, Jun 22, 2016 at 6:54 AM, Arnd Bergmann <a...@arndb.de> wrote: > On Sunday, June 19, 2016 5:27:08 PM CEST Deepa Dinamani wrote: >> mutex_lock(>s_alloc_mutex); >> lvidiu->impIdent.identSuffix[0] = UDF_OS_CLASS_UNIX; >> lvidiu->impId

Re: [PATCH v2 19/24] fnic: Use time64_t to represent trace timestamps

2016-06-22 Thread Deepa Dinamani
On Wed, Jun 22, 2016 at 7:09 AM, Arnd Bergmann <a...@arndb.de> wrote: > On Sunday, June 19, 2016 5:27:18 PM CEST Deepa Dinamani wrote: >> trace timestamps use struct timespec and CURRENT_TIME which >> are not y2038 safe. >> These timestamps are only part of t

Re: [PATCH v2 00/24] Delete CURRENT_TIME and CURRENT_TIME_SEC macros

2016-06-20 Thread Deepa Dinamani
> This version now looks ok to me. > > I do have a comment (or maybe just a RFD) for future work. > > It does strike me that once we actually change over the inode times to > use timespec64, the calling conventions are going to be fairly > horrendous on most 32-bit architectures. > > Gcc handles

Re: [PATCH 15/21] time: Add time64_to_tm()

2016-06-17 Thread Deepa Dinamani
On Fri, Jun 17, 2016 at 1:52 PM, John Stultz <john.stu...@linaro.org> wrote: > On Wed, Jun 15, 2016 at 10:44 AM, Deepa Dinamani <deepa.ker...@gmail.com> > wrote: >> On Tue, Jun 14, 2016 at 2:18 PM, John Stultz <john.stu...@linaro.org> wrote: >>> On Wed,

[PATCH v3 06/24] fs: jfs: Replace CURRENT_TIME_SEC by current_time()

2016-06-25 Thread Deepa Dinamani
jfs uses nanosecond granularity for filesystem timestamps. Only this assignment is not using nanosecond granularity. Use current_time() to get the right granularity. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Dave Kleikamp <sha...@kernel.org> Cc:

[PATCH v3 10/24] fs: udf: Replace CURRENT_TIME with current_time()

2016-06-25 Thread Deepa Dinamani
make them y2038 safe. As part of the effort current_time() will be extended to do range checks. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Jan Kara <j...@suse.com> Reviewed-by: Jan Kara <j...@suse.cz> --- fs/udf/super.c | 9 ++--- 1 file changed, 6 inserti

[PATCH v3 13/24] fs: cifs: Replace CURRENT_TIME by get_seconds

2016-06-25 Thread Deepa Dinamani
between server and client, and the largest timezone difference is in the range of one day. All cifs timestamps currently use timespec internally. This timestamp can also be transitioned into using timespec64 when all other timestamps for cifs is transitioned to use timespec64. Signed-off-by: Deepa

[PATCH v3 09/24] fs: btrfs: Use ktime_get_real_ts for root ctime

2016-06-25 Thread Deepa Dinamani
timespec64 as well. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Chris Mason <c...@fb.com> Cc: Josef Bacik <jba...@fb.com> Cc: David Sterba <dste...@suse.com> Cc: linux-bt...@vger.kernel.org Acked-by: David Sterba <dste...@suse.com> --- fs/btrfs/root-tre

[PATCH v3 14/24] fs: f2fs: Use ktime_get_real_seconds for sit_info times

2016-06-25 Thread Deepa Dinamani
CURRENT_TIME_SEC is not y2038 safe. Replace use of CURRENT_TIME_SEC with ktime_get_real_seconds in segment timestamps used by GC algorithm including the segment mtime timestamps. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Jaegeuk Kim <jaeg...@kernel.org> Cc: Changma

[PATCH v3 01/24] vfs: Add current_time() api

2016-06-25 Thread Deepa Dinamani
-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/inode.c | 23 +++ include/linux/fs.h | 1 + 2 files changed, 24 insertions(+) diff --git a/fs/inode.c b/fs/inode.c index e171f7b..80b6898 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -2043,3 +2043,26 @

[PATCH v3 05/24] fs: Replace current_fs_time() with current_time()

2016-06-25 Thread Deepa Dinamani
to current_fs_time() to use the new current_time() function instead. current_fs_time() will be deleted. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- drivers/char/sonypi.c | 2 +- drivers/platform/x86/sony-laptop.c | 2 +- fs/attr.c | 2

[PATCH v3 12/24] fs: cifs: Replace CURRENT_TIME with ktime_get_real_ts()

2016-06-25 Thread Deepa Dinamani
timestamps for cifs is transitioned to use timespec64. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Steve French <sfre...@samba.org> --- fs/cifs/cifsencrypt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/cifs/cifsencrypt.c b/fs/cifs/cifsencrypt.c i

[PATCH v3 07/24] fs: ext4: Use current_time() for inode timestamps

2016-06-25 Thread Deepa Dinamani
() or CURRENT_TIME_SEC is not required. Use current_time() directly to obtain timestamps unconditionally, and remove ext4_current_time(). Quota files are assumed to be on the same filesystem. Hence, use current_time() for these files as well. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Th

[PATCH v3 11/24] fs: cifs: Replace CURRENT_TIME by current_time()

2016-06-25 Thread Deepa Dinamani
will be deleted before merging the aforementioned change. Change signature of helper cifs_all_info_to_fattr since it now needs both super_block and cifs_sb_info. Note: The inode timestamps read from the server are assumed to have correct granularity and range. Signed-off-by: Deepa Dinamani

[PATCH v3 15/24] drivers: staging: lustre: Replace CURRENT_TIME with current_time()

2016-06-25 Thread Deepa Dinamani
current_time() will be extended to do range checks. Hence, it is necessary for all file system timestamps to use current_time(). Also change format string for prints so that these are valid when vfs is transitioned to use 64 bit timestamps. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com&

[PATCH v3 02/24] fs: proc: Delete inode time initializations in proc_alloc_inode()

2016-06-25 Thread Deepa Dinamani
() was used to assign times in proc_alloc_inode(). Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Reported-by: Fengguang Wu <fengguang...@intel.com> [0-day test robot] --- fs/proc/inode.c | 1 - 1 file changed, 1 deletion(-) diff --git a/fs/proc/inode.c b/fs/proc/inode.c index 6b18

[PATCH v3 20/24] block: Replace CURRENT_TIME with ktime_get_real_ts

2016-06-25 Thread Deepa Dinamani
struct timespec64 in a separate patch. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Ilya Dryomov <idryo...@gmail.com> Cc: Sage Weil <s...@redhat.com> Cc: Alex Elder <el...@kernel.org> Cc: ceph-de...@vger.kernel.org --- drivers/block/rbd.c | 2 +- 1 file ch

[PATCH v3 23/24] time: Delete current_fs_time() function

2016-06-25 Thread Deepa Dinamani
All uses of the current_fs_time() function have been replaced by other time interfaces. And, its use cases can be fulfilled by current_time() or ktime_get_* variants. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: John Stultz <john.stu...@linaro.org> Cc: Thomas

[PATCH v3 08/24] fs: ubifs: Replace CURRENT_TIME_SEC with current_time

2016-06-25 Thread Deepa Dinamani
super_block. The granularity check to call current_fs_time() or CURRENT_TIME_SEC is not required. Use current_time() directly to update inode timestamp. Use timespec_trunc during file system creation, before the first inode is created. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc:

[PATCH v3 19/24] fs: nfs: Make nfs boot time y2038 safe

2016-06-25 Thread Deepa Dinamani
of ktime_t for the authsys_parms stamp field. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Trond Myklebust <trond.mykleb...@primarydata.com> Cc: Anna Schumaker <anna.schuma...@netapp.com> Cc: linux-...@vger.kernel.org --- fs/nfs/client.c | 2 +- fs/nfs/netns.h

[PATCH v3 22/24] fs: ceph: Replace current_fs_time for request stamp

2016-06-25 Thread Deepa Dinamani
() to truncate the timestamp, using the right granularity from the superblock. This api will be transitioned to be y2038 safe along with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Yan, Zheng" <z...@redhat.com> Cc: Sage Weil <s...@redhat.com> Cc: Ilya

[PATCH v3 21/24] libceph: Replace CURRENT_TIME with ktime_get_real_ts

2016-06-25 Thread Deepa Dinamani
struct timespec64 in a separate patch. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: "Yan, Zheng" <z...@redhat.com> Cc: Sage Weil <s...@redhat.com> Cc: Ilya Dryomov <idryo...@gmail.com> Cc: ceph-de...@vger.kernel.org --- net/ceph/messenger.c | 6 --

[PATCH v3 24/24] time: Delete CURRENT_TIME_SEC

2016-06-25 Thread Deepa Dinamani
All uses of CURRENT_TIME_SEC macro have been replaced by other time functions. This macro is also not y2038 safe. And, all its use cases can be fulfilled by y2038 safe ktime_get_* variants. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: John Stultz <john.stu...@linaro.org>

[PATCH v3 16/24] fs: ocfs2: Use time64_t to represent orphan scan times

2016-06-25 Thread Deepa Dinamani
of real time as only delta scan times are relevant and these values are not persistent across reboots. The format string for the debug print is still using long as this is only the time elapsed since the last scan and long is sufficient to represent this value. Signed-off-by: Deepa Dinamani

[PATCH v3 17/24] fs: ocfs2: Replace CURRENT_TIME with ktime_get_real_seconds()

2016-06-25 Thread Deepa Dinamani
CURRENT_TIME is not y2038 safe. Use y2038 safe ktime_get_real_seconds() here for timestamps. struct heartbeat_block's hb_seq and deletetion time are already 64 bits wide and accommodate times beyond y2038. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Mark Fasheh <mfas...

[PATCH v3 18/24] audit: Use timespec64 to represent audit timestamps

2016-06-25 Thread Deepa Dinamani
1024 characters. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Paul Moore <p...@paul-moore.com> Cc: Eric Paris <epa...@redhat.com> Cc: linux-au...@redhat.com Acked-by: Paul Moore <p...@paul-moore.com> Acked-by: Richard Guy Briggs <r...@redhat.com> -

Re: [PATCH v2 07/24] fs: ubifs: Replace CURRENT_TIME_SEC with current_time

2016-06-24 Thread Deepa Dinamani
>> @@ -84,6 +84,8 @@ static int create_default_filesystem(struct ubifs_info *c) >> int min_leb_cnt = UBIFS_MIN_LEB_CNT; >> long long tmp64, main_bytes; >> __le64 tmp_le64; >> + __le32 tmp_le32; >> + struct timespec ts; >> >> /* Some functions called from

Re: [PATCH v2 06/24] fs: ext4: Use current_time() for inode timestamps

2016-06-24 Thread Deepa Dinamani
>> @@ -3727,6 +3727,7 @@ static int ext4_cross_rename(struct inode *old_dir, >> struct dentry *old_dentry, >> }; >> u8 new_file_type; >> int retval; >> + struct timespec ctime; >> >> if ((ext4_encrypted_inode(old_dir) || >>

[PATCH v3 03/24] fs: Replace CURRENT_TIME with current_time() for inode timestamps

2016-06-25 Thread Deepa Dinamani
to change timestamps in different inodes, it is because they share the same time granularity. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Acked-by: Felipe Balbi <ba...@kernel.org> Acked-by: Steven Whitehouse <swhit...@redhat.com> Acked-by: Ryusuke Konishi <konishi.

[PATCH v3 04/24] fs: Replace CURRENT_TIME_SEC with current_time() for inode timestamps

2016-06-25 Thread Deepa Dinamani
range checking is introduced. This works because alloc_super() fills in the the s_time_gran in super block to NSEC_PER_SEC. Also note that filesystem specific times like the birthtime, creation time that were using same interfaces to obtain time retain same logistics. Signed-off-by: Deepa

[PATCH v3 00/24] Delete CURRENT_TIME_SEC and replace current_fs_time()

2016-06-25 Thread Deepa Dinamani
in inode. * Minor fixes according to Arnd's comments. * Leave out the fnic and deletion of CURRENT_TIME to be submitted after 4.8 rc1. Deepa Dinamani (24): vfs: Add current_time() api fs: proc: Delete inode time initializations in proc_alloc_inode() fs: Replace CURRENT_TIME with current_time

[PATCH v2 10/10] fs: btrfs: Replace CURRENT_TIME by current_fs_time()

2016-02-06 Thread Deepa Dinamani
CURRENT_TIME macro is not appropriate for filesystems as it doesn't use the right granularity for filesystem timestamps. Use current_fs_time() instead. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> Cc: Chris Mason <c...@fb.com> Cc: Josef Bacik <jba...@fb.com> Cc:

[RFC v2a 08/12] fs: btrfs: Change timespec data types to use vfs_time

2016-02-12 Thread Deepa Dinamani
to be represented corretly. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/btrfs/file.c| 6 +++--- fs/btrfs/ioctl.c | 4 ++-- fs/btrfs/root-tree.c | 2 +- fs/btrfs/transaction.c | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/fs/btrfs/file.c b/fs

[RFC v2a 12/12] fs: xfs: change inode times to use vfs_time data type

2016-02-12 Thread Deepa Dinamani
and this needs to change along with vfs inode times. All the accesses to or from struct inode timestamps and current_fs_time() are also changed to vfs_time. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/xfs/xfs_inode.c | 2 +- fs/xfs/xfs_iops.c| 2 +-

[RFC v2a 10/12] fs: ceph: Replace timespec data type with vfs_time

2016-02-12 Thread Deepa Dinamani
type for accessing inode timestamps. This is necessary as these accesses need to switch to using 64 bit timestamps along with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/ceph/cache.c | 2 +- fs/ceph/caps.c | 6 +++--- fs/ceph/dir.c| 4 ++-- fs/ceph/

[RFC v2a 11/12] net: ceph: use vfs_time data type instead of timespec

2016-02-12 Thread Deepa Dinamani
are passed in as arguments to functions using inode timestamps. Hence, these need to change along with vfs to support 64 bit timestamps. vfs_time helps do this transition. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/ceph/messenger.h | 1 + include/linux/ceph/osd_cl

[RFC v2a 09/12] fs: ceph: Change encode and decode functions to use vfs_time

2016-02-12 Thread Deepa Dinamani
same functions it is necessary to use vfs_time here as well. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/ceph/decode.h | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/include/linux/ceph/decode.h b/include/linux/ceph/decode.h index 6

[RFC v2a 07/12] fs: btrfs: Use vfs_time data type for btrfs_update_time()

2016-02-12 Thread Deepa Dinamani
callback function for inode operations. This accepts inode timestamp as an argument. And, needs to switch to 64 bit time representation along with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/btrfs/inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --gi

[RFC v2c 0/8] vfs 64 bit time transition proposal

2016-02-12 Thread Deepa Dinamani
be confused because of 1. 3. Has the same problem as changing all filesystems to 64 bit: the switch over to timespec64 has to be done globally in a single, huge patch for some filesystems. Deepa Dinamani (8): vfs: Add vfs_time abstractions fs: cifs: Change auxdata to struct timespec64

[RFC v2c 1/8] vfs: Add vfs_time abstractions

2016-02-12 Thread Deepa Dinamani
interfacing with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/fs.h | 21 + 1 file changed, 21 insertions(+) diff --git a/include/linux/fs.h b/include/linux/fs.h index 4af612f..56e6373 100644 --- a/include/linux/fs.h +++ b/include/linu

[RFC v2a 05/12] fs: cifs: Use vfs_time_get_real_* time functions

2016-02-12 Thread Deepa Dinamani
in the patch are passed into functions that also take inode times as argument. Hence, using vfs_time aliases here is necessary so that they can change to use 64 bit time along with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/cifs/cifsencrypt.c | 2 +- fs/cifs/cifssmb.c

[RFC v2a 04/12] fs: cifs: Make cnvrtDosUnixTm() y2038 safe

2016-02-12 Thread Deepa Dinamani
max on DOS times is 2107, its APIs only support until the year 2099. This means we can get away with 32 bit unsigned sec field. But, the sec field uses long long to maintain uniformity in the kernel as the theoretical max is used everywhere else. Signed-off-by: Deepa Dinamani <deepa.

[RFC v2a 06/12] fs: btrfs: Change btrfs_inode.i_otime to use vfs_time data type

2016-02-12 Thread Deepa Dinamani
. Use vfs_time data type to make the transition to 64 bit time along with the other inode timestamps. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/btrfs/btrfs_inode.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/btrfs/btrfs_inode.h b/fs/btrfs/btrfs_i

[RFC v2a 02/12] fs: cifs: Change cifs_fscache_inode_auxdata to use vfs_time data type

2016-02-12 Thread Deepa Dinamani
in is a constant with sufficient space to accommodate auxdata. 3. The keylen subtracted from datalen is a constant and also leaves in sufficient space for increase. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/cifs/cache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 del

[RFC v2a 00/12] vfs 64 bit time transition proposal

2016-02-12 Thread Deepa Dinamani
only includes patches for steps 1 and 2. Concerns 1.Before the vfs layer is done, it might be confusing to developers as individual filesystems now will have two options for access: timespec and vfs_time type. Deepa Dinamani (12): vfs: Add vfs_time abstractions fs: cifs: Change

[RFC v2b 4/5] fs: ceph: Use vfs timestamp accessors

2016-02-12 Thread Deepa Dinamani
systems, use vfs_time functions to access inode times. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/ceph/addr.c | 20 +- fs/ceph/cache.c | 4 +-- fs/ceph/caps.c | 4 +-- fs/ceph/file.c | 4 ++- fs/ceph/inode.c

[RFC v2b 2/5] fs: cifs: Use vfs_time accessors

2016-02-12 Thread Deepa Dinamani
vfs_time access functions to access inode times. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/cifs/cache.c | 12 fs/cifs/inode.c | 31 ++- 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/fs/cifs/cache.c b/fs/cifs/cache.c

[RFC v2b 3/5] fs: btrfs: Use vfs_time accessors

2016-02-12 Thread Deepa Dinamani
callback. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- fs/btrfs/file.c | 14 +- fs/btrfs/inode.c | 4 ++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c index 610f569..3bccb97 100644 --- a/fs/btrfs/file.c +++ b/fs

[RFC v2a 01/12] vfs: Add vfs_time abstractions

2016-02-12 Thread Deepa Dinamani
conversions in API's interfacing with vfs. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.com> --- include/linux/fs.h | 19 +++ 1 file changed, 19 insertions(+) diff --git a/include/linux/fs.h b/include/linux/fs.h index 4af612f..ec25603 100644 --- a/include/linux/fs.h

[RFC v2b 5/5] fs: xfs: change inode times to use vfs_time data type

2016-02-12 Thread Deepa Dinamani
systems, use vfs_time functions to access inode times. current_fs_time() will change along with vfs timestamp data type changes. xfs_vn_update_time() is a .update callback for inode operations and this needs to change along with vfs inode times. Signed-off-by: Deepa Dinamani <deepa.ker...@gmail.

  1   2   3   4   5   6   7   8   9   10   >