From mboxrd@z Thu Jan 1 00:00:00 1970 From: Al Viro Subject: Re: [PATCH] utimes: Clamp the timestamps in notify_change() Date: Sun, 24 Nov 2019 21:34:15 +0000 Message-ID: <20191124213415.GD4203@ZenIV.linux.org.uk> References: <20191124193145.22945-1-amir73il@gmail.com> <20191124194934.GB4203@ZenIV.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: y2038-bounces@lists.linaro.org Sender: "Y2038" To: Deepa Dinamani Cc: Linux NFS Mailing List , Arnd Bergmann , Miklos Szeredi , y2038 Mailman List , Amir Goldstein , Jeff Layton , overlayfs , "J . Bruce Fields" , Linux FS-devel Mailing List List-Id: linux-unionfs@vger.kernel.org T24gU3VuLCBOb3YgMjQsIDIwMTkgYXQgMDE6MTM6NTBQTSAtMDgwMCwgRGVlcGEgRGluYW1hbmkg d3JvdGU6Cgo+IFdlIGFsc28gd2FudCB0byByZXBsYWNlIGFsbCB1c2VzIG9mIHRpbWVzcGVjNjRf dHJ1bmMoKSB3aXRoCj4gdGltZXN0YW1wX3RydW5jYXRlKCkgZm9yIGFsbCBmcyBjYXNlcy4KPiAK PiBJbiB0aGF0IGNhc2Ugd2UgaGF2ZSBhIGZldyBtb3JlOgo+IAo+IGZzL2NlcGgvbWRzX2NsaWVu dC5jOiAgIHJlcS0+cl9zdGFtcCA9IHRpbWVzcGVjNjRfdHJ1bmModHMsCj4gbWRzYy0+ZnNjLT5z Yi0+c190aW1lX2dyYW4pOwoKVW1tLi4uIFRoYXQgY29tZXMgZnJvbSBrdGltZV9nZXRfY29hcnNl X3JlYWxfdHM2NCgmdHMpOwoKPiBmcy9jaWZzL2lub2RlLmM6ICAgICAgICBmYXR0ci0+Y2ZfbXRp bWUgPQo+IHRpbWVzcGVjNjRfdHJ1bmMoZmF0dHItPmNmX210aW1lLCBzYi0+c190aW1lX2dyYW4p OwprdGltZV9nZXRfcmVhbF90czY0KCZmYXR0ci0+Y2ZfbXRpbWUpIGhlcmUKCj4gZnMvY2lmcy9p bm9kZS5jOiAgICAgICAgICAgICAgICBmYXR0ci0+Y2ZfYXRpbWUgPQo+IHRpbWVzcGVjNjRfdHJ1 bmMoZmF0dHItPmNmX2F0aW1lLCBzYi0+c190aW1lX2dyYW4pOwpkaXR0bwoKPiBmcy9mYXQvbWlz Yy5jOiAgICAgICAgICAgICAgICAgIGlub2RlLT5pX2N0aW1lID0KPiB0aW1lc3BlYzY0X3RydW5j KCpub3csIDEwMDAwMDAwKTsKCkkgd29uZGVyLi4uIHNvbWUgYXJlIGZyb20gc2V0YXR0ciwgc29t ZSAod2l0aCBOVUxMIHBhc3NlZCB0byBmYXRfdHJ1bmNhdGVfdGltZSgpKQpmcm9tIGN1cnJlbnRf dGltZSgpLi4uICBXb3VsZG4ndCBpdCBtYWtlIG1vcmUgc2Vuc2UgdG8gbW92ZSB0aGUgdHJ1bmNh dGlvbiBpbnRvCnRoZSBmZXcgY2FsbGVycyB0aGF0IHJlYWxseSBuZWVkIGl0IChpZiBhbnkpPyAg UXVpdGUgYSBmZXcgb2YgdGhvc2UgYXJlICphbHNvKgpnZXR0aW5nIHRoZSB2YWx1ZSBmcm9tIGN1 cnJlbnRfdGltZSgpLCBhZnRlciBhbGwuICBmYXRfZmlsbF9pbm9kZSgpIGxvb2tzIGxpa2UKdGhl IG9ubHkgY2FzZSB0aGF0IGRvZXNuJ3QgZmFsbCBpbnRvIHRoZXNlIGNsYXNzZXM7IGRvZXMgaXQg bmVlZCB0cnVuY2F0aW9uPwoKQlRXLCBjb3VsZCB3ZSAqcGxlYXNlKiBkbyBzb21ldGhpbmcgYWJv dXQgZnMvaW5vZGUuYzp1cGRhdGVfdGltZSgpPyAgSSBtZWFuLApzdXJlLCBsb2NhbCB2YXJpYWJs ZSBzaGFkb3dzIGZpbGUtc2NvcGUgZnVuY3Rpb24sIHNvIGl0J3MgbGVnaXRpbWF0ZSBDLCBidXQK dGhpcyBpcyBub3QgSU9DQ0MgYW5kIGhhdmluZyBhIGZ1bmN0aW9uIGNhbGxlZCAndXBkYXRlX3Rp bWUnIGVuZCB3aXRoCiAgICAgICAgcmV0dXJuIHVwZGF0ZV90aW1lKGlub2RlLCB0aW1lLCBmbGFn cyk7CmlzIGFjdGl2ZWx5IGhvc3RpbGUgdG93YXJkcyBjYXN1YWwgcmVhZGVycy4uLgoKPiBmcy9m YXQvbWlzYy5jOiAgICAgICAgICAgICAgICAgIGlub2RlLT5pX2N0aW1lID0KPiBmYXRfdGltZXNw ZWM2NF90cnVuY18yc2Vjcygqbm93KTsKPiBmcy9mYXQvbWlzYy5jOiAgICAgICAgICBpbm9kZS0+ aV9tdGltZSA9IGZhdF90aW1lc3BlYzY0X3RydW5jXzJzZWNzKCpub3cpOwo+IGZzL3ViaWZzL3Ni LmM6ICB0cyA9IHRpbWVzcGVjNjRfdHJ1bmModHMsIERFRkFVTFRfVElNRV9HUkFOKTsKPiAKPiBU aGVzZSBkbyBub3QgZm9sbG93IGZyb20gbm90aWZ5X2NoYW5nZSgpLCBzbyB0aGVzZSBtaWdodCBz dGlsbCBuZWVkCj4gdGltZXN0YW1wX3RydW5jYXRlKCkgZXhwb3J0ZWQuCj4gSSB3aWxsIHBvc3Qg YSBjbGVhbnVwIHNlcmllcyBmb3IgdGltZXNwZWM2NF90cnVuYygpIGFsc28sIHRoZW4gd2UgY2Fu IGRlY2lkZS4KCldoYXQgSSd2ZSBnb3QgcmlnaHQgbm93IGlzCgpjb21taXQgNmQxMzQxMmUyYjI3 OTcwODEwMDM3ZjdiMWI0MThmZWJjZDcwMTNhYQpBdXRob3I6IEFtaXIgR29sZHN0ZWluIDxhbWly NzNpbEBnbWFpbC5jb20+CkRhdGU6ICAgU3VuIE5vdiAyNCAyMTozMTo0NSAyMDE5ICswMjAwCgog ICAgdXRpbWVzOiBDbGFtcCB0aGUgdGltZXN0YW1wcyBpbiBub3RpZnlfY2hhbmdlKCkKICAgIAog ICAgUHVzaCBjbGFtcGluZyB0aW1lc3RhbXBzIGludG8gbm90aWZ5X2NoYW5nZSgpLCBzbyBpbi1r ZXJuZWwKICAgIGNhbGxlcnMgbGlrZSBuZnNkIGFuZCBvdmVybGF5ZnMgd2lsbCBnZXQgc2ltaWxh ciB0aW1lc3RhbXAKICAgIHNldCBiZWhhdmlvciBhcyB1dGltZXMuCiAgICAKICAgIEFWOiBnZXQg cmlkIG9mIGNsYW1waW5nIGluIC0+c2V0YXR0cigpIGluc3RhbmNlczsgd2UgZG9uJ3QgbmVlZAog ICAgdG8gYm90aGVyIHdpdGggdGhhdCB0aGVyZSwgd2l0aCBub3RpZnlfY2hhbmdlKCkgZG9pbmcg bm9ybWFsaXphdGlvbgogICAgaW4gYWxsIGNhc2VzIG5vdyAoaXQgYWxyZWFkeSBkaWQgZm9yIGlt cGxpY2l0IGNhc2UsIHNpbmNlIGN1cnJlbnRfdGltZSgpCiAgICBjbGFtcHMpLgogICAgCiAgICBT dWdnZXN0ZWQtYnk6IE1pa2xvcyBTemVyZWRpIDxtc3plcmVkaUByZWRoYXQuY29tPgogICAgRml4 ZXM6IDQyZTcyOWI5ZGRiYiAoInV0aW1lczogQ2xhbXAgdGhlIHRpbWVzdGFtcHMgYmVmb3JlIHVw ZGF0ZSIpCiAgICBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZyAjIHY1LjQKICAgIENjOiBEZWVw YSBEaW5hbWFuaSA8ZGVlcGEua2VybmVsQGdtYWlsLmNvbT4KICAgIENjOiBKZWZmIExheXRvbiA8 amxheXRvbkBrZXJuZWwub3JnPgogICAgU2lnbmVkLW9mZi1ieTogQW1pciBHb2xkc3RlaW4gPGFt aXI3M2lsQGdtYWlsLmNvbT4KICAgIFNpZ25lZC1vZmYtYnk6IEFsIFZpcm8gPHZpcm9AemVuaXYu bGludXgub3JnLnVrPgoKZGlmZiAtLWdpdCBhL2ZzL2F0dHIuYyBiL2ZzL2F0dHIuYwppbmRleCBk ZjI4MDM1YWEyM2UuLmI0YmJkYmQ0YzhjYSAxMDA2NDQKLS0tIGEvZnMvYXR0ci5jCisrKyBiL2Zz L2F0dHIuYwpAQCAtMTgzLDE4ICsxODMsMTIgQEAgdm9pZCBzZXRhdHRyX2NvcHkoc3RydWN0IGlu b2RlICppbm9kZSwgY29uc3Qgc3RydWN0IGlhdHRyICphdHRyKQogCQlpbm9kZS0+aV91aWQgPSBh dHRyLT5pYV91aWQ7CiAJaWYgKGlhX3ZhbGlkICYgQVRUUl9HSUQpCiAJCWlub2RlLT5pX2dpZCA9 IGF0dHItPmlhX2dpZDsKLQlpZiAoaWFfdmFsaWQgJiBBVFRSX0FUSU1FKSB7Ci0JCWlub2RlLT5p X2F0aW1lID0gdGltZXN0YW1wX3RydW5jYXRlKGF0dHItPmlhX2F0aW1lLAotCQkJCQkJICBpbm9k ZSk7Ci0JfQotCWlmIChpYV92YWxpZCAmIEFUVFJfTVRJTUUpIHsKLQkJaW5vZGUtPmlfbXRpbWUg PSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0ci0+aWFfbXRpbWUsCi0JCQkJCQkgIGlub2RlKTsKLQl9 Ci0JaWYgKGlhX3ZhbGlkICYgQVRUUl9DVElNRSkgewotCQlpbm9kZS0+aV9jdGltZSA9IHRpbWVz dGFtcF90cnVuY2F0ZShhdHRyLT5pYV9jdGltZSwKLQkJCQkJCSAgaW5vZGUpOwotCX0KKwlpZiAo aWFfdmFsaWQgJiBBVFRSX0FUSU1FKQorCQlpbm9kZS0+aV9hdGltZSA9IGF0dHItPmlhX2F0aW1l OworCWlmIChpYV92YWxpZCAmIEFUVFJfTVRJTUUpCisJCWlub2RlLT5pX210aW1lID0gYXR0ci0+ aWFfbXRpbWU7CisJaWYgKGlhX3ZhbGlkICYgQVRUUl9DVElNRSkKKwkJaW5vZGUtPmlfY3RpbWUg PSBhdHRyLT5pYV9jdGltZTsKIAlpZiAoaWFfdmFsaWQgJiBBVFRSX01PREUpIHsKIAkJdW1vZGVf dCBtb2RlID0gYXR0ci0+aWFfbW9kZTsKIApAQCAtMjY4LDggKzI2MiwxMyBAQCBpbnQgbm90aWZ5 X2NoYW5nZShzdHJ1Y3QgZGVudHJ5ICogZGVudHJ5LCBzdHJ1Y3QgaWF0dHIgKiBhdHRyLCBzdHJ1 Y3QgaW5vZGUgKipkZQogCWF0dHItPmlhX2N0aW1lID0gbm93OwogCWlmICghKGlhX3ZhbGlkICYg QVRUUl9BVElNRV9TRVQpKQogCQlhdHRyLT5pYV9hdGltZSA9IG5vdzsKKwllbHNlCisJCWF0dHIt PmlhX2F0aW1lID0gdGltZXN0YW1wX3RydW5jYXRlKGF0dHItPmlhX2F0aW1lLCBpbm9kZSk7CiAJ aWYgKCEoaWFfdmFsaWQgJiBBVFRSX01USU1FX1NFVCkpCiAJCWF0dHItPmlhX210aW1lID0gbm93 OworCWVsc2UKKwkJYXR0ci0+aWFfbXRpbWUgPSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0ci0+aWFf bXRpbWUsIGlub2RlKTsKKwogCWlmIChpYV92YWxpZCAmIEFUVFJfS0lMTF9QUklWKSB7CiAJCWVy cm9yID0gc2VjdXJpdHlfaW5vZGVfbmVlZF9raWxscHJpdihkZW50cnkpOwogCQlpZiAoZXJyb3Ig PCAwKQpkaWZmIC0tZ2l0IGEvZnMvY29uZmlnZnMvaW5vZGUuYyBiL2ZzL2NvbmZpZ2ZzL2lub2Rl LmMKaW5kZXggNjgwYWJhOWMwMGQ1Li5mZDBiNWRkNjhmOWUgMTAwNjQ0Ci0tLSBhL2ZzL2NvbmZp Z2ZzL2lub2RlLmMKKysrIGIvZnMvY29uZmlnZnMvaW5vZGUuYwpAQCAtNzYsMTQgKzc2LDExIEBA IGludCBjb25maWdmc19zZXRhdHRyKHN0cnVjdCBkZW50cnkgKiBkZW50cnksIHN0cnVjdCBpYXR0 ciAqIGlhdHRyKQogCWlmIChpYV92YWxpZCAmIEFUVFJfR0lEKQogCQlzZF9pYXR0ci0+aWFfZ2lk ID0gaWF0dHItPmlhX2dpZDsKIAlpZiAoaWFfdmFsaWQgJiBBVFRSX0FUSU1FKQotCQlzZF9pYXR0 ci0+aWFfYXRpbWUgPSB0aW1lc3RhbXBfdHJ1bmNhdGUoaWF0dHItPmlhX2F0aW1lLAotCQkJCQkJ ICAgICAgaW5vZGUpOworCQlzZF9pYXR0ci0+aWFfYXRpbWUgPSBpYXR0ci0+aWFfYXRpbWU7CiAJ aWYgKGlhX3ZhbGlkICYgQVRUUl9NVElNRSkKLQkJc2RfaWF0dHItPmlhX210aW1lID0gdGltZXN0 YW1wX3RydW5jYXRlKGlhdHRyLT5pYV9tdGltZSwKLQkJCQkJCSAgICAgIGlub2RlKTsKKwkJc2Rf aWF0dHItPmlhX210aW1lID0gaWF0dHItPmlhX210aW1lOwogCWlmIChpYV92YWxpZCAmIEFUVFJf Q1RJTUUpCi0JCXNkX2lhdHRyLT5pYV9jdGltZSA9IHRpbWVzdGFtcF90cnVuY2F0ZShpYXR0ci0+ aWFfY3RpbWUsCi0JCQkJCQkgICAgICBpbm9kZSk7CisJCXNkX2lhdHRyLT5pYV9jdGltZSA9IGlh dHRyLT5pYV9jdGltZTsKIAlpZiAoaWFfdmFsaWQgJiBBVFRSX01PREUpIHsKIAkJdW1vZGVfdCBt b2RlID0gaWF0dHItPmlhX21vZGU7CiAKZGlmZiAtLWdpdCBhL2ZzL2YyZnMvZmlsZS5jIGIvZnMv ZjJmcy9maWxlLmMKaW5kZXggMjliYzBhNTQyNzU5Li5hMjg2NTY0YmEyZTEgMTAwNjQ0Ci0tLSBh L2ZzL2YyZnMvZmlsZS5jCisrKyBiL2ZzL2YyZnMvZmlsZS5jCkBAIC03NTEsMTggKzc1MSwxMiBA QCBzdGF0aWMgdm9pZCBfX3NldGF0dHJfY29weShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBjb25zdCBz dHJ1Y3QgaWF0dHIgKmF0dHIpCiAJCWlub2RlLT5pX3VpZCA9IGF0dHItPmlhX3VpZDsKIAlpZiAo aWFfdmFsaWQgJiBBVFRSX0dJRCkKIAkJaW5vZGUtPmlfZ2lkID0gYXR0ci0+aWFfZ2lkOwotCWlm IChpYV92YWxpZCAmIEFUVFJfQVRJTUUpIHsKLQkJaW5vZGUtPmlfYXRpbWUgPSB0aW1lc3RhbXBf dHJ1bmNhdGUoYXR0ci0+aWFfYXRpbWUsCi0JCQkJCQkgIGlub2RlKTsKLQl9Ci0JaWYgKGlhX3Zh bGlkICYgQVRUUl9NVElNRSkgewotCQlpbm9kZS0+aV9tdGltZSA9IHRpbWVzdGFtcF90cnVuY2F0 ZShhdHRyLT5pYV9tdGltZSwKLQkJCQkJCSAgaW5vZGUpOwotCX0KLQlpZiAoaWFfdmFsaWQgJiBB VFRSX0NUSU1FKSB7Ci0JCWlub2RlLT5pX2N0aW1lID0gdGltZXN0YW1wX3RydW5jYXRlKGF0dHIt PmlhX2N0aW1lLAotCQkJCQkJICBpbm9kZSk7Ci0JfQorCWlmIChpYV92YWxpZCAmIEFUVFJfQVRJ TUUpCisJCWlub2RlLT5pX2F0aW1lID0gYXR0ci0+aWFfYXRpbWU7CisJaWYgKGlhX3ZhbGlkICYg QVRUUl9NVElNRSkKKwkJaW5vZGUtPmlfbXRpbWUgPSBhdHRyLT5pYV9tdGltZTsKKwlpZiAoaWFf dmFsaWQgJiBBVFRSX0NUSU1FKQorCQlpbm9kZS0+aV9jdGltZSA9IGF0dHItPmlhX2N0aW1lOwog CWlmIChpYV92YWxpZCAmIEFUVFJfTU9ERSkgewogCQl1bW9kZV90IG1vZGUgPSBhdHRyLT5pYV9t b2RlOwogCmRpZmYgLS1naXQgYS9mcy9udGZzL2lub2RlLmMgYi9mcy9udGZzL2lub2RlLmMKaW5k ZXggNmM3Mzg4NDMwYWQzLi5kNDM1OWExZGYzZDUgMTAwNjQ0Ci0tLSBhL2ZzL250ZnMvaW5vZGUu YworKysgYi9mcy9udGZzL2lub2RlLmMKQEAgLTI4OTksMTggKzI4OTksMTIgQEAgaW50IG50ZnNf c2V0YXR0cihzdHJ1Y3QgZGVudHJ5ICpkZW50cnksIHN0cnVjdCBpYXR0ciAqYXR0cikKIAkJCWlh X3ZhbGlkIHw9IEFUVFJfTVRJTUUgfCBBVFRSX0NUSU1FOwogCQl9CiAJfQotCWlmIChpYV92YWxp ZCAmIEFUVFJfQVRJTUUpIHsKLQkJdmktPmlfYXRpbWUgPSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0 ci0+aWFfYXRpbWUsCi0JCQkJCSAgICAgICB2aSk7Ci0JfQotCWlmIChpYV92YWxpZCAmIEFUVFJf TVRJTUUpIHsKLQkJdmktPmlfbXRpbWUgPSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0ci0+aWFfbXRp bWUsCi0JCQkJCSAgICAgICB2aSk7Ci0JfQotCWlmIChpYV92YWxpZCAmIEFUVFJfQ1RJTUUpIHsK LQkJdmktPmlfY3RpbWUgPSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0ci0+aWFfY3RpbWUsCi0JCQkJ CSAgICAgICB2aSk7Ci0JfQorCWlmIChpYV92YWxpZCAmIEFUVFJfQVRJTUUpCisJCXZpLT5pX2F0 aW1lID0gYXR0ci0+aWFfYXRpbWU7CisJaWYgKGlhX3ZhbGlkICYgQVRUUl9NVElNRSkKKwkJdmkt PmlfbXRpbWUgPSBhdHRyLT5pYV9tdGltZTsKKwlpZiAoaWFfdmFsaWQgJiBBVFRSX0NUSU1FKQor CQl2aS0+aV9jdGltZSA9IGF0dHItPmlhX2N0aW1lOwogCW1hcmtfaW5vZGVfZGlydHkodmkpOwog b3V0OgogCXJldHVybiBlcnI7CmRpZmYgLS1naXQgYS9mcy91Ymlmcy9maWxlLmMgYi9mcy91Ymlm cy9maWxlLmMKaW5kZXggY2Q1MjU4NWM4ZjRmLi45MTM2MjA3OWY4MmEgMTAwNjQ0Ci0tLSBhL2Zz L3ViaWZzL2ZpbGUuYworKysgYi9mcy91Ymlmcy9maWxlLmMKQEAgLTEwNzgsMTggKzEwNzgsMTIg QEAgc3RhdGljIHZvaWQgZG9fYXR0cl9jaGFuZ2VzKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGNvbnN0 IHN0cnVjdCBpYXR0ciAqYXR0cikKIAkJaW5vZGUtPmlfdWlkID0gYXR0ci0+aWFfdWlkOwogCWlm IChhdHRyLT5pYV92YWxpZCAmIEFUVFJfR0lEKQogCQlpbm9kZS0+aV9naWQgPSBhdHRyLT5pYV9n aWQ7Ci0JaWYgKGF0dHItPmlhX3ZhbGlkICYgQVRUUl9BVElNRSkgewotCQlpbm9kZS0+aV9hdGlt ZSA9IHRpbWVzdGFtcF90cnVuY2F0ZShhdHRyLT5pYV9hdGltZSwKLQkJCQkJCSAgaW5vZGUpOwot CX0KLQlpZiAoYXR0ci0+aWFfdmFsaWQgJiBBVFRSX01USU1FKSB7Ci0JCWlub2RlLT5pX210aW1l ID0gdGltZXN0YW1wX3RydW5jYXRlKGF0dHItPmlhX210aW1lLAotCQkJCQkJICBpbm9kZSk7Ci0J fQotCWlmIChhdHRyLT5pYV92YWxpZCAmIEFUVFJfQ1RJTUUpIHsKLQkJaW5vZGUtPmlfY3RpbWUg PSB0aW1lc3RhbXBfdHJ1bmNhdGUoYXR0ci0+aWFfY3RpbWUsCi0JCQkJCQkgIGlub2RlKTsKLQl9 CisJaWYgKGF0dHItPmlhX3ZhbGlkICYgQVRUUl9BVElNRSkKKwkJaW5vZGUtPmlfYXRpbWUgPSBh dHRyLT5pYV9hdGltZTsKKwlpZiAoYXR0ci0+aWFfdmFsaWQgJiBBVFRSX01USU1FKQorCQlpbm9k ZS0+aV9tdGltZSA9IGF0dHItPmlhX210aW1lOworCWlmIChhdHRyLT5pYV92YWxpZCAmIEFUVFJf Q1RJTUUpCisJCWlub2RlLT5pX2N0aW1lID0gYXR0ci0+aWFfY3RpbWU7CiAJaWYgKGF0dHItPmlh X3ZhbGlkICYgQVRUUl9NT0RFKSB7CiAJCXVtb2RlX3QgbW9kZSA9IGF0dHItPmlhX21vZGU7CiAK ZGlmZiAtLWdpdCBhL2ZzL3V0aW1lcy5jIGIvZnMvdXRpbWVzLmMKaW5kZXggMWJhM2Y3ODgzODcw Li4wOTA3MzkzMjI0NjMgMTAwNjQ0Ci0tLSBhL2ZzL3V0aW1lcy5jCisrKyBiL2ZzL3V0aW1lcy5j CkBAIC0zNiwxNCArMzYsMTQgQEAgc3RhdGljIGludCB1dGltZXNfY29tbW9uKGNvbnN0IHN0cnVj dCBwYXRoICpwYXRoLCBzdHJ1Y3QgdGltZXNwZWM2NCAqdGltZXMpCiAJCWlmICh0aW1lc1swXS50 dl9uc2VjID09IFVUSU1FX09NSVQpCiAJCQluZXdhdHRycy5pYV92YWxpZCAmPSB+QVRUUl9BVElN RTsKIAkJZWxzZSBpZiAodGltZXNbMF0udHZfbnNlYyAhPSBVVElNRV9OT1cpIHsKLQkJCW5ld2F0 dHJzLmlhX2F0aW1lID0gdGltZXN0YW1wX3RydW5jYXRlKHRpbWVzWzBdLCBpbm9kZSk7CisJCQlu ZXdhdHRycy5pYV9hdGltZSA9IHRpbWVzWzBdOwogCQkJbmV3YXR0cnMuaWFfdmFsaWQgfD0gQVRU Ul9BVElNRV9TRVQ7CiAJCX0KIAogCQlpZiAodGltZXNbMV0udHZfbnNlYyA9PSBVVElNRV9PTUlU KQogCQkJbmV3YXR0cnMuaWFfdmFsaWQgJj0gfkFUVFJfTVRJTUU7CiAJCWVsc2UgaWYgKHRpbWVz WzFdLnR2X25zZWMgIT0gVVRJTUVfTk9XKSB7Ci0JCQluZXdhdHRycy5pYV9tdGltZSA9IHRpbWVz dGFtcF90cnVuY2F0ZSh0aW1lc1sxXSwgaW5vZGUpOworCQkJbmV3YXR0cnMuaWFfbXRpbWUgPSB0 aW1lc1sxXTsKIAkJCW5ld2F0dHJzLmlhX3ZhbGlkIHw9IEFUVFJfTVRJTUVfU0VUOwogCQl9CiAJ CS8qCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClkyMDM4 IG1haWxpbmcgbGlzdApZMjAzOEBsaXN0cy5saW5hcm8ub3JnCmh0dHBzOi8vbGlzdHMubGluYXJv Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3kyMDM4Cg==