mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
fs: ceph: CURRENT_TIME with ktime_get_real_ts()
CURRENT_TIME is not y2038 safe. The macro will be deleted and all the references to it will be replaced by ktime_get_* apis. struct timespec is also not y2038 safe. Retain timespec for timestamp representation here as ceph uses it internally everywhere. These references will be changed to use struct timespec64 in a separate patch. The current_fs_time() api is being changed to use vfs struct inode* as an argument instead of struct super_block*. Set the new mds client request r_stamp field using ktime_get_real_ts() instead of using current_fs_time(). Also, since r_stamp is used as mtime on the server, use timespec_trunc() to truncate the timestamp, using the right granularity from the superblock. This api will be transitioned to be y2038 safe along with vfs. Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Deepa Dinamani <[email protected]> Reviewed-by: Arnd Bergmann <[email protected]> M: Ilya Dryomov <[email protected]> M: "Yan, Zheng" <[email protected]> M: Sage Weil <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
e37fea58f7
commit
1134e09100
4 changed files with 10 additions and 6 deletions
|
|
@ -1922,7 +1922,7 @@ static void rbd_osd_req_format_write(struct rbd_obj_request *obj_request)
|
|||
{
|
||||
struct ceph_osd_request *osd_req = obj_request->osd_req;
|
||||
|
||||
osd_req->r_mtime = CURRENT_TIME;
|
||||
ktime_get_real_ts(&osd_req->r_mtime);
|
||||
osd_req->r_data_offset = obj_request->offset;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue