From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH RFC 06/20] acpi/hvmloader: Collect processor and NUMA info in hvmloader Date: Tue, 5 Apr 2016 21:25:35 -0400 Message-ID: <1459905949-10358-7-git-send-email-boris.ostrovsky@oracle.com> References: <1459905949-10358-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1459905949-10358-1-git-send-email-boris.ostrovsky@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Keir Fraser , Stefano Stabellini , Andrew Cooper , Ian Jackson , Jan Beulich , Wei Liu , Boris Ostrovsky , roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org Tm8gbmVlZCBmb3IgQUNQSSBjb2RlIHRvIHJlbHkgb24gaHZtX2luZm8uCgpTaWduZWQtb2ZmLWJ5 OiBCb3JpcyBPc3Ryb3Zza3kgPGJvcmlzLm9zdHJvdnNreUBvcmFjbGUuY29tPgotLS0KIHRvb2xz L2Zpcm13YXJlL2h2bWxvYWRlci9hY3BpL2FjcGkyXzAuaCB8IDEzICsrKysrKysrKwogdG9vbHMv ZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkvYnVpbGQuYyAgIHwgNDkgKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tCiB0b29scy9maXJtd2FyZS9odm1sb2FkZXIvdXRpbC5jICAgICAgICAg fCAxMSArKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAyNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9maXJtd2FyZS9odm1sb2FkZXIvYWNwaS9hY3Bp Ml8wLmggYi90b29scy9maXJtd2FyZS9odm1sb2FkZXIvYWNwaS9hY3BpMl8wLmgKaW5kZXggMjYx Nzc2Mi4uYzUyMzE1YSAxMDA2NDQKLS0tIGEvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkv YWNwaTJfMC5oCisrKyBiL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9hY3BpL2FjcGkyXzAuaApA QCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHhlbi94ZW4u aD4KICNpbmNsdWRlIDx4ZW4vaHZtL2lvcmVxLmg+CisjaW5jbHVkZSA8eGVuL21lbW9yeS5oPgog CiAjZGVmaW5lIEFTQ0lJMzIoYSxiLGMsZCkgICAgICAgICBcCiAgICAgKCgoYSkgPDwgIDApIHwg KChiKSA8PCAgOCkgfCAoKGMpIDw8IDE2KSB8ICgoZCkgPDwgMjQpKQpAQCAtNDczLDYgKzQ3NCwx NCBAQCBzdHJ1Y3QgYWNwaV9pbmZvIHsKICAgICB1aW50NjRfdCBwY2lfaGlfbWluLCBwY2lfaGlf bGVuOyAvKiAyNCwgMzIgLSBQQ0kgSS9PIGhvbGUgYm91bmRhcmllcyAqLwogfTsKIAorc3RydWN0 IGFjcGlfbnVtYSB7CisgICAgdWludDMyX3QgbnJfdm1lbXJhbmdlczsKKyAgICB1aW50MzJfdCBu cl92bm9kZXM7CisgICAgdW5zaWduZWQgaW50ICp2Y3B1X3RvX3Zub2RlOworICAgIHVuc2lnbmVk IGludCAqdmRpc3RhbmNlOworICAgIHhlbl92bWVtcmFuZ2VfdCAqdm1lbXJhbmdlOworfTsKKwog c3RydWN0IGFjcGlfY29uZmlnIHsKICAgICB1bnNpZ25lZCBjaGFyICpkc2R0X2FueWNwdTsKICAg ICBpbnQgZHNkdF9hbnljcHVfbGVuOwpAQCAtNDg1LDYgKzQ5NCwxMCBAQCBzdHJ1Y3QgYWNwaV9j b25maWcgewogICAgICAgICB1bnNpZ25lZCBsb25nIGFjcGlfcHRfYWRkcjsKICAgICAgICAgdWlu dDMyX3QgYWNwaV9wdF9sZW5ndGg7CiAgICAgfSBwdDsKKyAgICB1aW50MzJfdCBucl92Y3B1czsK KyAgICB1aW50OF90ICAqdmNwdV9vbmxpbmU7CisgICAgaW50IGFwaWNfbW9kZTsKKyAgICBzdHJ1 Y3QgYWNwaV9udW1hIG51bWE7CiB9OwogCiB2b2lkIGFjcGlfYnVpbGRfdGFibGVzKHN0cnVjdCBh Y3BpX2NvbmZpZyAqY29uZmlnLCB1bnNpZ25lZCBpbnQgcGh5c2ljYWwpOwpkaWZmIC0tZ2l0IGEv dG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkvYnVpbGQuYyBiL3Rvb2xzL2Zpcm13YXJlL2h2 bWxvYWRlci9hY3BpL2J1aWxkLmMKaW5kZXggOGEwNWM3Yy4uMWJjY2NhMyAxMDA2NDQKLS0tIGEv dG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkvYnVpbGQuYworKysgYi90b29scy9maXJtd2Fy ZS9odm1sb2FkZXIvYWNwaS9idWlsZC5jCkBAIC01Niw3ICs1Niw3IEBAIHN0YXRpYyB2b2lkIHNl dF9jaGVja3N1bSgKICAgICBwW2NoZWNrc3VtX29mZnNldF0gPSAtc3VtOwogfQogCi1zdGF0aWMg c3RydWN0IGFjcGlfMjBfbWFkdCAqY29uc3RydWN0X21hZHQoc3RydWN0IGFjcGlfaW5mbyAqaW5m bykKK3N0YXRpYyBzdHJ1Y3QgYWNwaV8yMF9tYWR0ICpjb25zdHJ1Y3RfbWFkdChzdHJ1Y3QgYWNw aV9jb25maWcgKmNvbmZpZykKIHsKICAgICBzdHJ1Y3QgYWNwaV8yMF9tYWR0ICAgICAgICAgICAq bWFkdDsKICAgICBzdHJ1Y3QgYWNwaV8yMF9tYWR0X2ludHNyY292ciAqaW50c3Jjb3ZyOwpAQCAt MTIwLDcgKzEyMCw3IEBAIHN0YXRpYyBzdHJ1Y3QgYWNwaV8yMF9tYWR0ICpjb25zdHJ1Y3RfbWFk dChzdHJ1Y3QgYWNwaV9pbmZvICppbmZvKQogICAgIGlvX2FwaWMtPmlvYXBpY19hZGRyID0gSU9B UElDX0JBU0VfQUREUkVTUzsKIAogICAgIGxhcGljID0gKHN0cnVjdCBhY3BpXzIwX21hZHRfbGFw aWMgKikoaW9fYXBpYyArIDEpOwotICAgIGluZm8tPm1hZHRfbGFwaWMwX2FkZHIgPSAodWludDMy X3QpbGFwaWM7CisgICAgY29uZmlnLT5hY3BpX2luZm8ubWFkdF9sYXBpYzBfYWRkciA9ICh1aW50 MzJfdClsYXBpYzsKICAgICBmb3IgKCBpID0gMDsgaSA8IG5yX3Byb2Nlc3Nvcl9vYmplY3RzOyBp KysgKQogICAgIHsKICAgICAgICAgbWVtc2V0KGxhcGljLCAwLCBzaXplb2YoKmxhcGljKSk7CkBA IC0xMjksOCArMTI5LDggQEAgc3RhdGljIHN0cnVjdCBhY3BpXzIwX21hZHQgKmNvbnN0cnVjdF9t YWR0KHN0cnVjdCBhY3BpX2luZm8gKmluZm8pCiAgICAgICAgIC8qIFByb2Nlc3NvciBJRCBtdXN0 IG1hdGNoIHByb2Nlc3Nvci1vYmplY3QgSURzIGluIHRoZSBEU0RULiAqLwogICAgICAgICBsYXBp Yy0+YWNwaV9wcm9jZXNzb3JfaWQgPSBpOwogICAgICAgICBsYXBpYy0+YXBpY19pZCA9IExBUElD X0lEKGkpOwotICAgICAgICBsYXBpYy0+ZmxhZ3MgPSAoKGkgPCBodm1faW5mby0+bnJfdmNwdXMp ICYmCi0gICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2JpdChpLCBodm1faW5mby0+dmNwdV9v bmxpbmUpCisgICAgICAgIGxhcGljLT5mbGFncyA9ICgoaSA8IGNvbmZpZy0+bnJfdmNwdXMpICYm CisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2JpdChpLCBjb25maWctPnZjcHVfb25saW5l KQogICAgICAgICAgICAgICAgICAgICAgICAgPyBBQ1BJX0xPQ0FMX0FQSUNfRU5BQkxFRCA6IDAp OwogICAgICAgICBsYXBpYysrOwogICAgIH0KQEAgLTEzOCw3ICsxMzgsNyBAQCBzdGF0aWMgc3Ry dWN0IGFjcGlfMjBfbWFkdCAqY29uc3RydWN0X21hZHQoc3RydWN0IGFjcGlfaW5mbyAqaW5mbykK ICAgICBtYWR0LT5oZWFkZXIubGVuZ3RoID0gKHVuc2lnbmVkIGNoYXIgKilsYXBpYyAtICh1bnNp Z25lZCBjaGFyICopbWFkdDsKICAgICBzZXRfY2hlY2tzdW0obWFkdCwgb2Zmc2V0b2Yoc3RydWN0 IGFjcGlfaGVhZGVyLCBjaGVja3N1bSksCiAgICAgICAgICAgICAgICAgIG1hZHQtPmhlYWRlci5s ZW5ndGgpOwotICAgIGluZm8tPm1hZHRfY3N1bV9hZGRyID0gKHVpbnQzMl90KSZtYWR0LT5oZWFk ZXIuY2hlY2tzdW07CisgICAgY29uZmlnLT5hY3BpX2luZm8ubWFkdF9jc3VtX2FkZHIgPSAodWlu dDMyX3QpJm1hZHQtPmhlYWRlci5jaGVja3N1bTsKIAogICAgIHJldHVybiBtYWR0OwogfQpAQCAt MTgxLDcgKzE4MSw3IEBAIHN0YXRpYyBzdHJ1Y3QgYWNwaV8yMF93YWV0ICpjb25zdHJ1Y3Rfd2Fl dCh2b2lkKQogICAgIHJldHVybiB3YWV0OwogfQogCi1zdGF0aWMgc3RydWN0IGFjcGlfMjBfc3Jh dCAqY29uc3RydWN0X3NyYXQodm9pZCkKK3N0YXRpYyBzdHJ1Y3QgYWNwaV8yMF9zcmF0ICpjb25z dHJ1Y3Rfc3JhdChzdHJ1Y3QgYWNwaV9jb25maWcgKmNvbmZpZykKIHsKICAgICBzdHJ1Y3QgYWNw aV8yMF9zcmF0ICpzcmF0OwogICAgIHN0cnVjdCBhY3BpXzIwX3NyYXRfcHJvY2Vzc29yICpwcm9j ZXNzb3I7CkBAIC0xOTAsOCArMTkwLDggQEAgc3RhdGljIHN0cnVjdCBhY3BpXzIwX3NyYXQgKmNv bnN0cnVjdF9zcmF0KHZvaWQpCiAgICAgdm9pZCAqcDsKICAgICB1bnNpZ25lZCBpbnQgaTsKIAot ICAgIHNpemUgPSBzaXplb2YoKnNyYXQpICsgc2l6ZW9mKCpwcm9jZXNzb3IpICogaHZtX2luZm8t Pm5yX3ZjcHVzICsKLSAgICAgICAgICAgc2l6ZW9mKCptZW1vcnkpICogbnJfdm1lbXJhbmdlczsK KyAgICBzaXplID0gc2l6ZW9mKCpzcmF0KSArIHNpemVvZigqcHJvY2Vzc29yKSAqIGNvbmZpZy0+ bnJfdmNwdXMgKworICAgICAgICAgICBzaXplb2YoKm1lbW9yeSkgKiBjb25maWctPm51bWEubnJf dm1lbXJhbmdlczsKIAogICAgIHAgPSBtZW1fYWxsb2Moc2l6ZSwgMTYpOwogICAgIGlmICggIXAg KQpAQCAtMjA4LDI1ICsyMDgsMjYgQEAgc3RhdGljIHN0cnVjdCBhY3BpXzIwX3NyYXQgKmNvbnN0 cnVjdF9zcmF0KHZvaWQpCiAgICAgc3JhdC0+dGFibGVfcmV2aXNpb24gICAgICA9IEFDUElfU1JB VF9UQUJMRV9SRVZJU0lPTjsKIAogICAgIHByb2Nlc3NvciA9IChzdHJ1Y3QgYWNwaV8yMF9zcmF0 X3Byb2Nlc3NvciAqKShzcmF0ICsgMSk7Ci0gICAgZm9yICggaSA9IDA7IGkgPCBodm1faW5mby0+ bnJfdmNwdXM7IGkrKyApCisgICAgZm9yICggaSA9IDA7IGkgPCBjb25maWctPm5yX3ZjcHVzOyBp KysgKQogICAgIHsKICAgICAgICAgcHJvY2Vzc29yLT50eXBlICAgICA9IEFDUElfUFJPQ0VTU09S X0FGRklOSVRZOwogICAgICAgICBwcm9jZXNzb3ItPmxlbmd0aCAgID0gc2l6ZW9mKCpwcm9jZXNz b3IpOwotICAgICAgICBwcm9jZXNzb3ItPmRvbWFpbiAgID0gdmNwdV90b192bm9kZVtpXTsKKyAg ICAgICAgcHJvY2Vzc29yLT5kb21haW4gICA9IGNvbmZpZy0+bnVtYS52Y3B1X3RvX3Zub2RlW2ld OwogICAgICAgICBwcm9jZXNzb3ItPmFwaWNfaWQgID0gTEFQSUNfSUQoaSk7CiAgICAgICAgIHBy b2Nlc3Nvci0+ZmxhZ3MgICAgPSBBQ1BJX0xPQ0FMX0FQSUNfQUZGSU5fRU5BQkxFRDsKICAgICAg ICAgcHJvY2Vzc29yKys7CiAgICAgfQogCiAgICAgbWVtb3J5ID0gKHN0cnVjdCBhY3BpXzIwX3Ny YXRfbWVtb3J5ICopcHJvY2Vzc29yOwotICAgIGZvciAoIGkgPSAwOyBpIDwgbnJfdm1lbXJhbmdl czsgaSsrICkKKyAgICBmb3IgKCBpID0gMDsgaSA8IGNvbmZpZy0+bnVtYS5ucl92bWVtcmFuZ2Vz OyBpKysgKQogICAgIHsKICAgICAgICAgbWVtb3J5LT50eXBlICAgICAgICAgID0gQUNQSV9NRU1P UllfQUZGSU5JVFk7CiAgICAgICAgIG1lbW9yeS0+bGVuZ3RoICAgICAgICA9IHNpemVvZigqbWVt b3J5KTsKLSAgICAgICAgbWVtb3J5LT5kb21haW4gICAgICAgID0gdm1lbXJhbmdlW2ldLm5pZDsK KyAgICAgICAgbWVtb3J5LT5kb21haW4gICAgICAgID0gY29uZmlnLT5udW1hLnZtZW1yYW5nZVtp XS5uaWQ7CiAgICAgICAgIG1lbW9yeS0+ZmxhZ3MgICAgICAgICA9IEFDUElfTUVNX0FGRklOX0VO QUJMRUQ7Ci0gICAgICAgIG1lbW9yeS0+YmFzZV9hZGRyZXNzICA9IHZtZW1yYW5nZVtpXS5zdGFy dDsKLSAgICAgICAgbWVtb3J5LT5tZW1fbGVuZ3RoICAgID0gdm1lbXJhbmdlW2ldLmVuZCAtIHZt ZW1yYW5nZVtpXS5zdGFydDsKKyAgICAgICAgbWVtb3J5LT5iYXNlX2FkZHJlc3MgID0gY29uZmln LT5udW1hLnZtZW1yYW5nZVtpXS5zdGFydDsKKyAgICAgICAgbWVtb3J5LT5tZW1fbGVuZ3RoICAg ID0gY29uZmlnLT5udW1hLnZtZW1yYW5nZVtpXS5lbmQgLQorICAgICAgICAgICAgY29uZmlnLT5u dW1hLnZtZW1yYW5nZVtpXS5zdGFydDsKICAgICAgICAgbWVtb3J5Kys7CiAgICAgfQogCkBAIC0y MzgsMTIgKzIzOSwxMiBAQCBzdGF0aWMgc3RydWN0IGFjcGlfMjBfc3JhdCAqY29uc3RydWN0X3Ny YXQodm9pZCkKICAgICByZXR1cm4gc3JhdDsKIH0KIAotc3RhdGljIHN0cnVjdCBhY3BpXzIwX3Ns aXQgKmNvbnN0cnVjdF9zbGl0KHZvaWQpCitzdGF0aWMgc3RydWN0IGFjcGlfMjBfc2xpdCAqY29u c3RydWN0X3NsaXQoc3RydWN0IGFjcGlfY29uZmlnICpjb25maWcpCiB7CiAgICAgc3RydWN0IGFj cGlfMjBfc2xpdCAqc2xpdDsKICAgICB1bnNpZ25lZCBpbnQgaSwgbnVtLCBzaXplOwogCi0gICAg bnVtID0gbnJfdm5vZGVzICogbnJfdm5vZGVzOworICAgIG51bSA9IGNvbmZpZy0+bnVtYS5ucl92 bm9kZXMgKiBjb25maWctPm51bWEubnJfdm5vZGVzOwogICAgIHNpemUgPSBzaXplb2YoKnNsaXQp ICsgbnVtICogc2l6ZW9mKHVpbnQ4X3QpOwogCiAgICAgc2xpdCA9IG1lbV9hbGxvYyhzaXplLCAx Nik7CkBAIC0yNjAsOSArMjYxLDkgQEAgc3RhdGljIHN0cnVjdCBhY3BpXzIwX3NsaXQgKmNvbnN0 cnVjdF9zbGl0KHZvaWQpCiAgICAgc2xpdC0+aGVhZGVyLmNyZWF0b3JfcmV2aXNpb24gPSBBQ1BJ X0NSRUFUT1JfUkVWSVNJT047CiAKICAgICBmb3IgKCBpID0gMDsgaSA8IG51bTsgaSsrICkKLSAg ICAgICAgc2xpdC0+ZW50cnlbaV0gPSB2ZGlzdGFuY2VbaV07CisgICAgICAgIHNsaXQtPmVudHJ5 W2ldID0gY29uZmlnLT5udW1hLnZkaXN0YW5jZVtpXTsKIAotICAgIHNsaXQtPmxvY2FsaXRpZXMg PSBucl92bm9kZXM7CisgICAgc2xpdC0+bG9jYWxpdGllcyA9IGNvbmZpZy0+bnVtYS5ucl92bm9k ZXM7CiAKICAgICBzbGl0LT5oZWFkZXIubGVuZ3RoID0gc2l6ZTsKICAgICBzZXRfY2hlY2tzdW0o c2xpdCwgb2Zmc2V0b2Yoc3RydWN0IGFjcGlfaGVhZGVyLCBjaGVja3N1bSksIHNpemUpOwpAQCAt MzIyLDkgKzMyMyw5IEBAIHN0YXRpYyBpbnQgY29uc3RydWN0X3NlY29uZGFyeV90YWJsZXModW5z aWduZWQgbG9uZyAqdGFibGVfcHRycywKICAgICB2b2lkICpsYXNhOwogCiAgICAgLyogTUFEVC4g Ki8KLSAgICBpZiAoIChodm1faW5mby0+bnJfdmNwdXMgPiAxKSB8fCBodm1faW5mby0+YXBpY19t b2RlICkKKyAgICBpZiAoIChjb25maWctPm5yX3ZjcHVzID4gMSkgfHwgY29uZmlnLT5hcGljX21v ZGUgKQogICAgIHsKLSAgICAgICAgbWFkdCA9IGNvbnN0cnVjdF9tYWR0KCZjb25maWctPmFjcGlf aW5mbyk7CisgICAgICAgIG1hZHQgPSBjb25zdHJ1Y3RfbWFkdChjb25maWcpOwogICAgICAgICBp ZiAoIW1hZHQpIHJldHVybiAtMTsKICAgICAgICAgdGFibGVfcHRyc1tucl90YWJsZXMrK10gPSAo dW5zaWduZWQgbG9uZyltYWR0OwogICAgIH0KQEAgLTQwNiwxMCArNDA3LDEwIEBAIHN0YXRpYyBp bnQgY29uc3RydWN0X3NlY29uZGFyeV90YWJsZXModW5zaWduZWQgbG9uZyAqdGFibGVfcHRycywK ICAgICB9CiAKICAgICAvKiBTUkFUIGFuZCBTTElUICovCi0gICAgaWYgKCBucl92bm9kZXMgPiAw ICkKKyAgICBpZiAoIGNvbmZpZy0+bnVtYS5ucl92bm9kZXMgPiAwICkKICAgICB7Ci0gICAgICAg IHN0cnVjdCBhY3BpXzIwX3NyYXQgKnNyYXQgPSBjb25zdHJ1Y3Rfc3JhdCgpOwotICAgICAgICBz dHJ1Y3QgYWNwaV8yMF9zbGl0ICpzbGl0ID0gY29uc3RydWN0X3NsaXQoKTsKKyAgICAgICAgc3Ry dWN0IGFjcGlfMjBfc3JhdCAqc3JhdCA9IGNvbnN0cnVjdF9zcmF0KGNvbmZpZyk7CisgICAgICAg IHN0cnVjdCBhY3BpXzIwX3NsaXQgKnNsaXQgPSBjb25zdHJ1Y3Rfc2xpdChjb25maWcpOwogCiAg ICAgICAgIGlmICggc3JhdCApCiAgICAgICAgICAgICB0YWJsZV9wdHJzW25yX3RhYmxlcysrXSA9 ICh1bnNpZ25lZCBsb25nKXNyYXQ7CkBAIC00ODUsNyArNDg2LDcgQEAgdm9pZCBhY3BpX2J1aWxk X3RhYmxlcyhzdHJ1Y3QgYWNwaV9jb25maWcgKmNvbmZpZywgdW5zaWduZWQgaW50IHBoeXNpY2Fs KQogICAgICAqIFRoZSBsYXR0ZXIgaXMgcmVxdWlyZWQgZm9yIFdpbmRvd3MgMjAwMCwgd2hpY2gg ZXhwZXJpZW5jZXMgYSBCU09EIG9mCiAgICAgICogS01PREVfRVhDRVBUSU9OX05PVF9IQU5ETEVE IGlmIGl0IHNlZXMgbW9yZSB0aGFuIDE1IHByb2Nlc3NvciBvYmplY3RzLgogICAgICAqLwotICAg IGlmICggaHZtX2luZm8tPm5yX3ZjcHVzIDw9IDE1ICYmIGNvbmZpZy0+ZHNkdF8xNWNwdSkKKyAg ICBpZiAoIGNvbmZpZy0+bnJfdmNwdXMgPD0gMTUgJiYgY29uZmlnLT5kc2R0XzE1Y3B1KQogICAg IHsKICAgICAgICAgZHNkdCA9IG1lbV9hbGxvYyhjb25maWctPmRzZHRfMTVjcHVfbGVuLCAxNik7 CiAgICAgICAgIGlmICghZHNkdCkgZ290byBvb207CmRpZmYgLS1naXQgYS90b29scy9maXJtd2Fy ZS9odm1sb2FkZXIvdXRpbC5jIGIvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL3V0aWwuYwppbmRl eCAyMzBlMTRhLi5iNTZmNGU2IDEwMDY0NAotLS0gYS90b29scy9maXJtd2FyZS9odm1sb2FkZXIv dXRpbC5jCisrKyBiL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci91dGlsLmMKQEAgLTIxLDYgKzIx LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJoeXBlcmNhbGwuaCIKICNpbmNs dWRlICJjdHlwZS5oIgorI2luY2x1ZGUgInZudW1hLmgiCiAjaW5jbHVkZSAiYWNwaS9hY3BpMl8w LmgiCiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8eGVuL3hlbi5oPgpAQCAtOTEwLDYg KzkxMSwxNiBAQCB2b2lkIGh2bWxvYWRlcl9hY3BpX2J1aWxkX3RhYmxlcyhzdHJ1Y3QgYWNwaV9j b25maWcgKmNvbmZpZywKICAgICBpZiAoICFzdHJuY21wKHhlbnN0b3JlX3JlYWQoInBsYXRmb3Jt L2FjcGlfczQiLCAiMSIpLCAiMSIsIDEpICApCiAgICAgICAgIGNvbmZpZy0+dGFibGVfZmxhZ3Mg fD0gQUNQSV9CVUlMRF9TU0RUX1M0OwogCisgICAgY29uZmlnLT5ucl92Y3B1cyA9IGh2bV9pbmZv LT5ucl92Y3B1czsKKyAgICBjb25maWctPnZjcHVfb25saW5lID0gaHZtX2luZm8tPnZjcHVfb25s aW5lOworICAgIGNvbmZpZy0+YXBpY19tb2RlID0gMTsKKworICAgIGNvbmZpZy0+bnVtYS5ucl92 bWVtcmFuZ2VzID0gbnJfdm1lbXJhbmdlczsKKyAgICBjb25maWctPm51bWEubnJfdm5vZGVzID0g bnJfdm5vZGVzOworICAgIGNvbmZpZy0+bnVtYS52Y3B1X3RvX3Zub2RlID0gdmNwdV90b192bm9k ZTsKKyAgICBjb25maWctPm51bWEudmRpc3RhbmNlID0gdmRpc3RhbmNlOworICAgIGNvbmZpZy0+ bnVtYS52bWVtcmFuZ2UgPSB2bWVtcmFuZ2U7CisKICAgICBhY3BpX2J1aWxkX3RhYmxlcyhjb25m aWcsIHBoeXNpY2FsKTsKIAogICAgIGh2bV9wYXJhbV9zZXQoSFZNX1BBUkFNX1ZNX0dFTkVSQVRJ T05fSURfQUREUiwgY29uZmlnLT5hY3BpX2luZm8udm1fZ2lkX2FkZHIpOwotLSAKMi40LjMKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=