From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: [PATCH v6 07/12] microcode: remove pointless 'cpu' parameter Date: Mon, 11 Mar 2019 15:57:31 +0800 Message-ID: <1552291056-20286-8-git-send-email-chao.gao@intel.com> References: <1552291056-20286-1-git-send-email-chao.gao@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1h3Fkq-0003oh-Ne for xen-devel@lists.xenproject.org; Mon, 11 Mar 2019 07:53:48 +0000 In-Reply-To: <1552291056-20286-1-git-send-email-chao.gao@intel.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: Sergey Dyasli , Wei Liu , Ashok Raj , Andrew Cooper , Jan Beulich , Chao Gao , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org U29tZSBjYWxsYmFja3MgaW4gbWljcm9jb2RlX29wcyBvciByZWxhdGVkIGZ1bmN0aW9ucyB0YWtl IGEgY3B1CmlkIHBhcmFtZXRlci4gQnV0IGF0IGN1cnJlbnQgY2FsbCBzaXRlcywgdGhlIGNwdSBp ZCBwYXJhbWV0ZXIgaXMKYWx3YXlzIGVxdWFsIHRvIGN1cnJlbnQgY3B1IGlkLiBTb21lIG9mIHRo ZW0gZXZlbiB1c2UgYW4gYXNzZXJ0aW9uCnRvIGd1YXJhbnRlZSB0aGlzLiBSZW1vdmUgdGhpcyBy ZWR1bmRlbnQgJ2NwdScgcGFyYW1ldGVyLgoKU2lnbmVkLW9mZi1ieTogQ2hhbyBHYW8gPGNoYW8u Z2FvQGludGVsLmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvYWNwaS9wb3dlci5jICAgICAgIHwgIDIg Ky0KIHhlbi9hcmNoL3g4Ni9taWNyb2NvZGUuYyAgICAgICAgfCAxMiArKysrKystLS0tLS0KIHhl bi9hcmNoL3g4Ni9taWNyb2NvZGVfYW1kLmMgICAgfCAzNiArKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIHhlbi9hcmNoL3g4Ni9taWNyb2NvZGVfaW50ZWwuYyAgfCAyMSArKysr KysrLS0tLS0tLS0tLS0tLS0KIHhlbi9hcmNoL3g4Ni9zbXBib290LmMgICAgICAgICAgfCAgMiAr LQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9taWNyb2NvZGUuaCB8ICA3ICsrKy0tLS0KIHhlbi9pbmNs dWRlL2FzbS14ODYvcHJvY2Vzc29yLmggfCAgMiArLQogNyBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNl cnRpb25zKCspLCA0OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvYWNw aS9wb3dlci5jIGIveGVuL2FyY2gveDg2L2FjcGkvcG93ZXIuYwppbmRleCA5M2U5NjdmLi5iNGMz NjY5IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvYWNwaS9wb3dlci5jCisrKyBiL3hlbi9hcmNo L3g4Ni9hY3BpL3Bvd2VyLmMKQEAgLTI1Myw3ICsyNTMsNyBAQCBzdGF0aWMgaW50IGVudGVyX3N0 YXRlKHUzMiBzdGF0ZSkKIAogICAgIGNvbnNvbGVfZW5kX3N5bmMoKTsKIAotICAgIG1pY3JvY29k ZV9yZXN1bWVfY3B1KDApOworICAgIG1pY3JvY29kZV9yZXN1bWVfY3B1KCk7CiAKICAgICBpZiAo ICFyZWNoZWNrX2NwdV9mZWF0dXJlcygwKSApCiAgICAgICAgIHBhbmljKCJNaXNzaW5nIHByZXZp b3VzbHkgYXZhaWxhYmxlIGZlYXR1cmUocylcbiIpOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2 L21pY3JvY29kZS5jIGIveGVuL2FyY2gveDg2L21pY3JvY29kZS5jCmluZGV4IGZkMWEyNDMuLjhi ZmRmOTUgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9taWNyb2NvZGUuYworKysgYi94ZW4vYXJj aC94ODYvbWljcm9jb2RlLmMKQEAgLTI2MSwxOSArMjYxLDE5IEBAIGNvbnN0IHN0cnVjdCBtaWNy b2NvZGVfcGF0Y2ggKm1pY3JvY29kZV9maW5kX3BhdGNoKHZvaWQpCiAgICAgcmV0dXJuIE5VTEw7 CiB9CiAKLWludCBtaWNyb2NvZGVfcmVzdW1lX2NwdSh1bnNpZ25lZCBpbnQgY3B1KQoraW50IG1p Y3JvY29kZV9yZXN1bWVfY3B1KHZvaWQpCiB7CiAgICAgaW50IGVycjsKLSAgICBzdHJ1Y3QgY3B1 X3NpZ25hdHVyZSAqc2lnID0gJnBlcl9jcHUoY3B1X3NpZywgY3B1KTsKKyAgICBzdHJ1Y3QgY3B1 X3NpZ25hdHVyZSAqc2lnID0gJnRoaXNfY3B1KGNwdV9zaWcpOwogCiAgICAgaWYgKCAhbWljcm9j b2RlX29wcyApCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgc3Bpbl9sb2NrKCZtaWNyb2NvZGVf bXV0ZXgpOwogCi0gICAgZXJyID0gbWljcm9jb2RlX29wcy0+Y29sbGVjdF9jcHVfaW5mbyhjcHUs IHNpZyk7CisgICAgZXJyID0gbWljcm9jb2RlX29wcy0+Y29sbGVjdF9jcHVfaW5mbyhzaWcpOwog ICAgIGlmICggbGlrZWx5KCFlcnIpICkKLSAgICAgICAgZXJyID0gbWljcm9jb2RlX29wcy0+YXBw bHlfbWljcm9jb2RlKGNwdSk7CisgICAgICAgIGVyciA9IG1pY3JvY29kZV9vcHMtPmFwcGx5X21p Y3JvY29kZSgpOwogICAgIHNwaW5fdW5sb2NrKCZtaWNyb2NvZGVfbXV0ZXgpOwogCiAgICAgcmV0 dXJuIGVycjsKQEAgLTI4Nyw5ICsyODcsOSBAQCBzdGF0aWMgaW50IG1pY3JvY29kZV91cGRhdGVf Y3B1KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUpCiAKICAgICBzcGluX2xvY2soJm1pY3Jv Y29kZV9tdXRleCk7CiAKLSAgICBlcnIgPSBtaWNyb2NvZGVfb3BzLT5jb2xsZWN0X2NwdV9pbmZv KGNwdSwgc2lnKTsKKyAgICBlcnIgPSBtaWNyb2NvZGVfb3BzLT5jb2xsZWN0X2NwdV9pbmZvKHNp Zyk7CiAgICAgaWYgKCBsaWtlbHkoIWVycikgKQotICAgICAgICBlcnIgPSBtaWNyb2NvZGVfb3Bz LT5jcHVfcmVxdWVzdF9taWNyb2NvZGUoY3B1LCBidWYsIHNpemUpOworICAgICAgICBlcnIgPSBt aWNyb2NvZGVfb3BzLT5jcHVfcmVxdWVzdF9taWNyb2NvZGUoYnVmLCBzaXplKTsKICAgICBzcGlu X3VubG9jaygmbWljcm9jb2RlX211dGV4KTsKIAogICAgIHJldHVybiBlcnI7CmRpZmYgLS1naXQg YS94ZW4vYXJjaC94ODYvbWljcm9jb2RlX2FtZC5jIGIveGVuL2FyY2gveDg2L21pY3JvY29kZV9h bWQuYwppbmRleCA0NTg2ZThkLi4yNTkzNWRkIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbWlj cm9jb2RlX2FtZC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9taWNyb2NvZGVfYW1kLmMKQEAgLTc4LDgg Kzc4LDkgQEAgc3RydWN0IG1wYmhkciB7CiBzdGF0aWMgREVGSU5FX1NQSU5MT0NLKG1pY3JvY29k ZV91cGRhdGVfbG9jayk7CiAKIC8qIFNlZSBjb21tZW50IGluIHN0YXJ0X3VwZGF0ZSgpIGZvciBj YXNlcyB3aGVuIHRoaXMgcm91dGluZSBmYWlscyAqLwotc3RhdGljIGludCBjb2xsZWN0X2NwdV9p bmZvKHVuc2lnbmVkIGludCBjcHUsIHN0cnVjdCBjcHVfc2lnbmF0dXJlICpjc2lnKQorc3RhdGlj IGludCBjb2xsZWN0X2NwdV9pbmZvKHN0cnVjdCBjcHVfc2lnbmF0dXJlICpjc2lnKQogeworICAg IHVuc2lnbmVkIGludCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7CiAgICAgc3RydWN0IGNwdWlu Zm9feDg2ICpjID0gJmNwdV9kYXRhW2NwdV07CiAKICAgICBtZW1zZXQoY3NpZywgMCwgc2l6ZW9m KCpjc2lnKSk7CkBAIC0xNTIsMTggKzE1MywxNSBAQCBzdGF0aWMgYm9vbF90IGZpbmRfZXF1aXZf Y3B1X2lkKGNvbnN0IHN0cnVjdCBlcXVpdl9jcHVfZW50cnkgKmVxdWl2X2NwdV90YWJsZSwKICAg ICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGJvb2xfdCBtaWNyb2NvZGVfZml0cyhjb25zdCBzdHJ1 Y3QgbWljcm9jb2RlX2FtZCAqbWNfYW1kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBpbnQgY3B1KQorc3RhdGljIGJvb2wgbWljcm9jb2RlX2ZpdHMoY29uc3Qgc3RydWN0 IG1pY3JvY29kZV9hbWQgKm1jX2FtZCkKIHsKKyAgICB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3By b2Nlc3Nvcl9pZCgpOwogICAgIGNvbnN0IHN0cnVjdCBjcHVfc2lnbmF0dXJlICpzaWcgPSAmcGVy X2NwdShjcHVfc2lnLCBjcHUpOwogICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfaGVhZGVyX2Ft ZCAqbWNfaGVhZGVyID0gbWNfYW1kLT5tcGI7CiAgICAgY29uc3Qgc3RydWN0IGVxdWl2X2NwdV9l bnRyeSAqZXF1aXZfY3B1X3RhYmxlID0gbWNfYW1kLT5lcXVpdl9jcHVfdGFibGU7CiAgICAgdW5z aWduZWQgaW50IGN1cnJlbnRfY3B1X2lkOwogICAgIHVuc2lnbmVkIGludCBlcXVpdl9jcHVfaWQ7 CiAKLSAgICAvKiBXZSBzaG91bGQgYmluZCB0aGUgdGFzayB0byB0aGUgQ1BVICovCi0gICAgQlVH X09OKGNwdSAhPSByYXdfc21wX3Byb2Nlc3Nvcl9pZCgpKTsKLQogICAgIGN1cnJlbnRfY3B1X2lk ID0gY3B1aWRfZWF4KDB4MDAwMDAwMDEpOwogCiAgICAgaWYgKCAhZmluZF9lcXVpdl9jcHVfaWQo ZXF1aXZfY3B1X3RhYmxlLCBjdXJyZW50X2NwdV9pZCwgJmVxdWl2X2NwdV9pZCkgKQpAQCAtMTky LDcgKzE5MCw3IEBAIHN0YXRpYyBib29sX3QgbWljcm9jb2RlX2ZpdHMoY29uc3Qgc3RydWN0IG1p Y3JvY29kZV9hbWQgKm1jX2FtZCwKIAogc3RhdGljIGJvb2wgbWF0Y2hfY3B1KGNvbnN0IHN0cnVj dCBtaWNyb2NvZGVfcGF0Y2ggKnBhdGNoKQogewotICAgIHJldHVybiBtaWNyb2NvZGVfZml0cyhw YXRjaC0+ZGF0YSwgc21wX3Byb2Nlc3Nvcl9pZCgpKTsKKyAgICByZXR1cm4gbWljcm9jb2RlX2Zp dHMocGF0Y2gtPmRhdGEpOwogfQogCiBzdGF0aWMgc3RydWN0IG1pY3JvY29kZV9wYXRjaCAqYWxs b2NfbWljcm9jb2RlX3BhdGNoKApAQCAtMjUxLDE4ICsyNDksMTYgQEAgc3RhdGljIGVudW0gbWlj cm9jb2RlX21hdGNoX3Jlc3VsdCBjb21wYXJlX3BhdGNoKAogICAgIHJldHVybiBNSVNfVUNPREU7 CiB9CiAKLXN0YXRpYyBpbnQgYXBwbHlfbWljcm9jb2RlKHVuc2lnbmVkIGludCBjcHUpCitzdGF0 aWMgaW50IGFwcGx5X21pY3JvY29kZSh2b2lkKQogewogICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7 CiAgICAgdWludDMyX3QgcmV2OwogICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfaGVhZGVyX2Ft ZCAqaGRyOwogICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfcGF0Y2ggKnBhdGNoOwogICAgIGlu dCBod19lcnI7CisgICAgdW5zaWduZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKICAg ICBzdHJ1Y3QgY3B1X3NpZ25hdHVyZSAqc2lnID0gJnBlcl9jcHUoY3B1X3NpZywgY3B1KTsKIAot ICAgIC8qIFdlIHNob3VsZCBiaW5kIHRoZSB0YXNrIHRvIHRoZSBDUFUgKi8KLSAgICBCVUdfT04o cmF3X3NtcF9wcm9jZXNzb3JfaWQoKSAhPSBjcHUpOwotCiAgICAgcGF0Y2ggPSBtaWNyb2NvZGVf ZmluZF9wYXRjaCgpOwogICAgIGlmICggcGF0Y2ggPT0gTlVMTCApCiAgICAgICAgIHJldHVybiAt RUlOVkFMOwpAQCAtNDM0LDE0ICs0MzAsMTQgQEAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBm aW5hbF9sZXZlbHNbXSA9IHsKICAgICAweDAxMDAwMGFmCiB9OwogCi1zdGF0aWMgYm9vbF90IGNo ZWNrX2ZpbmFsX3BhdGNoX2xldmVscyh1bnNpZ25lZCBpbnQgY3B1KQorc3RhdGljIGJvb2wgY2hl Y2tfZmluYWxfcGF0Y2hfbGV2ZWxzKHZvaWQpCiB7CiAgICAgLyoKICAgICAgKiBDaGVjayB0aGUg Y3VycmVudCBwYXRjaCBsZXZlbHMgb24gdGhlIGNwdS4gSWYgdGhleSBhcmUgZXF1YWwgdG8KICAg ICAgKiBhbnkgb2YgdGhlICdmaW5hbF9sZXZlbHMnLCB0aGVuIHdlIHNob3VsZCBub3QgdXBkYXRl IHRoZSBtaWNyb2NvZGUKICAgICAgKiBwYXRjaCBvbiB0aGUgY3B1IGFzIHN5c3RlbSB3aWxsIGhh bmcgb3RoZXJ3aXNlLgogICAgICAqLwotICAgIGNvbnN0IHN0cnVjdCBjcHVfc2lnbmF0dXJlICpz aWcgPSAmcGVyX2NwdShjcHVfc2lnLCBjcHUpOworICAgIGNvbnN0IHN0cnVjdCBjcHVfc2lnbmF0 dXJlICpzaWcgPSAmdGhpc19jcHUoY3B1X3NpZyk7CiAgICAgdW5zaWduZWQgaW50IGk7CiAKICAg ICBpZiAoIGJvb3RfY3B1X2RhdGEueDg2ICE9IDB4MTAgKQpAQCAtNDU0LDE5ICs0NTAsMTYgQEAg c3RhdGljIGJvb2xfdCBjaGVja19maW5hbF9wYXRjaF9sZXZlbHModW5zaWduZWQgaW50IGNwdSkK ICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBjcHVfcmVxdWVzdF9taWNyb2NvZGUodW5z aWduZWQgaW50IGNwdSwgY29uc3Qgdm9pZCAqYnVmLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc2l6ZV90IGJ1ZnNpemUpCitzdGF0aWMgaW50IGNwdV9yZXF1ZXN0X21pY3JvY29k ZShjb25zdCB2b2lkICpidWYsIHNpemVfdCBidWZzaXplKQogewogICAgIHN0cnVjdCBtaWNyb2Nv ZGVfYW1kICptY19hbWQ7CiAgICAgc2l6ZV90IG9mZnNldCA9IDA7CiAgICAgaW50IGVycm9yID0g MDsKICAgICB1bnNpZ25lZCBpbnQgY3VycmVudF9jcHVfaWQ7CiAgICAgdW5zaWduZWQgaW50IGVx dWl2X2NwdV9pZDsKKyAgICB1bnNpZ25lZCBpbnQgY3B1ID0gc21wX3Byb2Nlc3Nvcl9pZCgpOwog ICAgIGNvbnN0IHN0cnVjdCBjcHVfc2lnbmF0dXJlICpzaWcgPSAmcGVyX2NwdShjcHVfc2lnLCBj cHUpOwogCi0gICAgLyogV2Ugc2hvdWxkIGJpbmQgdGhlIHRhc2sgdG8gdGhlIENQVSAqLwotICAg IEJVR19PTihjcHUgIT0gcmF3X3NtcF9wcm9jZXNzb3JfaWQoKSk7Ci0KICAgICBjdXJyZW50X2Nw dV9pZCA9IGNwdWlkX2VheCgweDAwMDAwMDAxKTsKIAogICAgIGlmICggKihjb25zdCB1aW50MzJf dCAqKWJ1ZiAhPSBVQ09ERV9NQUdJQyApCkBAIC00NzYsNyArNDY5LDcgQEAgc3RhdGljIGludCBj cHVfcmVxdWVzdF9taWNyb2NvZGUodW5zaWduZWQgaW50IGNwdSwgY29uc3Qgdm9pZCAqYnVmLAog ICAgICAgICBnb3RvIG91dDsKICAgICB9CiAKLSAgICBpZiAoIGNoZWNrX2ZpbmFsX3BhdGNoX2xl dmVscyhjcHUpICkKKyAgICBpZiAoIGNoZWNrX2ZpbmFsX3BhdGNoX2xldmVscygpICkKICAgICB7 CiAgICAgICAgIHByaW50ayhYRU5MT0dfSU5GTwogICAgICAgICAgICAgICAgIm1pY3JvY29kZTog Q2Fubm90IHVwZGF0ZSBtaWNyb2NvZGUgcGF0Y2ggb24gdGhlIGNwdSBhcyB3ZSBoaXQgYSBmaW5h bCBsZXZlbFxuIik7CkBAIC01NjQsMTAgKzU1Nyw5IEBAIHN0YXRpYyBpbnQgY3B1X3JlcXVlc3Rf bWljcm9jb2RlKHVuc2lnbmVkIGludCBjcHUsIGNvbnN0IHZvaWQgKmJ1ZiwKICAgICAgICAgICog dGhpcyB1Y29kZSBwYXRjaCBiZWZvcmUgY2hlY2tpbmcgd2hldGhlciBpdCBtYXRjaGVzIHdpdGgK ICAgICAgICAgICogY3VycmVudCBDUFUuCiAgICAgICAgICAqLwotICAgICAgICBpZiAoIG1pY3Jv Y29kZV9zYXZlX3BhdGNoKG1pY3JvY29kZV9wYXRjaCkgJiYKLSAgICAgICAgICAgICBtaWNyb2Nv ZGVfZml0cyhtY19hbWQsIGNwdSkgKQorICAgICAgICBpZiAoIG1pY3JvY29kZV9zYXZlX3BhdGNo KG1pY3JvY29kZV9wYXRjaCkgJiYgbWljcm9jb2RlX2ZpdHMobWNfYW1kKSApCiAgICAgICAgIHsK LSAgICAgICAgICAgIGVycm9yID0gYXBwbHlfbWljcm9jb2RlKGNwdSk7CisgICAgICAgICAgICBl cnJvciA9IGFwcGx5X21pY3JvY29kZSgpOwogICAgICAgICAgICAgaWYgKCBlcnJvciApCiAgICAg ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9t aWNyb2NvZGVfaW50ZWwuYyBiL3hlbi9hcmNoL3g4Ni9taWNyb2NvZGVfaW50ZWwuYwppbmRleCBh NDk1NzAxLi4xOGM4MzNmIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbWljcm9jb2RlX2ludGVs LmMKKysrIGIveGVuL2FyY2gveDg2L21pY3JvY29kZV9pbnRlbC5jCkBAIC05OCwxMyArOTgsMTIg QEAgc3RydWN0IGV4dGVuZGVkX3NpZ3RhYmxlIHsKIC8qIHNlcmlhbGl6ZSBhY2Nlc3MgdG8gdGhl IHBoeXNpY2FsIHdyaXRlIHRvIE1TUiAweDc5ICovCiBzdGF0aWMgREVGSU5FX1NQSU5MT0NLKG1p Y3JvY29kZV91cGRhdGVfbG9jayk7CiAKLXN0YXRpYyBpbnQgY29sbGVjdF9jcHVfaW5mbyh1bnNp Z25lZCBpbnQgY3B1X251bSwgc3RydWN0IGNwdV9zaWduYXR1cmUgKmNzaWcpCitzdGF0aWMgaW50 IGNvbGxlY3RfY3B1X2luZm8oc3RydWN0IGNwdV9zaWduYXR1cmUgKmNzaWcpCiB7CisgICAgdW5z aWduZWQgaW50IGNwdV9udW0gPSBzbXBfcHJvY2Vzc29yX2lkKCk7CiAgICAgc3RydWN0IGNwdWlu Zm9feDg2ICpjID0gJmNwdV9kYXRhW2NwdV9udW1dOwogICAgIHVpbnQ2NF90IG1zcl9jb250ZW50 OwogCi0gICAgQlVHX09OKGNwdV9udW0gIT0gc21wX3Byb2Nlc3Nvcl9pZCgpKTsKLQogICAgIG1l bXNldChjc2lnLCAwLCBzaXplb2YoKmNzaWcpKTsKIAogICAgIGlmICggKGMtPng4Nl92ZW5kb3Ig IT0gWDg2X1ZFTkRPUl9JTlRFTCkgfHwgKGMtPng4NiA8IDYpICkKQEAgLTM0MywxOSArMzQyLDE2 IEBAIHN0YXRpYyBpbnQgZ2V0X21hdGNoaW5nX21pY3JvY29kZShjb25zdCB2b2lkICptYywgdW5z aWduZWQgaW50IGNwdSkKICAgICByZXR1cm4gMTsKIH0KIAotc3RhdGljIGludCBhcHBseV9taWNy b2NvZGUodW5zaWduZWQgaW50IGNwdSkKK3N0YXRpYyBpbnQgYXBwbHlfbWljcm9jb2RlKHZvaWQp CiB7CiAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKICAgICB1aW50NjRfdCBtc3JfY29udGVudDsK ICAgICB1bnNpZ25lZCBpbnQgdmFsWzJdOwogICAgIHVuc2lnbmVkIGludCBjcHVfbnVtID0gcmF3 X3NtcF9wcm9jZXNzb3JfaWQoKTsKLSAgICBzdHJ1Y3QgY3B1X3NpZ25hdHVyZSAqc2lnID0gJnBl cl9jcHUoY3B1X3NpZywgY3B1KTsKKyAgICBzdHJ1Y3QgY3B1X3NpZ25hdHVyZSAqc2lnID0gJnRo aXNfY3B1KGNwdV9zaWcpOwogICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfaW50ZWwgKm1jX2lu dGVsOwogICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfcGF0Y2ggKnBhdGNoOwogCi0gICAgLyog V2Ugc2hvdWxkIGJpbmQgdGhlIHRhc2sgdG8gdGhlIENQVSAqLwotICAgIEJVR19PTihjcHVfbnVt ICE9IGNwdSk7Ci0KICAgICBwYXRjaCA9IG1pY3JvY29kZV9maW5kX3BhdGNoKCk7CiAgICAgaWYg KCAhcGF0Y2ggKQogICAgICAgICByZXR1cm4gLUVJTlZBTDsKQEAgLTQyMywxNyArNDE5LDE0IEBA IHN0YXRpYyBsb25nIGdldF9uZXh0X3Vjb2RlX2Zyb21fYnVmZmVyKHZvaWQgKiptYywgY29uc3Qg dTggKmJ1ZiwKICAgICByZXR1cm4gb2Zmc2V0ICsgdG90YWxfc2l6ZTsKIH0KIAotc3RhdGljIGlu dCBjcHVfcmVxdWVzdF9taWNyb2NvZGUodW5zaWduZWQgaW50IGNwdSwgY29uc3Qgdm9pZCAqYnVm LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHNpemUpCitzdGF0aWMg aW50IGNwdV9yZXF1ZXN0X21pY3JvY29kZShjb25zdCB2b2lkICpidWYsIHNpemVfdCBzaXplKQog ewogICAgIGxvbmcgb2Zmc2V0ID0gMDsKICAgICBpbnQgZXJyb3IgPSAwOwogICAgIHZvaWQgKm1j OworICAgIHVuc2lnbmVkIGludCBjcHUgPSBzbXBfcHJvY2Vzc29yX2lkKCk7CiAgICAgdW5zaWdu ZWQgaW50IG1hdGNoaW5nX2NvdW50ID0gMDsKIAotICAgIC8qIFdlIHNob3VsZCBiaW5kIHRoZSB0 YXNrIHRvIHRoZSBDUFUgKi8KLSAgICBCVUdfT04oY3B1ICE9IHJhd19zbXBfcHJvY2Vzc29yX2lk KCkpOwotCiAgICAgd2hpbGUgKCAob2Zmc2V0ID0gZ2V0X25leHRfdWNvZGVfZnJvbV9idWZmZXIo Jm1jLCBidWYsIHNpemUsIG9mZnNldCkpID4gMCApCiAgICAgewogICAgICAgICBlcnJvciA9IG1p Y3JvY29kZV9zYW5pdHlfY2hlY2sobWMpOwpAQCAtNDU5LDcgKzQ1Miw3IEBAIHN0YXRpYyBpbnQg Y3B1X3JlcXVlc3RfbWljcm9jb2RlKHVuc2lnbmVkIGludCBjcHUsIGNvbnN0IHZvaWQgKmJ1ZiwK ICAgICAgICAgZXJyb3IgPSBvZmZzZXQ7CiAKICAgICBpZiAoICFlcnJvciAmJiBtYXRjaGluZ19j b3VudCApCi0gICAgICAgIGVycm9yID0gYXBwbHlfbWljcm9jb2RlKGNwdSk7CisgICAgICAgIGVy cm9yID0gYXBwbHlfbWljcm9jb2RlKCk7CiAKICAgICByZXR1cm4gZXJyb3I7CiB9CmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYvc21wYm9vdC5jIGIveGVuL2FyY2gveDg2L3NtcGJvb3QuYwppbmRl eCA3ZDEyMjZkLi43NjNiMGJkIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvc21wYm9vdC5jCisr KyBiL3hlbi9hcmNoL3g4Ni9zbXBib290LmMKQEAgLTM2Niw3ICszNjYsNyBAQCB2b2lkIHN0YXJ0 X3NlY29uZGFyeSh2b2lkICp1bnVzZWQpCiAgICAgaWYgKCBzeXN0ZW1fc3RhdGUgPD0gU1lTX1NU QVRFX3NtcF9ib290ICkKICAgICAgICAgZWFybHlfbWljcm9jb2RlX3VwZGF0ZV9jcHUoZmFsc2Up OwogICAgIGVsc2UKLSAgICAgICAgbWljcm9jb2RlX3Jlc3VtZV9jcHUoY3B1KTsKKyAgICAgICAg bWljcm9jb2RlX3Jlc3VtZV9jcHUoKTsKIAogICAgIC8qCiAgICAgICogSWYgTVNSX1NQRUNfQ1RS TCBpcyBhdmFpbGFibGUsIGFwcGx5IFhlbidzIGRlZmF1bHQgc2V0dGluZyBhbmQgZGlzY2FyZApk aWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9taWNyb2NvZGUuaCBiL3hlbi9pbmNsdWRl L2FzbS14ODYvbWljcm9jb2RlLmgKaW5kZXggMjNmYzE5Yi4uNWNmMTc3ZSAxMDA2NDQKLS0tIGEv eGVuL2luY2x1ZGUvYXNtLXg4Ni9taWNyb2NvZGUuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2 L21pY3JvY29kZS5oCkBAIC0xOCwxMCArMTgsOSBAQCBzdHJ1Y3QgbWljcm9jb2RlX3BhdGNoIHsK IH07CiAKIHN0cnVjdCBtaWNyb2NvZGVfb3BzIHsKLSAgICBpbnQgKCpjcHVfcmVxdWVzdF9taWNy b2NvZGUpKHVuc2lnbmVkIGludCBjcHUsIGNvbnN0IHZvaWQgKmJ1ZiwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHNpemVfdCBzaXplKTsKLSAgICBpbnQgKCpjb2xsZWN0X2NwdV9p bmZvKSh1bnNpZ25lZCBpbnQgY3B1LCBzdHJ1Y3QgY3B1X3NpZ25hdHVyZSAqY3NpZyk7Ci0gICAg aW50ICgqYXBwbHlfbWljcm9jb2RlKSh1bnNpZ25lZCBpbnQgY3B1KTsKKyAgICBpbnQgKCpjcHVf cmVxdWVzdF9taWNyb2NvZGUpKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUpOworICAgIGlu dCAoKmNvbGxlY3RfY3B1X2luZm8pKHN0cnVjdCBjcHVfc2lnbmF0dXJlICpjc2lnKTsKKyAgICBp bnQgKCphcHBseV9taWNyb2NvZGUpKHZvaWQpOwogICAgIGludCAoKnN0YXJ0X3VwZGF0ZSkodm9p ZCk7CiAgICAgZW51bSBtaWNyb2NvZGVfbWF0Y2hfcmVzdWx0ICgqY29tcGFyZV9wYXRjaCkoCiAg ICAgICAgIGNvbnN0IHN0cnVjdCBtaWNyb2NvZGVfcGF0Y2ggKm5ldywgY29uc3Qgc3RydWN0IG1p Y3JvY29kZV9wYXRjaCAqb2xkKTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcHJv Y2Vzc29yLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L3Byb2Nlc3Nvci5oCmluZGV4IGYzMjc1Y2Eu LjE4NmViOGIgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvcHJvY2Vzc29yLmgKKysr IGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wcm9jZXNzb3IuaApAQCAtNTczLDcgKzU3Myw3IEBAIGlu dCBndWVzdF93cm1zcl94ZW4oc3RydWN0IHZjcHUgKnYsIHVpbnQzMl90IGlkeCwgdWludDY0X3Qg dmFsKTsKIAogdm9pZCBtaWNyb2NvZGVfc2V0X21vZHVsZSh1bnNpZ25lZCBpbnQpOwogaW50IG1p Y3JvY29kZV91cGRhdGUoWEVOX0dVRVNUX0hBTkRMRV9QQVJBTShjb25zdF92b2lkKSwgdW5zaWdu ZWQgbG9uZyBsZW4pOwotaW50IG1pY3JvY29kZV9yZXN1bWVfY3B1KHVuc2lnbmVkIGludCBjcHUp OworaW50IG1pY3JvY29kZV9yZXN1bWVfY3B1KHZvaWQpOwogaW50IGVhcmx5X21pY3JvY29kZV91 cGRhdGVfY3B1KGJvb2wgc3RhcnRfdXBkYXRlKTsKIGludCBlYXJseV9taWNyb2NvZGVfaW5pdCh2 b2lkKTsKIGludCBtaWNyb2NvZGVfaW5pdF9pbnRlbCh2b2lkKTsKLS0gCjEuOC4zLjEKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhl bnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs