From mboxrd@z Thu Jan 1 00:00:00 1970 From: devon.davies@intel.com Subject: [PATCH i-g-t] tests/kms_fbc_crc.c: No longer dependant on Cairo A setup function that used to use Cairo to draw 2 rectangles covering the whole screen has been changed to use igt_draw Date: Fri, 15 Jan 2016 15:42:28 +0000 Message-ID: <1452872548-4959-1-git-send-email-devon.davies@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 350766E015 for ; Fri, 15 Jan 2016 07:42:36 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Devon Davies List-Id: intel-gfx@lists.freedesktop.org RnJvbTogRGV2b24gRGF2aWVzIDxkZXZvbi5kYXZpZXNAaW50ZWwuY29tPgoKdGVzdHMva21zX2Zy b250YnVmZmVyX3RyYWNraW5nLmM6IE5vdyBidWlsZHMgd2l0aCBEUk1fUFJJTUFSWV9ESVNBQkxF CiAgICBFYWNoIGNhbGwgdG8gdGhlIGZ1bmN0aW9uIGRybU1vZGVTZXRQbGFuZSBub3cgaGFzIGFu IGFkZHRpb25hbCBOVUxMIGluIHRoZQogICAgYXJndW1lbnRzIGlmIERSTV9QUklNQVJZX0RJU0FC TEUgaXMgc2V0LgoKdGVzdHMvQW5kcm9pZC5tazogQWxsb3cgdGhlIGFib3ZlIHRlc3RzIHRvIGJl IGJ1aWx0IHdpdGhvdXQgQ2Fpcm8KICAgIFNpbXBseSByZW1vdmVkIHRoZW0gZnJvbSB0aGUgdGVz dHMgdGhlIGJlIHNraXBwZWQuCgpsaWJzL2lndF9rbXMuYzogTm93IGJ1aWxkcyB3aXRoIERSTV9Q UklNQVJZX0RJU0FCTEUKICAgIEkgaGFkIHRvIGRlZmluZSBmZnMgYXMgX19idWlsdGluX2ZzcyBk dWUgdG8gY29tcGlsZXIgaXNzdWVzLgogICAgRWFjaCBjYWxsIHRvIHRoZSBmdW5jdGlvbiBkcm1N b2RlU2V0UGxhbmUgbm93IGhhcyBhbiBhZGR0aW9uYWwgTlVMTCBpbiB0aGUKICAgIGFyZ3VtZW50 cyBpZiBEUk1fUFJJTUFSWV9ESVNBQkxFIGlzIHNldC4KCmxpYnMvaWd0X2ZiLmM6IFdpbGwgbm93 IGJ1aWxkIHNvbWUgZnVuY3Rpb25zIHdpdGhvdXQgQ2Fpcm8KICAgIEZ1bmN0aW9ucyB3aGljaCBh cmVuJ3QgdXNlZCBieSB0aGUgZnJhbWVidWZmZXIgY29tcHJlc3Npb24gdGVzdHMgYXJlCiAgICBu b3cgYmVoaW5kIGFuICNpZiAoIWRlZmluZWQoQU5EUk9JRCkpIHx8IChkZWZpbmVkKEFORFJPSUQp ICYmCiAgICBBTkRST0lEX0hBU19DQUlSTwoKbGlicy9BbmRyb2lkLm1rCiAgICBpZ3RfZmIgYW5k IGlndF9rbXMgYXJlIG5vIGxvbmdlciBpZ25vcmVkIGlmIHdlIGRvbid0IGhhdmUgQ2Fpcm8uCgpU aGUgdGVzdHMga21zX2ZiY19jcmMgYW5kIGttc19mcm9udGJ1ZmZlcl90cmFja2luZyBoYWQgYW4g dW5uZWNlc3NhcnkKZGVwZW5kYW5jZSBvbiB0aGUgQ2Fpcm8gZ3JhcGhpY3MgZW5naW5lLgpBbHNv LCBkcm1Nb2RlU2V0UGxhbmUgbWF5IGhhdmUgYW4gYWRkaXRpb25hbCBhcmd1bWVudCBpZiBEUk1f UFJJTUFSWV9ESVNBQkxFCmlzIHNldCAoYXMgaXQgd2FzIGZvciBtZSksIEkgaGF2ZSBmaXhlZCB0 aGF0IGlzc3VlLgoKU2lnbmVkLW9mZi1ieTogRGV2b24gRGF2aWVzIDxkZXZvbi5kYXZpZXNAaW50 ZWwuY29tPgotLS0KIGxpYi9BbmRyb2lkLm1rICAgICAgICAgICAgICAgICAgIHwgIDQgLS0KIGxp Yi9pZ3RfZmIuYyAgICAgICAgICAgICAgICAgICAgIHwgMjYgKysrKysrKysrKysrLQogbGliL2ln dF9rbXMuYyAgICAgICAgICAgICAgICAgICAgfCAxNSArKysrKystLQogdGVzdHMvQW5kcm9pZC5t ayAgICAgICAgICAgICAgICAgfCAgNSArKysKIHRlc3RzL2ttc19mYmNfY3JjLmMgICAgICAgICAg ICAgIHwgMjAgKysrKysrLS0tLQogdGVzdHMva21zX2Zyb250YnVmZmVyX3RyYWNraW5nLmMgfCA3 OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiA2IGZpbGVzIGNoYW5n ZWQsIDExOSBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWIv QW5kcm9pZC5tayBiL2xpYi9BbmRyb2lkLm1rCmluZGV4IGJhZGVjMWUuLmJiZGIwNTEgMTAwNjQ0 Ci0tLSBhL2xpYi9BbmRyb2lkLm1rCisrKyBiL2xpYi9BbmRyb2lkLm1rCkBAIC0zNywxMCArMzcs NiBAQCBpZmVxICgiJHtBTkRST0lEX0hBU19DQUlST30iLCAiMSIpCiAgICAgTE9DQUxfQ19JTkNM VURFUyArPSAkKEFORFJPSURfQlVJTERfVE9QKS9leHRlcm5hbC9jYWlyby0xLjEyLjE2L3NyYwog ICAgIExPQ0FMX0NGTEFHUyArPSAtREFORFJPSURfSEFTX0NBSVJPPTEgLURJR1RfREFUQURJUj1c Ii5cIiAtRElHVF9TUkNESVI9XCIuXCIKIGVsc2UKLXNraXBfbGliX2xpc3QgOj0gXAotICAgIGln dF9rbXMuYyBcCi0gICAgaWd0X2ttcy5oIFwKLSAgICBpZ3RfZmIuYwogICAgIC1EQU5EUk9JRF9I QVNfQ0FJUk89MAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvbGliL2lndF9mYi5jIGIvbGliL2lndF9m Yi5jCmluZGV4IGM5ODU4MjQuLjVhY2RhYTcgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZmIuYworKysg Yi9saWIvaWd0X2ZiLmMKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJpZ3RfZmIuaCIKICNp bmNsdWRlICJpb2N0bF93cmFwcGVycy5oIgogCisKIC8qKgogICogU0VDVElPTjppZ3RfZmIKICAq IEBzaG9ydF9kZXNjcmlwdGlvbjogRnJhbWVidWZmZXIgaGFuZGxpbmcgYW5kIGRyYXdpbmcgbGli cmFyeQpAQCAtNTIsMTEgKzUzLDIzIEBACiAgKi8KIAogLyogZHJtIGZvdXJjYy9jYWlybyBmb3Jt YXQgbWFwcyAqLworI2lmICghZGVmaW5lZChBTkRST0lEKSkgfHwgKGRlZmluZWQoQU5EUk9JRCkg JiYgQU5EUk9JRF9IQVNfQ0FJUk8pCisKICNkZWZpbmUgREYoZGlkLCBjaWQsIF9icHAsIF9kZXB0 aCkJXAogCXsgRFJNX0ZPUk1BVF8jI2RpZCwgQ0FJUk9fRk9STUFUXyMjY2lkLCAjIGRpZCwgX2Jw cCwgX2RlcHRoIH0KKworI2Vsc2UKKworI2RlZmluZSBERihkaWQsIGNpZCwgX2JwcCwgX2RlcHRo KQlcCisJeyBEUk1fRk9STUFUXyMjZGlkLCAjIGRpZCwgX2JwcCwgX2RlcHRoIH0KKworI2VuZGlm CisKIHN0YXRpYyBzdHJ1Y3QgZm9ybWF0X2Rlc2Nfc3RydWN0IHsKIAl1aW50MzJfdCBkcm1faWQ7 CisjaWYgKCFkZWZpbmVkKEFORFJPSUQpKSB8fCAoZGVmaW5lZChBTkRST0lEKSAmJiBBTkRST0lE X0hBU19DQUlSTykKIAljYWlyb19mb3JtYXRfdCBjYWlyb19pZDsKKyNlbmRpZgogCWNvbnN0IGNo YXIgKm5hbWU7CiAJaW50IGJwcDsKIAlpbnQgZGVwdGg7CkBAIC03Miw3ICs4NSw2IEBAIHN0YXRp YyBzdHJ1Y3QgZm9ybWF0X2Rlc2Nfc3RydWN0IHsKICNkZWZpbmUgZm9yX2VhY2hfZm9ybWF0KGYp CVwKIAlmb3IgKGYgPSBmb3JtYXRfZGVzYzsgZiAtIGZvcm1hdF9kZXNjIDwgQVJSQVlfU0laRShm b3JtYXRfZGVzYyk7IGYrKykKIAotCiAvKiBoZWxwZXJzIHRvIGNyZWF0ZSBuaWNlLWxvb2tpbmcg ZnJhbWVidWZmZXJzICovCiBzdGF0aWMgaW50IGNyZWF0ZV9ib19mb3JfZmIoaW50IGZkLCBpbnQg d2lkdGgsIGludCBoZWlnaHQsIGludCBicHAsCiAJCQkgICAgdWludDY0X3QgdGlsaW5nLCB1bnNp Z25lZCBib19zaXplLApAQCAtMTI1LDYgKzEzNyw4IEBAIHN0YXRpYyBpbnQgY3JlYXRlX2JvX2Zv cl9mYihpbnQgZmQsIGludCB3aWR0aCwgaW50IGhlaWdodCwgaW50IGJwcCwKIAlyZXR1cm4gcmV0 OwogfQogCisjaWYgKCFkZWZpbmVkKEFORFJPSUQpKSB8fCAoZGVmaW5lZChBTkRST0lEKSAmJiBB TkRST0lEX0hBU19DQUlSTykKKwogLyoqCiAgKiBpZ3RfcGFpbnRfY29sb3I6CiAgKiBAY3I6IGNh aXJvIGRyYXdpbmcgY29udGV4dApAQCAtMzk0LDYgKzQwOCw3IEBAIHZvaWQgaWd0X3BhaW50X2lt YWdlKGNhaXJvX3QgKmNyLCBjb25zdCBjaGFyICpmaWxlbmFtZSwKIAogCWZjbG9zZShmKTsKIH0K KyNlbmRpZgogCiAvKioKICAqIGlndF9jcmVhdGVfZmJfd2l0aF9ib19zaXplOgpAQCAtNDk0LDYg KzUwOSw3IEBAIHVuc2lnbmVkIGludCBpZ3RfY3JlYXRlX2ZiKGludCBmZCwgaW50IHdpZHRoLCBp bnQgaGVpZ2h0LCB1aW50MzJfdCBmb3JtYXQsCiAJcmV0dXJuIGlndF9jcmVhdGVfZmJfd2l0aF9i b19zaXplKGZkLCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIHRpbGluZywgZmIsCiAJCQkJCSAgMCwg MCk7CiB9CisjaWYgKCFkZWZpbmVkKEFORFJPSUQpKSB8fCAoZGVmaW5lZChBTkRST0lEKSAmJiBB TkRST0lEX0hBU19DQUlSTykKIAogLyoqCiAgKiBpZ3RfY3JlYXRlX2NvbG9yX2ZiOgpAQCAtOTg1 LDYgKzEwMDEsNyBAQCB2b2lkIGlndF93cml0ZV9mYl90b19wbmcoaW50IGZkLCBzdHJ1Y3QgaWd0 X2ZiICpmYiwgY29uc3QgY2hhciAqZmlsZW5hbWUpCiAKIAlpZ3RfYXNzZXJ0KHN0YXR1cyA9PSBD QUlST19TVEFUVVNfU1VDQ0VTUyk7CiB9CisjZW5kaWYKIAogLyoqCiAgKiBpZ3RfcmVtb3ZlX2Zi OgpAQCAtOTk3LDEwICsxMDE0LDEzIEBAIHZvaWQgaWd0X3dyaXRlX2ZiX3RvX3BuZyhpbnQgZmQs IHN0cnVjdCBpZ3RfZmIgKmZiLCBjb25zdCBjaGFyICpmaWxlbmFtZSkKICAqLwogdm9pZCBpZ3Rf cmVtb3ZlX2ZiKGludCBmZCwgc3RydWN0IGlndF9mYiAqZmIpCiB7CisjaWYgKCFkZWZpbmVkKEFO RFJPSUQpKSB8fCAoZGVmaW5lZChBTkRST0lEKSAmJiBBTkRST0lEX0hBU19DQUlSTykKIAljYWly b19zdXJmYWNlX2Rlc3Ryb3koZmItPmNhaXJvX3N1cmZhY2UpOworI2VuZGlmCiAJZG9fb3JfZGll KGRybU1vZGVSbUZCKGZkLCBmYi0+ZmJfaWQpKTsKIAlnZW1fY2xvc2UoZmQsIGZiLT5nZW1faGFu ZGxlKTsKIH0KKyNpZiAoIWRlZmluZWQoQU5EUk9JRCkpIHx8IChkZWZpbmVkKEFORFJPSUQpICYm IEFORFJPSURfSEFTX0NBSVJPKQogCiAvKioKICAqIGlndF9icHBfZGVwdGhfdG9fZHJtX2Zvcm1h dDoKQEAgLTEwMjQsNiArMTA0NCw4IEBAIHVpbnQzMl90IGlndF9icHBfZGVwdGhfdG9fZHJtX2Zv cm1hdChpbnQgYnBwLCBpbnQgZGVwdGgpCiAJCSAgICAgZGVwdGgpOwogfQogCisjZW5kaWYKKwog LyoqCiAgKiBpZ3RfZHJtX2Zvcm1hdF90b19icHA6CiAgKiBAZHJtX2Zvcm1hdDogZHJtIGZvdXJj YyBwaXhlbCBmb3JtYXQgY29kZQpAQCAtMTA2Miw2ICsxMDg0LDcgQEAgY29uc3QgY2hhciAqaWd0 X2Zvcm1hdF9zdHIodWludDMyX3QgZHJtX2Zvcm1hdCkKIAogCXJldHVybiAiaW52YWxpZCI7CiB9 CisjaWYgKCFkZWZpbmVkKEFORFJPSUQpKSB8fCAoZGVmaW5lZChBTkRST0lEKSAmJiBBTkRST0lE X0hBU19DQUlSTykKIAogLyoqCiAgKiBpZ3RfZ2V0X2FsbF9mb3JtYXRzOgpAQCAtMTA4OSwzICsx MTEyLDQgQEAgdm9pZCBpZ3RfZ2V0X2FsbF9mb3JtYXRzKGNvbnN0IHVpbnQzMl90ICoqZm9ybWF0 cywgaW50ICpmb3JtYXRfY291bnQpCiAJKmZvcm1hdHMgPSBkcm1fZm9ybWF0czsKIAkqZm9ybWF0 X2NvdW50ID0gQVJSQVlfU0laRShmb3JtYXRfZGVzYyk7CiB9CisjZW5kaWYKZGlmZiAtLWdpdCBh L2xpYi9pZ3Rfa21zLmMgYi9saWIvaWd0X2ttcy5jCmluZGV4IDQ5NzExOGEuLjdiNjgyY2IgMTAw NjQ0Ci0tLSBhL2xpYi9pZ3Rfa21zLmMKKysrIGIvbGliL2lndF9rbXMuYwpAQCAtNDksNiArNDks OCBAQAogI2luY2x1ZGUgImludGVsX2NoaXBzZXQuaCIKICNpbmNsdWRlICJpZ3RfZGVidWdmcy5o IgogCisjZGVmaW5lIGZmcyBfX2J1aWx0aW5fZmZzCisKIC8qIGxpc3Qgb2YgY29ubmVjdG9ycyB0 aGF0IG5lZWQgcmVzZXR0aW5nIG9uIGV4aXQgKi8KICNkZWZpbmUgTUFYX0NPTk5FQ1RPUlMgMzIK IHN0YXRpYyBjaGFyICpmb3JjZWRfY29ubmVjdG9yc1tNQVhfQ09OTkVDVE9SUyArIDFdOwpAQCAt MTM1NCw4ICsxMzU2LDExIEBAIHN0YXRpYyBpbnQgaWd0X2RybV9wbGFuZV9jb21taXQoaWd0X3Bs YW5lX3QgKnBsYW5lLAogCQkJCSAgICAgIElHVF9GSVhFRCgwLDApLCAvKiBzcmNfeCAqLwogCQkJ CSAgICAgIElHVF9GSVhFRCgwLDApLCAvKiBzcmNfeSAqLwogCQkJCSAgICAgIElHVF9GSVhFRCgw LDApLCAvKiBzcmNfdyAqLwotCQkJCSAgICAgIElHVF9GSVhFRCgwLDApIC8qIHNyY19oICovKTsK LQorCQkJCSAgICAgIElHVF9GSVhFRCgwLDApIC8qIHNyY19oICovCisjaWYgRFJNX1BSSU1BUllf RElTQUJMRQorCQkJCQkgICwgTlVMTAorI2VuZGlmCisJCQkJCSAgKTsKIAkJQ0hFQ0tfUkVUVVJO KHJldCwgZmFpbF9vbl9lcnJvcik7CiAJfSBlbHNlIGlmIChwbGFuZS0+ZmJfY2hhbmdlZCB8fCBw bGFuZS0+cG9zaXRpb25fY2hhbmdlZCB8fAogCQlwbGFuZS0+c2l6ZV9jaGFuZ2VkKSB7CkBAIC0x Mzg2LDcgKzEzOTEsMTEgQEAgc3RhdGljIGludCBpZ3RfZHJtX3BsYW5lX2NvbW1pdChpZ3RfcGxh bmVfdCAqcGxhbmUsCiAJCQkJICAgICAgY3J0Y194LCBjcnRjX3ksCiAJCQkJICAgICAgY3J0Y193 LCBjcnRjX2gsCiAJCQkJICAgICAgc3JjX3gsIHNyY195LAotCQkJCSAgICAgIHNyY193LCBzcmNf aCk7CisJCQkJICAgICAgc3JjX3csIHNyY19oCisjaWYgRFJNX1BSSU1BUllfRElTQUJMRQorCQkJ CQkgICwgTlVMTAorI2VuZGlmCisJCQkJCSAgKTsKIAogCQlDSEVDS19SRVRVUk4ocmV0LCBmYWls X29uX2Vycm9yKTsKIAl9CmRpZmYgLS1naXQgYS90ZXN0cy9BbmRyb2lkLm1rIGIvdGVzdHMvQW5k cm9pZC5tawppbmRleCA4NDU3MTI1Li5lYjI4N2E2IDEwMDY0NAotLS0gYS90ZXN0cy9BbmRyb2lk Lm1rCisrKyBiL3Rlc3RzL0FuZHJvaWQubWsKQEAgLTY1LDYgKzY1LDExIEBAIGVsc2UKIAogICAg IHRtcF9saXN0IDo9ICQoZm9yZWFjaCB0ZXN0X25hbWUsICQoVEVTVFNfcHJvZ3NfTSksXAogICAg ICAgICAkKGlmICQoZmluZHN0cmluZyBrbXNfLCQodGVzdF9uYW1lKSksJCh0ZXN0X25hbWUpKSkK KworIyBrbXNfZmJjX2NyYyBhbmQga21zX2Zyb250YnVmZmVyX3RyYWNraW5nIG5vIGxvbmdlciBk ZXBlbmQgb24gQ2Fpcm8KKyAgICB0bXBfbGlzdCA6PSAkKGZpbHRlci1vdXQga21zX2ZiY19jcmMs ICQodG1wX2xpc3QpKQorICAgIHRtcF9saXN0IDo9ICQoZmlsdGVyLW91dCBrbXNfZnJvbnRidWZm ZXJfdHJhY2tpbmcsICQodG1wX2xpc3QpKQorCiAgICAgc2tpcF90ZXN0c19saXN0ICs9ICQodG1w X2xpc3QpCiAKICAgICBJR1RfTE9DQUxfQ0ZMQUdTICs9IC1EQU5EUk9JRF9IQVNfQ0FJUk89MApk aWZmIC0tZ2l0IGEvdGVzdHMva21zX2ZiY19jcmMuYyBiL3Rlc3RzL2ttc19mYmNfY3JjLmMKaW5k ZXggMDJlOTVlNS4uNzE3ZTg5MSAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2ZiY19jcmMuYworKysg Yi90ZXN0cy9rbXNfZmJjX2NyYy5jCkBAIC0zMzYsMTQgKzMzNiwxOCBAQCBzdGF0aWMgdm9pZCBj cmVhdGVfZmJzKGRhdGFfdCAqZGF0YSwgYm9vbCB0aWxlZCwgc3RydWN0IGlndF9mYiAqZmJzKQog CXVpbnQ2NF90IHRpbGluZyA9IHRpbGVkID8gTE9DQUxfSTkxNV9GT1JNQVRfTU9EX1hfVElMRUQg OgogCQkJCSAgTE9DQUxfRFJNX0ZPUk1BVF9NT0RfTk9ORTsKIAotCXJjID0gaWd0X2NyZWF0ZV9j b2xvcl9mYihkYXRhLT5kcm1fZmQsIG1vZGUtPmhkaXNwbGF5LCBtb2RlLT52ZGlzcGxheSwKLQkJ CQkgRFJNX0ZPUk1BVF9YUkdCODg4OCwgdGlsaW5nLAotCQkJCSAwLjAsIDAuMCwgMC4wLCAmZmJz WzBdKTsKLQlpZ3RfYXNzZXJ0KHJjKTsKLQlyYyA9IGlndF9jcmVhdGVfY29sb3JfZmIoZGF0YS0+ ZHJtX2ZkLCBtb2RlLT5oZGlzcGxheSwgbW9kZS0+dmRpc3BsYXksCi0JCQkJIERSTV9GT1JNQVRf WFJHQjg4ODgsIHRpbGluZywKLQkJCQkgMC4xLCAwLjEsIDAuMSwgJmZic1sxXSk7Ci0JaWd0X2Fz c2VydChyYyk7CisJdW5zaWduZWQgaW50IGZiX2lkOworCisJZmJfaWQgPSBpZ3RfY3JlYXRlX2Zi KGRhdGEtPmRybV9mZCwgbW9kZS0+aGRpc3BsYXksIG1vZGUtPnZkaXNwbGF5LAorCQkJCURSTV9G T1JNQVRfWFJHQjg4ODgsIHRpbGluZywgJmZic1swXSk7CisJaWd0X2Fzc2VydChmYl9pZCk7CisJ aWd0X2RyYXdfZmlsbF9mYihkYXRhLT5kcm1fZmQsICZmYnNbMF0sIDApOworCisJZmJfaWQgPSBp Z3RfY3JlYXRlX2ZiKGRhdGEtPmRybV9mZCwgbW9kZS0+aGRpc3BsYXksIG1vZGUtPnZkaXNwbGF5 LAorCQkJCURSTV9GT1JNQVRfWFJHQjg4ODgsIHRpbGluZywgJmZic1sxXSk7CisJaWd0X2Fzc2Vy dChmYl9pZCk7CisJaWd0X2RyYXdfZmlsbF9mYihkYXRhLT5kcm1fZmQsICZmYnNbMV0sIDB4Nzcp OworCiB9CiAKIC8qIFNpbmNlIHdlIHdhbnQgdG8gYmUgcmVhbGx5IHNhZmUgdGhhdCB0aGUgQ1JD cyBhcmUgYWN0dWFsbHkgd2hhdCB3ZSByZWFsbHkKZGlmZiAtLWdpdCBhL3Rlc3RzL2ttc19mcm9u dGJ1ZmZlcl90cmFja2luZy5jIGIvdGVzdHMva21zX2Zyb250YnVmZmVyX3RyYWNraW5nLmMKaW5k ZXggZTdhY2M3Yy4uZjhiOWVjYSAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2Zyb250YnVmZmVyX3Ry YWNraW5nLmMKKysrIGIvdGVzdHMva21zX2Zyb250YnVmZmVyX3RyYWNraW5nLmMKQEAgLTEwNzks NyArMTA3OSwxMSBAQCBzdGF0aWMgdm9pZCB1bnNldF9hbGxfY3J0Y3Modm9pZCkKIAogCWZvciAo aSA9IDA7IGkgPCBkcm0ucGxhbmVfcmVzLT5jb3VudF9wbGFuZXM7IGkrKykgewogCQlyYyA9IGRy bU1vZGVTZXRQbGFuZShkcm0uZmQsIGRybS5wbGFuZV9yZXMtPnBsYW5lc1tpXSwgMCwgMCwgMCwK LQkJCQkgICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDApOworCQkJCSAgICAgMCwgMCwgMCwgMCwg MCwgMCwgMCwgMAorI2lmIERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCQkgICAgICwgTlVMTAorI2Vu ZGlmCisJCQkgICAgICk7CiAJCWlndF9hc3NlcnRfZXEocmMsIDApOwogCX0KIH0KQEAgLTE3MTUs NyArMTcxOSwxMSBAQCBzdGF0aWMgdm9pZCBzZXRfc3ByaXRlX2Zvcl90ZXN0KGNvbnN0IHN0cnVj dCB0ZXN0X21vZGUgKnQsCiAJCQkgICAgIHBhcmFtcy0+c3ByaXRlLmZiLT5mYl9pZCwgMCwgMCwg MCwKIAkJCSAgICAgcGFyYW1zLT5zcHJpdGUudywgcGFyYW1zLT5zcHJpdGUuaCwKIAkJCSAgICAg MCwgMCwgcGFyYW1zLT5zcHJpdGUudyA8PCAxNiwKLQkJCSAgICAgcGFyYW1zLT5zcHJpdGUuaCA8 PCAxNik7CisJCQkgICAgIHBhcmFtcy0+c3ByaXRlLmggPDwgMTYKKyNpZiBEUk1fUFJJTUFSWV9E SVNBQkxFCisJCQkgICAgICwgTlVMTAorI2VuZGlmCisJCQkgICAgICk7CiAJaWd0X2Fzc2VydF9l cShyYywgMCk7CiAKIAlkb19hc3NlcnRpb25zKEFTU0VSVF9OT19BQ1RJT05fQ0hBTkdFKTsKQEAg LTIyMjAsNyArMjIyOCwxMSBAQCBzdGF0aWMgdm9pZCBzZXRfcHJpbV9wbGFuZV9mb3JfcGFyYW1z KHN0cnVjdCBtb2Rlc2V0X3BhcmFtcyAqcGFyYW1zKQogCQkJICAgICBwYXJhbXMtPm1vZGUtPmhk aXNwbGF5LAogCQkJICAgICBwYXJhbXMtPm1vZGUtPnZkaXNwbGF5LAogCQkJICAgICBwYXJhbXMt PmZiLnggPDwgMTYsIHBhcmFtcy0+ZmIueSA8PCAxNiwKLQkJCSAgICAgcGFyYW1zLT5mYi53IDw8 IDE2LCBwYXJhbXMtPmZiLmggPDwgMTYpOworCQkJICAgICBwYXJhbXMtPmZiLncgPDwgMTYsIHBh cmFtcy0+ZmIuaCA8PCAxNgorI2lmIERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCSAgICAgLCBOVUxM CisjZW5kaWYKKwkJCSAgICAgKTsKIAlpZ3RfYXNzZXJ0KHJjID09IDApOwogfQogCkBAIC0yNDA2 LDcgKzI0MTgsMTEgQEAgc3RhdGljIHZvaWQgbW92ZV9zdWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0 X21vZGUgKnQpCiAJCQkJCSAgICAgcGFyYW1zLT5zcHJpdGUuZmItPmZiX2lkLCAwLAogCQkJCQkg ICAgIHJlY3QueCwgcmVjdC55LCByZWN0LncsCiAJCQkJCSAgICAgcmVjdC5oLCAwLCAwLCByZWN0 LncgPDwgMTYsCi0JCQkJCSAgICAgcmVjdC5oIDw8IDE2KTsKKwkJCQkJICAgICByZWN0LmggPDwg MTYKKyNpZiBEUk1fUFJJTUFSWV9ESVNBQkxFCisJCQkJCSAgICAgLCBOVUxMCisjZW5kaWYKKwkJ CSAgICAgKTsKIAkJCWlndF9hc3NlcnRfZXEocmMsIDApOwogCQkJYnJlYWs7CiAJCWRlZmF1bHQ6 CkBAIC0yNDYzLDggKzI0NzksMTEgQEAgc3RhdGljIHZvaWQgb25vZmZfc3VidGVzdChjb25zdCBz dHJ1Y3QgdGVzdF9tb2RlICp0KQogCQkJCWJyZWFrOwogCQkJY2FzZSBQTEFORV9TUFI6CiAJCQkJ cmMgPSBkcm1Nb2RlU2V0UGxhbmUoZHJtLmZkLCBwYXJhbXMtPnNwcml0ZV9pZCwKLQkJCQkJCSAg ICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLQkJCQkJCSAgICAgMCwgMCk7CisJCQkJCQkg ICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAKKyNpZiBEUk1fUFJJTUFSWV9ESVNB QkxFCisJCQkJCQkgICAgICwgTlVMTAorI2VuZGlmCisJCQkgICAgICk7CiAJCQkJaWd0X2Fzc2Vy dF9lcShyYywgMCk7CiAJCQkJYnJlYWs7CiAJCQlkZWZhdWx0OgpAQCAtMjQ4OSw3ICsyNTA4LDEx IEBAIHN0YXRpYyB2b2lkIG9ub2ZmX3N1YnRlc3QoY29uc3Qgc3RydWN0IHRlc3RfbW9kZSAqdCkK IAkJCQkJCSAgICAgcGFyYW1zLT5zcHJpdGUuaCwgMCwKIAkJCQkJCSAgICAgMCwKIAkJCQkJCSAg ICAgcGFyYW1zLT5zcHJpdGUudyA8PCAxNiwKLQkJCQkJCSAgICAgcGFyYW1zLT5zcHJpdGUuaCA8 PCAxNik7CisJCQkJCQkgICAgIHBhcmFtcy0+c3ByaXRlLmggPDwgMTYKKyNpZiBEUk1fUFJJTUFS WV9ESVNBQkxFCisJCQkJCQkgICAgICwgTlVMTAorI2VuZGlmCisJCQkgICAgICk7CiAJCQkJaWd0 X2Fzc2VydF9lcShyYywgMCk7CiAJCQkJYnJlYWs7CiAJCQlkZWZhdWx0OgpAQCAtMjU2MSw3ICsy NTg0LDExIEBAIHN0YXRpYyB2b2lkIGZ1bGxzY3JlZW5fcGxhbmVfc3VidGVzdChjb25zdCBzdHJ1 Y3QgdGVzdF9tb2RlICp0KQogCQkJICAgICBmdWxsc2NyZWVuX2ZiLmZiX2lkLCAwLCAwLCAwLCBm dWxsc2NyZWVuX2ZiLndpZHRoLAogCQkJICAgICBmdWxsc2NyZWVuX2ZiLmhlaWdodCwgMCwgMCwK IAkJCSAgICAgZnVsbHNjcmVlbl9mYi53aWR0aCA8PCAxNiwKLQkJCSAgICAgZnVsbHNjcmVlbl9m Yi5oZWlnaHQgPDwgMTYpOworCQkJICAgICBmdWxsc2NyZWVuX2ZiLmhlaWdodCA8PCAxNgorI2lm IERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCSAgICAgLCBOVUxMCisjZW5kaWYKKwkJCSAgICAgKTsK IAlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAl1cGRhdGVfd2FudGVkX2NyYyh0LCAmcGF0dGVybi0+ Y3Jjc1t0LT5mb3JtYXRdWzBdKTsKIApAQCAtMjU4MSw3ICsyNjA4LDExIEBAIHN0YXRpYyB2b2lk IGZ1bGxzY3JlZW5fcGxhbmVfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQogCWRv X2Fzc2VydGlvbnMoYXNzZXJ0aW9ucyk7CiAKIAlyYyA9IGRybU1vZGVTZXRQbGFuZShkcm0uZmQs IHBhcmFtcy0+c3ByaXRlX2lkLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAotCQkJICAgICAwLCAw LCAwKTsKKwkJCSAgICAgMCwgMCwgMAorI2lmIERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCSAgICAg LCBOVUxMCisjZW5kaWYKKwkJCSAgICAgKTsKIAlpZ3RfYXNzZXJ0X2VxKHJjLCAwKTsKIAogCWlm ICh0LT5zY3JlZW4gPT0gU0NSRUVOX1BSSU0pCkBAIC0yNjU3LDcgKzI2ODgsMTEgQEAgc3RhdGlj IHZvaWQgc2NhbGVkcHJpbWFyeV9zdWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQpCiAJ CQkgICAgIDAsIDAsCiAJCQkgICAgIHBhcmFtcy0+bW9kZS0+aGRpc3BsYXksIHBhcmFtcy0+bW9k ZS0+dmRpc3BsYXksCiAJCQkgICAgIHBhcmFtcy0+ZmIueCA8PCAxNiwgcGFyYW1zLT5mYi55IDw8 IDE2LAotCQkJICAgICBwYXJhbXMtPmZiLncgPDwgMTYsIHBhcmFtcy0+ZmIuaCA8PCAxNik7CisJ CQkgICAgIHBhcmFtcy0+ZmIudyA8PCAxNiwgcGFyYW1zLT5mYi5oIDw8IDE2CisjaWYgRFJNX1BS SU1BUllfRElTQUJMRQorCQkJICAgICAsIE5VTEwKKyNlbmRpZgorCQkJICAgICApOwogCWlndF9h c3NlcnQocmMgPT0gMCk7CiAJZG9fYXNzZXJ0aW9ucyhET05UX0FTU0VSVF9DUkMpOwogCkBAIC0y NjY4LDcgKzI3MDMsMTEgQEAgc3RhdGljIHZvaWQgc2NhbGVkcHJpbWFyeV9zdWJ0ZXN0KGNvbnN0 IHN0cnVjdCB0ZXN0X21vZGUgKnQpCiAJCQkgICAgIHBhcmFtcy0+bW9kZS0+aGRpc3BsYXksIHBh cmFtcy0+bW9kZS0+dmRpc3BsYXksCiAJCQkgICAgIHBhcmFtcy0+ZmIueCA8PCAxNiwgcGFyYW1z LT5mYi55IDw8IDE2LAogCQkJICAgICAocGFyYW1zLT5mYi53IC8gMikgPDwgMTYsCi0JCQkgICAg IChwYXJhbXMtPmZiLmggLyAyKSA8PCAxNik7CisJCQkgICAgIChwYXJhbXMtPmZiLmggLyAyKSA8 PCAxNgorI2lmIERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCSAgICAgLCBOVUxMCisjZW5kaWYKKwkJ CSAgICAgKTsKIAlpZ3RfYXNzZXJ0KHJjID09IDApOwogCWRvX2Fzc2VydGlvbnMoRE9OVF9BU1NF UlRfQ1JDKTsKIApAQCAtMjY4MSw3ICsyNzIwLDExIEBAIHN0YXRpYyB2b2lkIHNjYWxlZHByaW1h cnlfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQogCQkJICAgICBwYXJhbXMtPm1v ZGUtPnZkaXNwbGF5IC8gMiwKIAkJCSAgICAgcGFyYW1zLT5mYi54IDw8IDE2LCBwYXJhbXMtPmZi LnkgPDwgMTYsCiAJCQkgICAgIChwYXJhbXMtPmZiLncgLyAyKSA8PCAxNiwKLQkJCSAgICAgKHBh cmFtcy0+ZmIuaCAvIDIpIDw8IDE2KTsKKwkJCSAgICAgKHBhcmFtcy0+ZmIuaCAvIDIpIDw8IDE2 CisjaWYgRFJNX1BSSU1BUllfRElTQUJMRQorCQkJICAgICAsIE5VTEwKKyNlbmRpZgorCQkJICAg ICApOwogCWlndF9hc3NlcnQocmMgPT0gMCk7CiAJZG9fYXNzZXJ0aW9ucyhET05UX0FTU0VSVF9D UkMpOwogCkBAIC0yNjk1LDcgKzI3MzgsMTEgQEAgc3RhdGljIHZvaWQgc2NhbGVkcHJpbWFyeV9z dWJ0ZXN0KGNvbnN0IHN0cnVjdCB0ZXN0X21vZGUgKnQpCiAJCQkgICAgIChwYXJhbXMtPmZiLngg KyBwYXJhbXMtPmZiLncgLyAyKSA8PCAxNiwKIAkJCSAgICAgKHBhcmFtcy0+ZmIueSArIHBhcmFt cy0+ZmIuaCAvIDIpIDw8IDE2LAogCQkJICAgICAocGFyYW1zLT5mYi53IC8gNCkgPDwgMTYsCi0J CQkgICAgIChwYXJhbXMtPmZiLmggLyA0KSA8PCAxNik7CisJCQkgICAgIChwYXJhbXMtPmZiLmgg LyA0KSA8PCAxNgorI2lmIERSTV9QUklNQVJZX0RJU0FCTEUKKwkJCSAgICAgLCBOVUxMCisjZW5k aWYKKwkJCSAgICAgKTsKIAlpZ3RfYXNzZXJ0KHJjID09IDApOwogCWRvX2Fzc2VydGlvbnMoRE9O VF9BU1NFUlRfQ1JDKTsKIApAQCAtMjcwNSw3ICsyNzUyLDExIEBAIHN0YXRpYyB2b2lkIHNjYWxl ZHByaW1hcnlfc3VidGVzdChjb25zdCBzdHJ1Y3QgdGVzdF9tb2RlICp0KQogCQkJICAgICAwLCAw LAogCQkJICAgICBwYXJhbXMtPm1vZGUtPmhkaXNwbGF5LCBwYXJhbXMtPm1vZGUtPnZkaXNwbGF5 LAogCQkJICAgICBwYXJhbXMtPmZiLnggPDwgMTYsIHBhcmFtcy0+ZmIueSA8PCAxNiwKLQkJCSAg ICAgcGFyYW1zLT5mYi53IDw8IDE2LCBwYXJhbXMtPmZiLmggPDwgMTYpOworCQkJICAgICBwYXJh bXMtPmZiLncgPDwgMTYsIHBhcmFtcy0+ZmIuaCA8PCAxNgorI2lmIERSTV9QUklNQVJZX0RJU0FC TEUKKwkJCSAgICAgLCBOVUxMCisjZW5kaWYKKwkJCSAgICAgKTsKIAlpZ3RfYXNzZXJ0KHJjID09 IDApOwogCWRvX2Fzc2VydGlvbnMoMCk7CiAKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=