From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Mika Kuoppala In-Reply-To: <20190604081334.5925-1-chris@chris-wilson.co.uk> References: <20190604081334.5925-1-chris@chris-wilson.co.uk> Date: Wed, 05 Jun 2019 18:04:09 +0300 Message-ID: <87v9xkqdjq.fsf@gaia.fi.intel.com> MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH i-g-t 1/2] i915/gem_exec_latency: Measure the latency of context switching List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: igt-dev@lists.freedesktop.org List-ID: Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gTWVhc3Vy ZSB0aGUgYmFzZWxpbmUgbGF0ZW5jeSBiZXR3ZWVuIGNvbnRleHRzIGluIG9yZGVyIHRvIGRpcmVj dGx5Cj4gY29tcGFyZSB0aGF0IHdpdGggdGhlIGFkZGl0aW9uYWwgY29zdCBvZiBwcmVlbXB0aW9u Lgo+Cj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+Cj4gLS0tCj4gIHRlc3RzL2k5MTUvZ2VtX2V4ZWNfbGF0ZW5jeS5jIHwgMjMwICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgMSBmaWxlIGNoYW5nZWQsIDIzMCBpbnNlcnRp b25zKCspCj4KPiBkaWZmIC0tZ2l0IGEvdGVzdHMvaTkxNS9nZW1fZXhlY19sYXRlbmN5LmMgYi90 ZXN0cy9pOTE1L2dlbV9leGVjX2xhdGVuY3kuYwo+IGluZGV4IGU1NmQ2Mjc4MC4uZTg4ZmJiYzZh IDEwMDY0NAo+IC0tLSBhL3Rlc3RzL2k5MTUvZ2VtX2V4ZWNfbGF0ZW5jeS5jCj4gKysrIGIvdGVz dHMvaTkxNS9nZW1fZXhlY19sYXRlbmN5LmMKPiBAQCAtNDEwLDYgKzQxMCw4NiBAQCBzdGF0aWMg dm9pZCBsYXRlbmN5X2Zyb21fcmluZyhpbnQgZmQsCj4gIAl9Cj4gIH0KPiAgCj4gK3N0YXRpYyB2 b2lkIGV4ZWN1dGlvbl9sYXRlbmN5KGludCBpOTE1LCB1bnNpZ25lZCBpbnQgcmluZywgY29uc3Qg Y2hhciAqbmFtZSkKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2Jq ID0gewo+ICsJCS5oYW5kbGUgPSBnZW1fY3JlYXRlKGk5MTUsIDQwOTUpLAo+ICsJfTsKPiArCXN0 cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgZXhlY2J1ZiA9IHsKPiArCQkuYnVmZmVyc19w dHIgPSB0b191c2VyX3BvaW50ZXIoJm9iaiksCj4gKwkJLmJ1ZmZlcl9jb3VudCA9IDEsCj4gKwkJ LmZsYWdzID0gcmluZyB8IExPQ0FMX0k5MTVfRVhFQ19OT19SRUxPQyB8IExPQ0FMX0k5MTVfRVhF Q19IQU5ETEVfTFVULAo+ICsJfTsKPiArCWNvbnN0IHVuc2lnbmVkIGludCBtbWlvX2Jhc2UgPSAw eDIwMDA7Cj4gKwljb25zdCB1bnNpZ25lZCBpbnQgY3NfdGltZXN0YW1wID0gbW1pb19iYXNlICsg MHgzNTg7Cj4gKwl2b2xhdGlsZSB1aW50MzJfdCAqdGltZXN0YW1wOwo+ICsJdWludDMyX3QgKmNz LCAqcmVzdWx0Owo+ICsKPiArCXRpbWVzdGFtcCA9Cj4gKwkJKHZvbGF0aWxlIHVpbnQzMl90ICop KCh2b2xhdGlsZSBjaGFyICopaWd0X2dsb2JhbF9tbWlvICsgY3NfdGltZXN0YW1wKTsKPiArCj4g KwlvYmouaGFuZGxlID0gZ2VtX2NyZWF0ZShpOTE1LCA0MDk2KTsKPiArCW9iai5mbGFncyA9IEVY RUNfT0JKRUNUX1BJTk5FRDsKPiArCXJlc3VsdCA9IGdlbV9tbWFwX193YyhpOTE1LCBvYmouaGFu ZGxlLCAwLCA0MDk2LCBQUk9UX1dSSVRFKTsKPiArCj4gKwlmb3IgKGludCBpID0gMDsgaSA8IDE2 OyBpKyspIHsKPiArCQljcyA9IHJlc3VsdCArIDE2ICogaTsKPiArCQkqY3MrKyA9IDB4MjQgPDwg MjMgfCAyOyAvKiBTUk0gKi8KPiArCQkqY3MrKyA9IGNzX3RpbWVzdGFtcDsKPiArCQkqY3MrKyA9 IDQwOTYgLSAxNiAqIDQgKyBpICogNDsKPiArCQkqY3MrKyA9IDA7Cj4gKwkJKmNzKysgPSAweGEg PDwgMjM7CgpXaHkgbm90IE1JX0JBVENIX0JVRkZFUl9FTkQ/IFRvIGVtcGhhc2l6ZSB0aGF0IHdl IGhhdmUKbXVsdGlwbGUgYmF0Y2hlcyBpbnNpZGUgYSBibz8KCj4gKwl9Cj4gKwo+ICsJY3MgPSBy ZXN1bHQgKyAxMDI0IC0gMTY7Cj4gKwo+ICsJZm9yIChpbnQgbGVuZ3RoID0gMjsgbGVuZ3RoIDw9 IDE2OyBsZW5ndGggPDw9IDEpIHsKPiArCQlzdHJ1Y3QgaWd0X21lYW4gc3VibWl0LCBiYXRjaCwg dG90YWw7Cj4gKwkJaW50IGxhc3QgPSBsZW5ndGggLSAxOwo+ICsKPiArCQlpZ3RfbWVhbl9pbml0 KCZzdWJtaXQpOwo+ICsJCWlndF9tZWFuX2luaXQoJmJhdGNoKTsKPiArCQlpZ3RfbWVhbl9pbml0 KCZ0b3RhbCk7Cj4gKwo+ICsJCWlndF91bnRpbF90aW1lb3V0KDIpIHsKPiArCQkJdWludDMyX3Qg bm93LCBlbmQ7Cj4gKwo+ICsJCQljc1tsYXN0XSA9IDA7Cj4gKwo+ICsJCQlub3cgPSAqdGltZXN0 YW1wOwo+ICsJCQlmb3IgKGludCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7Cj4gKwkJCQlleGVj YnVmLmJhdGNoX3N0YXJ0X29mZnNldCA9IDY0ICogaTsKPiArCQkJCWdlbV9leGVjYnVmKGk5MTUs ICZleGVjYnVmKTsKPiArCQkJfQo+ICsJCQl3aGlsZSAoISgodm9sYXRpbGUgdWludDMyX3QgKilj cylbbGFzdF0pCj4gKwkJCQk7Cj4gKwkJCWVuZCA9ICp0aW1lc3RhbXA7Cj4gKwo+ICsJCQlpZ3Rf bWVhbl9hZGQoJnN1Ym1pdCwgKGNzWzBdIC0gbm93KSAqIHJjc19jbG9jayk7Cj4gKwkJCWlndF9t ZWFuX2FkZCgmYmF0Y2gsIChjc1tsYXN0XSAtIGNzWzBdKSAqIHJjc19jbG9jayAvIGxhc3QpOwoK SnVzdCBjdXJpb3VzIG9mIHdoYXQgZG8geW91IHVzZSBvZiBpbnRlciBiYXRjaCBsYXRlbmN5PwoK T2ggYW5kIGRvIHdlIG5lZWQgdG8gdG8gdGFrZSB0aGUgcmNzX2Nsb2NrIHJlc29sdXRpb24gaW50 byBhY2NvdW50Cm9uIHJlc3VsdCBjYWxjdWxhdGlvbi4gUHJvbGx5IG5vdCBhcyBpdCBzZWVtcyB0 byBiZSB0aWNraW5nIGZhc3QgZW5vdWdoCmZvciAwLjF1cyBhY2N1cmFjeS4KCj4gKwkJCWlndF9t ZWFuX2FkZCgmdG90YWwsIChlbmQgLSBub3cpICogcmNzX2Nsb2NrKTsKPiArCQl9Cj4gKwo+ICsJ CWlndF9pbmZvKCIlc3glZCBTdWJtaXNzaW9uIGxhdGVuY3k6ICUuMmbCsSUuMmZ1c1xuIiwKPiAr CQkJIG5hbWUsIGxlbmd0aCwKPiArCQkJIDFlLTMgKiBpZ3RfbWVhbl9nZXQoJnN1Ym1pdCksCj4g KwkJCSAxZS0zICogc3FydChpZ3RfbWVhbl9nZXRfdmFyaWFuY2UoJnN1Ym1pdCkpKTsKPiArCj4g KwkJaWd0X2luZm8oIiVzeCVkIEludGVyLWJhdGNoIGxhdGVuY3k6ICUuMmbCsSUuMmZ1c1xuIiwK PiArCQkJIG5hbWUsIGxlbmd0aCwKPiArCQkJIDFlLTMgKiBpZ3RfbWVhbl9nZXQoJmJhdGNoKSwK PiArCQkJIDFlLTMgKiBzcXJ0KGlndF9tZWFuX2dldF92YXJpYW5jZSgmYmF0Y2gpKSk7Cj4gKwo+ ICsJCWlndF9pbmZvKCIlc3glZCBFbmQtdG8tZW5kIGxhdGVuY3k6ICUuMmbCsSUuMmZ1c1xuIiwK PiArCQkJIG5hbWUsIGxlbmd0aCwKPiArCQkJIDFlLTMgKiBpZ3RfbWVhbl9nZXQoJnRvdGFsKSwK PiArCQkJIDFlLTMgKiBzcXJ0KGlndF9tZWFuX2dldF92YXJpYW5jZSgmdG90YWwpKSk7Cj4gKwl9 Cj4gKwo+ICsJbXVubWFwKHJlc3VsdCwgNDA5Nik7Cj4gKwlnZW1fY2xvc2UoaTkxNSwgb2JqLmhh bmRsZSk7Cj4gK30KPiArCj4gIHN0YXRpYyB2b2lkCj4gIF9fc3VibWl0X3NwaW4oaW50IGZkLCBp Z3Rfc3Bpbl90ICpzcGluLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCj4gIHsKPiBAQCAtNjE2LDYgKzY5 NiwxNDIgQEAgcnRob2dfbGF0ZW5jeV9vbl9yaW5nKGludCBmZCwgdW5zaWduZWQgaW50IGVuZ2lu ZSwgY29uc3QgY2hhciAqbmFtZSwgdW5zaWduZWQgaW4KPiAgCW11bm1hcChyZXN1bHRzLCBNTUFQ X1NaKTsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQgY29udGV4dF9zd2l0Y2goaW50IGk5MTUsCj4g KwkJCSAgIHVuc2lnbmVkIGludCBlbmdpbmUsIGNvbnN0IGNoYXIgKm5hbWUsCj4gKwkJCSAgIHVu c2lnbmVkIGludCBmbGFncykKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVj dDIgb2JqWzJdOwo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9yZWxvY2F0aW9uX2VudHJ5IHJlbG9j WzVdOwo+ICsJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiBlYjsKPiArCXVpbnQzMl90 ICpjcywgKmJiZSwgKnJlc3VsdHMsIHY7Cj4gKwl1bnNpZ25lZCBpbnQgbW1pb19iYXNlOwo+ICsJ c3RydWN0IGlndF9tZWFuIG1lYW47Cj4gKwl1aW50MzJfdCBjdHhbMl07Cj4gKwo+ICsJLyogWFhY IGk5MTVfcXVlcnkoKSEgKi8KPiArCXN3aXRjaCAoZW5naW5lKSB7Cj4gKwljYXNlIEk5MTVfRVhF Q19ERUZBVUxUOgo+ICsJY2FzZSBJOTE1X0VYRUNfUkVOREVSOgo+ICsJCW1taW9fYmFzZSA9IDB4 MjAwMDsKPiArCQlicmVhazsKPiArI2lmIDAKPiArCWNhc2UgSTkxNV9FWEVDX0JTRDoKPiArCQlt bWlvX2Jhc2UgPSAweDEyMDAwOwo+ICsJCWJyZWFrOwo+ICsjZW5kaWYKCkl0IHNlZW1zIHRvIGJl IHRoZXJlIGFjY29yZGluZyB0byBic3BlYy4gVGltZXN0YW1wcyBkb24ndAp3b3JrIHdpdGggaXQ/ Cgo+ICsJY2FzZSBJOTE1X0VYRUNfQkxUOgo+ICsJCW1taW9fYmFzZSA9IDB4MjIwMDA7Cj4gKwkJ YnJlYWs7Cj4gKwo+ICsJY2FzZSBJOTE1X0VYRUNfVkVCT1g6Cj4gKwkJaWYgKGludGVsX2dlbihp bnRlbF9nZXRfZHJtX2RldmlkKGk5MTUpKSA+PSAxMSkKPiArCQkJbW1pb19iYXNlID0gMHgxZDgw MDA7Cj4gKwkJZWxzZQo+ICsJCQltbWlvX2Jhc2UgPSAweDFhMDAwOwo+ICsJCWJyZWFrOwo+ICsK PiArCWRlZmF1bHQ6Cj4gKwkJaWd0X3NraXAoIm1taW8gYmFzZSBub3Qga25vd25cbiIpOwo+ICsJ fQo+ICsKPiArCWZvciAoaW50IGkgPSAwOyBpIDwgQVJSQVlfU0laRShjdHgpOyBpKyspCj4gKwkJ Y3R4W2ldID0gZ2VtX2NvbnRleHRfY3JlYXRlKGk5MTUpOwo+ICsKPiArCWlmIChmbGFncyAmIFBS RUVNUFQpIHsKPiArCQlnZW1fY29udGV4dF9zZXRfcHJpb3JpdHkoaTkxNSwgY3R4WzBdLCAtMTAy Myk7Cj4gKwkJZ2VtX2NvbnRleHRfc2V0X3ByaW9yaXR5KGk5MTUsIGN0eFsxXSwgKzEwMjMpOwo+ ICsJfQo+ICsKPiArCW1lbXNldChvYmosIDAsIHNpemVvZihvYmopKTsKPiArCW9ialswXS5oYW5k bGUgPSBnZW1fY3JlYXRlKGk5MTUsIDQwOTYpOwo+ICsJZ2VtX3NldF9jYWNoaW5nKGk5MTUsIG9i alswXS5oYW5kbGUsIDEpOwo+ICsJcmVzdWx0cyA9IGdlbV9tbWFwX19jcHUoaTkxNSwgb2JqWzBd LmhhbmRsZSwgMCwgNDA5NiwgUFJPVF9SRUFEKTsKPiArCWdlbV9zZXRfZG9tYWluKGk5MTUsIG9i alswXS5oYW5kbGUsIEk5MTVfR0VNX0RPTUFJTl9DUFUsIDApOwo+ICsKPiArCW9ialsxXS5oYW5k bGUgPSBnZW1fY3JlYXRlKGk5MTUsIDQwOTYpOwo+ICsJbWVtc2V0KHJlbG9jLDAsIHNpemVvZihy ZWxvYykpOwo+ICsJb2JqWzFdLnJlbG9jYXRpb25fY291bnQgPSBBUlJBWV9TSVpFKHJlbG9jKTsK PiArCW9ialsxXS5yZWxvY3NfcHRyID0gdG9fdXNlcl9wb2ludGVyKHJlbG9jKTsKPiArCWJiZSA9 IGdlbV9tbWFwX193YyhpOTE1LCBvYmpbMV0uaGFuZGxlLCAwLCA0MDk2LCBQUk9UX1dSSVRFKTsK PiArCWdlbV9zZXRfZG9tYWluKGk5MTUsIG9ialsxXS5oYW5kbGUsCj4gKwkJICAgICAgIEk5MTVf R0VNX0RPTUFJTl9XQywgSTkxNV9HRU1fRE9NQUlOX1dDKTsKPiArCj4gKwljcyA9IGJiZTsKPiAr CSpjcysrID0gMHg1IDw8IDIzOwoKLyogQVJCX0NISyAqLwpvciBldmVuIGJldHRlciBNSV9BUkJf Q0hLOwoKPiArCSpjcysrID0gMHgyNCA8PCAyMyB8IDI7IC8qIFNSTSAqLwo+ICsJKmNzKysgPSBt bWlvX2Jhc2UgKyAweDM1ODsgLyogVElNRVNUQU1QICovCj4gKwlyZWxvY1swXS50YXJnZXRfaGFu ZGxlID0gb2JqWzBdLmhhbmRsZTsKPiArCXJlbG9jWzBdLm9mZnNldCA9IChjcyAtIGJiZSkgKiBz aXplb2YoKmNzKTsKPiArCSpjcysrID0gMDsKPiArCSpjcysrID0gMDsKPiArCSpjcysrID0gTUlf QkFUQ0hfQlVGRkVSX1NUQVJUIHwgMTsKPiArCXJlbG9jWzFdLnRhcmdldF9oYW5kbGUgPSBvYmpb MV0uaGFuZGxlOwo+ICsJcmVsb2NbMV0ub2Zmc2V0ID0gKGNzIC0gYmJlKSAqIHNpemVvZigqY3Mp Owo+ICsJKmNzKysgPSAwOwo+ICsJKmNzKysgPSAwOwo+ICsKPiArCWNzID0gYmJlICsgNjQ7Cj4g KwkqY3MrKyA9IDB4MjQgPDwgMjMgfCAyOyAvKiBTUk0gKi8KPiArCSpjcysrID0gbW1pb19iYXNl ICsgMHgzNTg7IC8qIFRJTUVTVEFNUCAqLwo+ICsJcmVsb2NbMl0udGFyZ2V0X2hhbmRsZSA9IG9i alswXS5oYW5kbGU7Cj4gKwlyZWxvY1syXS5vZmZzZXQgPSAoY3MgLSBiYmUpICogc2l6ZW9mKCpj cyk7Cj4gKwkqY3MrKyA9IHJlbG9jWzJdLmRlbHRhID0gNDsKPiArCSpjcysrID0gMDsKPiArCSpj cysrID0gMHgyOSA8PCAyMyB8IDI7IC8qIExSTSAqLwo+ICsJKmNzKysgPSBtbWlvX2Jhc2UgKyAw eDYwMDsgLyogR1BSMCAqLwo+ICsJcmVsb2NbM10udGFyZ2V0X2hhbmRsZSA9IG9ialswXS5oYW5k bGU7Cj4gKwlyZWxvY1szXS5vZmZzZXQgPSAoY3MgLSBiYmUpICogc2l6ZW9mKCpjcyk7Cj4gKwkq Y3MrKyA9IDA7Cj4gKwkqY3MrKyA9IDA7Cj4gKwkqY3MrKyA9IDB4MjQgPDwgMjMgfCAyOyAvKiBT Uk0gKi8KPiArCSpjcysrID0gbW1pb19iYXNlICsgMHg2MDA7IC8qIEdQUjAgKi8KPiArCXJlbG9j WzRdLnRhcmdldF9oYW5kbGUgPSBvYmpbMF0uaGFuZGxlOwo+ICsJcmVsb2NbNF0ub2Zmc2V0ID0g KGNzIC0gYmJlKSAqIHNpemVvZigqY3MpOwo+ICsJKmNzKysgPSByZWxvY1s0XS5kZWx0YSA9IDg7 Cj4gKwkqY3MrKyA9IDA7Cj4gKwkqY3MrKyA9IDB4YSA8PCAyMzsKPiArCj4gKwltZW1zZXQoJmVi LCAwLCBzaXplb2YoZWIpKTsKPiArCWViLmJ1ZmZlcnNfcHRyID0gdG9fdXNlcl9wb2ludGVyKG9i aik7Cj4gKwllYi5idWZmZXJfY291bnQgPSBBUlJBWV9TSVpFKG9iaik7Cj4gKwllYi5mbGFncyA9 IGVuZ2luZTsKPiArCWViLmZsYWdzIHw9IExPQ0FMX0k5MTVfRVhFQ19OT19SRUxPQzsKPiArCj4g Kwl2ID0gMDsKPiArCWlndF9tZWFuX2luaXQoJm1lYW4pOwo+ICsJaWd0X3VudGlsX3RpbWVvdXQo NSkgewo+ICsJCWViLnJzdmQxID0gY3R4WzBdOwo+ICsJCWViLmJhdGNoX3N0YXJ0X29mZnNldCA9 IDA7Cj4gKwkJZ2VtX2V4ZWNidWYoaTkxNSwgJmViKTsKPiArCj4gKwkJd2hpbGUgKHJlc3VsdHNb MF0gPT0gdikKPiArCQkJaWd0X2Fzc2VydChnZW1fYm9fYnVzeShpOTE1LCBvYmpbMV0uaGFuZGxl KSk7CgpJcyB0aGVyZSBhIHJhY2UgdGhlcmU/IE9iamVjdCB3aWxsIGJlIGJ1c3kgc2hvcnQgdGlt ZQphZnRlciB0aGUgcmVzdWx0IGFwcGVhcnMuCgo+ICsKPiArCQllYi5yc3ZkMSA9IGN0eFsxXTsK PiArCQllYi5iYXRjaF9zdGFydF9vZmZzZXQgPSA2NCAqIHNpemVvZigqY3MpOwo+ICsJCWdlbV9l eGVjYnVmKGk5MTUsICZlYik7Cj4gKwo+ICsJCSpiYmUgPSAweGEgPDwgMjM7CgpfX3N5bmNfc3lu Y3Jvbml6ZSBvciBhcmUgeW91IHJlbHlpbmcgb24gdGhlIGNvcnJlc3BvbmRpbmcKc3lzY2FsbHM/ CgotTWlrYQoKPiArCQlnZW1fc3luYyhpOTE1LCBvYmpbMV0uaGFuZGxlKTsKPiArCQkqYmJlID0g MHg1IDw8IDIzOwo+ICsKPiArCQl2ID0gcmVzdWx0c1swXTsKPiArCQlpZ3RfbWVhbl9hZGQoJm1l YW4sIChyZXN1bHRzWzFdIC0gcmVzdWx0c1syXSkgKiByY3NfY2xvY2spOwo+ICsJfQo+ICsJaWd0 X2luZm8oIiVzIGNvbnRleHQgc3dpdGNoIGxhdGVuY3klczogJS4yZsKxJS4yZnVzXG4iLAo+ICsJ CSBuYW1lLCBmbGFncyAmIFBSRUVNUFQgPyAiIChwcmVlbXB0KSIgOiAiIiwKPiArCQkgMWUtMyAq IGlndF9tZWFuX2dldCgmbWVhbiksCj4gKwkJIDFlLTMgKiBzcXJ0KGlndF9tZWFuX2dldF92YXJp YW5jZSgmbWVhbikpKTsKPiArCW11bm1hcChyZXN1bHRzLCA0MDk2KTsKPiArCW11bm1hcChiYmUs IDQwOTYpOwo+ICsKPiArCWZvciAoaW50IGkgPSAwOyBpIDwgQVJSQVlfU0laRShvYmopOyBpKysp Cj4gKwkJZ2VtX2Nsb3NlKGk5MTUsIG9ialtpXS5oYW5kbGUpOwo+ICsKPiArCWZvciAoaW50IGkg PSAwOyBpIDwgQVJSQVlfU0laRShjdHgpOyBpKyspCj4gKwkJZ2VtX2NvbnRleHRfZGVzdHJveShp OTE1LCBjdHhbaV0pOwo+ICt9Cj4gKwo+ICBzdGF0aWMgZG91YmxlIGNsb2NrcmF0ZShpbnQgaTkx NSwgaW50IHJlZykKPiAgewo+ICAJdm9sYXRpbGUgdWludDMyX3QgKm1taW87Cj4gQEAgLTcyMiw2 ICs5MzgsMTEgQEAgaWd0X21haW4KPiAgCQkJCQkJCSAgICAgIGUtPm5hbWUsCj4gIAkJCQkJCQkg ICAgICAwKTsKPiAgCj4gKwkJCQlpZ3Rfc3VidGVzdF9mKCIlcy1leGVjdXRpb24tbGF0ZW5jeSIs IGUtPm5hbWUpCj4gKwkJCQkJZXhlY3V0aW9uX2xhdGVuY3koZGV2aWNlLAo+ICsJCQkJCQkJICBl LT5leGVjX2lkIHwgZS0+ZmxhZ3MsCj4gKwkJCQkJCQkgIGUtPm5hbWUpOwo+ICsKPiAgCQkJCWln dF9zdWJ0ZXN0X2YoIiVzLWxpdmUtZGlzcGF0Y2gtcXVldWVkIiwgZS0+bmFtZSkKPiAgCQkJCQls YXRlbmN5X29uX3JpbmcoZGV2aWNlLAo+ICAJCQkJCQkJZS0+ZXhlY19pZCB8IGUtPmZsYWdzLAo+ IEBAIC03NDEsMTIgKzk2MiwyMSBAQCBpZ3RfbWFpbgo+ICAJCQkJCQkJICBlLT5leGVjX2lkIHwg ZS0+ZmxhZ3MsCj4gIAkJCQkJCQkgIGUtPm5hbWUsIENPUkspOwo+ICAKPiArCQkJCWlndF9zdWJ0 ZXN0X2YoIiVzLWNzIiwgZS0+bmFtZSkKPiArCQkJCQljb250ZXh0X3N3aXRjaChkZXZpY2UsCj4g KwkJCQkJCSAgICAgICBlLT5leGVjX2lkIHwgZS0+ZmxhZ3MsCj4gKwkJCQkJCSAgICAgICBlLT5u YW1lLCAwKTsKPiAgCQkJCWlndF9zdWJ0ZXN0X2dyb3VwIHsKPiAgCQkJCQlpZ3RfZml4dHVyZSB7 Cj4gIAkJCQkJCWdlbV9yZXF1aXJlX2NvbnRleHRzKGRldmljZSk7Cj4gIAkJCQkJCWlndF9yZXF1 aXJlKGdlbV9zY2hlZHVsZXJfaGFzX3ByZWVtcHRpb24oZGV2aWNlKSk7Cj4gIAkJCQkJfQo+ICAK PiArCQkJCQlpZ3Rfc3VidGVzdF9mKCIlcy1jcy1wcmVlbXB0IiwgZS0+bmFtZSkKPiArCQkJCQkJ Y29udGV4dF9zd2l0Y2goZGV2aWNlLAo+ICsJCQkJCQkJCWUtPmV4ZWNfaWQgfCBlLT5mbGFncywK PiArCQkJCQkJCQllLT5uYW1lLCBQUkVFTVBUKTsKPiArCj4gIAkJCQkJaWd0X3N1YnRlc3RfZigi JXMtcHJlZW1wdGlvbiIsIGUtPm5hbWUpCj4gIAkJCQkJCWxhdGVuY3lfZnJvbV9yaW5nKGRldmlj ZSwKPiAgCQkJCQkJCQkgIGUtPmV4ZWNfaWQgfCBlLT5mbGFncywKPiAtLSAKPiAyLjIwLjEKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4