From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 35A426EA73 for ; Fri, 10 Jan 2020 17:50:42 +0000 (UTC) From: "Robert M. Fosha" Date: Fri, 10 Jan 2020 09:41:46 -0800 Message-Id: <20200110174146.15480-1-robert.m.fosha@intel.com> In-Reply-To: <20191223221959.12814-1-robert.m.fosha@intel.com> References: <20191223221959.12814-1-robert.m.fosha@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v4] tests/i915/gem_huc_copy: Enable a HuC copy test List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Sally Qi List-ID: RnJvbTogU2FsbHkgUWkgPGZlbmcucWlAaW50ZWwuY29tPgoKVGhpcyB0ZXN0IGNhc2UgbG9hZHMg dGhlIEh1QyBjb3B5IGZpcm13YXJlIHRvIGNvcHkgdGhlIGNvbnRlbnQgb2YKdGhlIHNvdXJjZSBi dWZmZXIgdG8gdGhlIGRlc3RpbmF0aW9uIGJ1ZmZlci4KCnYyOiAoVG9ueSBZZSkKICogUmVzdHJ1 Y3R1cmVkIHNvbWUgZnVuY3Rpb25zIGFuZCBmaWxlcy4KICogRGVmaW5lZCB0aGUgY29weSBidWZm ZXIgc2l6ZSBhcyA0SyBleHBsaWNpdGx5IGFzIHRoZSBIdUMgQ29weSBrZXJuZWwKICAgYWx3YXlz IGNvcHkgNEsgYnl0ZXMgZnJvbSBzcmMgYnVmZmVyIHRvIGRzdCBidWZmZXIuCgp2MzogKEZlbmcg UWksIEFudG9uaW8gQXJnZW56aWFubywgVG9ueSBZZSkKICogUmVzdHJ1Y3R1cmVkIHNvbWUgZnVu Y3Rpb25zIGFzIGlndCByZXF1ZXN0ZWQsIGV4Y2x1ZGUgbGliZHJtIGZ1bmN0aW9uIGNhbGwuCiAq IFJlbW92ZSBodWMgZnVuY3Rpb24gd3JhcHBlcnMKICogUmFuZG9tIGluaXRpYWxpemUgc291cmNl IGlucHV0IGJ1ZmZlcgoKdjQ6CiAqIEZpeCBhdXRvdG9vbHMgYnVpbGQgZmFpbHVyZS4KCnY1OiAo RmVuZyBRaSwgVG9ueSBZZSkKICogUmVsZWFzZWQgYWxsIGJvIGJ1ZmZlciBhZnRlciBodWMgY29w eWluZy4KICogUmVzdHJ1Y3R1cmVkIGh1Y19jb3B5KCkgZnVuY3Rpb24uCgp2NjogKEZlbmcgUWkp CiAqIEZpeGVkIHRoZSBmdW5jdGlvbiBvZiBodWMgZW5hYmxpbmcgYW5kIHN0YXR1cyBjaGVjawog KiBBZGRlZCBodWNfY29weSB0byBmYXN0IGZlZWRiYWNrIHRlc3RsaXN0CgpTaWduZWQtb2ZmLWJ5 OiBTYWxseSBRaSA8ZmVuZy5xaUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFRvbnkgWWUgPHRv bnkueWVAaW50ZWwuY29tPgpBY2tlZC1ieTogQW50b25pbyBBcmdlbnppYW5vIDxhbnRvbmlvLmFy Z2Vuemlhbm9AaW50ZWwuY29tPgotLS0KIGxpYi9NYWtlZmlsZS5zb3VyY2VzICAgICAgICAgICAg ICAgICAgfCAgIDIgKwogbGliL2h1Y19jb3B5LmMgICAgICAgICAgICAgICAgICAgICAgICB8IDEw NyArKysrKysrKysrKysrKysrKysrKwogbGliL2h1Y19jb3B5LmggICAgICAgICAgICAgICAgICAg ICAgICB8ICA1MCArKysrKysrKysrCiBsaWIvaW50ZWxfYmF0Y2hidWZmZXIuYyAgICAgICAgICAg ICAgIHwgIDIwICsrKysKIGxpYi9pbnRlbF9iYXRjaGJ1ZmZlci5oICAgICAgICAgICAgICAgfCAg MjAgKysrKwogbGliL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiB0 ZXN0cy9NYWtlZmlsZS5zb3VyY2VzICAgICAgICAgICAgICAgIHwgICAzICsKIHRlc3RzL2k5MTUv Z2VtX2h1Y19jb3B5LmMgICAgICAgICAgICAgfCAxMzggKysrKysrKysrKysrKysrKysrKysrKysr KysKIHRlc3RzL2ludGVsLWNpL2Zhc3QtZmVlZGJhY2sudGVzdGxpc3QgfCAgIDEgKwogdGVzdHMv bWVzb24uYnVpbGQgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiAxMCBmaWxlcyBjaGFuZ2Vk LCAzNDMgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGxpYi9odWNfY29weS5jCiBj cmVhdGUgbW9kZSAxMDA2NDQgbGliL2h1Y19jb3B5LmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0 cy9pOTE1L2dlbV9odWNfY29weS5jCgpkaWZmIC0tZ2l0IGEvbGliL01ha2VmaWxlLnNvdXJjZXMg Yi9saWIvTWFrZWZpbGUuc291cmNlcwppbmRleCA1ZGQzOTYyZS4uZTllMTMyYzEgMTAwNjQ0Ci0t LSBhL2xpYi9NYWtlZmlsZS5zb3VyY2VzCisrKyBiL2xpYi9NYWtlZmlsZS5zb3VyY2VzCkBAIC03 OCw2ICs3OCw4IEBAIGxpYl9zb3VyY2VfbGlzdCA9CSAJXAogCWlvY3RsX3dyYXBwZXJzLmgJXAog CW1lZGlhX2ZpbGwuYwkJXAogCW1lZGlhX2ZpbGwuaCAgICAgICAgICAgIFwKKwlodWNfY29weS5j CQlcCisJaHVjX2NvcHkuaAkJXAogCW1lZGlhX3NwaW4uaAkJXAogCW1lZGlhX3NwaW4uYwkJXAog CWdwZ3B1X2ZpbGwuaAkJXApkaWZmIC0tZ2l0IGEvbGliL2h1Y19jb3B5LmMgYi9saWIvaHVjX2Nv cHkuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4uYzNkZWNlOWYKLS0tIC9k ZXYvbnVsbAorKysgYi9saWIvaHVjX2NvcHkuYwpAQCAtMCwwICsxLDEwNyBAQAorLyoKKyAqIENv cHlyaWdodCDCqSAyMDE5IEludGVsIENvcnBvcmF0aW9uCisgKgorICogUGVybWlzc2lvbiBpcyBo ZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEK KyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZp bGVzICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0 IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCisgKiB0aGUgcmlnaHRz IHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGlj ZW5zZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJt aXQgcGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNv LCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUg Y29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRo ZSBuZXh0CisgKiBwYXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Ig c3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCisgKiBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09G VFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwg RVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUg V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwKKyAqIFRI RSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBE QU1BR0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENP TlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORworICogRlJPTSwgT1VUIE9GIE9SIElO IENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5H UworICogSU4gVEhFIFNPRlRXQVJFLgorICoKKyAqLworCisjaW5jbHVkZSA8aTkxNV9kcm0uaD4K KyNpbmNsdWRlICJodWNfY29weS5oIgorCitzdGF0aWMgdm9pZAorZ2VuOV9lbWl0X2h1Y192aXJ0 dWFsX2FkZHJfc3RhdGUoc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgKnNyYywKKwkJ c3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgKmRzdCwKKwkJc3RydWN0IGRybV9pOTE1 X2dlbV9yZWxvY2F0aW9uX2VudHJ5ICpyZWxvY19zcmMsCisJCXN0cnVjdCBkcm1faTkxNV9nZW1f cmVsb2NhdGlvbl9lbnRyeSAqcmVsb2NfZHN0LAorCQl1aW50MzJfdCAqYnVmLAorCQlpbnQgKmkp Cit7CisJYnVmWygqaSkrK10gPSBIVUNfVklSVFVBTF9BRERSX1NUQVRFOworCisJZm9yIChpbnQg aiA9IDA7IGogPCBIVUNfVklSVFVBTF9BRERSX1JFR0lPTl9OVU07IGorKykgeworCQlpZiAoaiA9 PSBIVUNfVklSVFVBTF9BRERSX1JFR0lPTl9TUkMpIHsKKwkJCWJ1ZlsoKmkpKytdID0gc3JjLT5v ZmZzZXQ7CisKKwkJCXJlbG9jX3NyYy0+dGFyZ2V0X2hhbmRsZSA9IHNyYy0+aGFuZGxlOworCQkJ cmVsb2Nfc3JjLT5kZWx0YSA9IDA7CisJCQlyZWxvY19zcmMtPm9mZnNldCA9ICgqaSAtIDEpICog c2l6ZW9mKGJ1ZlswXSk7CisJCQlyZWxvY19zcmMtPnJlYWRfZG9tYWlucyA9IDA7CisJCQlyZWxv Y19zcmMtPndyaXRlX2RvbWFpbiA9IDA7CisJCX0gZWxzZSBpZiAoaiA9PSBIVUNfVklSVFVBTF9B RERSX1JFR0lPTl9EU1QpIHsKKwkJCWJ1ZlsoKmkpKytdID0gZHN0LT5vZmZzZXQ7CisKKwkJCXJl bG9jX2RzdC0+dGFyZ2V0X2hhbmRsZSA9IGRzdC0+aGFuZGxlOworCQkJcmVsb2NfZHN0LT5kZWx0 YSA9IDA7CisJCQlyZWxvY19kc3QtPm9mZnNldCA9ICgqaSAtIDEpICogc2l6ZW9mKGJ1ZlswXSk7 CisJCQlyZWxvY19kc3QtPnJlYWRfZG9tYWlucyA9IDA7CisJCQlyZWxvY19kc3QtPndyaXRlX2Rv bWFpbiA9IEk5MTVfR0VNX0RPTUFJTl9SRU5ERVI7CisJCX0gZWxzZSB7CisJCQlidWZbKCppKSsr XSA9IDA7CisJCX0KKwkJYnVmWygqaSkrK10gPSAwOworCQlidWZbKCppKSsrXSA9IDA7CisJfQor fQorCit2b2lkCitnZW45X2h1Y19jb3B5ZnVuYyhpbnQgZmQsCisJCXN0cnVjdCBkcm1faTkxNV9n ZW1fZXhlY19vYmplY3QyICpvYmosCisJCWludCBuX2JvKQoreworCXN0cnVjdCBkcm1faTkxNV9n ZW1fcmVsb2NhdGlvbl9lbnRyeSByZWxvY1syXTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNi dWZmZXIyIGV4ZWNidWY7CisJaW50IGkgPSAwOworCXVpbnQzMl90IGJ1Zls2M107CisKKwkvKiBs b2FkIGh1YyBrZXJuZWwgKi8KKwlidWZbaSsrXSA9IEhVQ19JTUVNX1NUQVRFOworCWJ1ZltpKytd ID0gMDsKKwlidWZbaSsrXSA9IDA7CisJYnVmW2krK10gPSAwOworCWJ1ZltpKytdID0gMHgzOwor CisJYnVmW2krK10gPSBNRlhfV0FJVDsKKwlidWZbaSsrXSA9IE1GWF9XQUlUOworCisJYnVmW2kr K10gPSBIVUNfUElQRV9NT0RFX1NFTEVDVDsKKwlidWZbaSsrXSA9IDA7CisJYnVmW2krK10gPSAw OworCisJYnVmW2krK10gPSBNRlhfV0FJVDsKKworCW1lbXNldChyZWxvYywgMCwgc2l6ZW9mKHJl bG9jKSk7CisJZ2VuOV9lbWl0X2h1Y192aXJ0dWFsX2FkZHJfc3RhdGUoJm9ialswXSwgJm9ialsx XSwgJnJlbG9jWzBdLCAmcmVsb2NbMV0sIGJ1ZiwgJmkpOworCisJYnVmW2krK10gPSBIVUNfU1RB UlQ7CisJYnVmW2krK10gPSAxOworCisJYnVmW2krK10gPSBNSV9CQVRDSF9CVUZGRVJfRU5EOwor CisJZ2VtX3dyaXRlKGZkLCBvYmpbMl0uaGFuZGxlLCAwLCBidWYsIHNpemVvZihidWYpKTsKKwlv YmpbMl0ucmVsb2NhdGlvbl9jb3VudCA9IDI7CisJb2JqWzJdLnJlbG9jc19wdHIgPSB0b191c2Vy X3BvaW50ZXIocmVsb2MpOworCisJbWVtc2V0KCZleGVjYnVmLCAwLCBzaXplb2YoZXhlY2J1Zikp OworCWV4ZWNidWYuYnVmZmVyc19wdHIgPSB0b191c2VyX3BvaW50ZXIob2JqKTsKKwlleGVjYnVm LmJ1ZmZlcl9jb3VudCA9IG5fYm87CisJZXhlY2J1Zi5mbGFncyA9IEk5MTVfRVhFQ19CU0Q7CisK KwlnZW1fZXhlY2J1ZihmZCwgJmV4ZWNidWYpOworfQpkaWZmIC0tZ2l0IGEvbGliL2h1Y19jb3B5 LmggYi9saWIvaHVjX2NvcHkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4u MDg4Zjc5NTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWIvaHVjX2NvcHkuaApAQCAtMCwwICsxLDUw IEBACisvKgorICogQ29weXJpZ2h0IMKpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24KKyAqCisgKiBQ ZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNv biBvYnRhaW5pbmcgYQorICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRv Y3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwKKyAqIHRvIGRlYWwgaW4gdGhlIFNv ZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24K KyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0 cmlidXRlLCBzdWJsaWNlbnNlLAorICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2Fy ZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCisgKiBTb2Z0d2FyZSBpcyBmdXJu aXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoK KyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNl IChpbmNsdWRpbmcgdGhlIG5leHQKKyAqIHBhcmFncmFwaCkgc2hhbGwgYmUgaW5jbHVkZWQgaW4g YWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUKKyAqIFNvZnR3YXJlLgor ICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZ IE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBM SU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1Mg Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVO VCBTSEFMTAorICogVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZP UiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBB TiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCisgKiBGUk9N LCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9S IE9USEVSIERFQUxJTkdTCisgKiBJTiBUSEUgU09GVFdBUkUuCisgKgorICovCisKKyNpZm5kZWYg SFVDX0NPUFlfSAorI2RlZmluZSBIVUNfQ09QWV9ICisKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNp bmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlICJpb2N0bF93cmFwcGVycy5oIgorI2luY2x1ZGUg ImludGVsX3JlZy5oIgorCisjZGVmaW5lIFBBUkFMTEVMX1ZJREVPX1BJUEUJCSgweDM8PDI5KQor I2RlZmluZSBNRlhfV0FJVAkJCShQQVJBTExFTF9WSURFT19QSVBFfCgweDE8PDI3KXwoMHgxPDw4 KSkKKworI2RlZmluZSBIVUNfSU1FTV9TVEFURQkJCShQQVJBTExFTF9WSURFT19QSVBFfCgweDI8 PDI3KXwoMHhiPDwyMyl8KDB4MTw8MTYpfDB4MykKKyNkZWZpbmUgSFVDX1BJUEVfTU9ERV9TRUxF Q1QJCShQQVJBTExFTF9WSURFT19QSVBFfCgweDI8PDI3KXwoMHhiPDwyMyl8MHgxKQorI2RlZmlu ZSBIVUNfU1RBUlQJCQkoUEFSQUxMRUxfVklERU9fUElQRXwoMHgyPDwyNyl8KDB4Yjw8MjMpfCgw eDIxPDwxNikpCisjZGVmaW5lIEhVQ19WSVJUVUFMX0FERFJfU1RBVEUJCShQQVJBTExFTF9WSURF T19QSVBFfCgweDI8PDI3KXwoMHhiPDwyMyl8KDB4NDw8MTYpfDB4MmYpCisKKyNkZWZpbmUgSFVD X1ZJUlRVQUxfQUREUl9SRUdJT05fTlVNCTE2CisjZGVmaW5lIEhVQ19WSVJUVUFMX0FERFJfUkVH SU9OX1NSQwkwCisjZGVmaW5lIEhVQ19WSVJUVUFMX0FERFJfUkVHSU9OX0RTVAkxNAorCit2b2lk CitnZW45X2h1Y19jb3B5ZnVuYyhpbnQgZmQsCisJCXN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY19v YmplY3QyICpvYmosCisJCWludCBuX2JvKTsKKworI2VuZGlmIC8qIEhVQ19DT1BZX0ggKi8KZGlm ZiAtLWdpdCBhL2xpYi9pbnRlbF9iYXRjaGJ1ZmZlci5jIGIvbGliL2ludGVsX2JhdGNoYnVmZmVy LmMKaW5kZXggM2RjODkwMjQuLmY3MDQwMDQ5IDEwMDY0NAotLS0gYS9saWIvaW50ZWxfYmF0Y2hi dWZmZXIuYworKysgYi9saWIvaW50ZWxfYmF0Y2hidWZmZXIuYwpAQCAtNDMsNiArNDMsNyBAQAog I2luY2x1ZGUgImlvY3RsX3dyYXBwZXJzLmgiCiAjaW5jbHVkZSAibWVkaWFfc3Bpbi5oIgogI2lu Y2x1ZGUgImdwZ3B1X2ZpbGwuaCIKKyNpbmNsdWRlICJodWNfY29weS5oIgogCiAjaW5jbHVkZSA8 aTkxNV9kcm0uaD4KIApAQCAtOTQyLDMgKzk0MywyMiBAQCBpZ3RfbWVkaWFfc3BpbmZ1bmNfdCBp Z3RfZ2V0X21lZGlhX3NwaW5mdW5jKGludCBkZXZpZCkKIAogCXJldHVybiBzcGluOwogfQorCisv KioKKyAqIGlndF9nZXRfaHVjX2NvcHlmdW5jOgorICogQGRldmlkOiBwY2kgZGV2aWNlIGlkCisg KgorICogUmV0dXJuczoKKyAqCisgKiBUaGUgcGxhdGZvcm0tc3BlY2lmaWMgaHVjIGNvcHkgZnVu Y3Rpb24gcG9pbnRlciBmb3IgdGhlIGRldmljZSBzcGVjaWZpZWQKKyAqIHdpdGggQGRldmlkLiBX aWxsIHJldHVybiBOVUxMIHdoZW4gbm8gbWVkaWEgc3BpbiBmdW5jdGlvbiBpcyBpbXBsZW1lbnRl ZC4KKyAqLworaWd0X2h1Y19jb3B5ZnVuY190IGlndF9nZXRfaHVjX2NvcHlmdW5jKGludCBkZXZp ZCkKK3sKKwlpZ3RfaHVjX2NvcHlmdW5jX3QgY29weSA9IE5VTEw7CisKKwlpZiAoSVNfR0VOMTIo ZGV2aWQpIHx8IElTX0dFTjExKGRldmlkKSB8fCBJU19HRU45KGRldmlkKSkKKwkJY29weSA9IGdl bjlfaHVjX2NvcHlmdW5jOworCisJcmV0dXJuIGNvcHk7Cit9CmRpZmYgLS1naXQgYS9saWIvaW50 ZWxfYmF0Y2hidWZmZXIuaCBiL2xpYi9pbnRlbF9iYXRjaGJ1ZmZlci5oCmluZGV4IGZkN2VmMDNm Li45NTZlY2ExNSAxMDA2NDQKLS0tIGEvbGliL2ludGVsX2JhdGNoYnVmZmVyLmgKKysrIGIvbGli L2ludGVsX2JhdGNoYnVmZmVyLmgKQEAgLTM5OSw0ICszOTksMjQgQEAgdHlwZWRlZiB2b2lkICgq aWd0X21lZGlhX3NwaW5mdW5jX3QpKHN0cnVjdCBpbnRlbF9iYXRjaGJ1ZmZlciAqYmF0Y2gsCiAK IGlndF9tZWRpYV9zcGluZnVuY190IGlndF9nZXRfbWVkaWFfc3BpbmZ1bmMoaW50IGRldmlkKTsK IAorLyoqCisgKiBpZ3RfaHVjX2NvcHlmdW5jX3Q6CisgKiBAZmQ6IGRybSBmZAorICogQG9iajog ZHJtX2k5MTVfZ2VtX2V4ZWNfb2JqZWN0MiBidWZmZXIgYXJyYXkKKyAqICAgICAgIG9ialswXSBp cyBzb3VyY2UgYnVmZmVyCisgKiAgICAgICBvYmpbMV0gaXMgZGVzdGluYXRpb24gYnVmZmVyCisg KiAgICAgICBvYmpbMl0gaXMgZXhlY3V0aW9uIGJ1ZmZlcgorICogQG5fYm86IHRoZSBzaXplIG9m IEBvYmogYXJyYXkKKyAqCisgKiBUaGlzIGlzIHRoZSB0eXBlIG9mIHRoZSBwZXItcGxhdGZvcm0g aHVjIGNvcHkgZnVuY3Rpb25zLgorICoKKyAqIFRoZSBodWMgY29weSBmdW5jdGlvbiBlbWl0cyBh IGJhdGNoYnVmZmVyIHRvIHRoZSBWREJPWCBlbmdpbmUgdG8KKyAqIGludm9rZSB0aGUgSHVDIENv cHkga2VybmVsIHRvIGNvcHkgNEsgYnl0ZXMgZnJvbSB0aGUgc291cmNlIGJ1ZmZlcgorICogdG8g dGhlIGRlc3RpbmF0aW9uIGJ1ZmZlci4KKyAqLwordHlwZWRlZiB2b2lkICgqaWd0X2h1Y19jb3B5 ZnVuY190KShpbnQgZmQsCisJCXN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY19vYmplY3QyICpvYmos CisJCWludCBuX2JvKTsKKworaWd0X2h1Y19jb3B5ZnVuY190CWlndF9nZXRfaHVjX2NvcHlmdW5j KGludCBkZXZpZCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYi9tZXNvbi5idWlsZCBiL2xpYi9t ZXNvbi5idWlsZAppbmRleCA1N2ViN2Q5My4uM2Q3MjA2ODMgMTAwNjQ0Ci0tLSBhL2xpYi9tZXNv bi5idWlsZAorKysgYi9saWIvbWVzb24uYnVpbGQKQEAgLTEsNSArMSw2IEBACiBsaWJfc291cmNl cyA9IFsKIAknZHJtdGVzdC5jJywKKwknaHVjX2NvcHkuYycsCiAJJ2k5MTUvZ2VtX2NvbnRleHQu YycsCiAJJ2k5MTUvZ2VtX2VuZ2luZV90b3BvbG9neS5jJywKIAknaTkxNS9nZW1fc2NoZWR1bGVy LmMnLApkaWZmIC0tZ2l0IGEvdGVzdHMvTWFrZWZpbGUuc291cmNlcyBiL3Rlc3RzL01ha2VmaWxl LnNvdXJjZXMKaW5kZXggODA2ZWIwMmQuLmQyMzBkNmI0IDEwMDY0NAotLS0gYS90ZXN0cy9NYWtl ZmlsZS5zb3VyY2VzCisrKyBiL3Rlc3RzL01ha2VmaWxlLnNvdXJjZXMKQEAgLTMxMyw2ICszMTMs OSBAQCBnZW1fbWVkaWFfZmlsbF9TT1VSQ0VTID0gaTkxNS9nZW1fbWVkaWFfZmlsbC5jCiBURVNU U19wcm9ncyArPSBnZW1fbWVkaWFfdm1lCiBnZW1fbWVkaWFfdm1lX1NPVVJDRVMgPSBpOTE1L2dl bV9tZWRpYV92bWUuYwogCitURVNUU19wcm9ncyArPSBnZW1faHVjX2NvcHkKK2dlbV9odWNfY29w eV9TT1VSQ0VTID0gaTkxNS9nZW1faHVjX2NvcHkuYworCiBURVNUU19wcm9ncyArPSBnZW1fbW1h cAogZ2VtX21tYXBfU09VUkNFUyA9IGk5MTUvZ2VtX21tYXAuYwogCmRpZmYgLS1naXQgYS90ZXN0 cy9pOTE1L2dlbV9odWNfY29weS5jIGIvdGVzdHMvaTkxNS9nZW1faHVjX2NvcHkuYwpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4uMjBhZWIyMzkKLS0tIC9kZXYvbnVsbAorKysg Yi90ZXN0cy9pOTE1L2dlbV9odWNfY29weS5jCkBAIC0wLDAgKzEsMTM4IEBACisvKgorICogQ29w eXJpZ2h0IMKpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhl cmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQor ICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmls ZXMgKHRoZSAiU29mdHdhcmUiKSwKKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQg cmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KKyAqIHRoZSByaWdodHMg dG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNl bnNlLAorICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1p dCBwZXJzb25zIHRvIHdob20gdGhlCisgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28s IHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBj b3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIChpbmNsdWRpbmcgdGhl IG5leHQKKyAqIHBhcmFncmFwaCkgc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBz dWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUKKyAqIFNvZnR3YXJlLgorICoKKyAqIFRIRSBTT0ZU V0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBF WFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBX QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAorICogVEhF IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB TUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4g Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdT CisgKiBJTiBUSEUgU09GVFdBUkUuCisgKi8KKyNpbmNsdWRlICJpZ3QuaCIKKyNpbmNsdWRlIDxz dGRib29sLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5j bHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcu aD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8 ZXJybm8uaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+Cisj aW5jbHVkZSAiZHJtLmgiCisjaW5jbHVkZSAiaWd0X3N5c2ZzLmMiCisKK0lHVF9URVNUX0RFU0NS SVBUSU9OKCJBIHZlcnkgc2ltcGxlIHdvcmtsb2FkIGZvciB0aGUgSHVDLiIpOworCisjZGVmaW5l IEhVQ19DT1BZX0RBVEFfQlVGX1NJWkUJNDA5NgorCitzdGF0aWMgdm9pZAorY29tcGFyZV9odWNf Y29weV9yZXN1bHQoaW50IGRybV9mZCwgdWludDMyX3Qgc3JjX2hhbmRsZSwgdWludDMyX3QgZHN0 X2hhbmRsZSkKK3sKKwljaGFyIHNyY19vdXRwdXRbSFVDX0NPUFlfREFUQV9CVUZfU0laRV07CisJ Y2hhciBkc3Rfb3V0cHV0W0hVQ19DT1BZX0RBVEFfQlVGX1NJWkVdOworCisJZ2VtX3JlYWQoZHJt X2ZkLCBzcmNfaGFuZGxlLCAwLCBzcmNfb3V0cHV0LCBIVUNfQ09QWV9EQVRBX0JVRl9TSVpFKTsK KwlnZW1fcmVhZChkcm1fZmQsIGRzdF9oYW5kbGUsIDAsIGRzdF9vdXRwdXQsIEhVQ19DT1BZX0RB VEFfQlVGX1NJWkUpOworCisJZm9yIChpbnQgaSA9IDA7IGkgPCBIVUNfQ09QWV9EQVRBX0JVRl9T SVpFOyBpKyspCisJCWlndF9hc3NlcnRfZihzcmNfb3V0cHV0W2ldID09IGRzdF9vdXRwdXRbaV0s CisJCQkgICAgICJFeGVwZWN0ZWQgJWMsIGZvdW5kICVjIGF0ICU0ZC5cbiIsCisJCQkgICAgIHNy Y19vdXRwdXRbaV0sIGRzdF9vdXRwdXRbaV0sIGkpOworfQorCitzdGF0aWMgYm9vbAorY2hlY2tf aHVjX2VuYWJsZWQoaW50IGZkKQoreworCWludCBkaXI7CisJZGlyID0gaWd0X3N5c2ZzX29wZW5f cGFyYW1ldGVycyhmZCk7CisKKwlpZiAoZGlyIDwgMCkKKwkJcmV0dXJuIDA7CisKKwlpZiAoaWd0 X3N5c2ZzX2dldF91MzIoZGlyLCAiZW5hYmxlX2d1YyIpICYgMikKKwkJcmV0dXJuIDE7CisJZWxz ZQorCQlyZXR1cm4gMDsKKworfQorCitzdGF0aWMgYm9vbAorY2hlY2tfaHVjX3N0YXR1cyhpbnQg ZmQpCit7CisJaW50IHZhbCA9IDA7CisJc3RydWN0IGRybV9pOTE1X2dldHBhcmFtIHBnOworCisJ cGcucGFyYW0gPSBJOTE1X1BBUkFNX0hVQ19TVEFUVVM7CisJcGcudmFsdWUgPSAmdmFsOworCWlm IChpb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfR0VUUEFSQU0sICZwZykgPT0gMCkKKwkJcmV0dXJu ICEhdmFsOworCWVsc2UKKwkJcmV0dXJuIDA7Cit9CisKK2lndF9tYWluCit7CisJaW50IGRybV9m ZCA9IC0xOworCXVpbnQzMl90IGRldmlkOworCWlndF9odWNfY29weWZ1bmNfdCBodWNfY29weTsK KworCWlndF9maXh0dXJlIHsKKwkJZHJtX2ZkID0gZHJtX29wZW5fZHJpdmVyKERSSVZFUl9JTlRF TCk7CisJCWlndF9yZXF1aXJlX2dlbShkcm1fZmQpOworCQlkZXZpZCA9IGludGVsX2dldF9kcm1f ZGV2aWQoZHJtX2ZkKTsKKwkJaHVjX2NvcHkgPSBpZ3RfZ2V0X2h1Y19jb3B5ZnVuYyhkZXZpZCk7 CisKKwkJaWd0X3JlcXVpcmVfZihodWNfY29weSwgIm5vIGh1Y19jb3B5IGZ1bmN0aW9uXG4iKTsK KwkJaWd0X3JlcXVpcmVfZihjaGVja19odWNfZW5hYmxlZChkcm1fZmQpLCAiSHVDIGlzIGRpc2Fi bGVkLlxuIik7CisJCWlndF9hc3NlcnRfZihjaGVja19odWNfc3RhdHVzKGRybV9mZCkgPT0gdHJ1 ZSwKKwkJCSJIdUMgaXMgbm90IHN1Y2Nlc3NmdWxseSBsb2FkZWQhXG4iKTsKKwl9CisKKwlpZ3Rf ZGVzY3JpYmUoIk1ha2Ugc3VyZSB0aGF0IEh1YyBmaXJtd2FyZSB3b3JrcyIKKwkJICAgICAiYnkg Y29weWluZyBhIGNoYXIgYXJyYXkgdXNpbmcgSHVjIgorCQkgICAgICJhbmQgdmVyaWZ5aW5nIHRo ZSBjb3BpZWQgcmVzdWx0Iik7CisKKwlpZ3Rfc3VidGVzdCgiaHVjLWNvcHkiKSB7CisJCWNoYXIg aW5wdXRzW0hVQ19DT1BZX0RBVEFfQlVGX1NJWkVdOworCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4 ZWNfb2JqZWN0MiBvYmpbM107CisKKwkJLyogSW5pdGlhbGl6ZSBzcmMgYnVmZmVyIHJhbmRvbWx5 ICovCisJCXNyYW5kKHRpbWUoTlVMTCkpOworCQlmb3IgKGludCBpID0gMDsgaSA8IEhVQ19DT1BZ X0RBVEFfQlVGX1NJWkU7IGkrKykKKwkJCWlucHV0c1tpXSA9IChjaGFyKSAocmFuZCgpICUgMjU2 KTsKKworCQltZW1zZXQob2JqLCAwLCBzaXplb2Yob2JqKSk7CisJCS8qIHNvdXJjZSBidWZmZXIg b2JqZWN0IGZvciBzdG9yaW5nIGlucHV0ICovCisJCW9ialswXS5oYW5kbGUgPSBnZW1fY3JlYXRl KGRybV9mZCwgSFVDX0NPUFlfREFUQV9CVUZfU0laRSk7CisJCS8qIGRlc3RpbmF0aW9uIGJ1ZmZl ciBvYmplY3QgdG8gcmVjZWl2ZSBpbnB1dCAqLworCQlvYmpbMV0uaGFuZGxlID0gZ2VtX2NyZWF0 ZShkcm1fZmQsIEhVQ19DT1BZX0RBVEFfQlVGX1NJWkUpOworCQkvKiBleGVjdXRpb24gYnVmZmVy IG9iamVjdCAqLworCQlvYmpbMl0uaGFuZGxlID0gZ2VtX2NyZWF0ZShkcm1fZmQsIDQwOTYpOwor CisJCWdlbV93cml0ZShkcm1fZmQsIG9ialswXS5oYW5kbGUsIDAsIGlucHV0cywgSFVDX0NPUFlf REFUQV9CVUZfU0laRSk7CisKKwkJaHVjX2NvcHkoZHJtX2ZkLCBvYmosIDMpOworCQljb21wYXJl X2h1Y19jb3B5X3Jlc3VsdChkcm1fZmQsIG9ialswXS5oYW5kbGUsIG9ialsxXS5oYW5kbGUpOwor CisJCWdlbV9jbG9zZShkcm1fZmQsIG9ialswXS5oYW5kbGUpOworCQlnZW1fY2xvc2UoZHJtX2Zk LCBvYmpbMV0uaGFuZGxlKTsKKwkJZ2VtX2Nsb3NlKGRybV9mZCwgb2JqWzJdLmhhbmRsZSk7CisJ fQorCisJaWd0X2ZpeHR1cmUKKwkJY2xvc2UoZHJtX2ZkKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3Rz L2ludGVsLWNpL2Zhc3QtZmVlZGJhY2sudGVzdGxpc3QgYi90ZXN0cy9pbnRlbC1jaS9mYXN0LWZl ZWRiYWNrLnRlc3RsaXN0CmluZGV4IDcxZGM5OWE2Li40OTAwNGM4OCAxMDA2NDQKLS0tIGEvdGVz dHMvaW50ZWwtY2kvZmFzdC1mZWVkYmFjay50ZXN0bGlzdAorKysgYi90ZXN0cy9pbnRlbC1jaS9m YXN0LWZlZWRiYWNrLnRlc3RsaXN0CkBAIC0zNCw2ICszNCw3IEBAIGlndEBnZW1fZmxpbmtfYmFz aWNAYmFkLW9wZW4KIGlndEBnZW1fZmxpbmtfYmFzaWNAYmFzaWMKIGlndEBnZW1fZmxpbmtfYmFz aWNAZG91YmxlLWZsaW5rCiBpZ3RAZ2VtX2ZsaW5rX2Jhc2ljQGZsaW5rLWxpZmV0aW1lCitpZ3RA Z2VtX2h1Y19jb3B5QGh1Y19jb3B5CiBpZ3RAZ2VtX2xpbmVhcl9ibGl0c0BiYXNpYwogaWd0QGdl bV9tbWFwQGJhc2ljCiBpZ3RAZ2VtX21tYXBAYmFzaWMtc21hbGwtYm8KZGlmZiAtLWdpdCBhL3Rl c3RzL21lc29uLmJ1aWxkIGIvdGVzdHMvbWVzb24uYnVpbGQKaW5kZXggNTcwZGU1NDUuLjA1NDVi NjEyIDEwMDY0NAotLS0gYS90ZXN0cy9tZXNvbi5idWlsZAorKysgYi90ZXN0cy9tZXNvbi5idWls ZApAQCAtMTY1LDYgKzE2NSw3IEBAIGk5MTVfcHJvZ3MgPSBbCiAJJ2dlbV9ndHRfY3B1X3RsYics CiAJJ2dlbV9ndHRfaG9nJywKIAknZ2VtX2d0dF9zcGVlZCcsCisJJ2dlbV9odWNfY29weScsCiAJ J2dlbV9sYXJnZW9iamVjdCcsCiAJJ2dlbV9saW5lYXJfYmxpdHMnLAogCSdnZW1fbHV0X2hhbmRs ZScsCi0tIAoyLjIxLjAuNS5nYWViNTgyYTk4MwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pZ3QtZGV2Cg==