From mboxrd@z Thu Jan 1 00:00:00 1970 From: Deepa Dinamani Subject: [PATCH v4 22/26] libceph: Replace CURRENT_TIME with ktime_get_real_ts Date: Sat, 13 Aug 2016 15:48:34 -0700 Message-ID: <1471128518-24075-23-git-send-email-deepa.kernel@gmail.com> References: <1471128518-24075-1-git-send-email-deepa.kernel@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1471128518-24075-1-git-send-email-deepa.kernel@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: y2038-bounces@lists.linaro.org Sender: "Y2038" To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Cc: tytso@mit.edu, Sage Weil , arnd@arndb.de, y2038@lists.linaro.org, ceph-devel@vger.kernel.org, "Yan, Zheng" , viro@zeniv.linux.org.uk, tglx@linutronix.de, torvalds@linux-foundation.org, Ilya Dryomov List-Id: ceph-devel.vger.kernel.org Q1VSUkVOVF9USU1FIGlzIG5vdCB5MjAzOCBzYWZlLgpUaGUgbWFjcm8gd2lsbCBiZSBkZWxldGVk IGFuZCBhbGwgdGhlIHJlZmVyZW5jZXMgdG8gaXQKd2lsbCBiZSByZXBsYWNlZCBieSBrdGltZV9n ZXRfKiBhcGlzLgoKc3RydWN0IHRpbWVzcGVjIGlzIGFsc28gbm90IHkyMDM4IHNhZmUuClJldGFp biB0aW1lc3BlYyBmb3IgdGltZXN0YW1wIHJlcHJlc2VudGF0aW9uIGhlcmUgYXMgY2VwaAp1c2Vz IGl0IGludGVybmFsbHkgZXZlcnl3aGVyZS4KVGhlc2UgcmVmZXJlbmNlcyB3aWxsIGJlIGNoYW5n ZWQgdG8gdXNlIHN0cnVjdCB0aW1lc3BlYzY0CmluIGEgc2VwYXJhdGUgcGF0Y2guCgpTaWduZWQt b2ZmLWJ5OiBEZWVwYSBEaW5hbWFuaSA8ZGVlcGEua2VybmVsQGdtYWlsLmNvbT4KUmV2aWV3ZWQt Ynk6IEFybmQgQmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+CkNjOiAiWWFuLCBaaGVuZyIgPHp5YW5A cmVkaGF0LmNvbT4KQ2M6IFNhZ2UgV2VpbCA8c2FnZUByZWRoYXQuY29tPgpDYzogSWx5YSBEcnlv bW92IDxpZHJ5b21vdkBnbWFpbC5jb20+CkNjOiBjZXBoLWRldmVsQHZnZXIua2VybmVsLm9yZwot LS0KIG5ldC9jZXBoL21lc3Nlbmdlci5jICB8IDYgKysrKy0tCiBuZXQvY2VwaC9vc2RfY2xpZW50 LmMgfCA0ICsrLS0KIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL25ldC9jZXBoL21lc3Nlbmdlci5jIGIvbmV0L2NlcGgvbWVzc2Vu Z2VyLmMKaW5kZXggYTU1MDI4OS4uMTgyNWVlZCAxMDA2NDQKLS0tIGEvbmV0L2NlcGgvbWVzc2Vu Z2VyLmMKKysrIGIvbmV0L2NlcGgvbWVzc2VuZ2VyLmMKQEAgLTEzNjYsOCArMTM2Niw5IEBAIHN0 YXRpYyB2b2lkIHByZXBhcmVfd3JpdGVfa2VlcGFsaXZlKHN0cnVjdCBjZXBoX2Nvbm5lY3Rpb24g KmNvbikKIAlkb3V0KCJwcmVwYXJlX3dyaXRlX2tlZXBhbGl2ZSAlcFxuIiwgY29uKTsKIAljb25f b3V0X2t2ZWNfcmVzZXQoY29uKTsKIAlpZiAoY29uLT5wZWVyX2ZlYXR1cmVzICYgQ0VQSF9GRUFU VVJFX01TR1JfS0VFUEFMSVZFMikgewotCQlzdHJ1Y3QgdGltZXNwZWMgbm93ID0gQ1VSUkVOVF9U SU1FOworCQlzdHJ1Y3QgdGltZXNwZWMgbm93OwogCisJCWt0aW1lX2dldF9yZWFsX3RzKCZub3cp OwogCQljb25fb3V0X2t2ZWNfYWRkKGNvbiwgc2l6ZW9mKHRhZ19rZWVwYWxpdmUyKSwgJnRhZ19r ZWVwYWxpdmUyKTsKIAkJY2VwaF9lbmNvZGVfdGltZXNwZWMoJmNvbi0+b3V0X3RlbXBfa2VlcGFs aXZlMiwgJm5vdyk7CiAJCWNvbl9vdXRfa3ZlY19hZGQoY29uLCBzaXplb2YoY29uLT5vdXRfdGVt cF9rZWVwYWxpdmUyKSwKQEAgLTMxNDksOCArMzE1MCw5IEBAIGJvb2wgY2VwaF9jb25fa2VlcGFs aXZlX2V4cGlyZWQoc3RydWN0IGNlcGhfY29ubmVjdGlvbiAqY29uLAogewogCWlmIChpbnRlcnZh bCA+IDAgJiYKIAkgICAgKGNvbi0+cGVlcl9mZWF0dXJlcyAmIENFUEhfRkVBVFVSRV9NU0dSX0tF RVBBTElWRTIpKSB7Ci0JCXN0cnVjdCB0aW1lc3BlYyBub3cgPSBDVVJSRU5UX1RJTUU7CisJCXN0 cnVjdCB0aW1lc3BlYyBub3c7CiAJCXN0cnVjdCB0aW1lc3BlYyB0czsKKwkJa3RpbWVfZ2V0X3Jl YWxfdHMoJm5vdyk7CiAJCWppZmZpZXNfdG9fdGltZXNwZWMoaW50ZXJ2YWwsICZ0cyk7CiAJCXRz ID0gdGltZXNwZWNfYWRkKGNvbi0+bGFzdF9rZWVwYWxpdmVfYWNrLCB0cyk7CiAJCXJldHVybiB0 aW1lc3BlY19jb21wYXJlKCZub3csICZ0cykgPj0gMDsKZGlmZiAtLWdpdCBhL25ldC9jZXBoL29z ZF9jbGllbnQuYyBiL25ldC9jZXBoL29zZF9jbGllbnQuYwppbmRleCBhOTdlN2I1Li5hOTliY2Ri IDEwMDY0NAotLS0gYS9uZXQvY2VwaC9vc2RfY2xpZW50LmMKKysrIGIvbmV0L2NlcGgvb3NkX2Ns aWVudC5jCkBAIC0zNjAwLDcgKzM2MDAsNyBAQCBjZXBoX29zZGNfd2F0Y2goc3RydWN0IGNlcGhf b3NkX2NsaWVudCAqb3NkYywKIAljZXBoX29pZF9jb3B5KCZscmVxLT50LmJhc2Vfb2lkLCBvaWQp OwogCWNlcGhfb2xvY19jb3B5KCZscmVxLT50LmJhc2Vfb2xvYywgb2xvYyk7CiAJbHJlcS0+dC5m bGFncyA9IENFUEhfT1NEX0ZMQUdfV1JJVEUgfCBDRVBIX09TRF9GTEFHX09ORElTSzsKLQlscmVx LT5tdGltZSA9IENVUlJFTlRfVElNRTsKKwlrdGltZV9nZXRfcmVhbF90cygmbHJlcS0+bXRpbWUp OwogCiAJbHJlcS0+cmVnX3JlcSA9IGFsbG9jX2xpbmdlcl9yZXF1ZXN0KGxyZXEpOwogCWlmICgh bHJlcS0+cmVnX3JlcSkgewpAQCAtMzY1OCw3ICszNjU4LDcgQEAgaW50IGNlcGhfb3NkY191bndh dGNoKHN0cnVjdCBjZXBoX29zZF9jbGllbnQgKm9zZGMsCiAJY2VwaF9vaWRfY29weSgmcmVxLT5y X2Jhc2Vfb2lkLCAmbHJlcS0+dC5iYXNlX29pZCk7CiAJY2VwaF9vbG9jX2NvcHkoJnJlcS0+cl9i YXNlX29sb2MsICZscmVxLT50LmJhc2Vfb2xvYyk7CiAJcmVxLT5yX2ZsYWdzID0gQ0VQSF9PU0Rf RkxBR19XUklURSB8IENFUEhfT1NEX0ZMQUdfT05ESVNLOwotCXJlcS0+cl9tdGltZSA9IENVUlJF TlRfVElNRTsKKwlrdGltZV9nZXRfcmVhbF90cygmcmVxLT5yX210aW1lKTsKIAlvc2RfcmVxX29w X3dhdGNoX2luaXQocmVxLCAwLCBscmVxLT5saW5nZXJfaWQsCiAJCQkgICAgICBDRVBIX09TRF9X QVRDSF9PUF9VTldBVENIKTsKIAotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fClkyMDM4IG1haWxpbmcgbGlzdApZMjAzOEBsaXN0cy5saW5h cm8ub3JnCmh0dHBzOi8vbGlzdHMubGluYXJvLm9yZy9tYWlsbWFuL2xpc3RpbmZvL3kyMDM4Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Deepa Dinamani To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Cc: arnd@arndb.de, tglx@linutronix.de, torvalds@linux-foundation.org, tytso@mit.edu, viro@zeniv.linux.org.uk, y2038@lists.linaro.org, "Yan, Zheng" , Sage Weil , Ilya Dryomov , ceph-devel@vger.kernel.org Subject: [PATCH v4 22/26] libceph: Replace CURRENT_TIME with ktime_get_real_ts Date: Sat, 13 Aug 2016 15:48:34 -0700 Message-Id: <1471128518-24075-23-git-send-email-deepa.kernel@gmail.com> In-Reply-To: <1471128518-24075-1-git-send-email-deepa.kernel@gmail.com> References: <1471128518-24075-1-git-send-email-deepa.kernel@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: 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. Signed-off-by: Deepa Dinamani Reviewed-by: Arnd Bergmann Cc: "Yan, Zheng" Cc: Sage Weil Cc: Ilya Dryomov Cc: ceph-devel@vger.kernel.org --- net/ceph/messenger.c | 6 ++++-- net/ceph/osd_client.c | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c index a550289..1825eed 100644 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c @@ -1366,8 +1366,9 @@ static void prepare_write_keepalive(struct ceph_connection *con) dout("prepare_write_keepalive %p\n", con); con_out_kvec_reset(con); if (con->peer_features & CEPH_FEATURE_MSGR_KEEPALIVE2) { - struct timespec now = CURRENT_TIME; + struct timespec now; + ktime_get_real_ts(&now); con_out_kvec_add(con, sizeof(tag_keepalive2), &tag_keepalive2); ceph_encode_timespec(&con->out_temp_keepalive2, &now); con_out_kvec_add(con, sizeof(con->out_temp_keepalive2), @@ -3149,8 +3150,9 @@ bool ceph_con_keepalive_expired(struct ceph_connection *con, { if (interval > 0 && (con->peer_features & CEPH_FEATURE_MSGR_KEEPALIVE2)) { - struct timespec now = CURRENT_TIME; + struct timespec now; struct timespec ts; + ktime_get_real_ts(&now); jiffies_to_timespec(interval, &ts); ts = timespec_add(con->last_keepalive_ack, ts); return timespec_compare(&now, &ts) >= 0; diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c index a97e7b5..a99bcdb 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -3600,7 +3600,7 @@ ceph_osdc_watch(struct ceph_osd_client *osdc, ceph_oid_copy(&lreq->t.base_oid, oid); ceph_oloc_copy(&lreq->t.base_oloc, oloc); lreq->t.flags = CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK; - lreq->mtime = CURRENT_TIME; + ktime_get_real_ts(&lreq->mtime); lreq->reg_req = alloc_linger_request(lreq); if (!lreq->reg_req) { @@ -3658,7 +3658,7 @@ int ceph_osdc_unwatch(struct ceph_osd_client *osdc, ceph_oid_copy(&req->r_base_oid, &lreq->t.base_oid); ceph_oloc_copy(&req->r_base_oloc, &lreq->t.base_oloc); req->r_flags = CEPH_OSD_FLAG_WRITE | CEPH_OSD_FLAG_ONDISK; - req->r_mtime = CURRENT_TIME; + ktime_get_real_ts(&req->r_mtime); osd_req_op_watch_init(req, 0, lreq->linger_id, CEPH_OSD_WATCH_OP_UNWATCH); -- 1.9.1