From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH 34/60] xen/sched: move struct task_slice into struct sched_unit Date: Tue, 28 May 2019 12:32:47 +0200 Message-ID: <20190528103313.1343-35-jgross@suse.com> References: <20190528103313.1343-1-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hVZQF-0004uh-7h for xen-devel@lists.xenproject.org; Tue, 28 May 2019 10:33:35 +0000 In-Reply-To: <20190528103313.1343-1-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Juergen Gross , Tim Deegan , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Robert VanVossen , Dario Faggioli , Julien Grall , Josh Whitehead , Meng Xu , Jan Beulich List-Id: xen-devel@lists.xenproject.org SW4gb3JkZXIgdG8gcHJlcGFyZSBmb3IgbXVsdGlwbGUgdmNwdXMgcGVyIHNjaGVkdWxlIHVuaXQg bW92ZSBzdHJ1Y3QKdGFza19zbGljZSBpbiBzY2hlZHVsZSgpIGZyb20gdGhlIGxvY2FsIHN0YWNr IGludG8gc3RydWN0IHNjaGVkX3VuaXQKb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIHVuaXQuIFRv IG1ha2UgYWNjZXNzIGVhc2llciBmb3IgdGhlIHNpbmdsZQpzY2hlZHVsZXJzIGFkZCB0aGUgcG9p bnRlciBvZiB0aGUgY3VycmVudGx5IHJ1bm5pbmcgdW5pdCBhcyBhIHBhcmFtZXRlcgpvZiBkb19z Y2hlZHVsZSgpLgoKV2hpbGUgYXQgaXQgc3dpdGNoIHRoZSB0YXNrbGV0X3dvcmtfc2NoZWR1bGVk IHBhcmFtZXRlciBvZgpkb19zY2hlZHVsZSgpIGZyb20gYm9vbF90IHRvIGJvb2wuCgpBcyBzdHJ1 Y3QgdGFza19zbGljZSBpcyBvbmx5IGV2ZXIgbW9kaWZpZWQgd2l0aCB0aGUgbG9jYWwgc2NoZWR1 bGUKbG9jayBoZWxkIGl0IGlzIHNhZmUgdG8gZGlyZWN0bHkgc2V0IHRoZSBkaWZmZXJlbnQgdW5p dHMgaW4gc3RydWN0CnNjaGVkX3VuaXQgaW5zdGVhZCBvZiB1c2luZyBhbiBvbi1zdGFjayBjb3B5 IGZvciByZXR1cm5pbmcgdGhlIGRhdGEuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxq Z3Jvc3NAc3VzZS5jb20+Ci0tLQogeGVuL2NvbW1vbi9zY2hlZF9hcmluYzY1My5jIHwgMjAgKysr KysrKy0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMgICB8IDI1ICsrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jICB8IDIxICsr KysrKysrKy0tLS0tLS0tLS0tLQogeGVuL2NvbW1vbi9zY2hlZF9udWxsLmMgICAgIHwgMjYgKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfcnQuYyAgICAgICB8IDIy ICsrKysrKysrKysrLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWR1bGUuYyAgICAgICB8IDIx ICsrKysrKysrKystLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUveGVuL3NjaGVkLWlmLmggIHwgMTEg KysrLS0tLS0tLS0KIHhlbi9pbmNsdWRlL3hlbi9zY2hlZC5oICAgICB8ICA2ICsrKysrKwogOCBm aWxlcyBjaGFuZ2VkLCA2OSBpbnNlcnRpb25zKCspLCA4MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vY29tbW9uL3NjaGVkX2FyaW5jNjUzLmMgYi94ZW4vY29tbW9uL3NjaGVkX2FyaW5j NjUzLmMKaW5kZXggZTQ4ZjJiMmViOS4uMzRlZmNjMDdjOSAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZF9hcmluYzY1My5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfYXJpbmM2NTMuYwpAQCAt NDk3LDE4ICs0OTcsMTQgQEAgYTY1M3NjaGVkX3VuaXRfd2FrZShjb25zdCBzdHJ1Y3Qgc2NoZWR1 bGVyICpvcHMsIHN0cnVjdCBzY2hlZF91bml0ICp1bml0KQogICoKICAqIEBwYXJhbSBvcHMgICAg ICAgUG9pbnRlciB0byB0aGlzIGluc3RhbmNlIG9mIHRoZSBzY2hlZHVsZXIgc3RydWN0dXJlCiAg KiBAcGFyYW0gbm93ICAgICAgIEN1cnJlbnQgdGltZQotICoKLSAqIEByZXR1cm4gICAgICAgICAg QWRkcmVzcyBvZiB0aGUgVU5JVCBzdHJ1Y3R1cmUgc2NoZWR1bGVkIHRvIGJlIHJ1biBuZXh0Ci0g KiAgICAgICAgICAgICAgICAgIEFtb3VudCBvZiB0aW1lIHRvIGV4ZWN1dGUgdGhlIHJldHVybmVk IFVOSVQKLSAqICAgICAgICAgICAgICAgICAgRmxhZyBmb3Igd2hldGhlciB0aGUgVU5JVCB3YXMg bWlncmF0ZWQKICAqLwotc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlCitzdGF0aWMgdm9pZAogYTY1 M3NjaGVkX2RvX3NjaGVkdWxlKAogICAgIGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKKyAg ICBzdHJ1Y3Qgc2NoZWRfdW5pdCAqcHJldiwKICAgICBzX3RpbWVfdCBub3csCi0gICAgYm9vbF90 IHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCisgICAgYm9vbCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVk KQogewotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldDsgICAgICAgICAgICAgICAgICAgICAgLyog aG9sZCB0aGUgY2hvc2VuIGRvbWFpbiAqLwogICAgIHN0cnVjdCBzY2hlZF91bml0ICpuZXdfdGFz ayA9IE5VTEw7CiAgICAgc3RhdGljIHVuc2lnbmVkIGludCBzY2hlZF9pbmRleCA9IDA7CiAgICAg c3RhdGljIHNfdGltZV90IG5leHRfc3dpdGNoX3RpbWU7CkBAIC01ODYsMTMgKzU4MiwxMSBAQCBh NjUzc2NoZWRfZG9fc2NoZWR1bGUoCiAgICAgICogUmV0dXJuIHRoZSBhbW91bnQgb2YgdGltZSB0 aGUgbmV4dCBkb21haW4gaGFzIHRvIHJ1biBhbmQgdGhlIGFkZHJlc3MKICAgICAgKiBvZiB0aGUg c2VsZWN0ZWQgdGFzaydzIFVOSVQgc3RydWN0dXJlLgogICAgICAqLwotICAgIHJldC50aW1lID0g bmV4dF9zd2l0Y2hfdGltZSAtIG5vdzsKLSAgICByZXQudGFzayA9IG5ld190YXNrOwotICAgIHJl dC5taWdyYXRlZCA9IDA7Ci0KLSAgICBCVUdfT04ocmV0LnRpbWUgPD0gMCk7CisgICAgcHJldi0+ bmV4dF90aW1lID0gbmV4dF9zd2l0Y2hfdGltZSAtIG5vdzsKKyAgICBwcmV2LT5uZXh0X3Rhc2sg PSBuZXdfdGFzazsKKyAgICBuZXdfdGFzay0+bWlncmF0ZWQgPSBmYWxzZTsKIAotICAgIHJldHVy biByZXQ7CisgICAgQlVHX09OKHByZXYtPm5leHRfdGltZSA8PSAwKTsKIH0KIAogLyoqCmRpZmYg LS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdC5jIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVk aXQuYwppbmRleCBlNjdiOWJiMjNlLi4xOTZmNjEzNDIwIDEwMDY0NAotLS0gYS94ZW4vY29tbW9u L3NjaGVkX2NyZWRpdC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMKQEAgLTE2ODEs NyArMTY4MSw3IEBAIGNzY2hlZF9ydW5xX3N0ZWFsKGludCBwZWVyX2NwdSwgaW50IGNwdSwgaW50 IHByaSwgaW50IGJhbGFuY2Vfc3RlcCkKIAogc3RhdGljIHN0cnVjdCBjc2NoZWRfdW5pdCAqCiBj c2NoZWRfbG9hZF9iYWxhbmNlKHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2LCBpbnQgY3B1LAot ICAgIHN0cnVjdCBjc2NoZWRfdW5pdCAqc25leHQsIGJvb2xfdCAqc3RvbGVuKQorICAgIHN0cnVj dCBjc2NoZWRfdW5pdCAqc25leHQsIGJvb2wgKnN0b2xlbikKIHsKICAgICBzdHJ1Y3QgY3B1cG9v bCAqYyA9IHBlcl9jcHUoY3B1cG9vbCwgY3B1KTsKICAgICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKnNw ZWVyOwpAQCAtMTc5Nyw3ICsxNzk3LDcgQEAgY3NjaGVkX2xvYWRfYmFsYW5jZShzdHJ1Y3QgY3Nj aGVkX3ByaXZhdGUgKnBydiwgaW50IGNwdSwKICAgICAgICAgICAgICAgICAvKiBBcyBzb29uIGFz IG9uZSB1bml0IGlzIGZvdW5kLCBiYWxhbmNpbmcgZW5kcyAqLwogICAgICAgICAgICAgICAgIGlm ICggc3BlZXIgIT0gTlVMTCApCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAg ICAqc3RvbGVuID0gMTsKKyAgICAgICAgICAgICAgICAgICAgKnN0b2xlbiA9IHRydWU7CiAgICAg ICAgICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgICAgICAgICAqIE5leHQgdGltZSB3ZSds bCBsb29rIGZvciB3b3JrIHRvIHN0ZWFsIG9uIHRoaXMgbm9kZSwgd2UKICAgICAgICAgICAgICAg ICAgICAgICogd2lsbCBzdGFydCBmcm9tIHRoZSBuZXh0IHBDUFUsIHdpdGggcmVzcGVjdCB0byB0 aGlzIG9uZSwKQEAgLTE4MjcsMTkgKzE4MjcsMTggQEAgY3NjaGVkX2xvYWRfYmFsYW5jZShzdHJ1 Y3QgY3NjaGVkX3ByaXZhdGUgKnBydiwgaW50IGNwdSwKICAqIFRoaXMgZnVuY3Rpb24gaXMgaW4g dGhlIGNyaXRpY2FsIHBhdGguIEl0IGlzIGRlc2lnbmVkIHRvIGJlIHNpbXBsZSBhbmQKICAqIGZh c3QgZm9yIHRoZSBjb21tb24gY2FzZS4KICAqLwotc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlCi1j c2NoZWRfc2NoZWR1bGUoCi0gICAgY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVf dCBub3csIGJvb2xfdCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3RhdGljIHZvaWQgY3NjaGVk X3NjaGVkdWxlKAorICAgIGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IHNjaGVk X3VuaXQgKnVuaXQsIHNfdGltZV90IG5vdywKKyAgICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVs ZWQpCiB7CiAgICAgY29uc3QgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsK ICAgICBjb25zdCB1bnNpZ25lZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2Nw dShjcHUpOwogICAgIHN0cnVjdCBsaXN0X2hlYWQgKiBjb25zdCBydW5xID0gUlVOUShzY2hlZF9j cHUpOwotICAgIHN0cnVjdCBzY2hlZF91bml0ICp1bml0ID0gY3VycmVudC0+c2NoZWRfdW5pdDsK ICAgICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKiBjb25zdCBzY3VyciA9IENTQ0hFRF9VTklUKHVuaXQp OwogICAgIHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2ID0gQ1NDSEVEX1BSSVYob3BzKTsKICAg ICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKnNuZXh0OwotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldDsK ICAgICBzX3RpbWVfdCBydW50aW1lLCB0c2xpY2U7CisgICAgYm9vbCBtaWdyYXRlZCA9IGZhbHNl OwogCiAgICAgU0NIRURfU1RBVF9DUkFOSyhzY2hlZHVsZSk7CiAgICAgQ1NDSEVEX1VOSVRfQ0hF Q0sodW5pdCk7CkBAIC0xOTI5LDcgKzE5MjgsNiBAQCBjc2NoZWRfc2NoZWR1bGUoCiAgICAgICAg ICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICAgICAgfQogCi0gICAg ICAgIHJldC5taWdyYXRlZCA9IDA7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KICAgICB0c2xp Y2UgPSBwcnYtPnRzbGljZTsKQEAgLTE5NDcsNyArMTk0NSw2IEBAIGNzY2hlZF9zY2hlZHVsZSgK ICAgICB9CiAKICAgICBzbmV4dCA9IF9fcnVucV9lbGVtKHJ1bnEtPm5leHQpOwotICAgIHJldC5t aWdyYXRlZCA9IDA7CiAKICAgICAvKiBUYXNrbGV0IHdvcmsgKHdoaWNoIHJ1bnMgaW4gaWRsZSBV TklUIGNvbnRleHQpIG92ZXJyaWRlcyBhbGwgZWxzZS4gKi8KICAgICBpZiAoIHRhc2tsZXRfd29y a19zY2hlZHVsZWQgKQpAQCAtMTk3Myw3ICsxOTcwLDcgQEAgY3NjaGVkX3NjaGVkdWxlKAogICAg IGlmICggc25leHQtPnByaSA+IENTQ0hFRF9QUklfVFNfT1ZFUiApCiAgICAgICAgIF9fcnVucV9y ZW1vdmUoc25leHQpOwogICAgIGVsc2UKLSAgICAgICAgc25leHQgPSBjc2NoZWRfbG9hZF9iYWxh bmNlKHBydiwgc2NoZWRfY3B1LCBzbmV4dCwgJnJldC5taWdyYXRlZCk7CisgICAgICAgIHNuZXh0 ID0gY3NjaGVkX2xvYWRfYmFsYW5jZShwcnYsIHNjaGVkX2NwdSwgc25leHQsICZtaWdyYXRlZCk7 CiAKICAgICAvKgogICAgICAqIFVwZGF0ZSBpZGxlcnMgbWFzayBpZiBuZWNlc3NhcnkuIFdoZW4g d2UncmUgaWRsaW5nLCBvdGhlciBDUFVzCkBAIC0xOTk2LDEyICsxOTkzLDEyIEBAIG91dDoKICAg ICAvKgogICAgICAqIFJldHVybiB0YXNrIHRvIHJ1biBuZXh0Li4uCiAgICAgICovCi0gICAgcmV0 LnRpbWUgPSAoaXNfaWRsZV91bml0KHNuZXh0LT51bml0KSA/CisgICAgdW5pdC0+bmV4dF90aW1l ID0gKGlzX2lkbGVfdW5pdChzbmV4dC0+dW5pdCkgPwogICAgICAgICAgICAgICAgIC0xIDogdHNs aWNlKTsKLSAgICByZXQudGFzayA9IHNuZXh0LT51bml0OworICAgIHVuaXQtPm5leHRfdGFzayA9 IHNuZXh0LT51bml0OworICAgIHNuZXh0LT51bml0LT5taWdyYXRlZCA9IG1pZ3JhdGVkOwogCi0g ICAgQ1NDSEVEX1VOSVRfQ0hFQ0socmV0LnRhc2spOwotICAgIHJldHVybiByZXQ7CisgICAgQ1ND SEVEX1VOSVRfQ0hFQ0sodW5pdC0+bmV4dF90YXNrKTsKIH0KIAogc3RhdGljIHZvaWQKZGlmZiAt LWdpdCBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVk aXQyLmMKaW5kZXggY2Y1MDJiM2NiYy4uNjY5NTQ0MTU4OCAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZF9jcmVkaXQyLmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVkaXQyLmMKQEAgLTM0 NDMsMTkgKzM0NDMsMTggQEAgcnVucV9jYW5kaWRhdGUoc3RydWN0IGNzY2hlZDJfcnVucXVldWVf ZGF0YSAqcnFkLAogICogVGhpcyBmdW5jdGlvbiBpcyBpbiB0aGUgY3JpdGljYWwgcGF0aC4gSXQg aXMgZGVzaWduZWQgdG8gYmUgc2ltcGxlIGFuZAogICogZmFzdCBmb3IgdGhlIGNvbW1vbiBjYXNl LgogICovCi1zdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UKLWNzY2hlZDJfc2NoZWR1bGUoCi0gICAg Y29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2wgdGFza2xldF93 b3JrX3NjaGVkdWxlZCkKK3N0YXRpYyB2b2lkIGNzY2hlZDJfc2NoZWR1bGUoCisgICAgY29uc3Qg c3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqY3VycnVuaXQsIHNfdGlt ZV90IG5vdywKKyAgICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCiB7CiAgICAgY29uc3Qg dW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAgICBjb25zdCB1bnNpZ25l ZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUpOwogICAgIHN0cnVj dCBjc2NoZWQyX3J1bnF1ZXVlX2RhdGEgKnJxZDsKLSAgICBzdHJ1Y3Qgc2NoZWRfdW5pdCAqY3Vy cnVuaXQgPSBjdXJyZW50LT5zY2hlZF91bml0OwogICAgIHN0cnVjdCBjc2NoZWQyX3VuaXQgKiBj b25zdCBzY3VyciA9IGNzY2hlZDJfdW5pdChjdXJydW5pdCk7CiAgICAgc3RydWN0IGNzY2hlZDJf dW5pdCAqc25leHQgPSBOVUxMOwogICAgIHVuc2lnbmVkIGludCBza2lwcGVkX3VuaXRzID0gMDsK LSAgICBzdHJ1Y3QgdGFza19zbGljZSByZXQ7CiAgICAgYm9vbCB0aWNrbGVkOworICAgIGJvb2wg bWlncmF0ZWQgPSBmYWxzZTsKIAogICAgIFNDSEVEX1NUQVRfQ1JBTksoc2NoZWR1bGUpOwogICAg IENTQ0hFRDJfVU5JVF9DSEVDSyhjdXJydW5pdCk7CkBAIC0zNTQwLDggKzM1MzksNiBAQCBjc2No ZWQyX3NjaGVkdWxlKAogICAgICAgICAgJiYgdW5pdF9ydW5uYWJsZShjdXJydW5pdCkgKQogICAg ICAgICBfX3NldF9iaXQoX19DU0ZMQUdfZGVsYXllZF9ydW5xX2FkZCwgJnNjdXJyLT5mbGFncyk7 CiAKLSAgICByZXQubWlncmF0ZWQgPSAwOwotCiAgICAgLyogQWNjb3VudGluZyBmb3Igbm9uLWlk bGUgdGFza3MgKi8KICAgICBpZiAoICFpc19pZGxlX3VuaXQoc25leHQtPnVuaXQpICkKICAgICB7 CkBAIC0zNTkxLDcgKzM1ODgsNyBAQCBjc2NoZWQyX3NjaGVkdWxlKAogICAgICAgICAgICAgc25l eHQtPmNyZWRpdCArPSBDU0NIRUQyX01JR1JBVEVfQ09NUEVOU0FUSU9OOwogICAgICAgICAgICAg c2NoZWRfc2V0X3JlcyhzbmV4dC0+dW5pdCwgZ2V0X3NjaGVkX3JlcyhzY2hlZF9jcHUpKTsKICAg ICAgICAgICAgIFNDSEVEX1NUQVRfQ1JBTksobWlncmF0ZWQpOwotICAgICAgICAgICAgcmV0Lm1p Z3JhdGVkID0gMTsKKyAgICAgICAgICAgIG1pZ3JhdGVkID0gdHJ1ZTsKICAgICAgICAgfQogICAg IH0KICAgICBlbHNlCkBAIC0zNjIyLDExICszNjE5LDExIEBAIGNzY2hlZDJfc2NoZWR1bGUoCiAg ICAgLyoKICAgICAgKiBSZXR1cm4gdGFzayB0byBydW4gbmV4dC4uLgogICAgICAqLwotICAgIHJl dC50aW1lID0gY3NjaGVkMl9ydW50aW1lKG9wcywgc2NoZWRfY3B1LCBzbmV4dCwgbm93KTsKLSAg ICByZXQudGFzayA9IHNuZXh0LT51bml0OworICAgIGN1cnJ1bml0LT5uZXh0X3RpbWUgPSBjc2No ZWQyX3J1bnRpbWUob3BzLCBzY2hlZF9jcHUsIHNuZXh0LCBub3cpOworICAgIGN1cnJ1bml0LT5u ZXh0X3Rhc2sgPSBzbmV4dC0+dW5pdDsKKyAgICBzbmV4dC0+dW5pdC0+bWlncmF0ZWQgPSBtaWdy YXRlZDsKIAotICAgIENTQ0hFRDJfVU5JVF9DSEVDSyhyZXQudGFzayk7Ci0gICAgcmV0dXJuIHJl dDsKKyAgICBDU0NIRUQyX1VOSVRfQ0hFQ0soY3VycnVuaXQtPm5leHRfdGFzayk7CiB9CiAKIHN0 YXRpYyB2b2lkCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX251bGwuYyBiL3hlbi9jb21t b24vc2NoZWRfbnVsbC5jCmluZGV4IDZjMzUwYTM0MmIuLjUzNGQwYWVhNWYgMTAwNjQ0Ci0tLSBh L3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCkBA IC02OTUsMTYgKzY5NSwxNCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbnVsbF91bml0X2NoZWNrKHN0 cnVjdCBzY2hlZF91bml0ICp1bml0KQogICogIC0gdGhlIHVuaXQgYXNzaWduZWQgdG8gdGhlIHBD UFUsIGlmIHRoZXJlJ3Mgb25lIGFuZCBpdCBjYW4gcnVuOwogICogIC0gdGhlIGlkbGUgdW5pdCwg b3RoZXJ3aXNlLgogICovCi1zdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UgbnVsbF9zY2hlZHVsZShj b25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzX3RpbWVfdCBub3csCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBib29sX3QgdGFza2xldF93b3JrX3NjaGVkdWxlZCkKK3N0YXRpYyB2b2lkIG51bGxf c2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAq cHJldiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc190aW1lX3Qgbm93LCBib29sIHRhc2ts ZXRfd29ya19zY2hlZHVsZWQpCiB7CiAgICAgdW5zaWduZWQgaW50IGJzOwogICAgIGNvbnN0IHVu c2lnbmVkIGludCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7CiAgICAgY29uc3QgdW5zaWduZWQg aW50IHNjaGVkX2NwdSA9IHNjaGVkX2dldF9yZXNvdXJjZV9jcHUoY3B1KTsKICAgICBzdHJ1Y3Qg bnVsbF9wcml2YXRlICpwcnYgPSBudWxsX3ByaXYob3BzKTsKICAgICBzdHJ1Y3QgbnVsbF91bml0 ICp3dmM7Ci0gICAgc3RydWN0IHRhc2tfc2xpY2UgcmV0OwogCiAgICAgU0NIRURfU1RBVF9DUkFO SyhzY2hlZHVsZSk7CiAgICAgTlVMTF9VTklUX0NIRUNLKGN1cnJlbnQtPnNjaGVkX3VuaXQpOwpA QCAtNzMyLDE5ICs3MzAsMTggQEAgc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlIG51bGxfc2NoZWR1 bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLAogICAgIGlmICggdGFza2xldF93b3JrX3Nj aGVkdWxlZCApCiAgICAgewogICAgICAgICB0cmFjZV92YXIoVFJDX1NOVUxMX1RBU0tMRVQsIDEs IDAsIE5VTEwpOwotICAgICAgICByZXQudGFzayA9IHNjaGVkX2lkbGVfdW5pdChzY2hlZF9jcHUp OworICAgICAgICBwcmV2LT5uZXh0X3Rhc2sgPSBzY2hlZF9pZGxlX3VuaXQoc2NoZWRfY3B1KTsK ICAgICB9CiAgICAgZWxzZQotICAgICAgICByZXQudGFzayA9IHBlcl9jcHUobnBjLCBzY2hlZF9j cHUpLnVuaXQ7Ci0gICAgcmV0Lm1pZ3JhdGVkID0gMDsKLSAgICByZXQudGltZSA9IC0xOworICAg ICAgICBwcmV2LT5uZXh0X3Rhc2sgPSBwZXJfY3B1KG5wYywgc2NoZWRfY3B1KS51bml0OworICAg IHByZXYtPm5leHRfdGltZSA9IC0xOwogCiAgICAgLyoKICAgICAgKiBXZSBtYXkgYmUgbmV3IGlu IHRoZSBjcHVwb29sLCBvciBqdXN0IGNvbWluZyBiYWNrIG9ubGluZS4gSW4gd2hpY2gKICAgICAg KiBjYXNlLCB0aGVyZSBtYXkgYmUgdW5pdHMgaW4gdGhlIHdhaXRxdWV1ZSB0aGF0IHdlIGNhbiBh c3NpZ24gdG8gdXMKICAgICAgKiBhbmQgcnVuLgogICAgICAqLwotICAgIGlmICggdW5saWtlbHko cmV0LnRhc2sgPT0gTlVMTCkgKQorICAgIGlmICggdW5saWtlbHkocHJldi0+bmV4dF90YXNrID09 IE5VTEwpICkKICAgICB7CiAgICAgICAgIHNwaW5fbG9jaygmcHJ2LT53YWl0cV9sb2NrKTsKIApA QCAtNzcwLDcgKzc2Nyw3IEBAIHN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZSBudWxsX3NjaGVkdWxl KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgIHVuaXRfYXNzaWduKHBydiwgd3ZjLT51bml0LCBzY2hlZF9jcHUpOwogICAg ICAgICAgICAgICAgICAgICBsaXN0X2RlbF9pbml0KCZ3dmMtPndhaXRxX2VsZW0pOwotICAgICAg ICAgICAgICAgICAgICByZXQudGFzayA9IHd2Yy0+dW5pdDsKKyAgICAgICAgICAgICAgICAgICAg cHJldi0+bmV4dF90YXNrID0gd3ZjLT51bml0OwogICAgICAgICAgICAgICAgICAgICBnb3RvIHVu bG9jazsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC03NzksMTEgKzc3Niwx MiBAQCBzdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UgbnVsbF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qg c2NoZWR1bGVyICpvcHMsCiAgICAgICAgIHNwaW5fdW5sb2NrKCZwcnYtPndhaXRxX2xvY2spOwog ICAgIH0KIAotICAgIGlmICggdW5saWtlbHkocmV0LnRhc2sgPT0gTlVMTCB8fCAhdW5pdF9ydW5u YWJsZShyZXQudGFzaykpICkKLSAgICAgICAgcmV0LnRhc2sgPSBzY2hlZF9pZGxlX3VuaXQoc2No ZWRfY3B1KTsKKyAgICBpZiAoIHVubGlrZWx5KHByZXYtPm5leHRfdGFzayA9PSBOVUxMIHx8ICF1 bml0X3J1bm5hYmxlKHByZXYtPm5leHRfdGFzaykpICkKKyAgICAgICAgcHJldi0+bmV4dF90YXNr ID0gc2NoZWRfaWRsZV91bml0KHNjaGVkX2NwdSk7CiAKLSAgICBOVUxMX1VOSVRfQ0hFQ0socmV0 LnRhc2spOwotICAgIHJldHVybiByZXQ7CisgICAgTlVMTF9VTklUX0NIRUNLKHByZXYtPm5leHRf dGFzayk7CisKKyAgICBwcmV2LT5uZXh0X3Rhc2stPm1pZ3JhdGVkID0gZmFsc2U7CiB9CiAKIHN0 YXRpYyBpbmxpbmUgdm9pZCBkdW1wX3VuaXQoc3RydWN0IG51bGxfcHJpdmF0ZSAqcHJ2LCBzdHJ1 Y3QgbnVsbF91bml0ICpudmMpCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX3J0LmMgYi94 ZW4vY29tbW9uL3NjaGVkX3J0LmMKaW5kZXggZGRkMWJhZGQzOC4uYWVkNDk4OTcwZSAxMDA2NDQK LS0tIGEveGVuL2NvbW1vbi9zY2hlZF9ydC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfcnQuYwpA QCAtMTA1NSwxNiArMTA1NSwxNiBAQCBydW5xX3BpY2soY29uc3Qgc3RydWN0IHNjaGVkdWxlciAq b3BzLCBjb25zdCBjcHVtYXNrX3QgKm1hc2spCiAgKiBzY2hlZHVsZSBmdW5jdGlvbiBmb3IgcnQg c2NoZWR1bGVyLgogICogVGhlIGxvY2sgaXMgYWxyZWFkeSBncmFiYmVkIGluIHNjaGVkdWxlLmMs IG5vIG5lZWQgdG8gbG9jayBoZXJlCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZQotcnRf c2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2xf dCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3RhdGljIHZvaWQKK3J0X3NjaGVkdWxlKGNvbnN0 IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IHNjaGVkX3VuaXQgKmN1cnJ1bml0LAorICAg ICAgICAgICAgc190aW1lX3Qgbm93LCBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCiB7CiAg ICAgY29uc3QgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAgICBjb25z dCB1bnNpZ25lZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUpOwog ICAgIHN0cnVjdCBydF9wcml2YXRlICpwcnYgPSBydF9wcml2KG9wcyk7Ci0gICAgc3RydWN0IHJ0 X3VuaXQgKmNvbnN0IHNjdXJyID0gcnRfdW5pdChjdXJyZW50LT5zY2hlZF91bml0KTsKKyAgICBz dHJ1Y3QgcnRfdW5pdCAqY29uc3Qgc2N1cnIgPSBydF91bml0KGN1cnJ1bml0KTsKICAgICBzdHJ1 Y3QgcnRfdW5pdCAqc25leHQgPSBOVUxMOwotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldCA9IHsg Lm1pZ3JhdGVkID0gMCB9OwotICAgIHN0cnVjdCBzY2hlZF91bml0ICpjdXJydW5pdCA9IGN1cnJl bnQtPnNjaGVkX3VuaXQ7CisgICAgYm9vbCBtaWdyYXRlZCA9IGZhbHNlOwogCiAgICAgLyogVFJB Q0UgKi8KICAgICB7CkBAIC0xMTEyLDcgKzExMTIsNyBAQCBydF9zY2hlZHVsZShjb25zdCBzdHJ1 Y3Qgc2NoZWR1bGVyICpvcHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRhc2tsZXRfd29ya19zY2hl ZAogICAgICAgICBfX3NldF9iaXQoX19SVERTX2RlbGF5ZWRfcnVucV9hZGQsICZzY3Vyci0+Zmxh Z3MpOwogCiAgICAgc25leHQtPmxhc3Rfc3RhcnQgPSBub3c7Ci0gICAgcmV0LnRpbWUgPSAgLTE7 IC8qIGlmIGFuIGlkbGUgdW5pdCBpcyBwaWNrZWQgKi8KKyAgICBjdXJydW5pdC0+bmV4dF90aW1l ID0gIC0xOyAvKiBpZiBhbiBpZGxlIHVuaXQgaXMgcGlja2VkICovCiAgICAgaWYgKCAhaXNfaWRs ZV91bml0KHNuZXh0LT51bml0KSApCiAgICAgewogICAgICAgICBpZiAoIHNuZXh0ICE9IHNjdXJy ICkKQEAgLTExMjMsMTMgKzExMjMsMTMgQEAgcnRfc2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2xfdCB0YXNrbGV0X3dvcmtfc2NoZWQKICAgICAg ICAgaWYgKCBzY2hlZF91bml0X2NwdShzbmV4dC0+dW5pdCkgIT0gc2NoZWRfY3B1ICkKICAgICAg ICAgewogICAgICAgICAgICAgc2NoZWRfc2V0X3JlcyhzbmV4dC0+dW5pdCwgZ2V0X3NjaGVkX3Jl cyhzY2hlZF9jcHUpKTsKLSAgICAgICAgICAgIHJldC5taWdyYXRlZCA9IDE7CisgICAgICAgICAg ICBtaWdyYXRlZCA9IHRydWU7CiAgICAgICAgIH0KLSAgICAgICAgcmV0LnRpbWUgPSBzbmV4dC0+ Y3VyX2J1ZGdldDsgLyogaW52b2tlIHRoZSBzY2hlZHVsZXIgbmV4dCB0aW1lICovCisgICAgICAg IC8qIEludm9rZSB0aGUgc2NoZWR1bGVyIG5leHQgdGltZS4gKi8KKyAgICAgICAgY3VycnVuaXQt Pm5leHRfdGltZSA9IHNuZXh0LT5jdXJfYnVkZ2V0OwogICAgIH0KLSAgICByZXQudGFzayA9IHNu ZXh0LT51bml0OwotCi0gICAgcmV0dXJuIHJldDsKKyAgICBjdXJydW5pdC0+bmV4dF90YXNrID0g c25leHQtPnVuaXQ7CisgICAgc25leHQtPnVuaXQtPm1pZ3JhdGVkID0gbWlncmF0ZWQ7CiB9CiAK IC8qCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkdWxlLmMgYi94ZW4vY29tbW9uL3NjaGVk dWxlLmMKaW5kZXggODEyMWRhMTVjNi4uYzIzYTU2MjlkZSAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZHVsZS5jCisrKyBiL3hlbi9jb21tb24vc2NoZWR1bGUuYwpAQCAtMTU4NSwxMCArMTU4 NSw5IEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAgc190aW1lX3QgICAgICAgICAg ICAgIG5vdzsKICAgICBzdHJ1Y3Qgc2NoZWR1bGVyICAgICAqc2NoZWQ7CiAgICAgdW5zaWduZWQg bG9uZyAgICAgICAgKnRhc2tsZXRfd29yayA9ICZ0aGlzX2NwdSh0YXNrbGV0X3dvcmtfdG9fZG8p OwotICAgIGJvb2xfdCAgICAgICAgICAgICAgICB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkID0gMDsK KyAgICBib29sICAgICAgICAgICAgICAgICAgdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IGZhbHNl OwogICAgIHN0cnVjdCBzY2hlZF9yZXNvdXJjZSAqc2Q7CiAgICAgc3BpbmxvY2tfdCAgICAgICAg ICAgKmxvY2s7Ci0gICAgc3RydWN0IHRhc2tfc2xpY2UgICAgIG5leHRfc2xpY2U7CiAgICAgaW50 IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKIAogICAgIEFTU0VSVF9OT1RfSU5fQVRPTUlDKCk7 CkBAIC0xNjA0LDEyICsxNjAzLDEyIEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAg ICAgIHNldF9iaXQoX1RBU0tMRVRfc2NoZWR1bGVkLCB0YXNrbGV0X3dvcmspOwogICAgICAgICAv KiBmYWxsdGhyb3VnaCAqLwogICAgIGNhc2UgVEFTS0xFVF9lbnF1ZXVlZHxUQVNLTEVUX3NjaGVk dWxlZDoKLSAgICAgICAgdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IDE7CisgICAgICAgIHRhc2ts ZXRfd29ya19zY2hlZHVsZWQgPSB0cnVlOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFRBU0tM RVRfc2NoZWR1bGVkOgogICAgICAgICBjbGVhcl9iaXQoX1RBU0tMRVRfc2NoZWR1bGVkLCB0YXNr bGV0X3dvcmspOwogICAgIGNhc2UgMDoKLSAgICAgICAgLyp0YXNrbGV0X3dvcmtfc2NoZWR1bGVk ID0gMDsqLworICAgICAgICAvKnRhc2tsZXRfd29ya19zY2hlZHVsZWQgPSBmYWxzZTsqLwogICAg ICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBCVUcoKTsKQEAgLTE2MjMsMTQgKzE2 MjIsMTQgQEAgc3RhdGljIHZvaWQgc2NoZWR1bGUodm9pZCkKIAogICAgIC8qIGdldCBwb2xpY3kt c3BlY2lmaWMgZGVjaXNpb24gb24gc2NoZWR1bGluZy4uLiAqLwogICAgIHNjaGVkID0gdGhpc19j cHUoc2NoZWR1bGVyKTsKLSAgICBuZXh0X3NsaWNlID0gc2NoZWQtPmRvX3NjaGVkdWxlKHNjaGVk LCBub3csIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpOworICAgIHNjaGVkLT5kb19zY2hlZHVsZShz Y2hlZCwgcHJldiwgbm93LCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKTsKIAotICAgIG5leHQgPSBu ZXh0X3NsaWNlLnRhc2s7CisgICAgbmV4dCA9IHByZXYtPm5leHRfdGFzazsKIAogICAgIHNkLT5j dXJyID0gbmV4dDsKIAotICAgIGlmICggbmV4dF9zbGljZS50aW1lID49IDAgKSAvKiAtdmUgbWVh bnMgbm8gbGltaXQgKi8KLSAgICAgICAgc2V0X3RpbWVyKCZzZC0+c190aW1lciwgbm93ICsgbmV4 dF9zbGljZS50aW1lKTsKKyAgICBpZiAoIHByZXYtPm5leHRfdGltZSA+PSAwICkgLyogLXZlIG1l YW5zIG5vIGxpbWl0ICovCisgICAgICAgIHNldF90aW1lcigmc2QtPnNfdGltZXIsIG5vdyArIHBy ZXYtPm5leHRfdGltZSk7CiAKICAgICBpZiAoIHVubGlrZWx5KHByZXYgPT0gbmV4dCkgKQogICAg IHsKQEAgLTE2MzgsNyArMTYzNyw3IEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAg ICAgIFRSQUNFXzREKFRSQ19TQ0hFRF9TV0lUQ0hfSU5GQ09OVCwKICAgICAgICAgICAgICAgICAg bmV4dC0+ZG9tYWluLT5kb21haW5faWQsIG5leHQtPnVuaXRfaWQsCiAgICAgICAgICAgICAgICAg IG5vdyAtIHByZXYtPnN0YXRlX2VudHJ5X3RpbWUsCi0gICAgICAgICAgICAgICAgIG5leHRfc2xp Y2UudGltZSk7CisgICAgICAgICAgICAgICAgIHByZXYtPm5leHRfdGltZSk7CiAgICAgICAgIHRy YWNlX2NvbnRpbnVlX3J1bm5pbmcobmV4dC0+dmNwdSk7CiAgICAgICAgIHJldHVybiBjb250aW51 ZV9ydW5uaW5nKHByZXYtPnZjcHUpOwogICAgIH0KQEAgLTE2NTAsNyArMTY0OSw3IEBAIHN0YXRp YyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAgICAgICAgICAgbmV4dC0+ZG9tYWluLT5kb21haW5f aWQsIG5leHQtPnVuaXRfaWQsCiAgICAgICAgICAgICAgKG5leHQtPnZjcHUtPnJ1bnN0YXRlLnN0 YXRlID09IFJVTlNUQVRFX3J1bm5hYmxlKSA/CiAgICAgICAgICAgICAgKG5vdyAtIG5leHQtPnN0 YXRlX2VudHJ5X3RpbWUpIDogMCwKLSAgICAgICAgICAgICBuZXh0X3NsaWNlLnRpbWUpOworICAg ICAgICAgICAgIHByZXYtPm5leHRfdGltZSk7CiAKICAgICBBU1NFUlQocHJldi0+dmNwdS0+cnVu c3RhdGUuc3RhdGUgPT0gUlVOU1RBVEVfcnVubmluZyk7CiAKQEAgLTE2ODAsNyArMTY3OSw3IEBA IHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAKICAgICBzdG9wX3RpbWVyKCZwcmV2LT52Y3B1 LT5wZXJpb2RpY190aW1lcik7CiAKLSAgICBpZiAoIG5leHRfc2xpY2UubWlncmF0ZWQgKQorICAg IGlmICggbmV4dC0+bWlncmF0ZWQgKQogICAgICAgICB2Y3B1X21vdmVfaXJxcyhuZXh0LT52Y3B1 KTsKIAogICAgIHZjcHVfcGVyaW9kaWNfdGltZXJfd29yayhuZXh0LT52Y3B1KTsKZGlmZiAtLWdp dCBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC1pZi5oIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlm LmgKaW5kZXggOGIzNDkwNjlkYi4uNzE2M2VlODY5YiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv eGVuL3NjaGVkLWlmLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlmLmgKQEAgLTE5MCwx MiArMTkwLDYgQEAgc3RhdGljIGlubGluZSBzcGlubG9ja190ICpwY3B1X3NjaGVkdWxlX3RyeWxv Y2sodW5zaWduZWQgaW50IGNwdSkKICAgICByZXR1cm4gTlVMTDsKIH0KIAotc3RydWN0IHRhc2tf c2xpY2UgewotICAgIHN0cnVjdCBzY2hlZF91bml0ICp0YXNrOwotICAgIHNfdGltZV90ICAgICAg ICAgICB0aW1lOwotICAgIGJvb2xfdCAgICAgICAgICAgICBtaWdyYXRlZDsKLX07Ci0KIHN0cnVj dCBzY2hlZHVsZXIgewogICAgIGNoYXIgKm5hbWU7ICAgICAgICAgICAgIC8qIGZ1bGwgbmFtZSBm b3IgdGhpcyBzY2hlZHVsZXIgICAgICAqLwogICAgIGNoYXIgKm9wdF9uYW1lOyAgICAgICAgIC8q IG9wdGlvbiBuYW1lIGZvciB0aGlzIHNjaGVkdWxlciAgICAqLwpAQCAtMjM4LDggKzIzMiw5IEBA IHN0cnVjdCBzY2hlZHVsZXIgewogICAgIHZvaWQgICAgICAgICAoKmNvbnRleHRfc2F2ZWQpICAo Y29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc3RydWN0IHNjaGVkX3VuaXQgKik7CiAKLSAgICBzdHJ1Y3QgdGFza19zbGljZSAoKmRv X3NjaGVkdWxlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLCBzX3RpbWVfdCwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbF90IHRhc2tsZXRfd29ya19zY2hlZHVs ZWQpOworICAgIHZvaWQgICAgICAgICAoKmRvX3NjaGVkdWxlKSAgICAoY29uc3Qgc3RydWN0IHNj aGVkdWxlciAqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNj aGVkX3VuaXQgKiwgc190aW1lX3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpOwogCiAgICAgc3RydWN0IHNjaGVkX3Jlc291 cmNlICogKCpwaWNrX3Jlc291cmNlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzY2hlZF91bml0 ICopOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3NjaGVkLmggYi94ZW4vaW5jbHVkZS94 ZW4vc2NoZWQuaAppbmRleCAwYWIzNThmNjMyLi5kMDA0ODcxMWNmIDEwMDY0NAotLS0gYS94ZW4v aW5jbHVkZS94ZW4vc2NoZWQuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaApAQCAtMjgx LDYgKzI4MSw4IEBAIHN0cnVjdCBzY2hlZF91bml0IHsKICAgICBib29sICAgICAgICAgICAgICAg ICAgIGFmZmluaXR5X2Jyb2tlbjsKICAgICAvKiBEb2VzIHNvZnQgYWZmaW5pdHkgYWN0dWFsbHkg cGxheSBhIHJvbGUgKGdpdmVuIGhhcmQgYWZmaW5pdHkpPyAqLwogICAgIGJvb2wgICAgICAgICAg ICAgICAgICAgc29mdF9hZmZfZWZmZWN0aXZlOworICAgIC8qIEl0ZW0gaGFzIGJlZW4gbWlncmF0 ZWQgdG8gb3RoZXIgY3B1KHMpLiAqLworICAgIGJvb2wgICAgICAgICAgICAgICAgICAgbWlncmF0 ZWQ7CiAgICAgLyogQml0bWFzayBvZiBDUFVzIG9uIHdoaWNoIHRoaXMgVkNQVSBtYXkgcnVuLiAq LwogICAgIGNwdW1hc2tfdmFyX3QgICAgICAgICAgY3B1X2hhcmRfYWZmaW5pdHk7CiAgICAgLyog VXNlZCB0byBjaGFuZ2UgYWZmaW5pdHkgdGVtcG9yYXJpbHkuICovCkBAIC0yODksNiArMjkxLDEw IEBAIHN0cnVjdCBzY2hlZF91bml0IHsKICAgICBjcHVtYXNrX3Zhcl90ICAgICAgICAgIGNwdV9o YXJkX2FmZmluaXR5X3NhdmVkOwogICAgIC8qIEJpdG1hc2sgb2YgQ1BVcyBvbiB3aGljaCB0aGlz IFZDUFUgcHJlZmVycyB0byBydW4uICovCiAgICAgY3B1bWFza192YXJfdCAgICAgICAgICBjcHVf c29mdF9hZmZpbml0eTsKKworICAgIC8qIE5leHQgdW5pdCB0byBydW4uICovCisgICAgc3RydWN0 IHNjaGVkX3VuaXQgICAgICAqbmV4dF90YXNrOworICAgIHNfdGltZV90ICAgICAgICAgICAgICAg IG5leHRfdGltZTsKIH07CiAKICNkZWZpbmUgZm9yX2VhY2hfc2NoZWRfdW5pdChkLCBlKSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAKMi4xNi40CgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1E1B9C04AB6 for ; Tue, 28 May 2019 10:34:30 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E837D2075C for ; Tue, 28 May 2019 10:34:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E837D2075C Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hVZQs-0006JJ-OI; Tue, 28 May 2019 10:34:14 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hVZQF-0004uh-7h for xen-devel@lists.xenproject.org; Tue, 28 May 2019 10:33:35 +0000 X-Inumbo-ID: 068ef14c-8134-11e9-b853-63645e225f92 Received: from mx1.suse.de (unknown [195.135.220.15]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 068ef14c-8134-11e9-b853-63645e225f92; Tue, 28 May 2019 10:33:26 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 56BE8B061; Tue, 28 May 2019 10:33:25 +0000 (UTC) From: Juergen Gross To: xen-devel@lists.xenproject.org Date: Tue, 28 May 2019 12:32:47 +0200 Message-Id: <20190528103313.1343-35-jgross@suse.com> X-Mailer: git-send-email 2.16.4 In-Reply-To: <20190528103313.1343-1-jgross@suse.com> References: <20190528103313.1343-1-jgross@suse.com> Subject: [Xen-devel] [PATCH 34/60] xen/sched: move struct task_slice into struct sched_unit X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Tim Deegan , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Robert VanVossen , Dario Faggioli , Julien Grall , Josh Whitehead , Meng Xu , Jan Beulich MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Message-ID: <20190528103247.EoY0yeHax01VToKJlGVur9lkWMVpkxKDICBI2ZhZo6Q@z> SW4gb3JkZXIgdG8gcHJlcGFyZSBmb3IgbXVsdGlwbGUgdmNwdXMgcGVyIHNjaGVkdWxlIHVuaXQg bW92ZSBzdHJ1Y3QKdGFza19zbGljZSBpbiBzY2hlZHVsZSgpIGZyb20gdGhlIGxvY2FsIHN0YWNr IGludG8gc3RydWN0IHNjaGVkX3VuaXQKb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIHVuaXQuIFRv IG1ha2UgYWNjZXNzIGVhc2llciBmb3IgdGhlIHNpbmdsZQpzY2hlZHVsZXJzIGFkZCB0aGUgcG9p bnRlciBvZiB0aGUgY3VycmVudGx5IHJ1bm5pbmcgdW5pdCBhcyBhIHBhcmFtZXRlcgpvZiBkb19z Y2hlZHVsZSgpLgoKV2hpbGUgYXQgaXQgc3dpdGNoIHRoZSB0YXNrbGV0X3dvcmtfc2NoZWR1bGVk IHBhcmFtZXRlciBvZgpkb19zY2hlZHVsZSgpIGZyb20gYm9vbF90IHRvIGJvb2wuCgpBcyBzdHJ1 Y3QgdGFza19zbGljZSBpcyBvbmx5IGV2ZXIgbW9kaWZpZWQgd2l0aCB0aGUgbG9jYWwgc2NoZWR1 bGUKbG9jayBoZWxkIGl0IGlzIHNhZmUgdG8gZGlyZWN0bHkgc2V0IHRoZSBkaWZmZXJlbnQgdW5p dHMgaW4gc3RydWN0CnNjaGVkX3VuaXQgaW5zdGVhZCBvZiB1c2luZyBhbiBvbi1zdGFjayBjb3B5 IGZvciByZXR1cm5pbmcgdGhlIGRhdGEuCgpTaWduZWQtb2ZmLWJ5OiBKdWVyZ2VuIEdyb3NzIDxq Z3Jvc3NAc3VzZS5jb20+Ci0tLQogeGVuL2NvbW1vbi9zY2hlZF9hcmluYzY1My5jIHwgMjAgKysr KysrKy0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMgICB8IDI1ICsrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jICB8IDIxICsr KysrKysrKy0tLS0tLS0tLS0tLQogeGVuL2NvbW1vbi9zY2hlZF9udWxsLmMgICAgIHwgMjYgKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWRfcnQuYyAgICAgICB8IDIy ICsrKysrKysrKysrLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vc2NoZWR1bGUuYyAgICAgICB8IDIx ICsrKysrKysrKystLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUveGVuL3NjaGVkLWlmLmggIHwgMTEg KysrLS0tLS0tLS0KIHhlbi9pbmNsdWRlL3hlbi9zY2hlZC5oICAgICB8ICA2ICsrKysrKwogOCBm aWxlcyBjaGFuZ2VkLCA2OSBpbnNlcnRpb25zKCspLCA4MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vY29tbW9uL3NjaGVkX2FyaW5jNjUzLmMgYi94ZW4vY29tbW9uL3NjaGVkX2FyaW5j NjUzLmMKaW5kZXggZTQ4ZjJiMmViOS4uMzRlZmNjMDdjOSAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZF9hcmluYzY1My5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfYXJpbmM2NTMuYwpAQCAt NDk3LDE4ICs0OTcsMTQgQEAgYTY1M3NjaGVkX3VuaXRfd2FrZShjb25zdCBzdHJ1Y3Qgc2NoZWR1 bGVyICpvcHMsIHN0cnVjdCBzY2hlZF91bml0ICp1bml0KQogICoKICAqIEBwYXJhbSBvcHMgICAg ICAgUG9pbnRlciB0byB0aGlzIGluc3RhbmNlIG9mIHRoZSBzY2hlZHVsZXIgc3RydWN0dXJlCiAg KiBAcGFyYW0gbm93ICAgICAgIEN1cnJlbnQgdGltZQotICoKLSAqIEByZXR1cm4gICAgICAgICAg QWRkcmVzcyBvZiB0aGUgVU5JVCBzdHJ1Y3R1cmUgc2NoZWR1bGVkIHRvIGJlIHJ1biBuZXh0Ci0g KiAgICAgICAgICAgICAgICAgIEFtb3VudCBvZiB0aW1lIHRvIGV4ZWN1dGUgdGhlIHJldHVybmVk IFVOSVQKLSAqICAgICAgICAgICAgICAgICAgRmxhZyBmb3Igd2hldGhlciB0aGUgVU5JVCB3YXMg bWlncmF0ZWQKICAqLwotc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlCitzdGF0aWMgdm9pZAogYTY1 M3NjaGVkX2RvX3NjaGVkdWxlKAogICAgIGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKKyAg ICBzdHJ1Y3Qgc2NoZWRfdW5pdCAqcHJldiwKICAgICBzX3RpbWVfdCBub3csCi0gICAgYm9vbF90 IHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCisgICAgYm9vbCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVk KQogewotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldDsgICAgICAgICAgICAgICAgICAgICAgLyog aG9sZCB0aGUgY2hvc2VuIGRvbWFpbiAqLwogICAgIHN0cnVjdCBzY2hlZF91bml0ICpuZXdfdGFz ayA9IE5VTEw7CiAgICAgc3RhdGljIHVuc2lnbmVkIGludCBzY2hlZF9pbmRleCA9IDA7CiAgICAg c3RhdGljIHNfdGltZV90IG5leHRfc3dpdGNoX3RpbWU7CkBAIC01ODYsMTMgKzU4MiwxMSBAQCBh NjUzc2NoZWRfZG9fc2NoZWR1bGUoCiAgICAgICogUmV0dXJuIHRoZSBhbW91bnQgb2YgdGltZSB0 aGUgbmV4dCBkb21haW4gaGFzIHRvIHJ1biBhbmQgdGhlIGFkZHJlc3MKICAgICAgKiBvZiB0aGUg c2VsZWN0ZWQgdGFzaydzIFVOSVQgc3RydWN0dXJlLgogICAgICAqLwotICAgIHJldC50aW1lID0g bmV4dF9zd2l0Y2hfdGltZSAtIG5vdzsKLSAgICByZXQudGFzayA9IG5ld190YXNrOwotICAgIHJl dC5taWdyYXRlZCA9IDA7Ci0KLSAgICBCVUdfT04ocmV0LnRpbWUgPD0gMCk7CisgICAgcHJldi0+ bmV4dF90aW1lID0gbmV4dF9zd2l0Y2hfdGltZSAtIG5vdzsKKyAgICBwcmV2LT5uZXh0X3Rhc2sg PSBuZXdfdGFzazsKKyAgICBuZXdfdGFzay0+bWlncmF0ZWQgPSBmYWxzZTsKIAotICAgIHJldHVy biByZXQ7CisgICAgQlVHX09OKHByZXYtPm5leHRfdGltZSA8PSAwKTsKIH0KIAogLyoqCmRpZmYg LS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdC5jIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVk aXQuYwppbmRleCBlNjdiOWJiMjNlLi4xOTZmNjEzNDIwIDEwMDY0NAotLS0gYS94ZW4vY29tbW9u L3NjaGVkX2NyZWRpdC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0LmMKQEAgLTE2ODEs NyArMTY4MSw3IEBAIGNzY2hlZF9ydW5xX3N0ZWFsKGludCBwZWVyX2NwdSwgaW50IGNwdSwgaW50 IHByaSwgaW50IGJhbGFuY2Vfc3RlcCkKIAogc3RhdGljIHN0cnVjdCBjc2NoZWRfdW5pdCAqCiBj c2NoZWRfbG9hZF9iYWxhbmNlKHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2LCBpbnQgY3B1LAot ICAgIHN0cnVjdCBjc2NoZWRfdW5pdCAqc25leHQsIGJvb2xfdCAqc3RvbGVuKQorICAgIHN0cnVj dCBjc2NoZWRfdW5pdCAqc25leHQsIGJvb2wgKnN0b2xlbikKIHsKICAgICBzdHJ1Y3QgY3B1cG9v bCAqYyA9IHBlcl9jcHUoY3B1cG9vbCwgY3B1KTsKICAgICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKnNw ZWVyOwpAQCAtMTc5Nyw3ICsxNzk3LDcgQEAgY3NjaGVkX2xvYWRfYmFsYW5jZShzdHJ1Y3QgY3Nj aGVkX3ByaXZhdGUgKnBydiwgaW50IGNwdSwKICAgICAgICAgICAgICAgICAvKiBBcyBzb29uIGFz IG9uZSB1bml0IGlzIGZvdW5kLCBiYWxhbmNpbmcgZW5kcyAqLwogICAgICAgICAgICAgICAgIGlm ICggc3BlZXIgIT0gTlVMTCApCiAgICAgICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICAg ICAqc3RvbGVuID0gMTsKKyAgICAgICAgICAgICAgICAgICAgKnN0b2xlbiA9IHRydWU7CiAgICAg ICAgICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgICAgICAgICAqIE5leHQgdGltZSB3ZSds bCBsb29rIGZvciB3b3JrIHRvIHN0ZWFsIG9uIHRoaXMgbm9kZSwgd2UKICAgICAgICAgICAgICAg ICAgICAgICogd2lsbCBzdGFydCBmcm9tIHRoZSBuZXh0IHBDUFUsIHdpdGggcmVzcGVjdCB0byB0 aGlzIG9uZSwKQEAgLTE4MjcsMTkgKzE4MjcsMTggQEAgY3NjaGVkX2xvYWRfYmFsYW5jZShzdHJ1 Y3QgY3NjaGVkX3ByaXZhdGUgKnBydiwgaW50IGNwdSwKICAqIFRoaXMgZnVuY3Rpb24gaXMgaW4g dGhlIGNyaXRpY2FsIHBhdGguIEl0IGlzIGRlc2lnbmVkIHRvIGJlIHNpbXBsZSBhbmQKICAqIGZh c3QgZm9yIHRoZSBjb21tb24gY2FzZS4KICAqLwotc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlCi1j c2NoZWRfc2NoZWR1bGUoCi0gICAgY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVf dCBub3csIGJvb2xfdCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3RhdGljIHZvaWQgY3NjaGVk X3NjaGVkdWxlKAorICAgIGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IHNjaGVk X3VuaXQgKnVuaXQsIHNfdGltZV90IG5vdywKKyAgICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVs ZWQpCiB7CiAgICAgY29uc3QgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsK ICAgICBjb25zdCB1bnNpZ25lZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2Nw dShjcHUpOwogICAgIHN0cnVjdCBsaXN0X2hlYWQgKiBjb25zdCBydW5xID0gUlVOUShzY2hlZF9j cHUpOwotICAgIHN0cnVjdCBzY2hlZF91bml0ICp1bml0ID0gY3VycmVudC0+c2NoZWRfdW5pdDsK ICAgICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKiBjb25zdCBzY3VyciA9IENTQ0hFRF9VTklUKHVuaXQp OwogICAgIHN0cnVjdCBjc2NoZWRfcHJpdmF0ZSAqcHJ2ID0gQ1NDSEVEX1BSSVYob3BzKTsKICAg ICBzdHJ1Y3QgY3NjaGVkX3VuaXQgKnNuZXh0OwotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldDsK ICAgICBzX3RpbWVfdCBydW50aW1lLCB0c2xpY2U7CisgICAgYm9vbCBtaWdyYXRlZCA9IGZhbHNl OwogCiAgICAgU0NIRURfU1RBVF9DUkFOSyhzY2hlZHVsZSk7CiAgICAgQ1NDSEVEX1VOSVRfQ0hF Q0sodW5pdCk7CkBAIC0xOTI5LDcgKzE5MjgsNiBAQCBjc2NoZWRfc2NoZWR1bGUoCiAgICAgICAg ICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICAgICAgfQogCi0gICAg ICAgIHJldC5taWdyYXRlZCA9IDA7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KICAgICB0c2xp Y2UgPSBwcnYtPnRzbGljZTsKQEAgLTE5NDcsNyArMTk0NSw2IEBAIGNzY2hlZF9zY2hlZHVsZSgK ICAgICB9CiAKICAgICBzbmV4dCA9IF9fcnVucV9lbGVtKHJ1bnEtPm5leHQpOwotICAgIHJldC5t aWdyYXRlZCA9IDA7CiAKICAgICAvKiBUYXNrbGV0IHdvcmsgKHdoaWNoIHJ1bnMgaW4gaWRsZSBV TklUIGNvbnRleHQpIG92ZXJyaWRlcyBhbGwgZWxzZS4gKi8KICAgICBpZiAoIHRhc2tsZXRfd29y a19zY2hlZHVsZWQgKQpAQCAtMTk3Myw3ICsxOTcwLDcgQEAgY3NjaGVkX3NjaGVkdWxlKAogICAg IGlmICggc25leHQtPnByaSA+IENTQ0hFRF9QUklfVFNfT1ZFUiApCiAgICAgICAgIF9fcnVucV9y ZW1vdmUoc25leHQpOwogICAgIGVsc2UKLSAgICAgICAgc25leHQgPSBjc2NoZWRfbG9hZF9iYWxh bmNlKHBydiwgc2NoZWRfY3B1LCBzbmV4dCwgJnJldC5taWdyYXRlZCk7CisgICAgICAgIHNuZXh0 ID0gY3NjaGVkX2xvYWRfYmFsYW5jZShwcnYsIHNjaGVkX2NwdSwgc25leHQsICZtaWdyYXRlZCk7 CiAKICAgICAvKgogICAgICAqIFVwZGF0ZSBpZGxlcnMgbWFzayBpZiBuZWNlc3NhcnkuIFdoZW4g d2UncmUgaWRsaW5nLCBvdGhlciBDUFVzCkBAIC0xOTk2LDEyICsxOTkzLDEyIEBAIG91dDoKICAg ICAvKgogICAgICAqIFJldHVybiB0YXNrIHRvIHJ1biBuZXh0Li4uCiAgICAgICovCi0gICAgcmV0 LnRpbWUgPSAoaXNfaWRsZV91bml0KHNuZXh0LT51bml0KSA/CisgICAgdW5pdC0+bmV4dF90aW1l ID0gKGlzX2lkbGVfdW5pdChzbmV4dC0+dW5pdCkgPwogICAgICAgICAgICAgICAgIC0xIDogdHNs aWNlKTsKLSAgICByZXQudGFzayA9IHNuZXh0LT51bml0OworICAgIHVuaXQtPm5leHRfdGFzayA9 IHNuZXh0LT51bml0OworICAgIHNuZXh0LT51bml0LT5taWdyYXRlZCA9IG1pZ3JhdGVkOwogCi0g ICAgQ1NDSEVEX1VOSVRfQ0hFQ0socmV0LnRhc2spOwotICAgIHJldHVybiByZXQ7CisgICAgQ1ND SEVEX1VOSVRfQ0hFQ0sodW5pdC0+bmV4dF90YXNrKTsKIH0KIAogc3RhdGljIHZvaWQKZGlmZiAt LWdpdCBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVk aXQyLmMKaW5kZXggY2Y1MDJiM2NiYy4uNjY5NTQ0MTU4OCAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZF9jcmVkaXQyLmMKKysrIGIveGVuL2NvbW1vbi9zY2hlZF9jcmVkaXQyLmMKQEAgLTM0 NDMsMTkgKzM0NDMsMTggQEAgcnVucV9jYW5kaWRhdGUoc3RydWN0IGNzY2hlZDJfcnVucXVldWVf ZGF0YSAqcnFkLAogICogVGhpcyBmdW5jdGlvbiBpcyBpbiB0aGUgY3JpdGljYWwgcGF0aC4gSXQg aXMgZGVzaWduZWQgdG8gYmUgc2ltcGxlIGFuZAogICogZmFzdCBmb3IgdGhlIGNvbW1vbiBjYXNl LgogICovCi1zdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UKLWNzY2hlZDJfc2NoZWR1bGUoCi0gICAg Y29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2wgdGFza2xldF93 b3JrX3NjaGVkdWxlZCkKK3N0YXRpYyB2b2lkIGNzY2hlZDJfc2NoZWR1bGUoCisgICAgY29uc3Qg c3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAqY3VycnVuaXQsIHNfdGlt ZV90IG5vdywKKyAgICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCiB7CiAgICAgY29uc3Qg dW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAgICBjb25zdCB1bnNpZ25l ZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUpOwogICAgIHN0cnVj dCBjc2NoZWQyX3J1bnF1ZXVlX2RhdGEgKnJxZDsKLSAgICBzdHJ1Y3Qgc2NoZWRfdW5pdCAqY3Vy cnVuaXQgPSBjdXJyZW50LT5zY2hlZF91bml0OwogICAgIHN0cnVjdCBjc2NoZWQyX3VuaXQgKiBj b25zdCBzY3VyciA9IGNzY2hlZDJfdW5pdChjdXJydW5pdCk7CiAgICAgc3RydWN0IGNzY2hlZDJf dW5pdCAqc25leHQgPSBOVUxMOwogICAgIHVuc2lnbmVkIGludCBza2lwcGVkX3VuaXRzID0gMDsK LSAgICBzdHJ1Y3QgdGFza19zbGljZSByZXQ7CiAgICAgYm9vbCB0aWNrbGVkOworICAgIGJvb2wg bWlncmF0ZWQgPSBmYWxzZTsKIAogICAgIFNDSEVEX1NUQVRfQ1JBTksoc2NoZWR1bGUpOwogICAg IENTQ0hFRDJfVU5JVF9DSEVDSyhjdXJydW5pdCk7CkBAIC0zNTQwLDggKzM1MzksNiBAQCBjc2No ZWQyX3NjaGVkdWxlKAogICAgICAgICAgJiYgdW5pdF9ydW5uYWJsZShjdXJydW5pdCkgKQogICAg ICAgICBfX3NldF9iaXQoX19DU0ZMQUdfZGVsYXllZF9ydW5xX2FkZCwgJnNjdXJyLT5mbGFncyk7 CiAKLSAgICByZXQubWlncmF0ZWQgPSAwOwotCiAgICAgLyogQWNjb3VudGluZyBmb3Igbm9uLWlk bGUgdGFza3MgKi8KICAgICBpZiAoICFpc19pZGxlX3VuaXQoc25leHQtPnVuaXQpICkKICAgICB7 CkBAIC0zNTkxLDcgKzM1ODgsNyBAQCBjc2NoZWQyX3NjaGVkdWxlKAogICAgICAgICAgICAgc25l eHQtPmNyZWRpdCArPSBDU0NIRUQyX01JR1JBVEVfQ09NUEVOU0FUSU9OOwogICAgICAgICAgICAg c2NoZWRfc2V0X3JlcyhzbmV4dC0+dW5pdCwgZ2V0X3NjaGVkX3JlcyhzY2hlZF9jcHUpKTsKICAg ICAgICAgICAgIFNDSEVEX1NUQVRfQ1JBTksobWlncmF0ZWQpOwotICAgICAgICAgICAgcmV0Lm1p Z3JhdGVkID0gMTsKKyAgICAgICAgICAgIG1pZ3JhdGVkID0gdHJ1ZTsKICAgICAgICAgfQogICAg IH0KICAgICBlbHNlCkBAIC0zNjIyLDExICszNjE5LDExIEBAIGNzY2hlZDJfc2NoZWR1bGUoCiAg ICAgLyoKICAgICAgKiBSZXR1cm4gdGFzayB0byBydW4gbmV4dC4uLgogICAgICAqLwotICAgIHJl dC50aW1lID0gY3NjaGVkMl9ydW50aW1lKG9wcywgc2NoZWRfY3B1LCBzbmV4dCwgbm93KTsKLSAg ICByZXQudGFzayA9IHNuZXh0LT51bml0OworICAgIGN1cnJ1bml0LT5uZXh0X3RpbWUgPSBjc2No ZWQyX3J1bnRpbWUob3BzLCBzY2hlZF9jcHUsIHNuZXh0LCBub3cpOworICAgIGN1cnJ1bml0LT5u ZXh0X3Rhc2sgPSBzbmV4dC0+dW5pdDsKKyAgICBzbmV4dC0+dW5pdC0+bWlncmF0ZWQgPSBtaWdy YXRlZDsKIAotICAgIENTQ0hFRDJfVU5JVF9DSEVDSyhyZXQudGFzayk7Ci0gICAgcmV0dXJuIHJl dDsKKyAgICBDU0NIRUQyX1VOSVRfQ0hFQ0soY3VycnVuaXQtPm5leHRfdGFzayk7CiB9CiAKIHN0 YXRpYyB2b2lkCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX251bGwuYyBiL3hlbi9jb21t b24vc2NoZWRfbnVsbC5jCmluZGV4IDZjMzUwYTM0MmIuLjUzNGQwYWVhNWYgMTAwNjQ0Ci0tLSBh L3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfbnVsbC5jCkBA IC02OTUsMTYgKzY5NSwxNCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgbnVsbF91bml0X2NoZWNrKHN0 cnVjdCBzY2hlZF91bml0ICp1bml0KQogICogIC0gdGhlIHVuaXQgYXNzaWduZWQgdG8gdGhlIHBD UFUsIGlmIHRoZXJlJ3Mgb25lIGFuZCBpdCBjYW4gcnVuOwogICogIC0gdGhlIGlkbGUgdW5pdCwg b3RoZXJ3aXNlLgogICovCi1zdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UgbnVsbF9zY2hlZHVsZShj b25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzX3RpbWVfdCBub3csCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBib29sX3QgdGFza2xldF93b3JrX3NjaGVkdWxlZCkKK3N0YXRpYyB2b2lkIG51bGxf c2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qgc2NoZWRfdW5pdCAq cHJldiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc190aW1lX3Qgbm93LCBib29sIHRhc2ts ZXRfd29ya19zY2hlZHVsZWQpCiB7CiAgICAgdW5zaWduZWQgaW50IGJzOwogICAgIGNvbnN0IHVu c2lnbmVkIGludCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7CiAgICAgY29uc3QgdW5zaWduZWQg aW50IHNjaGVkX2NwdSA9IHNjaGVkX2dldF9yZXNvdXJjZV9jcHUoY3B1KTsKICAgICBzdHJ1Y3Qg bnVsbF9wcml2YXRlICpwcnYgPSBudWxsX3ByaXYob3BzKTsKICAgICBzdHJ1Y3QgbnVsbF91bml0 ICp3dmM7Ci0gICAgc3RydWN0IHRhc2tfc2xpY2UgcmV0OwogCiAgICAgU0NIRURfU1RBVF9DUkFO SyhzY2hlZHVsZSk7CiAgICAgTlVMTF9VTklUX0NIRUNLKGN1cnJlbnQtPnNjaGVkX3VuaXQpOwpA QCAtNzMyLDE5ICs3MzAsMTggQEAgc3RhdGljIHN0cnVjdCB0YXNrX3NsaWNlIG51bGxfc2NoZWR1 bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLAogICAgIGlmICggdGFza2xldF93b3JrX3Nj aGVkdWxlZCApCiAgICAgewogICAgICAgICB0cmFjZV92YXIoVFJDX1NOVUxMX1RBU0tMRVQsIDEs IDAsIE5VTEwpOwotICAgICAgICByZXQudGFzayA9IHNjaGVkX2lkbGVfdW5pdChzY2hlZF9jcHUp OworICAgICAgICBwcmV2LT5uZXh0X3Rhc2sgPSBzY2hlZF9pZGxlX3VuaXQoc2NoZWRfY3B1KTsK ICAgICB9CiAgICAgZWxzZQotICAgICAgICByZXQudGFzayA9IHBlcl9jcHUobnBjLCBzY2hlZF9j cHUpLnVuaXQ7Ci0gICAgcmV0Lm1pZ3JhdGVkID0gMDsKLSAgICByZXQudGltZSA9IC0xOworICAg ICAgICBwcmV2LT5uZXh0X3Rhc2sgPSBwZXJfY3B1KG5wYywgc2NoZWRfY3B1KS51bml0OworICAg IHByZXYtPm5leHRfdGltZSA9IC0xOwogCiAgICAgLyoKICAgICAgKiBXZSBtYXkgYmUgbmV3IGlu IHRoZSBjcHVwb29sLCBvciBqdXN0IGNvbWluZyBiYWNrIG9ubGluZS4gSW4gd2hpY2gKICAgICAg KiBjYXNlLCB0aGVyZSBtYXkgYmUgdW5pdHMgaW4gdGhlIHdhaXRxdWV1ZSB0aGF0IHdlIGNhbiBh c3NpZ24gdG8gdXMKICAgICAgKiBhbmQgcnVuLgogICAgICAqLwotICAgIGlmICggdW5saWtlbHko cmV0LnRhc2sgPT0gTlVMTCkgKQorICAgIGlmICggdW5saWtlbHkocHJldi0+bmV4dF90YXNrID09 IE5VTEwpICkKICAgICB7CiAgICAgICAgIHNwaW5fbG9jaygmcHJ2LT53YWl0cV9sb2NrKTsKIApA QCAtNzcwLDcgKzc2Nyw3IEBAIHN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZSBudWxsX3NjaGVkdWxl KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgICAgICAgIHVuaXRfYXNzaWduKHBydiwgd3ZjLT51bml0LCBzY2hlZF9jcHUpOwogICAg ICAgICAgICAgICAgICAgICBsaXN0X2RlbF9pbml0KCZ3dmMtPndhaXRxX2VsZW0pOwotICAgICAg ICAgICAgICAgICAgICByZXQudGFzayA9IHd2Yy0+dW5pdDsKKyAgICAgICAgICAgICAgICAgICAg cHJldi0+bmV4dF90YXNrID0gd3ZjLT51bml0OwogICAgICAgICAgICAgICAgICAgICBnb3RvIHVu bG9jazsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC03NzksMTEgKzc3Niwx MiBAQCBzdGF0aWMgc3RydWN0IHRhc2tfc2xpY2UgbnVsbF9zY2hlZHVsZShjb25zdCBzdHJ1Y3Qg c2NoZWR1bGVyICpvcHMsCiAgICAgICAgIHNwaW5fdW5sb2NrKCZwcnYtPndhaXRxX2xvY2spOwog ICAgIH0KIAotICAgIGlmICggdW5saWtlbHkocmV0LnRhc2sgPT0gTlVMTCB8fCAhdW5pdF9ydW5u YWJsZShyZXQudGFzaykpICkKLSAgICAgICAgcmV0LnRhc2sgPSBzY2hlZF9pZGxlX3VuaXQoc2No ZWRfY3B1KTsKKyAgICBpZiAoIHVubGlrZWx5KHByZXYtPm5leHRfdGFzayA9PSBOVUxMIHx8ICF1 bml0X3J1bm5hYmxlKHByZXYtPm5leHRfdGFzaykpICkKKyAgICAgICAgcHJldi0+bmV4dF90YXNr ID0gc2NoZWRfaWRsZV91bml0KHNjaGVkX2NwdSk7CiAKLSAgICBOVUxMX1VOSVRfQ0hFQ0socmV0 LnRhc2spOwotICAgIHJldHVybiByZXQ7CisgICAgTlVMTF9VTklUX0NIRUNLKHByZXYtPm5leHRf dGFzayk7CisKKyAgICBwcmV2LT5uZXh0X3Rhc2stPm1pZ3JhdGVkID0gZmFsc2U7CiB9CiAKIHN0 YXRpYyBpbmxpbmUgdm9pZCBkdW1wX3VuaXQoc3RydWN0IG51bGxfcHJpdmF0ZSAqcHJ2LCBzdHJ1 Y3QgbnVsbF91bml0ICpudmMpCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkX3J0LmMgYi94 ZW4vY29tbW9uL3NjaGVkX3J0LmMKaW5kZXggZGRkMWJhZGQzOC4uYWVkNDk4OTcwZSAxMDA2NDQK LS0tIGEveGVuL2NvbW1vbi9zY2hlZF9ydC5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfcnQuYwpA QCAtMTA1NSwxNiArMTA1NSwxNiBAQCBydW5xX3BpY2soY29uc3Qgc3RydWN0IHNjaGVkdWxlciAq b3BzLCBjb25zdCBjcHVtYXNrX3QgKm1hc2spCiAgKiBzY2hlZHVsZSBmdW5jdGlvbiBmb3IgcnQg c2NoZWR1bGVyLgogICogVGhlIGxvY2sgaXMgYWxyZWFkeSBncmFiYmVkIGluIHNjaGVkdWxlLmMs IG5vIG5lZWQgdG8gbG9jayBoZXJlCiAgKi8KLXN0YXRpYyBzdHJ1Y3QgdGFza19zbGljZQotcnRf c2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2xf dCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKQorc3RhdGljIHZvaWQKK3J0X3NjaGVkdWxlKGNvbnN0 IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IHNjaGVkX3VuaXQgKmN1cnJ1bml0LAorICAg ICAgICAgICAgc190aW1lX3Qgbm93LCBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpCiB7CiAg ICAgY29uc3QgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAgICBjb25z dCB1bnNpZ25lZCBpbnQgc2NoZWRfY3B1ID0gc2NoZWRfZ2V0X3Jlc291cmNlX2NwdShjcHUpOwog ICAgIHN0cnVjdCBydF9wcml2YXRlICpwcnYgPSBydF9wcml2KG9wcyk7Ci0gICAgc3RydWN0IHJ0 X3VuaXQgKmNvbnN0IHNjdXJyID0gcnRfdW5pdChjdXJyZW50LT5zY2hlZF91bml0KTsKKyAgICBz dHJ1Y3QgcnRfdW5pdCAqY29uc3Qgc2N1cnIgPSBydF91bml0KGN1cnJ1bml0KTsKICAgICBzdHJ1 Y3QgcnRfdW5pdCAqc25leHQgPSBOVUxMOwotICAgIHN0cnVjdCB0YXNrX3NsaWNlIHJldCA9IHsg Lm1pZ3JhdGVkID0gMCB9OwotICAgIHN0cnVjdCBzY2hlZF91bml0ICpjdXJydW5pdCA9IGN1cnJl bnQtPnNjaGVkX3VuaXQ7CisgICAgYm9vbCBtaWdyYXRlZCA9IGZhbHNlOwogCiAgICAgLyogVFJB Q0UgKi8KICAgICB7CkBAIC0xMTEyLDcgKzExMTIsNyBAQCBydF9zY2hlZHVsZShjb25zdCBzdHJ1 Y3Qgc2NoZWR1bGVyICpvcHMsIHNfdGltZV90IG5vdywgYm9vbF90IHRhc2tsZXRfd29ya19zY2hl ZAogICAgICAgICBfX3NldF9iaXQoX19SVERTX2RlbGF5ZWRfcnVucV9hZGQsICZzY3Vyci0+Zmxh Z3MpOwogCiAgICAgc25leHQtPmxhc3Rfc3RhcnQgPSBub3c7Ci0gICAgcmV0LnRpbWUgPSAgLTE7 IC8qIGlmIGFuIGlkbGUgdW5pdCBpcyBwaWNrZWQgKi8KKyAgICBjdXJydW5pdC0+bmV4dF90aW1l ID0gIC0xOyAvKiBpZiBhbiBpZGxlIHVuaXQgaXMgcGlja2VkICovCiAgICAgaWYgKCAhaXNfaWRs ZV91bml0KHNuZXh0LT51bml0KSApCiAgICAgewogICAgICAgICBpZiAoIHNuZXh0ICE9IHNjdXJy ICkKQEAgLTExMjMsMTMgKzExMjMsMTMgQEAgcnRfc2NoZWR1bGUoY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLCBzX3RpbWVfdCBub3csIGJvb2xfdCB0YXNrbGV0X3dvcmtfc2NoZWQKICAgICAg ICAgaWYgKCBzY2hlZF91bml0X2NwdShzbmV4dC0+dW5pdCkgIT0gc2NoZWRfY3B1ICkKICAgICAg ICAgewogICAgICAgICAgICAgc2NoZWRfc2V0X3JlcyhzbmV4dC0+dW5pdCwgZ2V0X3NjaGVkX3Jl cyhzY2hlZF9jcHUpKTsKLSAgICAgICAgICAgIHJldC5taWdyYXRlZCA9IDE7CisgICAgICAgICAg ICBtaWdyYXRlZCA9IHRydWU7CiAgICAgICAgIH0KLSAgICAgICAgcmV0LnRpbWUgPSBzbmV4dC0+ Y3VyX2J1ZGdldDsgLyogaW52b2tlIHRoZSBzY2hlZHVsZXIgbmV4dCB0aW1lICovCisgICAgICAg IC8qIEludm9rZSB0aGUgc2NoZWR1bGVyIG5leHQgdGltZS4gKi8KKyAgICAgICAgY3VycnVuaXQt Pm5leHRfdGltZSA9IHNuZXh0LT5jdXJfYnVkZ2V0OwogICAgIH0KLSAgICByZXQudGFzayA9IHNu ZXh0LT51bml0OwotCi0gICAgcmV0dXJuIHJldDsKKyAgICBjdXJydW5pdC0+bmV4dF90YXNrID0g c25leHQtPnVuaXQ7CisgICAgc25leHQtPnVuaXQtPm1pZ3JhdGVkID0gbWlncmF0ZWQ7CiB9CiAK IC8qCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3NjaGVkdWxlLmMgYi94ZW4vY29tbW9uL3NjaGVk dWxlLmMKaW5kZXggODEyMWRhMTVjNi4uYzIzYTU2MjlkZSAxMDA2NDQKLS0tIGEveGVuL2NvbW1v bi9zY2hlZHVsZS5jCisrKyBiL3hlbi9jb21tb24vc2NoZWR1bGUuYwpAQCAtMTU4NSwxMCArMTU4 NSw5IEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAgc190aW1lX3QgICAgICAgICAg ICAgIG5vdzsKICAgICBzdHJ1Y3Qgc2NoZWR1bGVyICAgICAqc2NoZWQ7CiAgICAgdW5zaWduZWQg bG9uZyAgICAgICAgKnRhc2tsZXRfd29yayA9ICZ0aGlzX2NwdSh0YXNrbGV0X3dvcmtfdG9fZG8p OwotICAgIGJvb2xfdCAgICAgICAgICAgICAgICB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkID0gMDsK KyAgICBib29sICAgICAgICAgICAgICAgICAgdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IGZhbHNl OwogICAgIHN0cnVjdCBzY2hlZF9yZXNvdXJjZSAqc2Q7CiAgICAgc3BpbmxvY2tfdCAgICAgICAg ICAgKmxvY2s7Ci0gICAgc3RydWN0IHRhc2tfc2xpY2UgICAgIG5leHRfc2xpY2U7CiAgICAgaW50 IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKIAogICAgIEFTU0VSVF9OT1RfSU5fQVRPTUlDKCk7 CkBAIC0xNjA0LDEyICsxNjAzLDEyIEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAg ICAgIHNldF9iaXQoX1RBU0tMRVRfc2NoZWR1bGVkLCB0YXNrbGV0X3dvcmspOwogICAgICAgICAv KiBmYWxsdGhyb3VnaCAqLwogICAgIGNhc2UgVEFTS0xFVF9lbnF1ZXVlZHxUQVNLTEVUX3NjaGVk dWxlZDoKLSAgICAgICAgdGFza2xldF93b3JrX3NjaGVkdWxlZCA9IDE7CisgICAgICAgIHRhc2ts ZXRfd29ya19zY2hlZHVsZWQgPSB0cnVlOwogICAgICAgICBicmVhazsKICAgICBjYXNlIFRBU0tM RVRfc2NoZWR1bGVkOgogICAgICAgICBjbGVhcl9iaXQoX1RBU0tMRVRfc2NoZWR1bGVkLCB0YXNr bGV0X3dvcmspOwogICAgIGNhc2UgMDoKLSAgICAgICAgLyp0YXNrbGV0X3dvcmtfc2NoZWR1bGVk ID0gMDsqLworICAgICAgICAvKnRhc2tsZXRfd29ya19zY2hlZHVsZWQgPSBmYWxzZTsqLwogICAg ICAgICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBCVUcoKTsKQEAgLTE2MjMsMTQgKzE2 MjIsMTQgQEAgc3RhdGljIHZvaWQgc2NoZWR1bGUodm9pZCkKIAogICAgIC8qIGdldCBwb2xpY3kt c3BlY2lmaWMgZGVjaXNpb24gb24gc2NoZWR1bGluZy4uLiAqLwogICAgIHNjaGVkID0gdGhpc19j cHUoc2NoZWR1bGVyKTsKLSAgICBuZXh0X3NsaWNlID0gc2NoZWQtPmRvX3NjaGVkdWxlKHNjaGVk LCBub3csIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpOworICAgIHNjaGVkLT5kb19zY2hlZHVsZShz Y2hlZCwgcHJldiwgbm93LCB0YXNrbGV0X3dvcmtfc2NoZWR1bGVkKTsKIAotICAgIG5leHQgPSBu ZXh0X3NsaWNlLnRhc2s7CisgICAgbmV4dCA9IHByZXYtPm5leHRfdGFzazsKIAogICAgIHNkLT5j dXJyID0gbmV4dDsKIAotICAgIGlmICggbmV4dF9zbGljZS50aW1lID49IDAgKSAvKiAtdmUgbWVh bnMgbm8gbGltaXQgKi8KLSAgICAgICAgc2V0X3RpbWVyKCZzZC0+c190aW1lciwgbm93ICsgbmV4 dF9zbGljZS50aW1lKTsKKyAgICBpZiAoIHByZXYtPm5leHRfdGltZSA+PSAwICkgLyogLXZlIG1l YW5zIG5vIGxpbWl0ICovCisgICAgICAgIHNldF90aW1lcigmc2QtPnNfdGltZXIsIG5vdyArIHBy ZXYtPm5leHRfdGltZSk7CiAKICAgICBpZiAoIHVubGlrZWx5KHByZXYgPT0gbmV4dCkgKQogICAg IHsKQEAgLTE2MzgsNyArMTYzNyw3IEBAIHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAg ICAgIFRSQUNFXzREKFRSQ19TQ0hFRF9TV0lUQ0hfSU5GQ09OVCwKICAgICAgICAgICAgICAgICAg bmV4dC0+ZG9tYWluLT5kb21haW5faWQsIG5leHQtPnVuaXRfaWQsCiAgICAgICAgICAgICAgICAg IG5vdyAtIHByZXYtPnN0YXRlX2VudHJ5X3RpbWUsCi0gICAgICAgICAgICAgICAgIG5leHRfc2xp Y2UudGltZSk7CisgICAgICAgICAgICAgICAgIHByZXYtPm5leHRfdGltZSk7CiAgICAgICAgIHRy YWNlX2NvbnRpbnVlX3J1bm5pbmcobmV4dC0+dmNwdSk7CiAgICAgICAgIHJldHVybiBjb250aW51 ZV9ydW5uaW5nKHByZXYtPnZjcHUpOwogICAgIH0KQEAgLTE2NTAsNyArMTY0OSw3IEBAIHN0YXRp YyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAgICAgICAgICAgICAgbmV4dC0+ZG9tYWluLT5kb21haW5f aWQsIG5leHQtPnVuaXRfaWQsCiAgICAgICAgICAgICAgKG5leHQtPnZjcHUtPnJ1bnN0YXRlLnN0 YXRlID09IFJVTlNUQVRFX3J1bm5hYmxlKSA/CiAgICAgICAgICAgICAgKG5vdyAtIG5leHQtPnN0 YXRlX2VudHJ5X3RpbWUpIDogMCwKLSAgICAgICAgICAgICBuZXh0X3NsaWNlLnRpbWUpOworICAg ICAgICAgICAgIHByZXYtPm5leHRfdGltZSk7CiAKICAgICBBU1NFUlQocHJldi0+dmNwdS0+cnVu c3RhdGUuc3RhdGUgPT0gUlVOU1RBVEVfcnVubmluZyk7CiAKQEAgLTE2ODAsNyArMTY3OSw3IEBA IHN0YXRpYyB2b2lkIHNjaGVkdWxlKHZvaWQpCiAKICAgICBzdG9wX3RpbWVyKCZwcmV2LT52Y3B1 LT5wZXJpb2RpY190aW1lcik7CiAKLSAgICBpZiAoIG5leHRfc2xpY2UubWlncmF0ZWQgKQorICAg IGlmICggbmV4dC0+bWlncmF0ZWQgKQogICAgICAgICB2Y3B1X21vdmVfaXJxcyhuZXh0LT52Y3B1 KTsKIAogICAgIHZjcHVfcGVyaW9kaWNfdGltZXJfd29yayhuZXh0LT52Y3B1KTsKZGlmZiAtLWdp dCBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC1pZi5oIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlm LmgKaW5kZXggOGIzNDkwNjlkYi4uNzE2M2VlODY5YiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv eGVuL3NjaGVkLWlmLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLWlmLmgKQEAgLTE5MCwx MiArMTkwLDYgQEAgc3RhdGljIGlubGluZSBzcGlubG9ja190ICpwY3B1X3NjaGVkdWxlX3RyeWxv Y2sodW5zaWduZWQgaW50IGNwdSkKICAgICByZXR1cm4gTlVMTDsKIH0KIAotc3RydWN0IHRhc2tf c2xpY2UgewotICAgIHN0cnVjdCBzY2hlZF91bml0ICp0YXNrOwotICAgIHNfdGltZV90ICAgICAg ICAgICB0aW1lOwotICAgIGJvb2xfdCAgICAgICAgICAgICBtaWdyYXRlZDsKLX07Ci0KIHN0cnVj dCBzY2hlZHVsZXIgewogICAgIGNoYXIgKm5hbWU7ICAgICAgICAgICAgIC8qIGZ1bGwgbmFtZSBm b3IgdGhpcyBzY2hlZHVsZXIgICAgICAqLwogICAgIGNoYXIgKm9wdF9uYW1lOyAgICAgICAgIC8q IG9wdGlvbiBuYW1lIGZvciB0aGlzIHNjaGVkdWxlciAgICAqLwpAQCAtMjM4LDggKzIzMiw5IEBA IHN0cnVjdCBzY2hlZHVsZXIgewogICAgIHZvaWQgICAgICAgICAoKmNvbnRleHRfc2F2ZWQpICAo Y29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc3RydWN0IHNjaGVkX3VuaXQgKik7CiAKLSAgICBzdHJ1Y3QgdGFza19zbGljZSAoKmRv X3NjaGVkdWxlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLCBzX3RpbWVfdCwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbF90IHRhc2tsZXRfd29ya19zY2hlZHVs ZWQpOworICAgIHZvaWQgICAgICAgICAoKmRvX3NjaGVkdWxlKSAgICAoY29uc3Qgc3RydWN0IHNj aGVkdWxlciAqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNj aGVkX3VuaXQgKiwgc190aW1lX3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBib29sIHRhc2tsZXRfd29ya19zY2hlZHVsZWQpOwogCiAgICAgc3RydWN0IHNjaGVkX3Jlc291 cmNlICogKCpwaWNrX3Jlc291cmNlKSAoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzY2hlZF91bml0 ICopOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3NjaGVkLmggYi94ZW4vaW5jbHVkZS94 ZW4vc2NoZWQuaAppbmRleCAwYWIzNThmNjMyLi5kMDA0ODcxMWNmIDEwMDY0NAotLS0gYS94ZW4v aW5jbHVkZS94ZW4vc2NoZWQuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaApAQCAtMjgx LDYgKzI4MSw4IEBAIHN0cnVjdCBzY2hlZF91bml0IHsKICAgICBib29sICAgICAgICAgICAgICAg ICAgIGFmZmluaXR5X2Jyb2tlbjsKICAgICAvKiBEb2VzIHNvZnQgYWZmaW5pdHkgYWN0dWFsbHkg cGxheSBhIHJvbGUgKGdpdmVuIGhhcmQgYWZmaW5pdHkpPyAqLwogICAgIGJvb2wgICAgICAgICAg ICAgICAgICAgc29mdF9hZmZfZWZmZWN0aXZlOworICAgIC8qIEl0ZW0gaGFzIGJlZW4gbWlncmF0 ZWQgdG8gb3RoZXIgY3B1KHMpLiAqLworICAgIGJvb2wgICAgICAgICAgICAgICAgICAgbWlncmF0 ZWQ7CiAgICAgLyogQml0bWFzayBvZiBDUFVzIG9uIHdoaWNoIHRoaXMgVkNQVSBtYXkgcnVuLiAq LwogICAgIGNwdW1hc2tfdmFyX3QgICAgICAgICAgY3B1X2hhcmRfYWZmaW5pdHk7CiAgICAgLyog VXNlZCB0byBjaGFuZ2UgYWZmaW5pdHkgdGVtcG9yYXJpbHkuICovCkBAIC0yODksNiArMjkxLDEw IEBAIHN0cnVjdCBzY2hlZF91bml0IHsKICAgICBjcHVtYXNrX3Zhcl90ICAgICAgICAgIGNwdV9o YXJkX2FmZmluaXR5X3NhdmVkOwogICAgIC8qIEJpdG1hc2sgb2YgQ1BVcyBvbiB3aGljaCB0aGlz IFZDUFUgcHJlZmVycyB0byBydW4uICovCiAgICAgY3B1bWFza192YXJfdCAgICAgICAgICBjcHVf c29mdF9hZmZpbml0eTsKKworICAgIC8qIE5leHQgdW5pdCB0byBydW4uICovCisgICAgc3RydWN0 IHNjaGVkX3VuaXQgICAgICAqbmV4dF90YXNrOworICAgIHNfdGltZV90ICAgICAgICAgICAgICAg IG5leHRfdGltZTsKIH07CiAKICNkZWZpbmUgZm9yX2VhY2hfc2NoZWRfdW5pdChkLCBlKSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAKMi4xNi40CgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5w cm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==